# {py:mod}`evorl.workflows.rl_workflow` ```{py:module} evorl.workflows.rl_workflow ``` ```{autodoc2-docstring} evorl.workflows.rl_workflow :parser: autodoc2_docstrings_parser :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`OffPolicyWorkflow ` - ```{autodoc2-docstring} evorl.workflows.rl_workflow.OffPolicyWorkflow :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`OnPolicyWorkflow ` - ```{autodoc2-docstring} evorl.workflows.rl_workflow.OnPolicyWorkflow :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`RLWorkflow ` - ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow :parser: autodoc2_docstrings_parser :summary: ``` ```` ### API `````{py:class} OffPolicyWorkflow(env: evorl.envs.Env, agent: evorl.agent.Agent, optimizer: optax.GradientTransformation, evaluator: evorl.evaluators.Evaluator, replay_buffer: evorl.replay_buffers.AbstractReplayBuffer, config: omegaconf.DictConfig) :canonical: evorl.workflows.rl_workflow.OffPolicyWorkflow Bases: {py:obj}`evorl.workflows.rl_workflow.RLWorkflow` ```{autodoc2-docstring} evorl.workflows.rl_workflow.OffPolicyWorkflow :parser: autodoc2_docstrings_parser ``` ````{py:method} evaluate(state: evorl.types.State) -> tuple[evorl.metrics.MetricBase, evorl.types.State] :canonical: evorl.workflows.rl_workflow.OffPolicyWorkflow.evaluate ```` ````{py:method} setup(key: chex.PRNGKey) -> evorl.types.State :canonical: evorl.workflows.rl_workflow.OffPolicyWorkflow.setup ```{autodoc2-docstring} evorl.workflows.rl_workflow.OffPolicyWorkflow.setup :parser: autodoc2_docstrings_parser ``` ```` ````` `````{py:class} OnPolicyWorkflow(env: evorl.envs.Env, agent: evorl.agent.Agent, optimizer: optax.GradientTransformation, evaluator: evorl.evaluators.Evaluator, config: omegaconf.DictConfig) :canonical: evorl.workflows.rl_workflow.OnPolicyWorkflow Bases: {py:obj}`evorl.workflows.rl_workflow.RLWorkflow` ```{autodoc2-docstring} evorl.workflows.rl_workflow.OnPolicyWorkflow :parser: autodoc2_docstrings_parser ``` ````{py:method} evaluate(state: evorl.types.State) -> tuple[evorl.metrics.MetricBase, evorl.types.State] :canonical: evorl.workflows.rl_workflow.OnPolicyWorkflow.evaluate ```` ````{py:method} setup(key: chex.PRNGKey) -> evorl.types.State :canonical: evorl.workflows.rl_workflow.OnPolicyWorkflow.setup ```{autodoc2-docstring} evorl.workflows.rl_workflow.OnPolicyWorkflow.setup :parser: autodoc2_docstrings_parser ``` ```` ````` `````{py:class} RLWorkflow(config: omegaconf.DictConfig) :canonical: evorl.workflows.rl_workflow.RLWorkflow Bases: {py:obj}`evorl.workflows.workflow.Workflow` ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow :parser: autodoc2_docstrings_parser ``` ````{py:method} build_from_config(config: omegaconf.DictConfig, enable_multi_devices: bool = False, enable_jit: bool = True) -> typing_extensions.Self :canonical: evorl.workflows.rl_workflow.RLWorkflow.build_from_config :classmethod: ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.build_from_config :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} enable_jit() -> None :canonical: evorl.workflows.rl_workflow.RLWorkflow.enable_jit :classmethod: ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.enable_jit :parser: autodoc2_docstrings_parser ``` ```` ````{py:property} enable_multi_devices :canonical: evorl.workflows.rl_workflow.RLWorkflow.enable_multi_devices :type: bool ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.enable_multi_devices :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} enable_shmap(axis_name: str) -> None :canonical: evorl.workflows.rl_workflow.RLWorkflow.enable_shmap :classmethod: ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.enable_shmap :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} evaluate(state: evorl.types.State) -> tuple[evorl.metrics.MetricBase, evorl.types.State] :canonical: evorl.workflows.rl_workflow.RLWorkflow.evaluate :abstractmethod: ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.evaluate :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} step(state: evorl.types.State) -> tuple[evorl.metrics.MetricBase, evorl.types.State] :canonical: evorl.workflows.rl_workflow.RLWorkflow.step :abstractmethod: ```{autodoc2-docstring} evorl.workflows.rl_workflow.RLWorkflow.step :parser: autodoc2_docstrings_parser ``` ```` `````