部署

一本实操手册,帮助你将 UniLab 策略跨硬件、仿真后端与源框架迁移。每篇教程都遵循 相同的结构:

  1. 你从什么开始 —— 训练好的产物与配置。

  2. 要改什么 —— 代码、YAML 与资产中最小的一组改动。

  3. 如何验证 —— 具体的命令与检查点。

选择你的路线

🤖 仿真 → 真机

为 G1 / Go2 / Allegro 上机准备训练好的策略,包含 ONNX 导出与部署侧契约检查。

仿真到真机
🔀 仿真 → 仿真

在 MuJoCo 与 Motrix 之间切换同一任务,无需从头重新训练。

Sim-to-Sim
🔁 框架迁移

从 Isaac Lab / Legged Gym / rsl_rl / skrl 迁移任务。

框架迁移

🤖 仿真 → 真机

🗺 总览与上机前检查

端到端流程 + go/no-go 清单。

仿真到真机总览
🦿 G1 全身

29 自由度人形;运动跟踪部署。

硬件上的 G1 全身运动跟踪
🐕 Go2 运动

摇杆、崎岖地形、Go2W 轮足。

Go2 / Go2W 运动部署
🤚 Allegro 手内操作

方块旋转;摩擦 + 视觉。

Allegro / Sharpa 手内操作部署
📦 ONNX 导出与运行时

训练回放导出、ONNX Runtime 检查以及部署原型输入。

ONNX 运行时
🎲 仿真到真机的 DR

按优先级排序的 DR 配方。

面向真机迁移的域随机化
🛡 安全层

软限位、EMA、急停、看门狗。

硬件安全层
⏱ 延迟与观测滞后

训练侧的延迟旋钮与部署侧的测量检查。

延迟预算
🔧 故障排查

症状 → 原因 → 修复速查手册。

仿真到真机故障排查

🔀 仿真 → 仿真(MuJoCo ↔ Motrix)

🤔 后端切换
切换后端
📝 Owner YAML 切换
为已有任务添加后端 YAML
🔬 接触与摩擦对齐
在后端之间对齐接触与摩擦
⚖ 奖励一致性检查
跨后端的 Reward 一致性
🎞 回放差异
回放与快照差异
🚫 已知能力缺口
能力缺口

🔁 框架迁移

来自 Isaac Lab

GPU 常驻 → CPU + 共享内存。

从 Isaac Lab 迁移
来自 Legged Gym

基于类的环境 → NpEnv。

从 Legged Gym 迁移
来自 rsl_rl

训练器拆分:collector + learner。

从 RSL-RL 迁移
来自 skrl

算法覆盖范围与取舍。

从 skrl 迁移
📋 配置翻译速查表

逐字段对照表。

任务配置翻译速查表
📒 奖励移植手册

以 UniLab 风格表达常见奖励项。

Reward 移植