使用 LEAPP 部署导出的策略#

Isaac Lab 提供 LeappDeploymentEnv ,用于在仿真中运行导出的策略,无需训练基础设施。这是 Isaac Lab 中部署 LEAPP 导出策略的方式,可用于验证:由部署组件而非训练组件驱动时,打包后的策略是否仍能正常工作。

运行部署命令时,指定任务名和导出的 LEAPP .yaml 文件。使用与训练、导出时相同的后端额外依赖及后端选择项;需要视口时,再传入 --viz 选项:

# Newton backend (kitless)
uv run --extra leapp isaaclab leapp deploy \
    --task <TASK_NAME> \
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> \
    --viz newton_gl physics=newton_mjwarp

# OV PhysX backend
uv run --extra ovphysx --extra leapp isaaclab leapp deploy \
    --task <TASK_NAME> \
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> \
    --viz kit physics=ovphysx

# Isaac Sim PhysX backend
OMNI_KIT_ACCEPT_EULA=Y ACCEPT_EULA=Y uv run --extra isaacsim --extra leapp isaaclab leapp deploy \
    --task <TASK_NAME> \
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> \
    --viz kit physics=isaacsim_physx
:: Newton backend (kitless)
uv run --extra leapp isaaclab leapp deploy ^
    --task <TASK_NAME> ^
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> ^
    --viz newton_gl physics=newton_mjwarp

:: OV PhysX backend
uv run --extra ovphysx --extra leapp isaaclab leapp deploy ^
    --task <TASK_NAME> ^
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> ^
    --viz kit physics=ovphysx

:: Isaac Sim PhysX backend
set OMNI_KIT_ACCEPT_EULA=Y
set ACCEPT_EULA=Y
uv run --extra isaacsim --extra leapp isaaclab leapp deploy ^
    --task <TASK_NAME> ^
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> ^
    --viz kit physics=isaacsim_physx

部署环境的工作方式#

部署环境加载任务场景后,会绕过训练时的观测、动作、奖励、终止和课程管理器。它读取 LEAPP YAML 中 isaaclab_connection 元数据指定的场景对象和命令,将其作为导出策略流水线的输入,并通过 LEAPP 的 InferenceManager 运行该流水线。得到的输出再写回映射的场景实体。

保持训练、导出配置一致#

部署命令根据 --task 重新构建任务配置,无法从检查点或 LEAPP YAML 推断训练配置,因此必须提供训练、导出时相同的配置选择。任务名、LEAPP YAML 和检查点必须对应同一策略。

以下设置必须在 训练 、 导出 和 部署 三个阶段保持一致:

  • 任务与 Hydra 覆盖设置: 使用相同任务名,并保留所有会改变场景、机器人、传感器、命令项、观测/动作项配置、重置行为或仿真时序( sim.dt 和 decimation )的配置覆盖。

  • 物理与渲染器预设: 如果选择了非默认后端,传入相同的后端选择项。例如,使用 physics=newton_mjwarp 训练并导出的策略,部署时也必须使用 physics=newton_mjwarp ;未限定类型的 presets=<PRESET_NAME> 形式同样如此。

  • 随机种子(适用时): 如果验证需要可复现的命令采样、重置事件或其他随机任务行为,请使用相同的 --seed 。

例如,在部署选项后追加预设:

uv run --extra leapp isaaclab leapp deploy \
    --task Isaac-Humanoid \
    --pipeline <PATH_TO_EXPORTED_LEAPP_YAML> \
    --viz newton_gl \
    presets=newton_mjwarp

可视化选项#

可视化不会改变策略或其 LEAPP 输入。省略 --viz 可无界面运行,使用 --viz kit 可打开 Omniverse Kit 视口;安装相应可视化器后,也可选择 newton_gl 、 newton_rtx (实验性)、 rerun 或 viser 。使用 --viz none 可显式关闭全部可视化器, --max_visible_envs <COUNT> 可限制显示的环境数。请选择与当前物理及渲染后端兼容的可视化器。

备注

Direct 工作流策略见 Direct 工作流导出指南 。 LeappDeploymentEnv 不支持 Direct 工作流策略。