code: def test_building_separated_agent_policies():
      env = build_dummy_structured_env()
      model_config = _dummy_model_config()
      model_config["policy"]["substeps_with_separate_agent_nets"] = [
          0,
          1,
      ]
      policy = _dummy_policy_for(
          model_config, env, agent_counts_dict={0: 1, 1: 3}
      )
  
      assert len(policy.networks) == 4
      assert [(0, 0), (1, 0), (1, 1), (1, 2)] == list(
          policy.networks.keys()
      )
  
      assert isinstance(
          policy.network_for(actor_id=ActorID(0, 0)), DummyPolicyNet
      )
      assert isinstance(
          policy.network_for(actor_id=ActorID(1, 0)), DummyPolicyNet
      )
  
file_path: maze/maze/test/core/agent/test_multi_agent_torch_policy.py
imports: from typing import Dict, Optional
  from maze.core.env.maze_env import MazeEnv
  from maze.core.env.structured_env import ActorID
  from maze.perception.models.custom_model_composer import CustomModelComposer
  from maze.test.shared_test_utils.helper_functions import build_dummy_structured_env
  from maze.test.shared_test_utils.dummy_models.actor_model import DummyPolicyNet
label_desc: Use image node_id 4 for calling a global function with example usage: test_building_separated_agent_policies() without return types