class_docstr: Manages interactions between agents on a websocket as well as direct interactions
  between agents and an overworld.
class_docstr_tok: ["Manages","interactions","between","agents","on","a","websocket","as","well","as","direct","interactions","between","agents","and","an","overworld","."]
docstr: Load model if necessary.
docstr_tok: ["Load","model","if","necessary","."]
code: def _load_model(self):
      """
      Load model if necessary.
      """
      if "models" in self.opt and self.should_load_model:
          model_params = {}
          model_info = {}
          for model in self.opt["models"]:
              model_opt = self.opt["models"][model]
              override = model_opt.get("override", {})
              if type(override) is list:
                  model_opt["override"] = override[0]
              model_params[model] = create_agent(model_opt).share()
              model_info[model] = {"override": override}
          self.runner_opt["model_info"] = model_info
          self.runner_opt["shared_bot_params"] = model_params
  
imports: import json
  import asyncio
  import logging
  from parlai.core.agents import create_agent
  from parlai.chat_service.core.chat_service_manager import ChatServiceManager
  import parlai.chat_service.utils.logging
  import parlai.chat_service.utils.misc
  from parlai.chat_service.services.websocket.sockets import MessageSocketHandler
  from .agents import WebsocketAgent
  import tornado
  from tornado.options import options
label_desc: Use image node_id 4 for calling the WebsocketManager obj's underlying member method code with example usage: obj._load_model() without return types