机器人动手前,要不要先在脑子里演一遍未来
2026 年 10 月 7 日,斯坦福开源了 OpenWAM,一个把视频预测与动作生成装进同一架构的世界-动作模型框架。
它要回答的,是机器人领域吵了很多年的一道选择题:动手之前,要不要先在脑子里演一遍未来。
视觉语言动作模型只会"看到什么做什么",预测未来是它们的盲区。
纯世界模型只会预测下一帧画面,把它变成机械臂指令是它们的盲区。
OpenWAM 把两条路线放进同一条流水线,用注意力掩码做出四种可插拔的组合程序。
论文挂在 arXiv 2610.07922,作者名单里有李飞飞和吴佳俊。
四条路线共享同一视频骨干与同一训练目标,只有生成顺序和注意力关系不同。
这是第一次有人把"先看再动""先动再看"这类路线之争,放到可复现的统一实验台上比较。
两派之争为什么吵不出结果
先看再动的代表,是视觉语言动作模型里的主流做法。
OpenVLA、GR00T 这类模型,把相机画面和任务指令直接映射成动作。
它们的优势是闭环控制直接,训练配方成熟。
它们的问题是不会推演:遇到没见过的状态,只能硬着头皮猜。
先动再看的代表,是世界模型流派,它们先学会预测未来帧。
预测未来对规划有用,但世界模型本身不知道动作该怎么出。
把两者拼起来,就是世界-动作模型,这两年突然热了起来。
各家世界-动作模型用不同骨干、不同数据集、不同训练配方,结果根本没法比。
一篇论文说自己的路线好,另一篇说自己的路线好,谁也说服不了谁。
OpenWAM 的野心,就是给这场混战提供一个共同地基。
四种交互程序,只有注意力掩码不同
共同地基的第一步,是定义四种交互程序:VTA、ATV、Joint、Decoupled。
VTA 先预测视频,再根据预测出的视频生成动作。
ATV 先生成动作,再根据动作预测视频。
Joint 同时去噪视频与动作,未来 token 之间双向注视。
Decoupled 最反直觉,视频与动作的未来 token 互不注视,各自独立生成。
四种程序跑在同一个骨干上,tokenization、训练目标、下游配方全部一致。
差异只在注意力掩码:谁看谁、谁先生成、谁的条件干净谁的条件带噪。
所有程序都用 latent flow matching 训练。
每 4 帧视频 latent 对齐一个 16 步动作块,本体感知按块注入。
VTA 与 ATV 的第二阶段,在训练时学习真实轨迹,推理时用第一阶段预测当条件。
每种程序都接收任务指令与已观测历史,只是内部生成顺序不同。
掩码图把未来视频与未来动作标成不同的生成轮次。
干净的观测是白色,带噪的预测目标是蓝色。
打开掩码图,一眼就能看出四种路线在注意力上到底差在哪。
这套设计让生成顺序第一次成为可实验的变量,而不是各家的口头主张。
后面所有实测数字,都是这四种程序在同一地基上跑出来的。
混合 Transformer:视频与动作各配一个专家
骨架之外,OpenWAM 还有一个架构决定:视频与动作各自配一个专家。
视频专家 5B 参数,来自 Wan2.2-5B 的宽度适配拷贝。
动作专家 2B 参数,是单独训练的轻量模型。
两个专家组成混合 Transformer,简称 MoT。
各自保留独立的归一化、投影与前馈层。
注意力层跨专家共享:视频 token 与动作 token 打包进同一条序列。
任务文本通过各自的交叉注意力进入。
这个设计比共享 DiT 更贵一点,但实测值回票价。
在 LIBERO-Long 上,MoT 比共享 DiT 高出 5.0 分,对应 VTA。
同样的对比,Joint 高出 3.0 分。
预训练账本:334 万条轨迹与 14 天 B200
四个程序共享的视觉底座,来自一次针对机器人视频的预训练。
起点是 Wan2.2-5B 通用视频模型,OpenWAM 把它往机器人动作数据上掰。
预训练语料有 334 万条轨迹,合计 1.46 万小时源视频。
数据横跨真实与合成的机器人操作、人类引导操作、人类交互。
这一阶段只用视频,不碰动作标签与本体感知。
因果注意力让视频可以分块生成,每块只用当前与过去的观测。
预训练在 32 张 NVIDIA B200 上跑了 14 天。
产出是全框架共享的视觉底座,也是下游所有实验的起点。
| 数据集 | 轨迹/片段 | 小时 |
|---|---|---|
| Open X-Embodiment | 1,300,749 | 1,911.29 |
| AgiBot World Beta | 1,003,672 | 2,976.4 |
| Ego-Exo4D v2 | 5,035 | 221.26 |
| InternData-A1 | 637,498 | 7,433.91 |
| RoboCOIN | 183,157 | 1,306.83 |
| RoboMIND | 107,877 | 305.5 |
| FastUMI-100K | 92,823 | 461.77 |
| UMI family | 5,430 | 24.60 |
最大的两块,是 Open X-Embodiment 的 130 万轨迹与 AgiBot World Beta 的 100 万轨迹。
合成数据 InternData-A1 占了时长的大头,7433 小时。
这份视频底座值不值,看消融就知道:机器人视频预训练把 VTA 从 68.4 拉到 97.8。
同样的底座,Joint 从 62.2 拉到 96.6。
而随机初始化的视频专家,VTA 只有 20.0 分,Joint 只有 27.2 分。
通用视频模型加机器人视频预训练,是这套成绩的根基。
LIBERO 实测:四种程序与十一个基线
主战场是 LIBERO 四套件:Object、Goal、Spatial、Long。
每个种子每套件 500 次闭环评测,50 个任务样本各 10 次。
VTA 平均 98.6%,四个套件全部超过 97%。
ATV 平均 96.8%,Joint 平均 97.6%,Decoupled 平均 98.0%。
对比基线里,OpenVLA 只有 76.5%,π0 是 94.1%。
| 方法 | Object | Goal | Spatial | Long | 平均 |
|---|---|---|---|---|---|
| OpenVLA | 88.4 | 79.2 | 84.7 | 53.7 | 76.5 |
| OpenVLA-OFT | 98.4 | 97.9 | 97.6 | 94.5 | 97.1 |
| π0 | 98.8 | 95.8 | 96.8 | 85.2 | 94.1 |
| π0.5 | 98.2 | 98.0 | 98.8 | 92.4 | 96.9 |
| GR00T-N1 | 97.6 | 93.0 | 94.4 | 90.6 | 93.9 |
| Motus | 99.8 | 96.6 | 96.8 | 97.6 | 97.7 |
| Fast-WAM | 100.0 | 97.0 | 98.2 | 95.2 | 97.6 |
| LingBot-VA | 99.6 | 97.2 | 98.5 | 98.5 | 98.5 |
| OpenWAM-VTA | 99.4 | 98.4 | 98.6 | 97.8 | 98.6 |
| OpenWAM-ATV | 98.0 | 97.2 | 96.6 | 95.4 | 96.8 |
| OpenWAM-Joint | 98.2 | 97.8 | 97.6 | 96.6 | 97.6 |
| OpenWAM-Decoupled | 99.0 | 98.0 | 97.8 | 97.0 | 98.0 |
最意外的结论,藏在 Decoupled 与 Joint 的对比里。
在 LIBERO-Long 上,Decoupled 拿到 97.0%,Joint 只有 96.6%。
未来视频与未来动作完全不互相注视,居然不输给双向注视。
说明强控制并不要求视频与动作的未来 token 互相打照面。
注意力掩码的影响,在短套件上同样被高基线压得很平。
OpenWAM 四种程序内部,榜首与榜尾只差 1.8 分。
全部方法里,有七种都超过了 97%。
这套对比第一次让生成顺序成为被定量比较的变量。
结论是顺序重要,但没有哪条路线通吃所有任务。
VTA 在 Object 上 99.4%,在 Spatial 上 98.6%。
组合顺序的选择,应该跟着任务走,而不是跟着信仰走。
反事实数据:演示没告诉你的那部分未来
比四种程序更狠的,是 OpenWAM 对训练数据的处理:造反事实。
一段演示只告诉你演示者做了什么,不告诉你别的动作会怎样。
换输入救不了这个缺口,缺口在训练数据的因果结构里。
OpenWAM 的做法,是回到模拟器里把轨迹重放,尝试替代动作。
于是有了 LIBERO-Long-CF:10 个任务,32000 段反事实轨迹。
演示只有 500 段存根,反事实有 32000 段。
每段反事实含 128 个控制指令,总控制数 409.6 万。
按 20Hz 折算,反事实等价 56.9 小时,演示只有 1.92 小时。
干预分成 7 个家族:停止缩放、反向重定向、轴偏置、偏航扰动。
还有随机噪声、夹爪干预、随机时长干预。
夹爪干预占了 31.3%,是最常见的改动。
75% 的反事实从演示中途出发,25% 先加一个扰动再出发。
扰动后的起点,末端执行器平均偏离演示路径 3.34 厘米。
61.6% 的起点里,物体会跑出演示配置。
接触率 90.4%,一半起点检测到抓取,72.3% 改变了物体配置。
数据质量先验成立:反事实确实在教"别的动作会怎样"。
同一起始状态的分支会一起留在训练或测试侧,避免泄漏。
每个转移独立成样本,损失不直接对比分支对。
冻结逆动力学模型:21.5% 到 84% 的迁移实验
反事实数据的价值,在冻结逆动力学模型的迁移实验里爆发。
逆动力学模型负责把未来视频翻译成动作轨迹。
OpenWAM 训练了两个接口版本:局部上下文与全上下文。
局部版本只接收当前观测、本体感知与给定的未来视频。
全版本额外接收任务语言与任务前历史。
冻结在 LIBERO-Long 上训练好的逆动力学模型,去适配 4 个新任务。
四个新任务来自 LIBERO-90,不在逆动力学模型的训练集里。
换任务时,只有视频预测器重新适配,逆动力学模型一次都不再训练。
| 动作组件 | 任务64 | 任务74 | 任务21 | 任务45 | 平均 |
|---|---|---|---|---|---|
| VTA 参考 | 94 | 86 | 92 | 100 | 93.0 |
| 全上下文·仅演示 | 88 | 90 | 0 | 0 | 44.5 |
| 全上下文·混合 | 54 | 92 | 4 | 38 | 47.0 |
| 局部上下文·仅演示 | 36 | 50 | 0 | 0 | 21.5 |
| 局部上下文·仅反事实 | 80 | 92 | 90 | 76 | 84.5 |
| 局部上下文·混合 | 74 | 86 | 88 | 88 | 84.0 |
| 原始 VTA 未适配 | 42 | 0 | 0 | 0 | 10.5 |
局部上下文逆动力学模型只吃演示,平均 21.5%,几乎不可用。
加入反事实数据后,直接跳到 84.0%。
只吃反事实更高,84.5%。
全上下文逆动力学模型加上混合数据,也只有 47.0%。
反事实是局部接口能用的前提:没有它,局部信息根本不够。
保留演示还能保住源任务技能:混合训练 94.4%,反事实单独是 90.6%。
逆动力学模型的复用,把"换任务重训"变成了"换视频预测器"。
正向动力学:未来真的会跟着动作走吗
正向动力学模型回答另一个问题:未来真的会跟着动作走吗。
OpenWAM 准备了 2560 个反事实未来:10 个任务各 160 个起点、16 条动作分支。
每个模型拿到相同观测与候选动作,预测对应未来。
指标是 RGB 均方误差与结果准确率。
结果准确率问:预测里最接近真实结果的那个,是不是所给动作的后果。
只吃演示时,16 选 1 的准确率只有 21.1%。
加入反事实后,飙到 71.3%,翻了三倍还多。
反事实还把 RGB 均方误差砍掉 34.5%。
模型只有见过替代动作的后果,才分得清动作与未来的因果。
这是 OpenWAM 全篇最硬的一个实验证据。
统一模型与特化模型:单模型部署 vs 单项精度
最后一道题:能不能把策略、逆动力学、正向动力学塞进同一个模型。
OpenWAM 真训练了一个统一 checkpoint,60% 联合生成、20% 逆动力学、20% 正向动力学。
统一模型在 LIBERO-Long 上拿到 92.8%,对比 UVA 的 88.0%。
动态指标上,统一模型也全面领先 UVA。
但特化仍然更值:专用策略模型成功率更高。
单独训练的逆动力学与正向动力学,反事实预测更准。
统一模型的意义是证明可行,特化模型的意义是证明更好。
工程上怎么选,取决于你要的是单模型部署还是单项精度。
真实双机械臂:三个任务各 30 秒演示
模拟器之外,OpenWAM 还上了真实双机械臂。
两台 Franka Research 3,加上双腕相机与第三视角相机。
任务是烤面包、拼 2×2 魔方最后一层、按颜色分杯。
VTA 平均 92.1%,Joint 平均 91.9%。
每个任务只用 200 段左右的演示,各跑 30 秒。
真实硬件上的差距,比模拟器上的差距更小。
说明四种程序的差异主要影响数据效率,不影响部署性能。
对真实机器人来说,能稳定跑起来比榜上高零点几分重要。
上手路径:一个 pip 安装就能跑冒烟
OpenWAM 从第一天就开源,仓库在 GitHub 的 OpenWAM/OpenWAM。
预训练视频权重挂在 Hugging Face 的 OpenWAM-Stanford 名下。
Python 包叫 openwam,导入名是 open_wam。
最省事的路径,是装完包直接跑一个 sanity 检查。
python -m venv .venv source .venv/bin/activate python -m pip install 'openwam[train,eval]' openwam-sanity \ --cfg configs/examples/public_tiny_synthetic_contract.yaml \ --device cpu --max-batches 1 --rollout-steps 1安装可选 extras,能解锁训练与评估命令。
全部命令在 CPU 上也能跑通冒烟流程。
数据、权重、模拟器源码各自单独准备。
公开配置不含本地路径,路径通过 local_paths.yaml 注入。
局限与下一步
OpenWAM 的复用实验目前全在仿真里,真机迁移是下一步。
冻结逆动力学模型的局部接口很强,但长时程规划还没验证。
反事实数据依赖模拟器重放,真实世界造不出这么干净的反事实。
生成顺序的选择,最后还是要跟着任务与数据走。
论文把代码、权重、配置、评测全公开,复现门槛很低。
这或许是世界-动作模型第一次有了公共基准的味道。
对机器人社区来说,共同地基比单点 SOTA 更值钱。
下一次发布如果再补上真机迁移,OpenWAM 就是世界-动作模型赛道的标准起点。