一句话定位
在 1200 万条第一人称人类操作视频上做生成式预训练(预测未来帧 + 人手关键点轨迹),再迁移到真实机械臂控制;用 ActionVAE 把动作 chunk 压缩成连续隐向量,作为 Chameleon 自回归 Transformer 的额外预测目标,在同一 LeRobot SO100 数据上微调后成功率显著超过 Pi0 与 GR00T N1.5。
背景与定位
VLA 模型的规模化受限于机器人遥操作数据的稀缺——不像 LLM/VLM/生成模型能吃到海量网络数据。论文把已有解法归纳为两条路线:一是扩大机器人数据集本身(open-x-embodiment、BridgeData、DROID 等),二是借用预训练生成模型或 VLM 的先验来缓解数据稀缺,例如把动作离散化接入 LLM 骨干的 rt-2、扩展预训练规模的 openvla,以及把 VLM 与连续动作头解耦的双系统范式(如 pi0、groot-n1-5)。
论文进一步把”未来预测用于机器人学习”的研究细分成三种范式:(1) 显式生成未来目标帧再条件化策略(SuSIE、UniPi、GEVRM、dreamgen-groot-dreams);(2) 未来预测与动作生成融合进单一架构、互相促进(PAD、WorldVLA);(3) 把未来视频预测仅当作预训练目标用于表征学习,而不在推理时使用(bytedance-gr-2、VPP)。RynnVLA-001 属于第三种范式,但在其上叠加了一条渐进式课程:先在海量第一人称视频上学视觉动力学,再引入人体关键点轨迹预测作为视觉-动作的桥接阶段,最后才微调到具体机器人本体——这是本文相对于 GR-2/VPP 的主要方法论增量。
模型架构
Backbone:自回归(AR)Transformer,扩展自 AR 图像生成模型 Chameleon-7B(Meta,7B 参数),沿用其 VQGAN 离散视觉 tokenizer(原生分辨率 512×512)与文本 tokenizer;代码基于 Lumina-mGPT 与 facebookresearch/chameleon 重构。选择 AR 而非扩散/流匹配的原因是”缺少可用的 AR 视频生成框架”,因此把 Chameleon 从图像扩展到 I2V。
训练三阶段(同一套骨干逐阶段续训):
- Ego-Centric Video Generative Pretraining:输入初始帧 + 语言指令,预测未来视频帧(I2V)。序列格式为交替排列
[语言token, 视觉token_t, 语言token, 视觉token_{t+1}, ...](语言指令在每一步都重复给出,而非只给一次,目的是对齐 VLA 推理时”每步动作都同时条件化视觉+语言”的形式)。仅用交叉熵监督离散视觉/语言 token。 - Human-Centric Trajectory-Aware Video Modeling:在阶段 1 权重上继续训练,序列变为
[语言, 视觉token_t, 状态嵌入_t, <ACTION_PLACEHOLDER>, ...]。状态嵌入是人体手腕关键点位置(线性层投影后插入序列);新增的动作头是单层线性层,把<ACTION_PLACEHOLDER>位置的最后隐状态映射到连续动作嵌入空间,用 L1 loss 监督(仅在 placeholder 位置计算),视觉 token 预测目标不变。 - Robot-Centric Vision-Language-Action Modeling:丢弃阶段 2 的动作头,重新初始化一个新的单层线性动作头;视觉输入从单目变成双目(前视角 + 手腕视角);状态嵌入换成机器人关节状态;同时优化两个目标——机器人动作嵌入的 L1 loss(对应 ActionVAE 解码出的动作 chunk)+ 未来帧预测的交叉熵 loss(作为正则化辅助任务)。
ActionVAE:编码器-解码器结构,把一个动作 chunk 压缩成紧凑连续隐向量;人类轨迹和机器人动作运动学空间不同,故训练两个领域专属 ActionVAE(阶段2用人类轨迹 VAE,阶段3用机器人动作 VAE);训练好后可直接对同一本体的未见任务提取动作嵌入而无需重训(论文脚注举例:ActionVAE 从未在”Tower of Hanoi with two disks”等任务上训练过,但提取的嵌入仍可用于下游 VLA 训练)。仓库释出的 ActionVAE 配置(LeRobot 版):backbone=ResNet18,hidden_dim=512,dim_feedforward=3200,encoder 4 层/decoder 7 层,8 head,动作 chunk 长度(num_queries)20,state_dim=6,KL 权重 1e-4,sine 位置编码,单相机(top)。
推理:仅预测动作嵌入、丢弃未来视觉帧生成(帧预测在训练中是有效的正则化辅助任务,但推理时计算昂贵且非必需),预测出的嵌入经 ActionVAE 解码器还原成一段可执行动作 chunk,机器人执行完整 chunk 后采集新观测,闭环重复。
分辨率消融(Calvin 上):384×384 显著优于 256×256——因为 VQGAN 只在 512×512 上预训练,384×384 是重建保真度与算力开销之间的折中;256×256 下 VQGAN 重建质量下降导致视觉 token 失真。
数据
- 阶段1 预训练视频:从网络来源筛选出 11.93M(约1200万)条第一人称(ego-centric)人类操作视频(来源包括 Ego4D、HowTo100M、EPIC-KITCHENS、Something-Something 等),额外从开源机器人数据集(RT-1、BridgeData、Open X-Embodiment、DROID)过滤出 244K 条机器人操作视频一并用于预训练。该阶段刻意不使用任何动作标签(关节状态/末端位姿),强迫模型仅从像素学习隐式物理动力学。
- 数据清洗管线(第4节):① 用姿态估计模型逐帧提取人体关键点(面部、躯干、手部);② Ego-centric 过滤——出现面部关键点的视频(第三人称视角特征)直接丢弃,只保留手腕/手部关键点可见的帧;③ 用 Qwen2-VL-7B 为每条视频生成简短文本描述(刻意仿照机器人指令风格,如”put the bottle in the box”),构成文本-视频监督对。
- 阶段2 轨迹数据:采用 egodex 数据集(Apple Vision Pro 采集的全部上肢关节轨迹),仅取手腕关键点作为末端执行器的近似。
- 阶段3 机器人数据(自采):LeRobot SO100 机械臂遥操作采集,3 类任务——① 捡放绿色方块 248 条演示;② 捡放草莓 249 条;③ 抓笔插入笔筒 301 条。用 3 台不同 SO100 机械臂、不同光照/环境采集;场景从”仅目标物体”到”含干扰物”复杂度递增。
- 消融用基准:Calvin(ABC→D 任务设置)用于模型设计消融(分辨率、动作表示、动作头深度)。
训练方法
三阶段 curriculum:I2V 生成预训练(交叉熵)→ 人体轨迹感知联合建模(视觉交叉熵 + 轨迹嵌入 L1)→ 机器人 VLA 微调(视觉交叉熵 + 机器人动作嵌入 L1,双目标联合优化)。动作以 ActionVAE 隐向量形式作为回归目标,而非直接预测原始动作序列或离散 token。
仓库释出的两份训练配置(均为 GitHub 公开发布的示例/复现配置,供用户在自己 LeRobot 数据上微调,并非论文主结果训练所用的确切超参——论文正文未披露预训练/主结果训练的具体 epoch 数、学习率、GPU 数):
- ActionVAE 训练(README 明确写出):在自采数据上训练 300,000 迭代,batch size = 16 × 8(GPU 数);配置文件另给出 lr=1e-5(backbone 同)、weight decay=1e-4、KL 权重 1e-4、bf16 混合精度、梯度检查点开启。
- Stage 3(机器人 VLA)微调示例配置:batch_size=4,lr=2e-5(几乎无衰减,warmup_epochs=0.01),weight decay=0.1,梯度裁剪 4,bf16 精度(梯度 fp32),FSDP 数据并行,model_parallel_size=1,max_seq_len=16384,7B 模型规模,动作 chunk 长度 20、动作维度 6,图像分辨率 384×384,仅条件化 1 帧观测(condition_frame_num=1)。
消融结论(Calvin,简化 epoch 数、仅作相对比较,详细数字见下方”评测 benchmark”表格):
- 预测 ActionVAE 隐向量(完整模型)优于直接预测原始动作序列(Avg. Len 4.161 vs 4.019)。
- 动作头从单层线性换成 5 层 MLP 反而降低性能(Avg. Len 3.323,低于两个单层线性头变体),论文将其归因于”Transformer 最后隐状态已足够线性可分,加深头部反而引入噪声/过拟合”;注意原文行文中把该降幅描述为”from 4.019 to 3.323”,但按表格该消融的直接对照组应为完整模型的 4.161,此处为原文表述本身的口径,如实转述、不代为修正。
Infra(训练 / 推理工程)
- 训练硬件:论文正文未披露主训练(阶段1/2/3 完整规模)所用 GPU 型号、总 GPU 数与总训练时长。唯一披露的具体资源数字来自 GitHub README 的 ActionVAE 训练脚本说明——batch size 16 × 8 GPUs、300,000 迭代(GPU 型号未披露)。
- 并行与精度:Stage 3 微调示例配置采用 FSDP 数据并行(model_parallel_size=1)、bf16 训练精度(梯度 fp32)、梯度检查点。
- 推理速度:论文未给出具体 FPS / 控制频率 / 端到端延迟数字;只定性说明”推理时丢弃未来视觉 token 生成、仅预测动作嵌入”以降低计算开销、提升实时性。未披露具体硬件与延迟测量。
评测 benchmark
真实机械臂(LeRobot SO100,3 任务 × 3 场景设置,每模型 60 次试验,2 台机械臂各 30 次):
| 方法 | 捡放绿色方块 | 捡放草莓 | 抓笔插筒 | 平均 | SR@1 |
|---|---|---|---|---|---|
| GR00T N1.5 | 65.0 | 53.3 | 48.3 | 55.6 | 37.2 |
| Pi0 | 75.6 | 71.1 | 64.4 | 70.4 | 56.3 |
| RynnVLA-001 | 90.0 | 91.7 | 90.0 | 90.6 | 56.7 |
按场景设置拆分(单目标 / 多目标 / 含干扰物指令跟随):
| 方法 | 单目标 | 多目标 | 含干扰物 |
|---|---|---|---|
| GR00T N1.5 | 63.3 | 46.7 | 56.7 |
| Pi0 | 80.0 | 71.1 | 60.0 |
| RynnVLA-001 | 93.3 | 86.7 | 91.7 |
预训练消融(不同初始化权重,SO100 上,SR@1 一栏 Scratch 仅评测 5 次/任务/场景,其余模型 60 次):
| 初始化 | 平均成功率 | SR@1 |
|---|---|---|
| Scratch(随机初始化) | 4.4 | 0 |
| Chameleon-T2I 权重直接初始化 | 50.0 | 22.8 |
| RynnVLA-001-Video(仅阶段1预训练) | 84.4 | 49.4 |
| RynnVLA-001(阶段1+2完整预训练) | 90.6 | 56.7 |
Calvin ABC→D 消融(简化 epoch,相对比较,Avg. Len 为连续完成子任务数):
| 变体 | 子任务1 | 2 | 3 | 4 | 5 | Avg. Len |
|---|---|---|---|---|---|---|
| 256×256 分辨率 | 92.7 | 83.7 | 73.5 | 62.1 | 53.2 | 3.652 |
| 直接预测原始动作(不用VAE) | 93.8 | 86.5 | 80.4 | 74.2 | 67.0 | 4.019 |
| 更深动作头(5层MLP) | 90.2 | 77.9 | 65.3 | 54.6 | 44.3 | 3.323 |
| 完整模型(384×384 + ActionVAE + 单层线性头) | 95.4 | 88.2 | 82.2 | 78.2 | 72.1 | 4.161 |
其他定性/半定量分析:① 训练数据不含干扰物时,“pick up the strawberry”在有干扰物场景下成功率 0%(0/10,其中5次误抓干扰物),而完整模型(训练数据含干扰物)达 90%(9/10),验证了干扰物数据对指令跟随鲁棒性的关键作用;② 遮挡前视摄像头:目标在腕部摄像头初始视野内时仍可成功,视野外时成功率从 80%(4/5)跌至 0%,右侧目标从 100%(5/5)微降到 80%(4/5),说明前视摄像头主要承担粗定位;③ 抬高前视摄像头改变投影几何后,插笔任务由成功变为失败,说明模型依赖前视摄像头提供的 3D 投影信息做精细空间推理。
创新点与影响
- 把”视频生成式预训练”与”机器人动作预测”统一进同一个 AR Transformer(Chameleon 骨干),并用一个中间阶段(人体关键点轨迹联合预测)显式桥接”纯视觉预测”与”动作预测”之间的鸿沟,区别于 GR-2/VPP 只做纯视觉预训练、或 PAD/WorldVLA 单阶段联合训练的路线。
- 提出 ActionVAE:用领域专属(人类 / 机器人分开训练)的 VAE 把动作 chunk 压缩为连续隐向量作为预测目标,消融显示优于直接回归原始动作序列,且预训练好的 VAE 可直接迁移到未见任务提取动作嵌入而无需重训。
- 反直觉的消融结论:动作头用单层线性层优于 5 层 MLP(更深的头反而带来噪声/过拟合),支持”解码阶段应保持简单,复杂度应留给上游 Transformer 表征”的设计取向。
- 论文自陈的局限:仅在单一机器人本体(LeRobot SO100 机械臂)和与训练场景高度相似的评测环境中验证;前视摄像头固定安装位置未变化。后续工作计划:扩展到更多样的机械臂本体、更多样/非结构化环境、多样化摄像头视角。
原始链接
- arXiv: https://arxiv.org/abs/2509.15212 (PDF: https://arxiv.org/pdf/2509.15212)
- GitHub: https://github.com/alibaba-damo-academy/RynnVLA-001
- HuggingFace(Stage 2 权重,Trajectory): https://huggingface.co/Alibaba-DAMO-Academy/RynnVLA-001-7B-Trajectory
- HuggingFace(Stage 1 权重,Base): https://huggingface.co/Alibaba-DAMO-Academy/RynnVLA-001-7B-Base
- ModelScope: https://modelscope.cn/models/DAMO_Academy/RynnVLA-001-7B-Trajectory
- HF 社区博客: https://huggingface.co/blog/Alibaba-DAMO-Academy/rynnvla-001
一手源存档(sources/)
- rynnvla-001—github-readme.md — GitHub README + 释出的 ActionVAE / Stage-3 训练配置片段
- rynnvla-001—blog.md — HuggingFace 社区博客全文
- rynnvla-001—hf-card.md — HuggingFace 模型卡(Base + Trajectory)
- arXiv 原文 HTML(2509.15212v1,完整正文含参考文献),不入 git,见上方 arXiv 链接重新抓取