一句话定位
Ai2 提出的”动作推理模型”(Action Reasoning Model, ARM)新范式:在动作 token 之前先自回归吐出深度感知 token 和图像平面上的视觉推理轨迹(visual reasoning trace),把动作预测变成显式、可解码、可编辑的三段式链式推理,仅用约 26.3M 样本(比 π0 的 9.03 亿样本小一个数量级)即在 SimplerEnv/LIBERO/真机上超过 GR00T N1、π0-FAST 等模型,且权重、数据、训练代码全部开源。
背景与定位
MolmoAct 属于 2024-2025 年 VLA 加入”推理链”的一支,直接对话对象是 ECoT(OpenVLA 系的子目标文本 CoT)、CoT-VLA(视觉子目标帧)、ThinkAct(动作对齐 RL + 视觉潜在规划)与 Emma-X(2D 抓手轨迹 + 子任务文本)。论文作者认为这些方法的推理载体(潜在向量、文本子目标)“难以在真实世界中落地、精度不够支撑操作”;MolmoAct 的做法是让每一步推理都直接可解码为图像/3D 空间中的可视对象——深度图、图像平面轨迹线——因此称为”reasoning in space”而非”reasoning in language”。
模型骨干沿用 Ai2 自家的 Molmo 视觉语言模型(ViT 编码器 + MLP 连接器 + 解码器 LLM),继承 Molmo 的高分辨率裁剪、双层特征拼接、2×2 attention pooling 等设计;与 GR00T N1 用 DiT/flow-matching 动作头、π0 系 用扩散/flow-matching 专家不同,MolmoAct 坚持”纯自回归 token 化”路线(继承 RT-2/OpenVLA),把深度、轨迹、动作都表示为离散 token 一次性由同一个 Transformer 吐出。这也是论文强调的”全开放”定位——不仅放权重,还放训练代码、预训练/中训练全部数据混合与中训练自采数据集(MolmoAct Dataset),对标同类”开权重但不可复现”的 VLA。
模型架构
整体:单一自回归 Transformer(VLM 主干 + 动作/感知/轨迹 token 头共享同一词表和解码器),无独立动作专家网络、无扩散/flow-matching 头。
VLM 主干:两个变体,config 数字见 Table 3(均为论文原文):
- MolmoAct-7B-D(主力/demo 模型):视觉编码器 SigLIP2 ViT-SO400M/14 384px(383M 参数,dim 1152,27 层,patch 14,384×384 输入),LLM 为 Qwen2.5-7B(7.6B 参数,dim 3584,MLP dim 37888,SwiGLU,28 层,28 attention heads / 4 KV heads 即 GQA,RoPE theta=1M,dropout 0.1);V-L 连接器 121M 参数(MLP dim 37888,2×2 pool,pool dim 1152,pool heads 16)。
- MolmoAct-7B-O(最开放版):视觉编码器 OpenAI CLIP ViT-L/14 336px(278M 参数,dim 1024,23 层,336×336 输入),LLM 为 OLMo-2-1124-7B(7.3B 参数,dim 4096,MLP dim 22016,32 层,32 heads/32 KV heads 即标准 MHA,theta=0.5M,dropout 0.1);连接器 75M 参数。
图像预处理沿用 Molmo 的多裁剪方案:一张低分辨率全图 + 若干高分辨率方形裁剪(默认 4-patch/约 56px 重叠边距),CLIP 分支保留长宽比并做黑边 padding,SigLIP2 分支直接方形 resize;ViT 特征取倒数第三层(CLIP)/倒数第四层(SigLIP2)与倒数第十层拼接,经 2×2 attention-pooling 降采样后过 MLP 投影到 LLM 空间;多图输入靠插入 “Prefix i” 文本 token 区分。
三段式动作推理链(核心创新):给定 RGB 观测 I 和语言指令 T,模型按固定顺序自回归生成
- 深度感知 token d:一个专用 VQVAE 把 DepthAnything-V2 生成的稠密深度图量化成 M=100 个 token、码本大小 N=128(
⟨DEPTH_1⟩…⟨DEPTH_128⟩),specialist-to-generalist 蒸馏——VQVAE 产出的深度串作为 ground truth,让 VLA 直接自回归预测这串 token; - 视觉推理轨迹 τ=(p₁,…,p_L),1≤L≤5(即 0-4 段折线),每个 pᵢ=(uᵢ,vᵢ)∈{0,…,255}²,p₁ 是当前帧末端执行器像素位置,其余点从当前帧到 episode 终点均匀采样,最多 3 个中间点;
- 动作 token a=(a₁,…,a_D):每个动作维度按数据集分位数归一化到 [1st,99th] percentile 后离散化为 256 个 bin。与 RT-2/OpenVLA 把 256 个 bin 映射到词表尾部任意 256 个 token 不同,MolmoAct 取 Qwen2 tokenizer 最后 256 个 byte-level BPE token(天然按字典序排好),按单调顺序一一对应到 256 个 bin,构成”顺序保持”的动作词表 V_action——这个初始化被作者认为显著加速了动作头收敛。
三者服从联合分布 p(d,τ,a|I,T) = Πp(dᵢ|·)·Πp(τⱼ|·,d)·Πp(aₖ|·,d,τ),即后一段始终以前一段为条件,实现”先感知深度、再规划轨迹、最后出动作”的显式链式推理。
可操控性(steerability):推理时把用户在触屏/网页上手绘的轨迹 τ 直接叠加到输入图像上(I⁺=I⊕τ),模型条件化在 I⁺ 上生成动作 p(a|I⁺,T)——即用视觉轨迹而非语言重新指挥模型,论文验证这比语言指令更精确、更不受”提示语句法窄化”影响。
后训练动作分块:post-training 阶段用 Action-Chunking(N=8 步一个 chunk)缓解 no-op 退化;LoRA 微调(rank 32, alpha 16, dropout 0,对所有 linear 层加 adapter),仿真 batch 128、真机 batch 64。
数据
预训练混合(26.3M 样本,全部转成 action-CoT 格式):
- OXE 子集(RT-1 + BridgeData V2 + BC-Z,共 10.5M 样本)转成 action reasoning data(深度 token + 轨迹 + 动作三段一起标注);
- 同一批 OXE 数据再各自转成 trajectory-conditioned action data(只给轨迹条件预测动作,用于练可操控性)10.5M;
- 辅助 atomic depth data 1.5M、辅助 atomic trace data 1.5M(各自单独只预测深度/轨迹,不接动作);
- 多模态网络数据 2M(Molmo SFT 阶段用的 VQA v2、TextVQA、OK-VQA、ChartQA、DocVQA、InfographicVQA、AI2D、A-OKVQA、AndroidControl、ScienceQA、TabMWP、ST-VQA、TallyQA、DVQA、FigureQA、PlotQA、PixMo、LVIS 等)。
- 采样比例(Figure 3,右侧”实际训练用子集”饼图):RT-1 20% + BridgeData V2 12.5% + BC-Z 7.5%(action reasoning 类,合计 40%)与同样 20/12.5/7.5%(trajectory-conditioned 类,合计 40%)、辅助深度 7.5% + 辅助轨迹 7.5%、多模态网络数据 5%,加总 100%。
MolmoAct Dataset(论文首次发布的中训练自采数据):单臂 Franka(移动平台,类似 DROID 底盘)采集,10,689 条轨迹、93 个操作任务,平均每条轨迹 112 步,两个月、5 名全职操作员按严格流程采集;分两部分:
- 家庭环境数据 7,730 条 / 73 个任务 / 20 个动词(客厅、厨房、浴室、卧室),长时程任务(如”收拾餐具”)拆成子任务(“把碗放进洗碗机""把叉子放进水槽""盖上锅盖”)分别采集;
- 桌面数据 2,959 条 / 20 个原子任务(开/取/翻转/放/关等原子动作,多物体变体)。 两个外部相机视角 + 一个腕部相机;家庭环境 15 Hz、桌面 20 Hz 记录。中训练把该数据集转成 1M action reasoning 样本 + 1M 轨迹条件动作样本(合计 2M,与”10,689 条轨迹 × 平均 112 步 ≈ 120 万帧”量级吻合)。
深度 VQVAE 训练数据:在 RT-1、BridgeData V2、BC-Z 的 1000 万张深度图(DepthAnything-V2 生成)上训练重建目标 20 epoch,图像统一 resize 到 320×320 以保证每图 100 个深度 token。
规模对比(论文原文口径):MolmoAct 预训练仅用约 26.3M 样本,比 π0 的至少 903M 样本预训练规模小一个数量级;GR00T N1 训练样本约 6 亿(博客口径)。
训练方法
三阶段流水线(Figure 2):
- 预训练:在上述 26.3M 样本混合上,100k gradient steps,batch 512,256×H100,耗时 38 小时(7B-D),学习率 ViT/连接器 1e-5、LLM 2e-5,warmup 200 步,cosine decay 到 10%,AdamW(β=0.9/0.95, eps=1e-6)。7B-O 用相同配方(32 小时,8192 GPU-hours)。注:附录注明 MolmoAct-7B-D-Pretrain 实际训了 150k 步,但 100k 步时表现已最优。
- 中训练:在 MolmoAct Dataset 转成的 2M 样本(1M action reasoning + 1M trajectory-conditioned)上继续训练,50k steps,batch 256,128×H100,18 小时(7B-D,2,304 GPU-hours);学习率降到 ViT/连接器 5e-6、LLM 1e-5。每条原始样本(两个侧视 + 一个腕视)被拆成两条侧视-腕视配对样本;深度/轨迹标签只由侧视图生成,腕视图仅用于动作 grounding。
- 后训练(任务/embodiment 特定微调):每个新任务采集 30-50 条遥操作演示,套用同样的 action-CoT 标注流程,改用 Action-Chunking(N=8)+ LoRA(rank 32, alpha 16)微调;LIBERO 各任务 suite 训练步数 4-8 万步不等(spatial/object 5万、goal 4万、long 8万,GitHub 复现脚本口径)。
关键工程细节:
- 深度 token 词表嵌入:把 Qwen2.5-7B 词表里前 130 个 padding token 直接替换为 128 个深度 token + START/END;OLMo2-7B padding token 不足 130 个,先把词表/lm-head pad 到 512 的下一个倍数再替换(沿用 LLaVA-AURORA 的解冻 embedding+lm-head 方案)。
- 序列长度上限 2304 token(预训练和微调统一);家庭/桌面采集数据原始分辨率 640×480,mid/post-training 触发高分辨率裁剪;为对齐 OXE 预训练分辨率,预训练时把自采图像从 640×480 降到 320×240。
- 视觉推理轨迹的 ground truth 由 Molmo 自己生成:“point to the robot gripper”(双臂再加 left/right)逐帧点定位,聚合成折线,而非用 bbox 检测器(作者在局限性中明确指出 detector 类方法会让轨迹点坍缩到框中心,损失空间多样性)。
Infra(训练 / 推理工程)
集群:Ai2 自建 GPU 集群 Jupiter(德州奥斯汀,由 Cirrascale Cloud Services 运营,Beaker 调度),128 台服务器共 1,024 张 NVIDIA H100(80GB HBM3, 700W);单机 2× Intel Xeon Platinum 8468、2TB DDR5、18TB 本地 NVMe;800Gbps 接入 WEKA 存储(1PB NVMe SSD + 5PB HDD,实测 761Gbps 聚合吞吐);跨节点 RDMA over InfiniBand 两层 rail-optimized 全对分网络(单机 8×400Gbps IB,3.2Tbps 峰值);机柜级液冷,PUE 1.2,H100 满载约 75°C(均值 60-65°C)。
训练实现:PyTorch FSDP + SDPA attention;AMP bfloat16 混合精度,LayerNorm 和 RoPE 保留 fp32;loss 归一化按全局平均 token 数而非单卡本地数(避免短样本+上采样权重的偏差);LoRA 适配器不做 FSDP 切分,每卡保留全量副本 + 梯度同步 hook。
算力开销(Table 4,GPU-hours = GPUs × Time,均为论文原文):
| 阶段 | 模型 | GPUs(H100) | 全局 batch | steps | 时长(小时) | GPU-hours |
|---|---|---|---|---|---|---|
| 预训练 | 7B-D | 256 | 512 | 100k | 38 | 9,728 |
| 预训练 | 7B-O | 256 | 512 | 100k | 32 | 8,192 |
| 中训练 | 7B-D | 128 | 256 | 50k | 18 | 2,304 |
| 中训练 | 7B-O | 128 | 256 | 50k | 15 | 1,920 |
注:论文引言段落里另给出”MolmoAct 预训练仅耗时 9,216 GPU-hours,比 GR00T N1 的 5万 GPU-hours 少 5.4 倍”,与训练配方章节 Table 4 给出的 9,728 GPU-hours(256×38)不一致——原文存在这一处内部数字矛盾,本页以有明确 GPU×小时拆解的 9,728 为准(GR00T N1 自陈的约 5 万 H100 GPU-hours 见 GR00T N1)。
推理:官方推理路径为 HuggingFace Transformers 或 vLLM(vllm==0.8.5, transformers==4.52);未披露具体 FPS/控制频率数字,但论文在”局限性”中明确承认”模型的控制推理频率与真机数据采集频率(15/20Hz)之间存在差距”,推测源于服务器-机器人通信延迟以及需要额外解码深度/轨迹 token 的开销,并将”降低推理延迟”列为未来工作方向。博客口径:64×H100 上单任务微调约 2 小时。边缘设备部署硬件未披露。
评测 benchmark
SimplerEnv(Google Robot,Visual Matching,Table 1,论文原文):MolmoAct 零样本 70.5% 平均(Pick Coke Can 71.3%/Move Near 73.8%/Open-Close Drawer 66.5%),超过 GR00T N1(1.8%)、π0(58.7%)、π0-FAST(61.9%)、Magma(68.4%)、SpatialVLA(70.0%);用 RT-1 子集微调后提升到 71.6%,比 Magma 高 3.2 个百分点。Variant Aggregation(分布外泛化)微调后 72.1%,比第二名 RT-2-X(64.3%)高 7.8 个百分点。
LIBERO(Table 2,LoRA 微调,论文原文,四个 suite 平均成功率%):
| 模型 | Spatial | Object | Goal | Long | 平均 |
|---|---|---|---|---|---|
| TraceVLA | 84.6 | 85.2 | 75.1 | 54.1 | 74.8 |
| OpenVLA | 84.7 | 88.4 | 79.2 | 53.7 | 76.5 |
| SpatialVLA | 88.2 | 89.9 | 78.6 | 55.5 | 78.1 |
| π0-FAST | 96.4 | 96.8 | 88.6 | 60.2 | 85.5 |
| CoT-VLA | 87.5 | 91.6 | 87.6 | 69.0 | 83.9 |
| ThinkAct | 88.3 | 91.4 | 87.1 | 70.9 | 84.4 |
| MolmoAct-7B-D | 87.0 | 95.4 | 87.6 | 77.2 | 86.6 |
MolmoAct 在长时程 LIBERO-Long 上比第二名 ThinkAct 高 6.3 个百分点,总平均 86.6% 为全部对比方法最高。
真机(单臂/双臂 Franka,6 任务,25 trial/任务,task progression 指标):比 π0-FAST 平均高 10%(单臂)/22.7%(双臂)。
分布外泛化(真机,语言变体/空间变体/干扰物/新物体四轴):比 π0-FAST 平均高 23.3%。
中训练数据消融(close_lid/rotate_pot/pour_tea 三任务,各 10 trial):加了 MolmoAct Dataset 中训练比不加平均高 5.5%;即使不做中训练,MolmoAct 仍分别比 π0-FAST、OpenVLA 高 14.8%/10.9%。
语言指令跟随(Elo 竞技场,n=100 评委,1500+ 票):模拟场景下 MolmoAct 对 SpatialVLA 胜率 58%、对 OpenVLA 胜率 81%;视觉轨迹生成任务上对 Gemini-2.5-Flash/GPT-4o/HAMSTER 的 Elo 分同样显著更高(95% 置信区间不重叠)。
可操控性(pick_up_the_bowl 任务,15 trial):视觉轨迹操控成功率 75%,比语言指令操控高 33 个百分点;语言指令操控上 MolmoAct 本身也比 π0-FAST 高 29 个百分点。
创新点与影响
贡献:(1) 提出”动作推理模型(ARM)“新类别——把深度感知、空间规划、动作预测统一成单一自回归 Transformer 里的三段链式 token,每段都可独立解码可视化(深度图/2D 轨迹叠加/机器人动作),而非隐藏在潜在向量或纯文本子目标里;(2) 顺序保持的动作 token 词表初始化(取 Qwen2 词表尾部按字典序排列的 256 个 BPE token 单调映射到 256 个分位数 bin),作者称显著加速训练;(3) 首次发布用于中训练的 10,689 条轨迹 MolmoAct Dataset,并证明其带来约 5.5% 的通用性能增益;(4) 用视觉轨迹叠加(I⊕τ)而非语言重新指挥模型,论证了比语言指令更精确、更抗分布外措辞的操控接口;(5) 用远少于同类方法的数据规模(26.3M vs π0 的 9.03 亿)取得多项 SOTA,论证了”结构化推理换数据效率”的路径。
作者自陈局限(Appendix G,论文原文):
- 末端执行器相机遮挡:轨迹预测主要依赖前置相机视野,若末端执行器被遮挡,轨迹预测和整体性能会下降;建议用广角/鱼眼相机配合 SLAM 做时序而非纯空间推理作为潜在解法。
- 可操控性的鲁棒性有限:纯 2D 视觉轨迹缺少显式深度信息,操控时容易在图像平面内跟随轨迹但在相机深度轴上出现意外/不精确的平移;作者提出未来可复用模型自身预测的深度 token 把轨迹提升到 3D。
- 推理速度:控制推理频率与数据采集频率(15/20Hz)不匹配,部分源于需要额外解码深度和轨迹 token 的开销,作者将其列为未来通过 VLM 优化或专门的小参数边缘模型改善的方向。
- 深度 token 精度有限:固定 100 个 token 表示深度,对高精度操作任务的深度分辨率不够,增大 token 数或可改善但未做实验验证。
后续影响:GitHub 仓库显示 Ai2 已在 2026 年 5 月发布后继模型 MolmoAct2(更快更强,仓库内自述,细节未在本论文披露范围内,不在本页展开)。
原始链接
- arXiv 摘要:https://arxiv.org/abs/2508.07917
- arXiv PDF:https://arxiv.org/pdf/2508.07917
- 官方博客:https://allenai.org/blog/molmoact
- GitHub:https://github.com/allenai/MolmoAct
- HF 模型(7B-D):https://huggingface.co/allenai/MolmoAct-7B-D-0812
- HF 模型合集:https://huggingface.co/collections/allenai/molmoact-689697591a3936fba38174d7
- HF 数据合集:https://huggingface.co/collections/allenai/molmoact-data-mixture-6897e583e13b6c2cf3ea2b80
- MolmoAct Dataset:https://huggingface.co/datasets/allenai/MolmoAct-Dataset
一手源存档(sources/)
- molmoact—blog — Ai2 官方博客快照(sources/embodied/2025/molmoact—blog.md)
- molmoact—github-readme — GitHub README 快照(sources/embodied/2025/molmoact—github-readme.md)
- molmoact—hf-card — HuggingFace MolmoAct-7B-D 模型卡快照(sources/embodied/2025/molmoact—hf-card.md)
- arXiv 2508.07917 全文 PDF(arXiv 原文 PDF,不入 git)