论文提出了一种小巧高效的模型,能让普通硬件也能运行复杂的机器人控制任务。
一、为什么需要SmolVLA?
现在的机器人控制模型存在两个大问题:
- 太大太贵:动辄几十亿参数,训练一次要花几十万美元,普通实验室根本用不起
- 不接地气:大多用学术数据集训练,和真实世界的廉价机器人平台脱节
SmolVLA就是为解决这些问题而生的——它小到能在单块消费级GPU上训练,甚至能在CPU上运行,同时性能还能媲美大10倍的模型。
二、SmolVLA的核心原理

(架构示意图:左侧为简化的视觉-语言模型,右侧为动作专家模块)
2.1 模型整体架构
想象一下,机器人要完成”抓起杯子放进盒子”这个任务,需要三个能力:
- 看懂指令(语言理解)
- 看清环境(视觉感知)
- 规划动作(动作生成)
SmolVLA把这三个能力整合在一起,主要由两部分组成:
- 视觉-语言模型(VLM):处理图像和文字指令
- 动作专家(Action Expert):根据感知结果生成具体动作
2.2 视觉-语言模型(VLM)的巧思
普通的VLM模型很大,SmolVLA用了三个妙招让它变轻:
- 砍 layers:就像剥洋葱,只保留前半部分 layers(比如总共32层,只留16层),经测试性能损失很小
- 减 tokens:把每张图片的视觉 tokens 从几百个减到64个,通过像素重排技术保证关键信息不丢失
- 用轻量 backbone:基于SmolVLM-2,这是一个专门为多图和视频优化的轻量模型
它的输入有三样:
- 文字指令(比如”拿起红色积木”)
- RGB图像(可以是多摄像头的画面)
- 机器人自身状态(比如关节角度、 gripper 位置)
2.3 动作专家的工作原理
动作专家就像机器人的”小脑”,负责把感知到的信息转化为具体动作。它用了一种叫流匹配(Flow Matching) 的技术,简单说就是:
- 先随机生成一些”噪音动作”
- 逐步把噪音调整成合理的动作序列
- 一次生成一连串动作(比如50个时间步),而不是一个一个生成
这种方法比传统的回归方法更擅长处理复杂动作分布,比如机器人既可以从左边也可以从右边抓取物体的情况。
特别的是,动作专家用了交叉注意力+自注意力交替的结构:
- 交叉注意力:让动作参考视觉-语言信息
- 自注意力:让动作序列内部保持连贯(比如先移动到物体上方,再闭合夹子)
- 因果掩码:保证后面的动作只参考前面的,符合时间逻辑
三、训练数据的创新
SmolVLA最特别的一点是用了社区贡献的数据,而不是传统的学术数据集:
- 481个数据集,共22.9k个片段,10.6M帧
- 来自世界各地的爱好者用廉价机器人(如SO100)收集
- 包含各种真实场景:家庭、实验室、不同光照条件
但社区数据比较”乱”,他们做了两项关键处理:
- 指令标准化:用Qwen2.5-VL模型自动生成清晰指令(比如把模糊的”操作它”改成”拿起蓝色积木”)
- 摄像头视角统一:把不同命名的摄像头(如”top”、”wrist”)统一成标准视角
四、异步推理:让机器人反应更快

普通机器人控制是”先想完再动”,SmolVLA用了异步推理:
- 机器人执行动作的同时,模型就在计算下一组动作
这是“异步”的核心逻辑:机器人正在执行当前动作队列(比如50个动作里的前30个)时,模型已经开始计算下一个50个动作的队列了,两者并行进行,不互相等。
- 动作队列快用完时才触发新的计算
这是触发计算的“时机”:不是一执行就算,也不是等完全用完才算,而是当队列里的剩余动作少到某个阈值(比如只剩15个)时,才启动下一轮计算。这样既能保证计算结果赶在当前队列用完前出来,又不会因为计算太早导致动作和实时环境脱节(比如物体位置变了,早算好的动作就不准了)。
- 避免了机器人”发呆等指令”的情况
效果很明显:在固定时间内,能多完成一倍的任务(同步模式完成9次,异步完成19次),平均快30%。
五、性能表现
别看模型小(0.45B参数),实力却很强:
- 在LIBERO仿真环境中,超过了3.3B参数的π₀模型
- 在真实世界任务中:
- 抓取放置:75%成功率
- 堆叠积木:90%成功率
- 分类任务:70%成功率
- 平均78.3%,远超同规模模型
特别值得注意的是,它在没见过的机器人(SO101)上也能表现良好,说明有很强的泛化能力。
六、关键启示
- 小模型也能有大作为:通过精心设计,0.45B参数能媲美10倍大的模型
- 社区数据价值大:真实、多样的平民化数据,比干净但脱离实际的学术数据更有用
- 效率设计很重要:从模型结构到推理方式的全链路优化,才能让技术落地
发表回复