ray.rllib.algorithms.algorithm_config.AlgorithmConfig.获取_rl_模块_规格#
- AlgorithmConfig.get_rl_module_spec(env: Any | gymnasium.Env | None = None, spaces: Dict[str, gymnasium.Space] | None = None, inference_only: bool | None = None) RLModuleSpec [源代码]#
根据给定的环境/空间返回 RLModuleSpec。
- 参数:
env – 一个可选的环境实例,用于推断 RLModule 的观察和动作空间。如果未提供,将尝试从
spaces
推断,否则从self.observation_space
和self.action_space
推断。如果无法推断空间信息,将引发错误。spaces – 可选的字典,将 ModuleIDs 映射到观测空间和动作空间的 2-tuple,这些空间应分别用于相应的 RLModule。这些空间通常由已经实例化的远程 EnvRunner 提供(调用
EnvRunner.get_spaces()
)。如果未提供,将尝试从env
推断,否则从self.observation_space
和self.action_space
推断。如果无法推断出空间信息,将引发错误。inference_only – 如果
True
,返回的模块规格将用于仅推理的设置(采样),因此 RLModule 可以构建其轻量版本(如果可用)。例如,RLModule 的inference_only
版本可能只包含计算动作所需的网络,但缺少额外的目标或批评网络。
- 返回:
一个新的 RLModuleSpec 实例,可用于构建 RLModule。