浏览器同时操控6台G1人形机器人:metatron-browser G1 Racer批处理推理优化揭秘
【免费下载链接】metatron-browser
metatron-browser 是 NVIDIA 开源的 Metatron G1 人形机器人策略的 ONNX 推理导出仓库,让普通浏览器就能同时驱动 6 台 Unitree G1 机器人行走、交互与摔倒恢复。本文揭秘其中 G1 Racer 场景背后的批处理推理优化:如何把 6 台机器人塞进一次神经网络前向计算,靠 WebGPU 在浏览器里逼近实时运行。
它到底是什么:浏览器里的人形机器人仿真场 🤖
metatron-browser 仓库本身只包含两个 ONNX 模型文件,它们是同一个"统一场景/恢复策略"(unified scene/recovery policy)的两种运行时导出:
- 单机器人演示版:demo/model.onnx(约 385 MB)
- 六机器人竞速版:racer/network.onnx(约 385 MB)
配套的浏览器应用负责物理仿真(MuJoCo WASM)、观测构造与控制逻辑;模型本身只是"大脑"。策略是一个MaskedMimic 风格的 Transformer 学生模型,带确定性先验和 decoder,用 FP32 在浏览器中推理。
完整说明可查阅仓库的 README.md,许可与署名信息见 LICENSE.pdf 和 NOTICE.txt。
两份模型的关系:权重相同,接口不可互换 ⚠️
这是新手最容易踩的坑——两个文件大小几乎一样,但绝对不能互相替换:
| 文件 | 接口定位 | 规模 |
|---|---|---|
| demo/model.onnx | 单机器人完整流水线(含观测处理 + 动作转换) | 403,375,789 字节 |
| racer/network.onnx | 六机器人批处理网络,观测处理在图外完成 | 403,036,698 字节 |
官方提示(来自 README 原文要点):不要把 demo 的原始输入直接喂给 Racer 网络,也不要在不重建、不验证的情况下修改它的 batch size。
G1 Racer 批处理推理的三大优化点 🚀
1. 一次前向计算驱动 6 台机器人
传统做法是 6 台机器人各跑一遍网络,6 次前向计算;Racer 把 6 台机器人的状态打包成一个batch,用同一张计算图一次算完 6 个动作输出。这就是标题中"批处理推理优化"的核心——吞吐翻倍不是 6 倍开销,而是接近 1 次开销。
2. 观测处理移出神经网络图
Racer 的观测(observation)计算放在图外由应用侧完成,网络只暴露action和raw_action输出,PD 控制参数来自配套运行时。这样做的好处是:
- 计算图更"干净",更容易做批量化和编译器优化
- 图外部分可以用 WASM/JS 灵活处理,不必全部塞进 ONNX 图里
对比之下,demo 版是 39 个输入的完整流水线(含 8 帧历史状态、9 项原始动作历史、场景盒子上下文等),图更大但开箱即用。
3. ONNX Runtime Web + WebGPU 加速
浏览器端推理走ONNX Runtime Web:
- 支持 WebGPU 的设备优先用WebGPU加速(推荐)
- 其余设备回退到WebAssembly / CPU,但不保证 6 机器人实时运行
- 启动时间与吞吐量会受 GPU 驱动、浏览器版本和硬件影响
改了图,效果会不会漂移?实测误差只有 5.55e-6 📊
批处理改造动了图的组织和 batching,但不动学到的权重。官方用 60 组不同/历史扰动测试状态,把六机器人 ONNX 路径 + 编译观测路径与单机器人 demo 导出逐一比对:
- 最大绝对动作误差:5.55e-6
- 恢复高度、恢复时机、动作历史、场景输入均被独立扰动验证过,输出确实随之变化(说明输入通路没有被"短路")
Racer 配套应用启动时还会跑动作一致性(action-parity)测试夹具,进一步兜底。注意:这些是数值导出校验,不是任务成功率或真机基准。
新手上手注意事项清单 📝
- 配对使用:模型必须与配套浏览器应用(提供物理、观测、目标与控制逻辑)一起用,单独的 ONNX 文件不是完整 Demo
- 保持约定一致:关节/身体顺序、四元数约定、历史排序、归一化、目标掩码、控制频率都不能乱动
- 可复现性:下载请锁定到具体 commit,而不是
main - 安全边界:这不是避障系统或安全控制器,游戏里的"低重力区""重生"是应用机制而非策略能力;真机部署需要独立的关节/力矩限制、监督测试和急停机制
- 许可:模型遵循 NVIDIA Open Model License,署名要求见 NOTICE.txt;运动数据集、机器人网格、游戏资产不在本仓库授权范围内
核心文件速查
| 路径 | 说明 |
|---|---|
| demo/model.onnx | 单机器人完整流水线导出,SHA2567180e82c…2a0cd4 |
| racer/network.onnx | 六机器人批处理网络导出,SHA256130a2271…dfbeaf3 |
| README.md | 接口、验证与限制说明 |
| NOTICE.txt | 许可署名通知 |
总结
metatron-browser 用三个关键设计让"浏览器里跑 6 台 G1"成为可能:batch 化推理把 6 次前向压缩为 1 次、观测处理出图让计算图更轻、WebGPU 提供浏览器内 GPU 加速。而 5.55e-6 的导出误差则证明:改组织、不加误差——这正是 Racer 与 demo 共享同一策略、却拥有不同运行时形态的原因。想在浏览器里做多人形机器人推理实验,这套开源导出是目前非常值得研究的样板。
【免费下载链接】metatron-browser
相关推荐
metatron-browser 是什么?29关节Unitree G1人形机器人在浏览器里走起来——项目全景指南
metatron browser 是什么?29关节Unitree G1人形机器人在浏览器里走起来——项目全景指南 metatron browser 是 NVID
从浏览器到真机:metatron-browser跨平台部署路线图(模拟器与Unitree G1实战)
从浏览器到真机:metatron browser跨平台部署路线图(模拟器与Unitree G1实战) metatron browser 是 NVIDIA 开源的
初识Metatron v1:NVIDIA为Unitree G1打造的人形机器人统一控制策略完整解析
初识Metatron v1:NVIDIA为Unitree G1打造的人形机器人统一控制策略完整解析 Metatron v1 是 NVIDIA 面向宇树 Unit
机器人强化学习具身智能深度学习
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考