class_docstr: Interface for policy (actor) network composers.
  
  :param action_spaces_dict: Dict of sub-step id to action space.
  :param observation_spaces_dict: Dict of sub-step id to observation space.
  :param distribution_mapper: The distribution mapper.
class_docstr_tok: ["Interface","for","policy","(","actor",")","network","composers",".",":","param","action_spaces_dict",":","Dict","of","sub-step","id","to","action","space",".",":","param","observation_spaces_dict",":","Dict","of","sub-step","id","to","observation","space",".",":","param","distribution_mapper",":","The","distribution","mapper","."]
docstr: The policy object
docstr_tok: ["The","policy","object"]
code: def policy(self) -> TorchPolicy:
      """The policy object"""
  
file_path: maze/maze/perception/models/policies/base_policy_composer.py
imports: from abc import ABC, abstractmethod
  from typing import Dict
  from gym import spaces
  from maze.core.agent.torch_policy import TorchPolicy
  from maze.core.env.structured_env import StepKeyType
  from maze.distributions.distribution_mapper import DistributionMapper
  from maze.perception.perception_utils import observation_spaces_to_in_shapes
label_desc: Use image node_id 2 for calling the BasePolicyComposer obj's underlying member method code with example usage: obj.policy() without return types