一句话定位

OpenHelix 先梳理”双系统 VLA”(慢速 MLLM 当 System2、快速策略当 System1)这一路线里已有的四个代表工作(LCB、DP-VLA、HiRT、RoboDual),再固定 MLLM 用 LLaVA-7B、策略用 3d-diffuser-actor 不变,对”MLLM 怎么训、投影层怎么连、异步推理频率要不要卡紧”这三个此前众说纷纭的设计维度做系统消融,最后把消融出的最优组合(冻结 MLLM 只做 prompt-tuning + 投影层两阶段预对齐 + 辅助多模态推理损失)封装成一个开源模型,作为对 Figure AI 闭源的 Helix 的开源复现尝试,填补该路线”没有开源基线可比”的空白。

背景与定位

范式:双系统 VLA(dual-system VLA)——用 Kahneman”快思考/慢思考”(System1/System2)类比机器人策略架构:System2 是计算重、泛化强的 MLLM,低频更新,负责语义理解;System1 是轻量、高频的策略网络,负责实时控制。论文给出一个可操作的分类标准——“System1 必须能接收实时感知输入(如 RGB)才算真正的同步双系统”,据此把 pi0、GR00T-N1 排除在双系统之外(因为它们的高层规划不是逐步接收实时图像来同步驱动底层策略)。

论文用 Table 1 对比了此前四个双系统工作的设计选择(System2 模型/输入/训练方式、潜变量表示、System1 策略头/感知模态/训练方式):

方法System2 模型System2 输入System2 训练潜变量表示System1 策略头System1 感知System1 训练
LCBLLaVA-7B语言+RGBLoRA 微调语言(<ACT>)3D Diffusion ActorRGB+本体感知+点云预训练
DP-VLAOpenVLA-7B语言+RGB冻结视觉+语言TransformerRGB+本体感知从零训练
HiRTInstructBLIP-7B语言+RGBLoRA 微调MaxPooling(视觉+语言)RT-1RGB从零训练
RoboDualOpenVLA-7B语言+RGBLoRA 微调动作+语言DiTRGB+深度+触觉+本体感知从零训练
Helix(参照,非本文方法)未知语言+RGB+本体感知未知未知TransformerRGB+本体感知未知

OpenHelix 自身的设计选择落在 LLaVA-7B(System2)+ 预训练 3D Diffuser Actor(System1,继承自 LCB 沿用的策略),但训练策略(prompt-tuning、投影层两阶段预对齐、辅助多模态推理损失)是本文消融实验得出的新组合,而非照抄 LCB/HiRT/RoboDual 任何一家。评测基线里出现的 UniVLA、Seer(seer-predictive-inverse-dynamics)、GR-MG 均非双系统架构,只是同样跑 CALVIN 的可比较对象。相关综述类页面见 efficient-vla-models-surveylarge-vlm-vla-manipulation-survey

模型架构

整体:System2(慢速 MLLM)+ System1(快速扩散策略),中间用一个可学习的 prompt token 加线性投影层桥接,continuous action(非离散 token,非 flow-matching)。

  • System2 / MLLM:LLaVA-7B(原始 LLaVA 论文的 7B 版本,Vicuna 语言塔 + 视觉编码器)。在指令末尾拼接一个新增的可学习 token <ACT>,推理时该 token 的输出隐藏状态 z_t 就是传给下游的潜变量;训练时冻结 LLaVA 全部原有参数,只训练这一个新 token 的 embedding(即”prompt-tuning”策略,消融实验证明优于全量微调和纯冻结,见”训练方法”节)。
  • System1 / 策略:预训练的 [3d-diffuser-actor|3D Diffuser Actor]——基于 Transformer 的扩散策略,以多路交叉注意力接入 3D 场景表征(两个视角的 RGB-D)、本体感知 c_t、以及来自 MLLM 的条件 token。论文用一个线性层替换 3DDA 原有的文本编码器,把 LLaVA 输出的 4096 维隐藏状态投影到 3DDA 需要的 512 维条件空间,对齐两个模型的接口。
  • 动作表示:连续动作,末端位姿分解为 3D 位置 a^l∈ℝ³ + 6D 旋转 a^r∈ℝ⁶ + 二值夹爪状态 a^g∈{0,1},在时间窗口 T 内预测轨迹 τ_t=(a_{t:t+T}^l, a_{t:t+T}^r, a_{t:t+T}^g);沿用 3DDA 的扩散去噪目标(对位置/旋转加噪声再学习去噪)。
  • 辅助多模态推理头:MLLM 输出的 <ACT> 潜变量 z_t 除了送给 3DDA,还额外经过独立线性层(MLP)直接回归动作真值——位置/旋转用 L1 损失,夹爪用 BCE——强迫这个潜变量必须编码视觉+动作相关信息,而不能退化为纯文本语义的复述。
  • 异步推理:System2(MLLM)每隔 N 步才重新推理一次,期间 System1 复用同一个缓存的潜变量连续跑 N 步;论文测试了 N=1 到 60(60 是 3DDA 单幕最长步数)。
  • 关键配置数字:LLaVA 隐藏维度 4096 → 投影到 512;3DDA 预训练权重取其 65,000 迭代步的 checkpoint 作为初始化;两阶段训练中 Stage1 跑 2,000 迭代(只训 prompt token + 投影层,MLLM 和策略都冻结),Stage2 续训到 100,000 迭代(策略解冻,MLLM 仍冻结)。损失权重 ω₁–ω₄(平衡辅助任务/扩散损失各分量)论文未给出具体数值。

数据

  • 全部实验基于 CALVIN 仿真环境的 ABC→D 长时程语言条件操作任务(训练用 A/B/C 场景,测试用未见过的 D 场景),未使用任何真实机器人数据——真机实验被明确列入”未来工作”(见”创新点与影响”节的作者自述局限)。
  • 消融阶段为提速,只用标准 1000 条评测集的前 100 条做快速验证;论文最终结果表(Table 8)才把评测扩到完整 1,000 条
  • 论文自建两个更难的评测集,用来检验双系统设计是否真的有用:
    • CALVIN-E:用”增强”(enriched)语言指令测试语言泛化能力;
    • CALVIN-D:让物体在抓取过程中按 Left / Forward / Diagonal / Circle 四种模式运动,测试动态场景鲁棒性(与静止的 Static 对照)。
  • 数据处理上刻意做了简化:不像 LCB 那样在 <ACT> token 前构造一段类聊天式(chat-like)的中间回复,而是直接把 <ACT> token 拼在指令末尾;论文承认这只是因为尚未实现该功能,并观察到即使不做也效果尚可。
  • 指令编码:GitHub 提供了用 CLIP 文本编码器预编码 CALVIN 指令的可选脚本(或直接下载 3d-diffuser-actor 官方提供的预编码文件),但这是给基线/旧流程用的——OpenHelix 最终模型的语言条件来自 LLaVA 潜变量而非 CLIP 编码。
  • 无仿真到真实(sim-to-real)迁移,无跨具身数据,无数据配比/过滤描述(CALVIN 官方数据集本身即为唯一数据源)。

训练方法

总损失 ℒ_total = ℒ_lm(<ACT>) + ℒ_policy(θ, <ACT>):

  • ℒ_lm:辅助多模态推理损失,<ACT> 潜变量经线性头直接回归动作真值——夹爪 BCE + 位置 L1(权重 ω₁)+ 旋转 L1(权重 ω₂)。
  • ℒ_policy:3DDA 的扩散去噪损失——夹爪 BCE + 位置噪声预测 L1(权重 ω₃)+ 旋转噪声预测 L1(权重 ω₄)。

Prompt-tuning(MLLM 训练策略的最终选择):仅在 LLaVA 词表新增一个可学习 token <ACT>,训练中只更新这一个 token 的 embedding,LLaVA 其余全部参数冻结。

两阶段训练:

  1. Stage1(预对齐,2,000 迭代):冻结 MLLM 和策略,只训练 <ACT> 的 prompt embedding 和投影层,让二者的特征空间先对齐。
  2. Stage2(联合微调,续训到 100,000 迭代):MLLM 保持冻结,解冻策略,与投影层、prompt embedding 一起联合微调。两阶段的损失函数形式不变,唯一区别是策略是否冻结。

系统性消融(论文第 2 节的核心贡献,固定 LLaVA-7B + 3DDA + LCB 式集成方式,只变以下三个维度):

  1. 策略训练策略:预训练后微调 3DDA vs. 从零训练。结果:预训练+微调(96/83/68/58/48,平均长度 3.53)明显优于从零训练(89/71/49/42/34,平均长度 2.85),且训练时间更短。(论文正文两处分别称此结果”见 Table 3”和”见 Table 4”,指代不一致,原文如此,本页如实标注未替作者取舍。)
  2. MLLM 训练策略 × 是否加 CLIP loss:当 MLLM 冻结时,加不加 CLIP loss 差别很小(3.30 vs 3.33 平均长度);但当 MLLM 做全量微调时,去掉 CLIP loss 会显著掉分(3.53→3.13),说明 CLIP loss 此时起到约束、防止微调破坏策略已学会的注意力模式的作用。进一步对比 prompt-tuning:在标准 CALVIN 上与冻结/微调相近(3.283.45),但在语言泛化测试 CALVIN-E 上大幅领先——prompt-tuning(平均长度 2.092.13)>> 全量微调(1.74)>> 冻结(1.46),证明”只训一个新 token、不碰 MLLM 原参数”确实更好地保住了 MLLM 的泛化能力。
  3. 投影层预对齐(pre-alignment)是否必要:对比”直接联合解冻 MLLM+策略+投影层一起训”vs”先冻结 MLLM 训投影层和策略、再解冻联合训”。结果非常极端——不做预对齐,无论 MLLM 是冻结、全量微调还是 prompt-tuning,策略完全学不会任何东西,三种配置的 5 项”连续完成任务数”指标全部为 0;做了预对齐则分别拿到 41、48、47(平均长度 3.30/3.53/3.45)。这说明投影层预对齐是双系统能训起来的必要条件。
  4. 异步推理步长(1~60):令人意外的是,无论 System2 隔多少步重新推理一次,静态和动态场景下的最终性能都很接近,说明当前 MLLM 传给下游的信息对环境变化并不敏感(呼应下一条发现)。
  5. 潜变量到底编码了什么:把 <ACT> 潜变量投影回语义空间比对相似词,发现它主要编码目标物体、空间关系和动作语义,且空间方位词的相似度几乎不随时间/环境变化而改变(如”right”的相似度持续高于”left”,不管机械臂实际往左还是往右走)——说明这一版潜变量基本只是复述文本指令语义,没有真正利用视觉信息。
  6. 加入辅助多模态推理任务后:MLLM(仅冻结/prompt-tuning,无辅助任务)平均长度 3.45;加入辅助任务后跳到 4.01;去掉视觉、只用纯 LLM(无视觉输入)则大幅掉到 1.77——证明视觉信息确实关键,而辅助任务能强迫模型把视觉信息编码进潜变量里。

Infra(训练 / 推理工程)

  • 训练硬件(GPU 型号/数量/总卡时):论文全文未披露。
  • 推理速度/控制频率/延迟:论文未给出 OpenHelix 自身的 Hz 或延迟数字;“背景与定位”部分引用的 RT-2(55B 模型 1~3 Hz、5B 模型约 5 Hz)与 BC-Transformer(约 50 Hz)是作为动机背景引用的其他工作的数字,不是 OpenHelix 自己的实测值,本页不将其归到本工作名下。
  • 异步推理的”步长 1~60”是 System1(3DDA)相对 System2(MLLM)调用频率的比值,不是绝对帧率;论文没有给出两个子系统各自的绝对推理频率。
  • 目前只在 CALVIN 仿真中验证,尚未部署到真实机器人或人形机器人(见”创新点与影响”作者自述局限)。

评测 benchmark

CALVIN-D(是否需要双系统,section 2.2):对比单系统 RoboFlamingo(RF,内部用 MLLM)与纯小模型 3DDA 在动态场景下的表现:

模型StaticLeftForwardDiagonalCircle
RF(单系统,含 MLLM)1000000
3DDA(纯策略,无 MLLM)8284466780

RF 静止场景近乎满分,但物体一动就完全失败(RF 依赖前 6 帧图像做 LSTM 潜变量推理,训练/测试分布不一致导致崩溃);3DDA 反而在动态场景表现更稳(甚至部分指标高于静止场景)。论文据此论证”只有真正结合 MLLM 泛化能力与小模型高频反应能力的双系统,才能兼顾两种场景”。

投影层预对齐消融(section 2.3.3):见”训练方法”第 3 点——不做预对齐,任意 MLLM 训练策略组合下 5 项指标全部为 0。

MLLM 是否足够利用视觉信息(section 2.5):

MLLM 类型辅助任务12345平均长度
MLLM(prompt-tuning)94776760473.45
纯 LLM(去掉视觉输入)77482616101.77
MLLM(prompt-tuning)98927672634.01

最终结果(论文 Table 8,完整 1,000 条评测,CALVIN / CALVIN-E):

配置CALVIN 1-5CALVIN 平均长度CALVIN-E 1-5CALVIN-E 平均长度
Only Policy(无 MLLM)92.2/78.7/63.9/51.2/41.23.2765.2/39.1/20.3/11.7/6.11.42
MLLM(PT)+Policy(P)92.2/79.2/65.0/52.9/40.93.3071.3/44.9/28.4/17.5/10.31.72
MLLM(PT)+AUX+Policy(P)+Asy(10)93.3/81.8/67.9/56.6/46.03.4578.9/57.1/40.2/29.5/20.22.26
MLLM(PT)+AUX+Policy(P)+Asy(60)92.8/79.7/67.5/57.3/46.93.4478.1/56.5/38.9/27.0/19.52.20

结论(论文自陈):(1)双系统整合主要提升语言泛化场景(CALVIN-E)的表现;(2)辅助任务对标准任务和泛化任务都有明显帮助;(3)异步推理步长对整体性能影响很小,即便 MLLM 只在一幕内推理一次(Asy(60))性能也基本不掉。

GitHub README 更新结果(2025/06,晚于论文,EP_LEN=360,与同期基线对比,论文之外的补充实验):

方法12345平均长度
MLLM(PT)+Policy(P)96.387.377.566.555.53.83
MLLM(PT)+AUX+Policy(P)+Asy(10)97.191.482.872.664.14.08
RoboDual94.482.772.162.454.43.66
UniVLA95.585.875.466.956.53.80
Seer94.487.279.972.264.33.98
GR-MG96.889.381.572.764.44.04

README 据此宣称 OpenHelix 在 EP_LEN=360 设置下”在双系统 VLA 模型中达到 SOTA”。

创新点与影响

  • 把”双系统 VLA”这一快速涌现但各家做法差异很大的方向(LCB/DP-VLA/HiRT/RoboDual)第一次做了统一变量控制的横向消融,而不是各自在不同 MLLM/策略/环境设置下号称”更优”。
  • 消融本身给出了三条可直接复用的经验结论:预训练策略优于从零训、MLLM 用 prompt-tuning 而非全量微调更能保住泛化能力(尤其体现在语言泛化 CALVIN-E 上)、投影层必须先预对齐否则训练完全失败。
  • 关键的负面/警示性发现:现有(包括本文自己复现的)双系统潜变量传递方式对视觉变化不敏感,<ACT> token 基本只是复述文本语义;论文用词相似度分析和”移除视觉信息几乎不掉分多少”(纯 LLM 版本 1.77 vs 完整 MLLM 3.45,虽有差距但仍远未达到”视觉主导”的地步)共同指出:双系统范式目前并没有真正让 MLLM 的视觉推理能力发挥作用,加一个辅助多模态回归任务能部分缓解(3.45→4.01)但未根本解决。
  • 提供了一个可复现、可下载权重的开源基线(对标 Figure AI 闭源的 Helix),而非仅停留在论文层面。
  • 作者自陈局限(Discussion & Limitation 节,原文列出 5 条,均为”尚未做到”而非”已发现的缺陷”):(1)尚未部署到真实机器人;(2)下游策略执行速度尚不够快;(3)尚未在物理机器人上成功运行;(4)尚未部署到人形机器人;(5)尚未实现人形机器人间协作。作者称这只是”初版技术报告”,会持续更新。

原始链接

一手源存档(sources/)