ray.rllib.env.env_runner_group.EnvRunnerGroup.同步环境运行器状态#
- EnvRunnerGroup.sync_env_runner_states(*, config: AlgorithmConfig, from_worker: EnvRunner | None = None, env_steps_sampled: int | None = None, connector_states: List[Dict[str, Any]] | None = None, rl_module_state: Dict[str, Any] | None = None, env_runner_indices_to_update: List[int] | None = None) None [源代码]#
同步此 EnvRunnerGroup 的 EnvRunners 的连接器。
确切的程序如下: - 如果
from_worker
是 None,设置from_worker=self.local_env_runner
。 - 如果config.use_worker_filter_stats
为 True,收集所有远程 EnvRunners 的 ConnectorV2 状态。否则,仅使用from_worker
的 ConnectorV2 状态。 - 将所有收集到的状态合并为一个结果状态。 - 将结果状态广播回所有远程 EnvRunners 和本地 EnvRunner。- 参数:
config – 用于确定我们需要在哪个方向进行同步以及超时时间的 AlgorithmConfig 对象。
from_worker – 要同步的 EnvRunner。如果为 None,将使用此 EnvRunnerGroup 的本地工作者。
env_steps_sampled – 所有工作节点到目前为止所采取的总环境步骤数。如果在
config
中update_worker_filter_stats
为 True,则用于将此数字广播给所有远程工作节点。env_runner_indices_to_update – 那些 EnvRunner 的索引,用于更新合并后的状态。使用 None(默认)来更新所有远程 EnvRunner。
开发者API: 此API可能会在Ray的次要版本之间发生变化。