1. 首页
  2. 精选文章
  3. VLA 模型:从入门到研究实践指南

VLA 模型:从入门到研究实践指南

  • 发布于 2026-07-31
  • ·
  • 107 次阅读
  • ·
  • ·

作者:JoyeeEE
https://zhuanlan.zhihu.com/p/2065806583955714218

前导

当大语言模型开始理解文本、多模态模型开始理解图像,下一个自然问题是:模型能否不仅“看懂”和“说清楚”,还能在物理世界中真正采取行动?

Vision-Language-Action(VLA)模型正是连接多模态智能与机器人控制的关键技术。它以图像、视频、语言指令和机器人本体状态为输入,经过视觉语言理解、时序建模和动作生成,最终输出关节运动、末端位姿或连续动作轨迹。简单来说,VLA 试图让机器人完成从“看见环境、理解任务”到“生成并执行动作”的端到端闭环。

但 VLA 并不是一种固定的网络结构。例如,RT-2 和 OpenVLA 将机器人动作编码为离散 Token,像生成语言一样预测动作;Octo、CogACT 等模型使用 Diffusion Policy 建模连续轨迹;π₀、π₀.₅ 和 SmolVLA 通过 Flow Matching Action Expert 生成平滑动作块;GR00T 则采用快慢双系统,让视觉语言模型负责理解和推理,由专门的动作模型承担高频控制。与此同时,分层规划、异步推理、3D 空间表示以及世界模型也正在成为 VLA 的重要演进方向。

面对如此多的模型和技术路线,初学者容易陷入“模型很多,但不知道区别在哪里”的困境。这份洞察分享希望提供一张从入门到全景的 VLA 技术地图,围绕几个核心问题展开:

  • VLA 与传统机器人策略、VLM 和 LLM Agent 有什么区别?
  • 一套通用 VLA 系统由哪些模块组成?
  • 离散动作 Token、连续回归、Diffusion 和 Flow Matching 分别适合什么任务?
  • RT-2、OpenVLA、Octo、π₀、GR00T 和 SmolVLA 的架构差异是什么?
  • Action Chunking、滚动时域和快慢双系统如何解决实时执行问题?
  • 不同模型需要多少数据、显存和机器人资源?
  • 初学者应该选择哪一个模型作为第一条实践路线?

VLA 的真正难点并不是简单地在 VLM 后面增加一个动作输出层,而是如何让语义理解、空间感知、连续运动、物理反馈和实时控制形成可靠闭环。理解这些架构之间的取舍,是快速进入 VLA 研究、设计有效实验和选择技术路线的第一步。

摘要

Vision-Language-Action(VLA)模型把视觉观测、自然语言指令和机器人本体状态映射为可执行动作。它的核心价值并不只是“给策略加一个语言编码器”,而是把互联网规模视觉语言知识、跨任务机器人数据和连续控制统一到同一模型或同一训练框架中。

VLA 的设计难点集中在三个接口:

1、语义到物理的接口:预训练视觉语言模型擅长识别和推理,却未必理解接触、力、可达性和动力学。

2、异构数据到统一表示的接口:不同机器人拥有不同相机、自由度、控制频率和动作坐标系。

3、低频推理到高频控制的接口:大模型推理通常较慢,而真实机器人需要稳定、闭环、低延迟的控制。

对刚入门的研究人员,推荐从“预训练 VLA + 小规模任务微调”开始,而不是从零预训练大模型:

  • 预算有限、希望最快跑通:LeRobot + SmolVLA;
  • 单臂操作、希望研究 VLM 知识迁移:OpenVLA / OpenVLA-OFT;
  • 研究连续、灵巧动作:π₀/openpi 或基于 Flow Matching 的 action expert;
  • 研究人形或高自由度跨本体控制:GR00T 系列;
  • 研究长期规划与可解释性:在 VLA 外增加分层规划、子任务语言或世界模型。

1. VLA 的定义与边界

1.1 问题形式化

在时刻 t,策略接收:

o_t = \{I_{t-k:t}^{1:C},\ l,\ s_{t-k:t},\ m_t\}

其中:

  • I^{1:C}:一个或多个相机的 RGB/RGB-D 图像;
  • l:自然语言任务指令;
  • s:关节角、关节速度、夹爪状态、末端位姿等本体状态;
  • m:可选历史记忆、地图、触觉或力传感信息;
  • k:观测历史长度。

VLA 学习条件动作分布:

\pi_\theta(a_{t:t+H-1}\mid o_t)

其中 $H4 是动作块(action chunk)长度。动作可以是关节空间、末端执行器空间、移动底盘速度、离散技能,或这些表示的组合。

1.2 “严格 VLA”与广义机器人基础策略

文献中 VLA 的用法并不完全统一:

  • 严格 VLA:复用经过大规模图文预训练的 VLM,并显式生成机器人动作,例如 RT-2、OpenVLA、π₀。
  • 广义 VLA/通用策略:使用视觉、语言和动作训练通用机器人 Transformer,但不一定继承大规模 VLM,例如 RT-1、Octo。
  • 具身智能系统:LLM/VLM 只做任务规划,底层策略独立执行,例如 SayCan 类系统。这类系统不是严格意义上的端到端 VLA,但在工程上常与 VLA 组合。

因此,比较模型时必须分清:性能来自互联网语义预训练、机器人数据规模、动作头设计,还是任务专用微调。

2. VLA 通用架构

VLA通用架构

一个完整 VLA 通常包含以下模块:

模块 常见选择 关键设计问题
视觉编码器 ResNet、ViT、SigLIP、DINOv2、VLM 自带视觉塔 是否冻结;单帧还是视频;多相机如何融合
语言编码器 T5、LLaMA/Gemma、VLM 文本塔 语言只作为条件,还是也参与推理和生成
状态编码器 Linear/MLP、状态 Token、FiLM 坐标系、自由度、缺失维度和跨本体对齐
多模态融合 Prefix Token、交叉注意力、早期/中期/晚期融合 计算量、知识保留、视觉—动作对齐
时序建模 历史帧堆叠、Transformer、缓存、显式记忆 部分可观测性、延迟、上下文长度
动作解码器 离散 Token、回归头、Diffusion、Flow Matching 精度、多峰性、速度、动作连续性
执行层 单步、action chunk、滚动时域、异步快慢系统 控制频率、动作陈旧、反馈和安全

3. 代表性的VLA 模型

下表重点列出具有代表性的架构,而不是穷举所有模型。

模型 年份 骨干与融合 动作生成 代表意义 开放性/入门适用性
RT-1 2022 EfficientNet + TokenLearner + Transformer 离散动作 Token 大规模真实机器人 Transformer 的重要前身 论文公开;适合理解基础结构
RT-2 2023 PaLI-X/PaLM-E 类 VLM,共同微调图文与机器人数据 动作表示为文本 Token,自回归生成 正式确立 VLA 与互联网知识迁移范式 权重未完全开放;适合研究概念
RT-H 2024 基于 RT-2 的单模型分层策略 先生成语言动作,再生成低层动作 用自然语言建立动作层次 适合长期任务与人机干预研究
Octo 2024 Transformer + ViT/T5,支持语言或目标图像 Diffusion action head 开放、可组合的跨本体通用策略 代码/权重开放;适合通用策略研究
OpenVLA 2024 DINOv2 + SigLIP + LLaMA 2 7B(Prismatic) 每步 7 个离散动作 Token 最具代表性的开放自回归 VLA 生态成熟;适合入门基线
π₀ 2024 PaliGemma 类 VLM + 独立 action expert Flow Matching 连续动作块 将 VLM 语义与高频灵巧控制结合 openpi 开放;硬件门槛中等
RDT-1B 2024 多模态 Diffusion Transformer 连续动作去噪 验证 DiT 在大规模跨本体策略上的可扩展性 适合研究连续轨迹建模
CogACT 2024 VLM cognition backbone + 专用动作模块 Diffusion Transformer 强调认知模块与动作模块解耦 适合 action expert 消融
GR-2 2024 GPT 式视频—语言—动作模型 联合预测未来视频和动作块 用视频生成预训练增强机器人策略 适合世界模型/视频预训练方向
OpenVLA-OFT 2025 OpenVLA + 优化微调设计 并行连续动作、action chunking 显著改善原版 OpenVLA 的延迟与灵巧性 很适合从 OpenVLA 进阶
π₀.₅ 2025 π₀ 骨架 + 多源共训练与高层子任务预测 Flow Matching action expert 加强开放环境和长时程任务泛化 openpi 提供相关检查点与代码
GR00T N1 2025 Eagle VLM(System 2)+ DiT(System 1) Flow Matching/DiT 动作块 面向人形和跨本体的双系统 VLA 开放版本可用;资源需求较高
SmolVLA 2025 轻量 VLM + 小型 action expert Flow Matching 动作块;支持异步推理 450M 级、面向消费硬件和社区机器人 最适合低预算入门
Gemini Robotics 2025– Gemini 多模态骨干扩展物理动作输出 官方未完全披露 代表闭源前沿 VLA 与 embodied reasoning 可作能力参照,不适合作为可复现基线
DreamZero/WAM 2026 图生视频 Diffusion backbone 联合未来视觉与动作 世界动作模型:在“想象”中预测并行动 前沿研究方向,复现成本较高

注:

  • RT-1 和 Octo 常被归入广义 VLA,但它们与“互联网预训练 VLM 直接动作化”的严格定义有差异。
  • 参数量、数据规模和成功率不能脱离本体、任务、评测协议直接比较。
  • 2026 年的模型迭代很快,实际使用前应检查项目仓库的最新权重、许可证和数据接口。

4. 架构类别

4.1 自回归离散动作 Token

代表:RT-2、OpenVLA。

对每个动作维度 a^j,根据训练集分位数或固定范围将连续值量化为 B 个区间:

q(a^j)=\operatorname{clip} \left( \left\lfloor \frac{a^j-a^j_{\min}}{a^j_{\max}-a^j_{\min}}B \right\rfloor,0,B-1 \right)

然后把区间编号映射到语言模型词表中的动作 Token,以交叉熵训练:

\mathcal{L}_{AR} =-\sum_{j=1}^{D}\log p_\theta(q(a^j)\mid o,l,q(a^{<j}))

优点

  • 最大程度复用 VLM 的 next-token 训练和推理框架;
  • 动作、语言解释和中间推理可共享一个 Transformer;
  • 工程实现简单,易于使用现有微调、量化和推理工具。

局限

  • 离散化引入精度损失;
  • 逐 Token 解码形成串行延迟;
  • 单步动作容易抖动,难以表达强时间相关的轨迹;
  • 交叉熵并不直接刻画动作空间中的几何距离。

适用

  • 语言条件丰富、动作精度要求中等的桌面操作;
  • 研究互联网语义知识能否迁移到控制;
  • 需要一个易解释、易实现的 VLA 基线。

4.2 连续回归与 Action Chunking

连续回归直接最小化:

\mathcal{L}_{reg} =\left\|\hat a_{t:t+H-1}-a_{t:t+H-1}\right\|_1 \quad\text{或}\quad \left\|\hat a-a\right\|_2^2

H>1 时,模型一次输出动作块。相比单步预测,它能学习速度、接近、抓取、撤回等局部运动结构。

优点:简单、低延迟、训练稳定。
局限:均方误差倾向于对多种合理动作取平均,可能产生“不属于任何模式”的动作。
适用:行为较单峰、控制频率高、算力有限的任务。

4.3 Diffusion Action Policy

代表:Octo、RDT、CogACT、GR00T 的动作模块。

训练时给真实动作块加噪:

x_\tau=\sqrt{\bar\alpha_\tau}a+ \sqrt{1-\bar\alpha_\tau}\epsilon,\quad \epsilon\sim\mathcal N(0,I)

模型在视觉、语言和状态条件下预测噪声或等价参数:

\mathcal L_{diff} =\mathbb E_{\tau,\epsilon} \left[ \left\| \epsilon-\epsilon_\theta(x_\tau,\tau,o,l,s) \right\|_2^2 \right]

推理从随机噪声开始,经过若干去噪步得到连续动作块。

优点

  • 能表达多峰动作分布;
  • 生成轨迹平滑,适合接触丰富和灵巧操作;
  • DiT 的规模化能力强。

局限

  • 多次去噪增加推理延迟;
  • 去噪步数、动作块长度和控制频率强耦合;
  • 训练和部署更复杂。

4.4 Flow Matching Action Expert

代表:π₀、π₀.₅、SmolVLA,以及 GR00T 的相关连续生成设计。

一种常见线性插值定义为:

a_\tau=\tau a+(1-\tau)\epsilon,\quad \epsilon\sim\mathcal N(0,I)

目标速度为:

u=a-\epsilon

模型学习条件向量场:

\mathcal L_{FM} =\mathbb E_{\tau,\epsilon} \left[ \left\| v_\theta(a_\tau,\tau,o,l,s)-u \right\|_2^2 \right]

推理时通过数值积分从噪声流向动作。其核心结构通常是:

与简单回归相比,Flow Matching 能表达多模态连续轨迹;与经典扩散相比,它通常可以用更直接的路径和较少积分步实现高质量采样,但实际速度仍取决于 action expert、步数、图像编码成本和部署实现。

4.5 分层语言动作架构

代表:RT-H。

高层语言动作 z_t 描述“正在执行什么运动”,低层策略再预测控制:

p(a_t,z_t\mid o_t,l) =p(z_t\mid o_t,l), p(a_t\mid o_t,l,z_t)

例如:

任务:把抽屉里的红色杯子放到托盘
语言动作:靠近把手 → 拉开抽屉 → 接近红杯 → 抓取 → 移到托盘 → 释放
低层动作:连续末端位姿增量 + 夹爪命令

语言动作既能提高长时程结构性,也能作为人类干预接口。缺点是语言子任务标签可能昂贵,并且上层错误会传递到下层。

4.6 快慢双系统

代表:GR00T N1;异步 SmolVLA 也体现了类似的系统思想。

需要区分两个概念:

  • 架构双系统:VLM 与动作 expert 使用不同参数和功能分工;
  • 运行时异步:动作执行线程不等待下一次完整推理,推理和控制并行。

这两者可以组合,但并不等价。

4.7 视频预测与世界动作模型

代表:GR-2、DreamZero/WAM。

这类模型联合预测未来视觉和动作:

\pi(l,o_{t-h:t},s_{t-h:t}) \rightarrow (\hat o_{t+1:t+H},\hat a_{t:t+H-1})

或先由世界模型生成目标一致的未来视频,再由逆动力学模型把视频转换为动作。

价值

  • 大量人类视频可以提供动作先验;
  • 未来视觉预测可作为规划、可解释性和策略评估的媒介;
  • 同一个视频模型可与不同本体的 inverse dynamics model 组合。

挑战

  • 视频中的外观合理不等于物理可执行;
  • 预测误差会通过逆动力学放大;
  • 训练、推理和数据治理成本高。

4.8 3D/空间显式架构

这类模型额外使用深度、点云、体素、3D object token 或显式位姿。它们适合:

  • 相机视角变化大;
  • 需要精确抓取位姿;
  • 存在遮挡和尺度变化;
  • 任务依赖可达性、碰撞和空间约束。

代价是传感器标定、3D 表示计算和 sim-to-real 对齐更加复杂。初学者不应在第一版系统中同时引入 VLA、3D 重建和复杂触觉,除非研究问题本身就是三维几何。

5. 代表模型原理

5.1 RT-1:机器人 Transformer 的规模化起点

RT-1 使用图像历史、语言指令和 Transformer 预测离散动作。视觉特征通过 EfficientNet 和 TokenLearner 压缩,以满足实时控制的计算预算。其主要贡献不是互联网语义迁移,而是证明多任务、多对象、真实机器人数据可以训练可扩展的通用策略。

学习重点:

  • 视觉 Token 压缩;
  • 任务条件行为克隆;
  • 大规模多任务数据对泛化的作用;
  • 闭环部署比离线损失更重要。

5.2 RT-2:把动作变成“语言”

RT-2 将机器人动作编码成文本 Token,把机器人轨迹与 VQA、图像描述等互联网视觉语言任务共同微调。统一的 next-token 目标使 VLM 的物体、类别、关系和常识知识能够迁移到机器人控制。

其关键思想可以写为:

\text{VLM pretraining} +\text{robot action tokenization} +\text{co-finetuning} \Rightarrow \text{VLA}

值得注意的是:RT-2 的语义泛化强,不意味着其低层轨迹精度天然优于专用连续策略。

5.3 OpenVLA:开放自回归 VLA 基线

OpenVLA 是 7B 参数开放模型,基于 Prismatic VLM:

  • DINOv2 提供细粒度视觉结构特征;
  • SigLIP 提供图文对齐特征;
  • LLaMA 2 作为语言与多模态序列骨干;
  • 在约 97 万机器人 episode 上训练;
  • 每个时间步自回归预测 7 个动作 Token:3 个位置、3 个姿态、1 个夹爪。

它适合回答以下研究问题:

  • VLM 的不同视觉表征如何影响操作泛化?
  • 全量微调、LoRA 和冻结视觉塔有何区别?
  • 动作离散化、连续回归和并行 action chunk 的差异是什么?
  • 原版 OpenVLA 的主要工程问题是逐 Token 延迟和单步控制。

OpenVLA-OFT 通过并行解码、action chunking 和更合适的微调设计改善速度与成功率;其项目报告相较原版可实现显著的动作生成加速,但应在自己的硬件和任务上重新测量。

5.4 Octo:可组合的开放通用策略

Octo 在 Open X-Embodiment 的约 80 万条轨迹上训练,支持语言目标和目标图像条件。其核心是 Transformer policy backbone 加可替换的读出头,最佳配置采用 ViT 与 diffusion action head。

Octo 的优势不是大型 VLM 的开放世界常识,而是:

  • 输入和任务定义可组合;
  • 可较方便适配新传感器和动作空间;
  • 结构适合研究跨本体预训练;
  • 微调成本通常低于 7B 级 VLA。

5.5 π₀ / π₀.₅:VLM + Flow Matching Action Expert

π₀ 在预训练 VLM 上增加独立 action expert。VLM 负责图像—语言上下文,action expert 接收本体状态、带噪动作块和流时间,预测连续动作速度场。

这种设计避免了让语言词表承担全部连续控制:

  • VLM 保留互联网语义;
  • action expert 专门学习连续、多模态、时间相关的动作;
  • action chunk 支持高频灵巧执行;
  • 跨本体数据通过统一/填充动作维度和 embodiment 条件对齐。

π₀.₅ 在此基础上引入更丰富的共训练数据和高层子任务预测,使模型更适合未见过的家庭环境和长时程任务。这里的关键不只是“模型变大”,而是通过高层语义目标和低层动作目标共同训练,缩小任务理解与执行之间的差距。

5.6 CogACT:认知与动作模块化

CogACT 保留大 VLM 作为 cognition backbone,并使用专门的 diffusion action transformer 建模动作序列。它强调:

  • 语义理解和动作建模具有不同统计结构;
  • 动作连续、多峰、强时间相关;
  • 给动作模块足够容量通常优于简单线性头或动作量化。

它适合用于研究 action expert 的深度、宽度、条件注入位置和是否反向更新 VLM。

5.7 GR00T N1:面向人形机器人的双系统

公开的 GR00T N1 采用:

  • System 2:Eagle 系视觉语言骨干,解释图像和指令;
  • System 1:DiT/Flow Matching 策略,高频生成动作;
  • 数据:真实机器人轨迹、人类视频和合成数据混合;
  • 本体:从桌面机械臂扩展到高自由度人形机器人。

公开 N1 报告中的模型约 2.2B 参数,其中 VLM 约 1.34B。后续仓库版本可能已有不同参数量和硬件要求,因此部署时以对应 checkpoint 文档为准。

5.8 SmolVLA:低成本 VLA 与异步推理

SmolVLA 是约 450M 参数的轻量开放模型:

  • 输入多相机、机器人状态和语言;
  • 轻量 VLM 提供上下文;
  • action expert 生成连续动作块;
  • 可在单 GPU 上训练,在消费级 GPU 甚至 CPU 上部署;
  • 支持异步推理,让机器人执行当前动作块时并行生成下一块。

它是入门者验证完整“采集—微调—仿真评测—真机闭环”流程的优先选择。

6. 动作空间设计

动作表示往往比更换 VLM 骨干更直接地影响实验成败。

6.1 常见动作空间

动作空间 示例 优点 局限 推荐场景
关节绝对位置 q_{t+1} 执行直接 跨机器人泛化差;对时序标定敏感 固定本体、稳定控制器
关节增量 \Delta q 局部平滑 误差累积;自由度绑定 高自由度、已有底层伺服
末端绝对位姿 x,R,g 任务几何直观 对标定误差敏感 固定场景或目标位姿任务
末端位姿增量 \Delta x,\Delta R,g 跨工作区和数据集较通用 需要 IK;旋转表示要谨慎 单臂操作最常见
速度/力矩 \dot q,\tau 高频、动态性能强 风险和学习难度高 动力学、灵巧手、腿足
离散技能 grasp/open/pull 长时程和可解释 依赖技能库 分层策略

6.2 旋转表示

常用表示包括:

  • 欧拉角增量:简单但存在奇异性和坐标约定问题;
  • 轴角:紧凑,局部增量常用;
  • 四元数:无万向节锁,但需处理双覆盖和归一化;
  • 6D rotation representation:训练连续性较好,但维数更高。

入门推荐:若控制器支持,使用末端位置增量 + 轴角增量 + 夹爪状态,并在数据层严格固定单位、坐标系和左右乘约定。

6.3 归一化

常见方法:

  • 均值—标准差;
  • min-max;
  • 分位数归一化,例如映射第 1%–99% 分位数;
  • 按机器人/动作维度分别统计。

不要把不同本体的原始关节值直接混合。训练、评测和部署必须使用同一份统计量;这是 VLA 真机失效最常见且最隐蔽的原因之一。

7. 多本体与多模态融合

7.1 跨本体对齐

常见策略:

1、统一末端动作空间:把不同机械臂动作转换为统一的末端位姿增量。
2、固定最大维度 + Mask:将状态和动作填充到最大维度,并提供有效维度 Mask。
3、Embodiment Token:显式告诉模型机器人类型、手臂侧别和控制模式。
4、本体专用投影头:共享 VLM/Transformer,使用不同 state/action adapter。
5、形态条件表示:输入关节描述、URDF/运动学或本体图结构,研究潜力大但实现复杂。

7.2 融合位置

融合方式 实现 优势 风险
早期融合 所有模态转为 Token 后进入同一 Transformer 跨模态交互充分 Token 多、计算昂贵
中期融合 独立编码后用 cross-attention 交互 模块边界清晰 融合层设计敏感
晚期融合 VLM 输出作为 action head 条件 易复用冻结 VLM 细粒度视觉—动作对齐可能不足
双流/专家式 VLM 流与 action 流用不同权重,通过注意力连接 兼顾知识保留与动作专门化 参数和训练复杂度增加

7.3 知识保留

动作损失直接反向传播到 VLM 可能造成灾难性遗忘。可选策略:

  • 冻结 VLM,仅训练 projector/action expert;
  • LoRA/adapter 微调;
  • 为 VLM 和动作头设置不同学习率;
  • 保留图文/语言共训练目标;
  • 在 VLM 与 action expert 之间使用 stop-gradient 或知识隔离;
  • 分阶段训练:先对齐动作头,再逐步解冻高层。

8. 执行策略

8.1 单步闭环

每次观测只预测一个动作,执行后重新观测。

优点:反馈及时。
缺点:推理频率要求高;动作不连续;大 VLA 很难达到伺服频率。

8.2 动作块开环执行

一次生成 H 步并全部执行。

优点:吞吐高、动作平滑。
缺点:环境变化后无法及时纠错。

8.3 滚动时域控制(推荐)

一次预测 H 步,只执行前 K<H 步,然后重新观测和规划:

这是动作连续性和闭环纠错之间最实用的折中。

8.4 Temporal Ensembling

相邻时刻预测的动作块会在时间上重叠。对同一执行时刻的多个预测加权平均:

\bar a_t = \frac{\sum_i w_i\hat a_t^{(i)}}{\sum_i w_i}, \quad w_i=\exp(-\lambda \Delta t_i)

新预测权重通常更高。它能减小动作块切换处的抖动,但如果任务具有多峰路径,简单平均可能产生不可行轨迹。

8.5 异步推理

推荐使用三个并行循环:

  • 传感线程:采集带时间戳的图像和状态;
  • 推理线程:读取最新一致观测,生成新动作块;
  • 控制线程:按固定频率消费动作缓冲区。

关键工程规则:

  • 每个动作块记录其观测时间戳;
  • 过期动作必须丢弃;
  • 缓冲区耗尽时进入安全保持或停止;
  • 不允许多个推理结果乱序覆盖;
  • 记录“感知时间—推理完成—动作执行”的端到端延迟。

8.6 分层执行与重规划

长期任务中,上层每隔数秒或在事件触发时生成子任务,低层 VLA 在较高频率执行。触发条件可包括:

  • 子任务完成;
  • 目标丢失;
  • 抓取失败;
  • 超时;
  • 安全约束触发;
  • 人类纠正。

8.7 安全执行层

VLA 输出不应直接无约束发送到执行器。最小安全层应包含:

  • 工作空间、关节位置/速度/加速度限制;
  • 自碰撞和环境碰撞检查;
  • 夹爪力、接触力或电流限制;
  • 急停与 watchdog;
  • 控制超时、动作突变和 NaN 检查;
  • 人员检测与动态安全区;
  • 对分布外输入的降级或拒绝执行。

9. 数据与训练流程

9.1 最小数据记录格式

每个 episode 至少记录:

episode_id: string
task:
  language_instruction: string
observation:
  timestamp: float
  images:
    external_rgb: [T, H, W, 3]
    wrist_rgb: [T, H, W, 3]
  state:
    joint_position: [T, Dq]
    end_effector_pose: [T, 7]
    gripper: [T, Dg]
action:
  command: [T, Da]
metadata:
  robot_type: string
  control_mode: string
  control_frequency_hz: float
  camera_calibration: object
  success: bool

实际项目推荐采用 LeRobot Dataset 或 RLDS 等成熟格式,减少时间同步、视频压缩和元数据管理错误。

9.2 常用公开数据

数据集 规模/特点 适合用途
Open X-Embodiment 100 万+真实机器人轨迹、22 种本体,由多机构数据汇集 跨本体预训练、通用策略
DROID 7.6 万条演示、约 350 小时、564 个场景 场景多样性、真实世界泛化
BridgeData V2 约 6 万条轨迹、多环境 WidowX 操作 单臂操作、语言条件学习
LeRobot 社区数据 多种低成本机器人和统一工具链 入门、复现、社区机器人
LIBERO 多任务与知识迁移仿真基准 快速验证、持续学习
CALVIN 长时程语言条件操作 子任务组合和长时程评测
RLBench 多任务仿真操作,支持多视角与语言 任务泛化
RoboCasa / ManiSkill 大规模仿真场景和操作任务 合成数据、sim-to-real

9.3 数据质量检查

训练前必须自动检查:

  • 图像、状态、动作时间戳是否对齐;
  • 是否存在重复帧、丢帧或视频损坏;
  • 动作单位和坐标系是否一致;
  • episode 成功/失败标注是否可信;
  • 指令是否准确描述整条轨迹;
  • 静止段、遥操作延迟和紧急复位是否被误当作演示;
  • 每一维动作的分布、饱和比例和异常值;
  • 训练集与测试场景、对象和指令是否泄漏。

9.4 推荐训练阶段

阶段建议:

1、先做小基线:ACT、Diffusion Policy 或小 Transformer。若它也学不会,问题通常在数据或控制接口,而不是模型规模。
2、动作头对齐:冻结视觉语言骨干,让新 action head 先学会本体和坐标系。
3、参数高效微调:对高层 Transformer 使用 LoRA,对 action expert 全量训练。
4、必要时部分解冻:仅在视觉域差距大或语言 grounding 不足时解冻视觉/语言高层。
5、失败数据闭环:收集失败附近的纠正演示,而不是盲目增加重复成功样本。

10. 训练目标设计

总损失可写为:

\mathcal L = \lambda_a\mathcal L_{action} +\lambda_l\mathcal L_{language} +\lambda_v\mathcal L_{vision} +\lambda_s\mathcal L_{state} +\lambda_{aux}\mathcal L_{aux}

其中:

  • \mathcal L_{action}:自回归交叉熵、回归、扩散或 Flow Matching;
  • \mathcal L_{language}:指令复述、子任务预测、VQA 或语义推理;
  • \mathcal L_{vision}:目标定位、未来帧预测、深度或关键点;
  • \mathcal L_{state}:下一状态预测、inverse dynamics;
  • \mathcal L_{aux}:成功预测、价值、进度、可供性或安全风险。

辅助目标不是越多越好。应回答一个明确问题:它是否补充动作监督中缺失的信息?例如:

  • 长期任务失败:增加子任务或进度预测;
  • 遮挡下丢失目标:增加时序记忆或目标追踪;
  • 视觉语义遗忘:保留图文共训练;
  • 轨迹抖动:改用 action chunk/生成式动作头,而非简单增加语言损失。

10.1 最小 Action Expert 实现骨架

下面是用于理解数据流的 PyTorch 风格伪代码,不与某一开源项目的接口绑定:

class MinimalVLA(nn.Module):
    def __init__(self, vlm, state_dim, action_dim, horizon, hidden_dim):
        super().__init__()
        self.vlm = vlm
        self.state_proj = nn.Linear(state_dim, hidden_dim)
        self.action_in = nn.Linear(action_dim, hidden_dim)
        self.time_embed = TimeEmbedding(hidden_dim)
        self.action_expert = TransformerDecoder(...)
        self.action_out = nn.Linear(hidden_dim, action_dim)
        self.horizon = horizon

    def encode_context(self, images, language):
        # context: [batch, multimodal_tokens, hidden_dim]
        return self.vlm(images=images, text=language)

    def flow_loss(self, images, language, state, action):
        context = self.encode_context(images, language)
        noise = torch.randn_like(action)
        tau = torch.rand(action.shape[0], device=action.device)

        # 线性概率路径;广播细节从略
        noisy_action = tau * action + (1.0 - tau) * noise
        target_velocity = action - noise

        action_tokens = self.action_in(noisy_action)
        state_token = self.state_proj(state)
        time_token = self.time_embed(tau)
        hidden = self.action_expert(
            action_tokens,
            context=context,
            condition=(state_token, time_token),
        )
        pred_velocity = self.action_out(hidden)
        return F.mse_loss(pred_velocity, target_velocity)

    @torch.no_grad()
    def sample_actions(self, images, language, state, num_steps=10):
        context = self.encode_context(images, language)
        x = torch.randn(
            images.shape[0], self.horizon, self.action_out.out_features,
            device=images.device,
        )
        dt = 1.0 / num_steps
        for i in range(num_steps):
            tau = torch.full(
                (images.shape[0],), i / num_steps, device=images.device
            )
            velocity = self.predict_velocity(x, tau, context, state)
            x = x + dt * velocity
        return x

真实实现还需要:

  • attention mask、图像/语言 padding 和多相机位置编码;
  • classifier-free guidance 或其他条件策略(若使用);
  • 训练与部署一致的动作归一化;
  • 更合适的 ODE solver 或离散 flow schedule;
  • mixed precision、gradient checkpointing 和分布式训练;
  • 对 VLM 的冻结、LoRA 或分层学习率;
  • 时间同步、安全过滤和机器人驱动接口。

10.2 闭环推理伪代码

action_buffer = []

while not task_done:
    observation = sensors.get_latest_synchronized_observation()

    if should_replan(action_buffer, observation):
        normalized_state = state_normalizer(observation.state)
        action_chunk = policy.sample_actions(
            images=preprocess(observation.images),
            language=current_instruction,
            state=normalized_state,
        )
        action_chunk = action_normalizer.inverse(action_chunk)
        action_buffer = temporal_merge(action_buffer, action_chunk)

    action = action_buffer.pop(0)
    safe_action = safety_filter(action, observation)
    robot.send(safe_action)

部署时,should_replan 不应只检查缓冲区长度,还应检查观测时间戳、目标变化、碰撞风险、动作不确定性和上一个子任务是否完成。

11. 计算资源与工程预算

11.1 模型级资源参考

以下数字只用于项目规划。“官方”表示来自对应项目当前文档;“估算”表示常见精度和实现下的工程量级,实际值受图像数量、分辨率、序列长度、batch、量化、梯度检查点和框架影响。

路线 参数量级 推理资源 微调资源 备注
SmolVLA 450M 消费 GPU;项目称可部署到 CPU 单 GPU 最适合完整入门闭环
Octo-Small/Base 约百 M 级 8–16 GB GPU 常见可行(估算) 12–24 GB GPU(估算) JAX 生态;适合跨本体策略
OpenVLA 7B 7B 16–24 GB,需 BF16/量化(估算) LoRA 约 24–48 GB;全量显著更高(估算) 多相机/高分辨率会继续增加显存
π₀/openpi 数 B 级 官方:>8 GB 官方:LoRA >22.5 GB;全量 >70 GB 官方示例分别对应 RTX 4090、80GB A100/H100
GR00T 当前开放仓库版本 数 B 级 官方当前建议:16 GB+ 官方当前建议:40 GB+;完整解冻建议更高 版本变化快,应以 checkpoint 对应文档为准
从零预训练通用 VLA 数 B–数十 B 多 GPU 服务 多机多卡、海量数据 不建议作为新团队第一个项目

11.2 其他资源

资源 最小研究配置 较完整配置
存储 1–2 TB NVMe 10 TB+ 数据盘或对象存储
RAM 32–64 GB 128 GB+
相机 1 个外部 RGB + 1 个腕部 RGB 多视角 RGB-D + 精确标定
机器人 低成本单臂/双臂平台或仿真 具备稳定遥操作、力限位和日志系统的研究平台
数据 单任务 50–100 条演示用于可行性验证 多场景 100–500+;复杂高自由度任务更多
人员 1 名算法 + 1 名机器人/系统工程能力 数据、算法、控制、安全分工

数据量只能作为起点。根据 NVIDIA GR00T 当前 FAQ 的经验建议,简单固定 pick-and-place 可从约 100 条轨迹开始,复杂或多步场景约 500 条以上,高自由度人形任务可能需要 2,000 条以上。数据多样性和一致性通常比单纯 episode 数更重要。

12. 使用场景与架构选型

使用场景 推荐起点 原因 不建议首先选择
低成本桌面抓放 SmolVLA / ACT 基线 单 GPU、LeRobot 数据链完整 从零训练 7B VLA
多对象、自然语言指令 OpenVLA-OFT VLM grounding 强,动作块更实用 纯回归单步策略
精细插拔、装配、灵巧操作 π₀ 类 Flow Matching 或 CogACT/DiT 连续、多峰、时间相关轨迹 粗粒度离散动作 Token
跨机器人预训练 Octo、π₀、GR00T 有跨本体设计和数据经验 直接混合原始关节动作
人形机器人 GR00T + 本体专用适配 双系统、高自由度与多源数据 单臂专用动作头直接迁移
长时程家庭任务 π₀.₅ 类 + 分层规划/进度模型 高层子任务与低层动作结合 只增加 action horizon
研究 VLM 知识迁移 OpenVLA/RT-2 范式 变量清晰、可做冻结/LoRA 消融 无互联网预训练的小策略
研究世界模型 GR-2/WAM + inverse dynamics 可利用视频并做想象规划 第一阶段直接真机大规模训练
边缘端实时部署 SmolVLA、蒸馏/量化后的 action expert 模型小、支持异步 大型自回归模型逐 Token 控制

12.1 选型决策树

13. 推荐的最小可行研究方案

13.1 目标

让机器人根据 3–5 条语言指令,在改变物体位置、背景和表述方式后完成桌面操作,并建立可复现评测。

13.2 配置

仿真:LIBERO 或 ManiSkill;
真机(可选):LeRobot 支持的低成本机械臂;
模型:SmolVLA 作为 VLA 起点,ACT 或 Diffusion Policy 作为非 VLA 基线;
视觉:外部相机 + 腕部相机;
动作:末端增量或平台标准动作;
策略:action chunk + 滚动执行;
数据:每任务先采 50–100 条高质量演示;
评测:每种条件至少 20 次 rollout,并报告置信区间。

13.3 四周上手路线

第 1 周:跑通数据与基线

读入公开数据;
可视化图像、状态和动作;
训练 ACT/小 Diffusion Policy;
验证动作反归一化与仿真控制接口。

第 2 周:微调预训练 VLA

加载 SmolVLA 或 OpenVLA-OFT;
先冻结 VLM;
在单任务上过拟合一个小数据子集;
确认闭环策略能完成任务。

第 3 周:系统评测

改变物体位置、背景、光照和指令;
对比单步、action chunk 和滚动执行;
记录成功率、延迟、动作平滑度和失败类型。

第 4 周:做一个明确消融

从以下选择一个变量:

冻结 VLM vs LoRA;
离散动作 vs 连续 action expert;
单相机 vs 双相机;
同步 vs 异步;
无历史 vs 2–4 帧历史;
无语言辅助目标 vs 子任务预测。
不要在第一个项目中同时改变模型、数据、动作空间和执行策略,否则无法解释结果。

14. 评测设计

14.1 指标

层次 指标 说明
任务 成功率、部分完成率、平均完成时间 主要指标;需明确成功判据
泛化 新物体、新背景、新指令、新相机、新本体 分轴报告,不要合成一个模糊的 OOD
控制 轨迹长度、jerk、碰撞率、抓取掉落率 衡量动作质量
系统 端到端延迟、推理频率、缓冲区耗尽率 决定真机可用性
安全 约束触发率、急停率、最大接触力 不能只报告成功率
数据效率 每任务演示数、训练步数、GPU 小时 便于真实比较

轨迹平滑度可使用离散 jerk:

J=\frac{1}{T-3}\sum_t \left\| a_{t+3}-3a_{t+2}+3a_{t+1}-a_t \right\|_2

但平滑不等于正确,应与成功率、碰撞和完成时间共同报告。

14.2 评测协议

  • 至少使用 3 个随机种子训练或明确说明只训练一次;
  • rollout 的初始状态分布必须固定或可复现;
  • 区分训练对象、未见对象和未见类别;
  • 报告图像分辨率、相机数、控制频率、action horizon 和执行步数;
  • 报告是否使用 temporal ensemble、重规划、人工复位或人工接管;
  • 仿真成功不能替代真机验证;
  • 不要把不同论文中不同本体、任务和试验次数的成功率直接排序。

14.3 失败分类

推荐为每次失败标注:

  • 指令理解错误;
  • 目标识别/定位错误;
  • 空间关系或可供性错误;
  • 轨迹/抓取控制错误;
  • 遮挡或历史记忆不足;
  • 动作延迟或动作块陈旧;
  • 碰撞/安全过滤触发;
  • 环境或硬件故障。

失败分类比单一成功率更能指导下一轮架构修改。

15. 常见问题与排查顺序

15.1 训练损失下降,机器人完全不动

依次检查:

动作反归一化;
动作单位(米/毫米、弧度/角度);
坐标系和旋转约定;
夹爪开闭编码;
模型输出时刻与数据动作时刻是否有遥操作延迟;
安全层是否把动作全部裁剪。

15.2 仿真好、真机差

重点检查:

  • 相机外参、畸变、曝光和视角;
  • 图像归一化及 resize/crop;
  • 控制器响应、摩擦、回差和通信延迟;
  • 训练图像是否过于干净;
  • 是否需要真实数据微调而不是继续加仿真数据。

15.3 模型理解指令但动作不精确

优先尝试:

  • 离散 Token 改为连续 action expert;
  • 单步改 action chunk;
  • 增加腕部相机;
  • 对 action expert 增容,而非盲目增大 LLM;
  • 使用末端增量、重新校准动作统计;
  • 增加失败附近的纠正演示。

15.4 动作块之间明显顿挫

  • 减小每次实际执行的 K;
  • 使用 temporal ensemble;
  • 对动作块重叠区域加一致性约束;
  • 提高推理吞吐或异步预取;
  • 检查推理结果时间戳,避免执行陈旧动作。

15.5 VLM 微调后语义能力下降

  • 冻结更多 VLM 层;
  • 使用 LoRA;
  • 降低 VLM 学习率;
  • 保留视觉语言共训练数据;
  • 对 VLM 和 action expert 使用梯度隔离或分阶段训练。

16. 可能值得研究的架构问题

Action expert 应该多大?

给动作头增加容量是否比增大 VLM 更有效?不同任务的最优比例可能不同。

动作 Token 还是连续生成?

离散 Token 便于统一推理,Flow/Diffusion 更符合连续控制。混合离散技能与连续轨迹可能更适合长时程机器人。

如何避免语义—动力学鸿沟?

VLM 能识别“杯子”,但未必知道杯子会滑、会碰撞。未来模型需要触觉、力、未来状态或世界模型监督。

如何从人类视频学习可执行动作?

关键是解决视角、本体和动作不可观测问题,latent action、inverse dynamics 与视频生成都是重要路线。

同步大模型还是异步系统?

真机性能越来越依赖调度、缓存、动作复用和延迟补偿,而不仅是网络结构。

如何可靠评测开放世界泛化?

当前基准容易被数据重叠、场景模板和人工成功判据影响,需要更严格的任务、对象和环境隔离。

安全是否应成为训练目标?

仅靠外部安全过滤可能使策略反复提出危险动作;风险预测、约束生成和不确定性估计应进入 VLA 训练。

17. 入门阅读顺序

建议按以下顺序阅读,而不是按论文发布时间机械浏览:

1、RT-1:理解机器人 Transformer、动作 Token 和多任务行为克隆。
2、RT-2:理解 VLM 如何通过动作 Token 变成 VLA。
3、Open X-Embodiment:理解跨本体数据的规模和异构性。
4、OpenVLA:掌握开放 VLA 的视觉骨干、语言模型和微调方法。
5、Octo:比较“通用机器人策略”与“VLM 动作化”两条路线。
6、Diffusion Policy/RDT/CogACT:理解连续、多峰动作生成。
7、π₀ 与 π₀.₅:理解 Flow Matching action expert 和开放环境训练。
8、RT-H/GR00T:理解分层、快慢双系统和高自由度执行。
9、GR-2/WAM:进入视频预训练和世界动作模型前沿。

18. 参考资料

18.1 基础与代表模型

Brohan et al., RT-1: Robotics Transformer for Real-World Control at Scale, 2022.
https://arxiv.org/abs/2212.06817

Brohan et al., RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control, 2023.
https://arxiv.org/abs/2307.15818

Belkhale et al., RT-H: Action Hierarchies Using Language, 2024.
https://arxiv.org/abs/2403.01823

Kim et al., OpenVLA: An Open-Source Vision-Language-Action Model, 2024.
https://arxiv.org/abs/2406.09246
项目:https://openvla.github.io/
代码:https://github.com/openvla/openvla

Ghosh et al., Octo: An Open-Source Generalist Robot Policy, 2024.
https://arxiv.org/abs/2405.12213

Black et al., π₀: A Vision-Language-Action Flow Model for General Robot Control, 2024.
https://arxiv.org/abs/2410.24164
代码:https://github.com/Physical-Intelligence/openpi

Physical Intelligence, π₀.₅: A Vision-Language-Action Model with Open-World Generalization, 2025.
https://arxiv.org/abs/2504.16054

Bjorck et al., GR00T N1: An Open Foundation Model for Generalist Humanoid Robots, 2025.
https://arxiv.org/abs/2503.14734
代码:https://github.com/NVIDIA/Isaac-GR00T

Shukor et al., SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics, 2025.
https://arxiv.org/abs/2506.01844
说明:https://huggingface.co/blog/smolvla
文档:https://huggingface.co/docs/lerobot/en/smolvla

Li et al., CogACT: A Foundational Vision-Language-Action Model for Synergizing Cognition and Action, 2024.
https://arxiv.org/abs/2411.19650

Liu et al., RDT-1B: A Diffusion Foundation Model for Bimanual Manipulation, 2024.
https://arxiv.org/abs/2410.07864

Cheang et al., GR-2: A Generative Video-Language-Action Model with Web-Scale Knowledge for Robot Manipulation, 2024.
https://arxiv.org/abs/2410.06158

Google DeepMind, Gemini Robotics, 2025–.
https://deepmind.google/models/gemini-robotics/

Kim et al., Fine-Tuning Vision-Language-Action Models: Optimizing Speed and Success, 2025.
https://arxiv.org/abs/2502.19645
项目:https://openvla-oft.github.io/

Black et al., FAST: Efficient Action Tokenization for Vision-Language-Action Models, 2025.
https://arxiv.org/abs/2501.09747

18.2 动作策略、数据与基准

Chi et al., Diffusion Policy: Visuomotor Policy Learning via Action Diffusion, 2023.
https://arxiv.org/abs/2303.04137

Zhao et al., Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware (ACT), 2023.
https://arxiv.org/abs/2304.13705

Open X-Embodiment Collaboration, Open X-Embodiment: Robotic Learning Datasets and RT-X Models, 2023⁄2024.
https://robotics-transformer-x.github.io/

Khazatsky et al., DROID: A Large-Scale In-The-Wild Robot Manipulation Dataset, 2024.
https://arxiv.org/abs/2403.12945

Walke et al., BridgeData V2, 2023.
https://rail-berkeley.github.io/bridgedata/

Liu et al., LIBERO: Benchmarking Knowledge Transfer for Lifelong Robot Learning, 2023.
https://arxiv.org/abs/2306.03310

Mees et al., CALVIN: A Benchmark for Language-Conditioned Policy Learning for Long-Horizon Robot Manipulation Tasks, 2021.
https://arxiv.org/abs/2112.03227

18.3 综述与工程资料

Vision-Language-Action Models: Concepts, Progress, Applications and Challenges, 2025.
https://arxiv.org/abs/2505.04769

OpenVLA 官方模型说明与训练代码。
https://huggingface.co/openvla/openvla-7b

openpi 官方硬件与微调说明。
https://github.com/Physical-Intelligence/openpi

NVIDIA Isaac GR00T 官方硬件建议。
https://github.com/NVIDIA/Isaac-GR00T/blob/main/getting_started/hardware_recommendation.md

NVIDIA Isaac GR00T 新本体微调指南。
https://github.com/NVIDIA/Isaac-GR00T/blob/main/getting_started/finetune_new_embodiment.md

19. 针对刚入门的研究人员的最终建议

对于刚入门的研究人员,最合理的路线不是立即追逐最大的 VLA,而是建立一条可诊断、可复现的闭环:

1、先固定机器人、动作空间和评测协议;
2、用小型行为克隆策略验证数据与控制链;
3、选择一个开放预训练 VLA;
4、先训练 action head,再做参数高效微调;
5、使用 action chunk + 滚动时域执行;
6、把端到端延迟和安全约束纳入实验;
7、用失败分类决定下一次架构修改。

VLA 研究的竞争重点正在从“是否能把 VLM 接到机器人上”,转向“如何让语义知识、连续动作、世界动力学和实时系统真正协同”。

对于新研究者,能够准确定位失败发生在感知、语义、动作建模、数据还是执行系统,比单纯更换一个更大的 backbone 更重要。

目录