code: def _get_tod_agents(self, opt: Opt):
      agents = [None] * tod_world.AGENT_COUNT
  
      agents[
          tod_world.USER_UTT_IDX
      ] = self._get_file_or_model_specifiable_agent("user", opt)
  
      # Get system agent, nothing that api call agent currently same as system agent
      system_model = self._get_file_or_model_specifiable_agent(
          "system", opt
      )
      agents[tod_world.SYSTEM_UTT_IDX] = system_model
      agents[tod_world.API_CALL_IDX] = system_model
  
      agents[tod_world.API_RESP_IDX] = self._make_agent(
          opt, "api_resp_model"
      )
      agents[
          tod_world.GOAL_GROUNDING_IDX
      ] = self._get_model_or_default_agent(
          opt, "goal_grounding_model", tod_world_agents.EmptyGoalAgent
      )
  
      if (
          "api_schema_grounding_model" not in opt
          and "api_schemas" in opt
      ):
          opt["api_schema_grounding_model"] = opt.get(
              "goal_grounding_model", ""
          ).replace("Goal", "ApiSchema")
  
      agents[
          tod_world.API_SCHEMA_GROUNDING_IDX
      ] = self._get_model_or_default_agent(
          opt,
          "api_schema_grounding_model",
          tod_world_agents.EmptyApiSchemaAgent,
      )
  
      return agents
  
imports: import json
  from copy import deepcopy
  from shutil import copyfile
  import os
  import parlai.utils.logging
  import parlai.core.tod.tod_world
  import parlai.core.tod.tod_agents
  from parlai.core.agents import create_agent
  from parlai.core.metrics import dict_report, aggregate_unnamed_reports
  from parlai.core.opt import Opt
  from parlai.core.params import ParlaiParser
  from parlai.core.script import ParlaiScript, register_script
  from parlai.utils.distributed import is_primary_worker, all_gather_list, is_distributed, get_rank, sync_object, num_workers
  from parlai.utils.io import PathManager
  from parlai.utils.misc import TimeLogger, nice_report
  from parlai.utils.world_logging import WorldLogger
label_desc: Use image node_id 5 for calling the TodWorldScript obj's underlying member method code with example usage: obj._get_tod_agents(opt) and returns: agents