跳至主要内容

视觉-语言-动作模型详解:机器人如何学会看、懂、与行动

了解视觉-语言-动作(VLA)模型的工作原理、它们与VLM的区别,以及在2026年如何在 OpenVLA、pi0 和 SmolVLA 之间做出选择。
· 15分钟 阅读

使用 AI 探索

想象您对某人说:“拿起杯子放到架子上。”他不需要示意图;只要看一眼杯子,理解这句话,手就伸过去了。

这里几乎在同一时间发生了三件事。看、理解和移动几乎是同步进行的,而不是在大脑的不同部分之间分成三个独立步骤依次传递。

在机器人的大部分AI发展历史中,机器并不是这样工作的。

过去,我们有视觉-语言模型,它们可以看着凌乱的工作台,精确描述上面的物品,甚至包括工具的品牌这类细节。

传统的机器人控制器能可靠地拾起那把螺丝刀——前提是没人把它往左挪动两厘米。这个问题的两半——一边是看和理解,另一边是执行——几乎完全是各自独立发展的。

这正是视觉-语言-动作(VLA)模型要介入的地方——它们试图弥合这一鸿沟。

本文将介绍VLA模型是什么,以及它们的三段式架构如何工作。我们将探讨它们与视觉-语言模型(VLM)以及传统机器人控制的不同之处,梳理2026年真正重要的模型及其应用场景。最后,我们还将看看CLA模式仍然会犯的错误。

什么是视觉-语言-动作(VLA)模型?

我们先来正式定义一下VLA模型:

视觉-语言-动作模型是一种AI系统:输入相机画面、自然语言指令和机器人的自身状态,输出电机控制命令;其视觉、语言与动作模块进行联合训练,并在一次前向传播中完成推理,而非采用传统的“感知—规划—控制”流水线。

关键在于,感知、语言与动作不再是用手写胶水代码拼接起来的独立系统。

它们是联合训练的子模块。因此,在传统流水线中会让交接出错的视觉或语言误差,在这里会通过梯度下降得到纠正,而不是被硬编码接口拦截——或漏掉。

传统机器人流水线与联合视觉-语言-动作模型的对比 

上面是三个方框与两次脆弱的交接,下面是一个融合模型。这就是我反复强调的结构性差异。图片由作者提供。

我喜欢这样区分:VLM像是一个没有身体的大脑,而VLA给了它一个身体。 

感知不是机器人调用的外部服务,而是接入到联合训练的流水线中,直接参与决定夹爪要移动多远。

既然提到了VLM,我们就来比较一下这两种架构。

VLA vs. 视觉-语言模型(VLM)

VLM(Vision-Language Model)接收图像与文本,输出文本或向量表示。

而VLA(视觉-语言-动作模型)则接收同类输入,但输出的是动作。

这听起来像是个小变化,直到您看到它在下游造成的不同:

 

视觉-语言模型(VLM)

视觉-语言-动作模型(VLA)

输入

图像、视频、文本

图像(常为多相机)、文本、机器人本体感觉状态

输出

文本、向量表示

连续或离散化的电机控制命令

主要能力

对场景进行描述与推理

对场景进行操作

能否在现实世界中行动?

否

是

训练数据

来自网络的图文对

网络数据加机器人示教轨迹

典型应用

视觉问答、图像描述、文档解析

操作、导航、人形控制

您或许听说过GPT-4V、Gemini或LLaVA。

一个很常见的假设是:VLA不过是在这些模型上接了一个机械臂。

然而,事情并没有那么简单。

模型必须学习一个全新的输出空间:在这里,一个“token”对应一个真实的物理量,比如末端执行器的位移或夹爪开合度;而一旦出错,后果是把杯子从桌上打翻,而不是只生成一段有点奇怪的句子。

如果您想了解GPT-4V、Gemini和LLaVA与其他模型的横向对比,DataCamp的2026年十大视觉-语言模型汇总了当前的领跑者。

这也带来数据侧的差异。

VLM可以用数十亿张图文对训练,因为互联网免费提供。

而机器人的轨迹则必须由真实机器人在真实任务下收集,通常通过远程操控实现。这正是为什么开源规模最大的机器人数据集Open X-Embodiment只有大约100万条轨迹,而不是10亿条。

人工收集这类轨迹也非常昂贵且缓慢。

Open X-Embodiment 数据集中22种不同机器人形态的图格 

22种形态,一个数据集,总轨迹仍不足100万。这就是我所说的机器人数据无法像网络文本那样扩展。来源:Open X-Embodiment 项目页。

VLA 与传统机器人控制

在讲VLA架构如何工作之前,我也想与传统机器人控制做个比较。

传统机器人控制是为在某个固定场所、执行某个固定任务而构建的,其条件是事先被严格设定好的。

以自动售货机的机械臂为例。

它每次从同一层架子的同一位置拿起同样的零食,因为照明、物体位置和所需动作在每次抓取之间都不会变化。

这种狭窄且不变的设置,正是让控制系统能保持刚性且可靠的原因。

但如果我们改变售货机内部的布局,或改变照明,或在场景里放入一个原计划之外的物体呢?

此时控制器会彻底失灵,因为它从未见过这样的环境。

VLA对未显式训练过的条件具有更好的泛化能力,原因在于其底层的VLM骨干在看到机器人示教之前,已通过网络规模的预训练知道杯子、毛巾或抽屉是什么样子。

在这之上只需用一百个叠毛巾的样本进行微调,它就能学会在已经能识别毛巾的前提下如何移动。

真正的突破在于这种迁移,而非原始精度,我也想强调,在固定可控的环境里,调校良好的传统控制器在精度上仍能胜过VLA。

VLA模型如何工作?

让我们深入架构细节。

本文选择OpenVLA架构来讲解,因为它相对容易理解。

OpenVLA 架构图:展示视觉编码器、语言骨干与动作解码器 

这就是我在下文描述的流水线:DINOv2 与 SigLIP 输入 Llama 2 骨干,动作解码器在另一端预测离散化的token。来源:OpenVLA 项目页。

一个VLA包含三个独立模块:

  • 视觉编码器
  • 语言骨干
  • 动作解码器

它们端到端地联合训练。

视觉与语言表示被融合,这一组合表示将由动作解码器转换为电机命令。

重要的是,这三个部分是紧密耦合而非流水线式的——这正是将VLA与“VLM+控制器”区分开的关键设计决策。

如果有帮助,可以把它类比为World Models论文里我描述的“视觉、记忆、控制器”的划分:看、懂、做。

不同在于,VLA从示教中端到端学习这三项工作,而不是各自单独训练后再拼起来。

下面分别展开。

视觉编码器:模型“看到”什么

视觉编码器将原始相机帧转换为密集表示,供网络其余部分使用。

现代VLA使用预训练的视觉Transformer,如DINOv2或SigLIP,且往往两者同时用。

OpenVLA就是同时使用二者的好例子。

它将擅长空间与几何细节的DINOv2,与在与语言对齐的语义特征上更强的SigLIP融合。

两套特征会按图像小块进行拼接,并投影到语言模型的嵌入空间(此处为Llama 2 7B)。

我还想提到,实际部署中使用多相机是常态。

例如,腕部相机在最终接近目标时提供近距离细节,顶置相机提供场景布局,侧视图有助于恢复单相机无法获得的深度信息。

pi0(后文详述)同时接收多相机视角与机器人的本体感觉状态。

请注意,状态输入的重要性超出直觉:一张机械臂的图像并不能告诉您关节当前的力矩。

语言编码器:模型被“告知”什么

语言侧会将指令(比如“拿起红色方块放进蓝色箱子”)编码为与视觉特征对齐的同一空间表示。

几乎所有VLA都复用预训练的大语言模型(LLM)骨干,而不是从零训练文本编码器。

我们这里,OpenVLA使用Llama 2 7B。pi0与pi0.5基于PaliGemma(一款30亿参数的VLM)。SmolVLA使用改造过的SmolVLM2栈。

以这种方式复用LLM,实质是“继承”。

您能“白拿”到指令跟随与组合理解能力,这也是为什么VLA往往能处理诸如“把水果放到碗里”的指令,即便在机器人训练中从未见过这句原话。

动作解码器:模型“做”什么

动作解码器是将融合表示真正变成电机命令的地方,也是各家VLA设计分歧最大的地方。目前大致有三种做法。

自回归token预测

将每个动作维度离散化为若干区间(bin),逐一预测,沿用LLM熟悉的下一个token设置进行训练。

OpenVLA对每个维度使用256个区间,并采用常见的下一token损失,因此可以沿用LLM的工具链。

代价是分辨率与速度:离散化会带来“锯齿”运动,而逐token采样过慢,不适合快速或强接触的任务。

扩散与流匹配(flow matching)解码

不再一次只预测一个token,而是将动作生成视为去噪过程,一次性产生整段连续动作。

pi0是首个围绕流匹配动作头构建的VLA,约10步去噪便能产出最多50步的未来动作段。

这使得生成的运动明显比基于token的方法更平滑。

混合式两级架构

较大的模型负责高层推理,将任务分解为步骤;较小且更快的控制器负责精确且高频的执行。

我很喜欢的例子是Gemini Robotics 1.5,它将推理模型与动作模型配对使用。

坦率讲,读了不少论文后,我觉得大家把更多精力花在争论骨干大小上,而不是动作头,我认为这本末倒置了。

如果您的解码器把7维的连续动作压成256个离散区间,再好的骨干也挽不回那份平滑!

2026年的关键VLA模型

下面这张表列出一些您很可能会遇到的重要VLA模型:

模型

开发方

参数量

动作头

许可

硬件

擅长领域

OpenVLA

斯坦福、伯克利及合作者

7B

自回归token

MIT

A100或H100,或24GB配合4比特量化

开源研究基线

Octo

加州大学伯克利分校

27M或93M

扩散策略

MIT

单张RTX 4090

算力受限场景

pi0 / pi0.5 / pi0.6

Physical Intelligence

33亿(30亿骨干+3亿动作专家)

流匹配

开放检查点(openpi)

多卡或单张A100

灵巧、长时程任务

Gemini Robotics 1.5

Google DeepMind

未披露

混合式,云+边缘

闭源

云端绑定

专有前沿基线

SmolVLA

Hugging Face

4.5亿

流匹配

Apache 2.0

RTX 3060、笔记本GPU或Jetson

爱好者与边缘机器人

下面逐一介绍,从多数人仍在对比的研究基线开始。

OpenVLA

OpenVLA 是一款70亿参数的模型,基于Open X-Embodiment提取的97万条真实世界机器人示教进行训练。

它将Llama 2 7B骨干与前文所述融合的DINOv2和SigLIP视觉编码器结合,整体开源。

一个令人惊讶的结果是,它在29项任务的成功率上领先闭源的RT-2-X 16.5个百分点,而RT-2-X用了550亿参数,对比OpenVLA的70亿!

总训练耗时为64张A100跑15天。

它之所以仍然流行,是因为LoRA微调与4比特量化都很好用。

这意味着24GB的RTX 4090就能运行量化版本,因此大多数针对VLA的攻击、防御与剪枝研究都以OpenVLA为目标,只因其门槛最低。

后续的OpenVLA-OFT改进了微调配方,速度与成功率都有提升。

Octo

Octo是一款小型VLA,提供两种规模——2700万与9300万参数,骨干分别为ViT-S与ViT-B,可在单张RTX 4090上以20至30Hz运行。

它基于Open X-Embodiment中约80万条轨迹、涵盖22种机器人形态训练,其Transformer架构真正模块化。

在微调阶段,您可以新增观测输入或替换动作头,而无需从零构建;并可按需求支持离散token或基于扩散的连续动作。

Octo 架构:展示任务token、观测token、读出token以及通过新传感器或动作头进行微调 

Octo的Transformer:任务与观测token输入,读出token输出至动作头,微调时可新增传感器或动作空间。来源:Octo 论文。

当瓶颈是算力而非任务难度时,我个人会选择Octo。

它还支持目标图像条件,这在用文字描述目标状态不如直接展示一张照片来得方便时,十分好用。

pi0与Physical Intelligence系列

pi0来自Physical Intelligence,在灵巧性方面表现出色。它以PaliGemma为起点(一个30亿参数的开源VLM),并从零训练了一个3亿参数的动作专家,总计33亿参数。

它使用流匹配,一次性生成最多50步的未来动作段,而不是一步一步地出。

其关键成果是双臂任务,如叠衣、打包杂货、装箱组装,展现出此前未曾见过的灵巧程度。

pi0 机器人双臂叠衣

pi0 机器人用双臂叠衣。我提到的双臂任务之一,值得一看视频而不只是阅读。来源:Physical Intelligence,“pi0: Our First Generalist Policy”。

流匹配在这里起到了关键作用,因为要协调两只手臂,需要平滑、连续的16维输出;无论离散token还是慢速的扩散采样,都无法以可用速度达成。

pi0系列持续迭代:

  • pi0.5(2025年4月):通过两阶段过程加入开放世界泛化:先用文字预测高层子任务,再预测低层动作
  • pi0.6(2025年11月):从机器人的自身经验中学习,而非仅依赖示教
  • openpi:检查点与近似训练流水线见openpi 仓库,预训练超1万小时的机器人数据

但我也要提醒一点:pi0的最强结果依赖其自有机器人机群采集的专有数据。

公司外部尚无人仅用公共数据复现其具体数值,因此性能到底有多少来自架构、又有多少源于数据优势,仍未有定论。

Gemini Robotics 1.5

Gemini Robotics 1.5(Google DeepMind)更适合被理解为两个模型协同工作,而非一个。

Gemini Robotics-ER 1.5 是具身推理模型,负责规划、调用工具(如Google搜索),并能估计任务进展。

Gemini Robotics 1.5 则是执行推理模型决策的VLA。

上层为具身推理的 Gemini Robotics-ER 1.5,下层为VLA的 Gemini Robotics 1.5;中间共享工具调用;动作在ALOHA 2、Franka与Apollo上运行,无需动作空间对齐。来源:Gemini Robotics 1.5 论文。

有用之处在于,它将动作与用自然语言书写的内部推理过程结合在一起,因此机器人先思考再行动,事后还能解释其决策。

面对“按颜色分类我的衣物”这样的指令,它会先推理出白色放一个箱,其余放另一个箱,然后规划每次抓取。

DeepMind报告称从观测到动作约250毫秒,等效控制频率50Hz;通过将重推理放在云端、轻量动作解码留在机器人本地实现。

另一个值得指出的结果是运动迁移(Motion Transfer):在双臂ALOHA 2平台上学到的任务,直接迁移到Franka双臂与Apptronik的Apollo人形机器人上,无需在后两者上重训。

由于权重未开放,我建议将其视为专有前沿基线,而非可自托管并自行微调的对象。

SmolVLA

SmolVLA 来自Hugging Face,参数量4.5亿(Apache 2.0许可)。 它将改造的SmolVLM2骨干与流匹配动作专家配对,通过层跳跃与减少视觉token数量,使推理对小型硬件也足够便宜。

它可在单张消费级GPU(包括RTX 3060)上运行,也可在MacBook的CPU上运行(较慢),还能部署到Jetson Orin进行机载推理。

微调2万步,大约在单张A100上耗时4至5小时。

尽管只在不足3万条episode上训练,它在LIBERO、Meta-World以及真实的SO-100和SO-101机械臂上,能与明显更大的模型持平或胜出。

最好的是,整套方案基于社区贡献数据,通过LeRobot框架完成预训练。

如何为您的项目选择VLA

既然介绍了几种VLA模型,我们来谈谈如何为您的具体项目做选择。

在这五者之间做取舍,主要是将控制频率与硬件与您的实际环境匹配,而不是追逐上个月排行榜的冠军。

我大致会这样思考:

基于硬件与任务约束选择VLA模型的决策流程图 

五个约束,对应五个模型。如果只能记住本文的一张图,就记这张。图片由作者提供。

如果您只有消费级GPU,或桌上放着一台SO-101机械臂,从SmolVLA开始。开源生态中,没有比它更低成本地获得可用策略的方案了。

  • 如果任务需要富接触或双臂操作,直接选择pi0或pi0.5。流匹配动作头非常适合此类灵巧任务。
  • 如果您在写论文,需要一个审稿人熟悉的基线,用OpenVLA,因为大家都有。
  • 如果算力是约束,但仍需多形态支持,Octo是不二之选。
  • 如果您想了解前沿的可达成水平,看看Gemini Robotics 1.5,但要明白它无法自托管。

最后我想强调一点:在SmolVLA上做100条干净的示教,几乎总能胜过在OpenVLA上做50条混乱的示教。 

也就是说,将项目60%至70%的时间花在数据采集与质控上,剩下的再用于训练。

VLA模型的应用

VLA已从演示视频走向少量真实部署,尽管进展不均衡。

我观察到的规律是:它们首先落地在那些环境变化太大、无法脚本化,但在出错时人类仍可介入的场景。举例如下:

机器人操作

这是主战场,包括拣放、配套打包、分拣、装配等任务。

这类任务要求机器人在每次尝试间,识别、抓取并重新放置位置与朝向都会变化的物体——这恰恰是脚本系统最不擅长的条件。

仓储与履约是当前最清晰的商业场景。脚本化拣选需要物品每次以相同方式呈现,而基于VLA的拣选器能处理一个混有四十种SKU的杂物箱。

人形机器人

包括Figure、1X和Apptronik在内的公司都在VLA基础上构建,原因很简单:一台能行走、双手可用的人形机器人,可能的任务太多,无法逐一脚本化。

Gemini Robotics的“运动迁移”结果——在ALOHA 2上学到的技能直接运行在Apptronik的Apollo人形机器人上——正是人形项目要想扩展所必需的特性。

Gemini Robotics 在 ALOHA 2 与 Apollo 人形机器人上的运动迁移演示 

同一技能,只在ALOHA 2上训练一次,即可在Apptronik的Apollo人形机器人上无重训运行。来源:Google DeepMind,“Gemini Robotics 1.5 将AI代理带入物理世界”。

自动驾驶

驾驶栈开始采用VLA式架构,将车辆所见与下一步应做的动作连接在同一个推理回路中,而非感知-规划的交接式流程。

其吸引力与操作场景相同:面对任何规则都未预见的罕见情形,模型凭借对世界的广泛认知去推理应对,而不是“卡死”。

外科与医疗机器人

我想说明,这是清单中最早期的应用方向。

理念是:能遵循外科医生口头指令、并随组织条件变化而调整的系统,要优于刚性编程的系统;但主要限制在监管审批,而非模型能力。

我预计先会出现辅助与培训类应用,离自主还有很长的路。

视觉-语言-动作模型:挑战与局限

尽管VLA很强,但它们仍有短板,尤其在以下四点:

任务中途的恢复

VLA在任务开始阶段对变化处理得还不错,但当抓取在中途打滑,或物体在夹爪下移动时,恢复并不稳定。

大多数示教数据只采集成功尝试,因此模型几乎没见过如何从错误中恢复的示例。

设备端推理

精细操作需要10至100Hz的控制回路,要在机器人自身硬件上让70亿以上参数的模型达到这个频率,目前仍是目标而非既定工程现实。

这就是为什么多数已部署系统要么连接到边缘服务器,要么像Gemini Robotics 1.5那样将推理与控制拆分。

量化、层跳跃与蒸馏都有帮助,但仍是大家在迭代的“权宜之计”,而非定论。

数据瓶颈

如今有了任何人都能下载的强大开放权重,数据成了真正的分水岭。

采集多样且标注良好的远程操控数据,昂贵而缓慢,远非抓取网页那样;pi0公开结果与仅用公共数据能复现的差距,正清楚说明私有数据优势带来的价值。

泛化边界

当前的VLA在训练分布内泛化良好,但一旦超出会明显退化。

即便是跨22种形态在台面操作上训练的模型,遇到确实从未见过的任务形态,仍可能表现不佳。

总结思考

可以看到,VLA模型将感知、语言理解与动作生成整合到一个架构中,这是一种结构性的转变,而非渐进改良。

它们能做到传统控制从未做到的:泛化到未被明确训练的条件,因为语言与视觉骨干在看到示教之前,就已将对物理世界的“工作模型”带进了机器人。

2026年让我最惊讶的是,难题所在发生了多大转移。

三年前,难题是架构。

如今OpenVLA、Octo、pi0与SmolVLA都已放在GitHub供人下载,难题变成了数据质量、恢复行为,以及能否在机器人本体上、而非数据中心里,以50Hz实际跑起来。

如果您想继续深入,DataCamp的Introduction to AI Agents课程涵盖更广泛的智能体背景,Large Language Models (LLMs) Concepts则讲解骨干侧内容。

FAQs

VLA 与 VLM 有何不同?

视觉-语言模型(VLM)输出文本或向量表示。VLA则输出电机控制命令,这意味着它不仅能描述场景,还能对场景执行操作。

运行VLA模型需要什么硬件?

取决于模型。SmolVLA 可在 RTX 3060 或 Jetson Orin 上运行,Octo 可在单张 RTX 4090 上运行,而 OpenVLA 通常需要 A100 或 H100 GPU。

为何机器人训练数据远小于VLM使用的数据?

VLM使用从网络抓取的数十亿图文对训练。VLA需要真实的机器人示教轨迹,采集昂贵且缓慢,因此即便是最大的开源数据集(Open X-Embodiment)也不到100万条轨迹。

VLA 模型目前还不擅长什么?

它们在任务中途的恢复较弱,因为大多数训练数据只包含成功尝试。要在机器人本体上以实时(约10-100Hz)速度运行大型模型也尚未真正解决。

为何多数VLA复用现有的LLM骨干?

复用像 Llama 2 或 PaliGemma 这样的预训练 LLM,可“白拿”指令跟随与组合语言理解能力。这也是为什么VLA往往能处理“把水果放到碗里”这类指令,即便在机器人训练中从未见过这句原话。

Vaibhav Mehra

作者

Vaibhav Mehra

主题