class_docstr: Data bits that may be needed for running connectors.
  
  Note(jungong) : we need to be really careful with the data fields here.
  E.g., everything needs to be serializable, in case we need to fetch them
  in a remote setting.
class_docstr_tok: ["Data","bits","that","may","be","needed","for","running","connectors",".","Note","(","jungong",")",":","we","need","to","be","really","careful","with","the","data","fields","here",".","E.g.",",","everything","needs","to","be","serializable",",","in","case","we","need","to","fetch","them","in","a","remote","setting","."]
docstr: Construct a ConnectorContext instance.
  
  Args:
      initial_states: States that are used for constructing
          the initial input dict for RNN models. [] if a model is not recurrent.
      action_space_struct: a policy's action space, in python
          data format. E.g., python dict instead of DictSpace, python tuple
          instead of TupleSpace.
docstr_tok: ["Construct","a","ConnectorContext","instance",".","Args",":","initial_states",":","States","that","are","used","for","constructing","the","initial","input","dict","for","RNN","models",".","[","]","if","a","model","is","not","recurrent",".","action_space_struct",":","a","policy","'s","action","space",",","in","python","data","format",".","E.g.",",","python","dict","instead","of","DictSpace",",","python","tuple","instead","of","TupleSpace","."]
code: def __init__(
      self,
      config: AlgorithmConfigDict = None,
      initial_states: List[TensorType] = None,
      observation_space: gym.Space = None,
      action_space: gym.Space = None,
      view_requirements: Dict[str, ViewRequirement] = None,
      is_policy_recurrent: bool = False,
  ):
      """Construct a ConnectorContext instance.
  
      Args:
          initial_states: States that are used for constructing
              the initial input dict for RNN models. [] if a model is not recurrent.
          action_space_struct: a policy's action space, in python
              data format. E.g., python dict instead of DictSpace, python tuple
              instead of TupleSpace.
      """
      self.config = config or {}
      self.initial_states = initial_states or []
      self.observation_space = observation_space
      self.action_space = action_space
      self.view_requirements = view_requirements
      self.is_policy_recurrent = is_policy_recurrent
  
imports: import abc
  import logging
  from typing import TYPE_CHECKING, Any, Dict, List, Tuple, Union
  import gymnasium
  from ray.rllib.policy.view_requirement import ViewRequirement
  from ray.rllib.utils.typing import ActionConnectorDataType, AgentConnectorDataType, AlgorithmConfigDict, TensorType
  from ray.util.annotations import PublicAPI
label_desc: Use image node_id 1 to create a new ConnectorContext object  with example: obj = ConnectorContext(config, initial_states, observation_space, action_space, view_requirements, is_policy_recurrent)