095|SmolVLA:紧凑模型与异步机器人控制
原论文:SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics,Mustafa Shukor 等,2025。论文。
先接住前作的问题
π0展示连续动作专家能接入VLM,但较大模型的推理和等待仍制约部署成本。SmolVLA同时缩小计算与增加异步动作队列,追问模型算得慢时机器人怎样继续执行;队列策略与模型能力是两项贡献。
五个前置概念
五个前置概念:
- 流匹配:用学习的速度场把噪声变为连续动作。
- 交叉注意力:动作查询读取视觉语言条件特征。
- 动作分块:一次预测一段控制命令。
- 异步执行:推理与动作执行在时间上重叠。
- 观测年龄:动作执行时,其依据的观测已经过去多久。
一、问题设定:紧凑动作模型怎样减少执行等待
SmolVLA 面对的问题很实际:机器人不应每次等模型算完才继续动,大模型也未必是简单操作的唯一选择。它使用较小的视觉语言骨干,减少图像 token 和网络层数,再接一个流匹配动作专家;部署时让模型计算和机器人执行并行。
这是离线模仿学习。输入为图像、自然语言指令和关节状态,输出连续动作块;没有在线奖励优化,也没有显式环境转移模型。真实机器人采用位置命令,任务以搬运、叠放、颜色分类和小积木搬运为主。
社区数据具有相机命名不一致、语言描述含糊和示范质量不同等问题。论文先筛选并规范数据,再训练动作策略。这里的“社区来源”不是质量保证,标准化本身就是训练方案的重要组成。
真实实验主要检验相似任务与新物体位置;SO101需要下游适配,不能理解成模型从SO100直接零样本控制任意身体。仿真评估中的模型则只从VLM初始化,没有先做社区机器人预训练。这两条实验线必须分别阅读,否则会把仿真成绩错误归因于社区数据。(表2、§5.1)
任务终止与评价由基准或人工阶段规则决定。真机搬运抓起和放入各得一半分,分类按每个对象的抓取与正确放置计分;因此真机“SR”更准确应读作归一化任务得分。
二、减少视觉计算并异步调度动作队列
两部分贡献应分开看。紧凑网络降低一次推理的代价;异步队列减少执行中等待下一批动作的空档。后者不要求重新训练一个更聪明的策略,却可能改变策略实际使用观测的时间,因此会影响控制性能。
1. 截取 VLM 中间层
图像通过视觉编码器和 token 压缩,状态投影成一个 token,与文字一起进入 VLM。动作专家使用较早层的特征,因此不需要计算完整语言网络的尾部。其直觉是机器人需要空间和目标表示,不一定需要最适合最终文字生成的深层表示。
这是任务相关压缩,不是证明后半网络毫无价值。表8显示保留更多层仍可能提高成绩,选择一半深度是性能与效率折中。冻结 VLM、训练动作专家,也意味着模型能力仍依赖先前视觉语言预训练;“无机器人预训练”不等于从随机参数学习。
2. 交替注意力与连续动作
动作专家交替使用交叉注意力与因果自注意力:前者读取视觉语言条件,后者组织动作块内部的依赖。虽然自注意力有因果掩码,整块去噪仍可并行计算,不能把它误写成逐动作自回归解码。
用一致的教学记号,令 ,训练速度场
其中 为视觉、语言与状态特征,为示范动作。采样从噪声沿正时间积分。原文插值与写出的反向速度存在符号方向问题;实现时应成套核对采样方向,不能只根据损失抄写采样器。
因果注意力在该实验里更好,但“未来动作泄漏”需要谨慎解释:扩散/流匹配中的未来带噪 token 在部署时也存在,并不天然等于读取不可得的真实答案。表7支持特定结构的经验优势,不能证明双向动作去噪在一般情况下不合法。
3. 异步动作队列
同步系统先用完旧动作,再停下来生成新动作。异步系统在队列剩余比例低于阈值 时启动新推理,机器人继续消耗旧队列;新结果返回后,对齐时间并处理重叠动作。
设动作块长 、控制周期 、往返与推理延迟为 。简单缓冲条件为
它表示请求发出时剩余动作应足够覆盖平均等待时间。这不是无停顿保证:延迟尾部、网络波动、队列对齐错误都会导致耗尽。实际稳健设计应根据延迟分位数和失败代价选择缓冲量,而不是只用均值。
论文还根据关节状态距离过滤近重复观测,避免反复加入相似动作块导致停滞。但关节没变不代表世界没变:旁人移动物体时,视觉变化可能被这个规则忽略。队列为空时会强制处理新观测,这是恢复机制,不是即时反应保证。
这是教学控制逻辑;具体并发请求管理、过期丢弃与融合规则应对照实现配置,不能把这些工程选择当作论文中唯一规定。
平均延迟足够小,队列仍可能卡顿。教学设50步动作、每步20毫秒,剩余20%时发请求,缓冲只覆盖0.2秒。若平均延迟0.15秒而偶发延迟0.35秒,后一种情况会出现约0.15秒空档;平均吞吐报表会掩盖它。
增加缓冲可减少耗尽,却让更多旧观察产生的动作继续执行,响应突发变化更慢。应同时记录延迟分位数、队列空闲时间和观测到执行的年龄,不能仅报模型每秒生成多少动作。原文异步栈把推理与执行解耦,是控制系统改进;它没有把网络抖动或过时动作问题自动消除。原文§3.3
用延迟算一个小例子
以下是未运行的教学例子。动作块50步,控制周期约0.033秒,往返推理耗时0.2秒。只为覆盖平均延迟,需要剩余约6.1步,即 。选择更大的阈值可以更早请求,但也可能增加重叠推理与融合开销。
若一次网络抖动到0.5秒,原本六步缓冲就不够。若物体在请求后被移动,队列即使很满也可能全是过时动作。两个失败分别对应计算供给不足与信息过时,不能用同一个“不卡顿”指标描述。
三、让下一块推理与当前队列执行重叠
网络变小减少一次计算,异步队列则减少等待,两者可分别测量。队列里仍是旧观察条件下的动作,触发时机决定连续性与反应速度的交换。
训练:
规范相机顺序与任务描述
冻结选定的 VLM 前段,训练流匹配动作专家
在目标机器人示范上适配
初始化:
捕获观测,生成第一段动作并放入带时间标记的队列
每个控制周期:
执行队列中当前有效动作
若队列较短且没有需要保留的未完成请求:
捕获观测
若不是近重复,或队列已经耗尽:
异步请求新的动作块
若新结果返回:
按时间对齐,丢弃已经过时的部分
按选定规则合并重叠与未来动作
记录队列空闲、观测年龄及实际执行时间
四、分别衡量单次推理、等待与任务完成
作者在 SO100 上报告预训练后多任务平均阶段分78.3%,并在搬运计时中把同步13.75秒降至异步9.70秒。但异步三任务平均阶段分为73.3%,不能说效率提升完全没有性能代价。(表3、5,图5)
原图怎么读: 图5,原论文图注与图像。左、中、右分别比较成功率、速度和固定时间内任务数量。异步推理的吞吐优势与每次尝试可靠性要分别报告,不能只保留完成数量。

| 实验 | 数据/训练 | 评价 | 关键注意点 |
|---|---|---|---|
| 社区预训练 | 481数据集、22.9k回合、10.6M帧 | 下游真机适配 | 表1图注把帧误称回合,使用表内单位 |
| LIBERO | 1693回合,40任务 | 每任务10次,二元成功 | 模型从VLM初始化,未用社区机器人预训练 |
| Meta-World | 每任务50示范,共50任务 | 每任务10次 | 不同难度分组与总体平均不同 |
| SO100 | 三任务,每任务50示范 | 阶段分;预训练与多任务对照 | ACT为单任务,VLA为多任务 |
| SO101 | 小积木搬运适配 | 已见/新位置 | 新位置不是新任务类别 |
| 异步执行 | 相同策略、更换执行方式 | 时间、阶段分、固定时限完成数 | 阈值在搬运任务调好后复用 |
§4.3给出预训练200k步、全局批量256,仿真适配100k步、批量64,真机适配200k步。实际预训练使用4张GPU;“可以单卡训练”是可行性描述,不应改写成所有实验都只用了单卡。文中约30k GPU小时是整个项目口径,不能当作单个模型预训练成本。
还有一个重要协议差异:默认真机执行完整动作块后更新观测,仿真默认每执行一步重新预测。模型结构相同不等于部署反馈条件相同。若用仿真成绩预测低算力真机表现,需要先统一执行步数与延迟。
五组证据及其支持范围
表2:紧凑模型具有竞争力。 0.45B模型在LIBERO为87.3%,在Meta-World为57.3%。它支持该结构在给定下游数据上的能力;不同基线来源、预训练与评价回合不同,不能把参数比例直接解释成固定资源下的普遍优势。
表3、5:社区预训练与多任务学习。 同多任务条件下,社区预训练将平均阶段分51.7%提高到78.3%,增加26.6个百分点。但搬运单项从80到75,收益主要来自叠放与分类。平均更高不意味着所有任务都获益。
图5:异步执行提高时间效率,有任务差异。 13.75到9.70秒的相对用时减少为 。三任务平均分从78.3到73.3,分类从70到50;作者称相近表现,但没有理由抹去该任务下降。固定时限总搬运数19与9是多次实验合计,不能误写成每分钟单次都完成19件。
表6、表7、表8、表9、表10、表11:结构消融需要看交互。 交替注意力效果较好;流匹配优于所比较的L1回归。但表11中状态放在VLM前缀对CA更好,对SA却比放后缀差,正文“两个结构都更好”的概括不受表格支持。架构选择具有条件依赖,不能只读表注。
表12、表13:预测长度不等于执行长度。 一次预测多个动作可以学习时间结构,但不必全部执行。表13中更新观测间隔从10到50步时成绩明显下降,说明减少推理开销会牺牲反馈。更短间隔也非严格单调最好;应寻找当前任务和硬件的折中点。
五、队列长度交换连续运动和观测新鲜度
作者承认预训练形态单一、数据规模有限、任务较短,以及通用VLM未必适合机器人。我的进一步分析是,异步执行改变了策略输入与动作生效之间的时间关系,不能只当成无损加速。任务静态时旧动作可继续有效,接触状态突变或目标移动时则可能需要立即重新观测。
因此评价不应只有平均推理毫秒数,还需要观测到动作的年龄、队列空闲比例、接触失败、任务完成时间与完整成功率。网络服务器更强可以降低计算延迟,但增加通信不确定性;这些成本应一起进入部署选择。
追问:平均推理时间相同但尾部延迟更大,会怎样影响动作队列?
参考答案:偶发长延迟可能把队列耗空,造成停顿;为了覆盖它而加长队列,又让动作依据更旧的观测。应记录延迟分布与空队列次数,并在扰动任务中测反应时间。只按平均值配队列不足以描述这一取舍,吞吐相同也不保证闭环体验相同。
六、沿机制关系继续读
SmolVLA与π0是平行的小型动作专家设计,并把异步执行作为系统问题;Xiaomi-Robotics-0继续研究已承诺动作前缀下的反应性,这是相同瓶颈的后续路线而非直接照搬架构。
七、自测三题与参考答案
问题1:动作块有50步,为什么仿真可以每一步重算?
答案: 预测长度与执行长度独立。长预测可帮助学习时间关系,执行时只取第一步则保留高频反馈。代价是大量计算被丢弃,因此仿真协议未必适合资源有限的真机。
问题2:队列长度满足平均延迟公式,能保证没有停顿吗?
答案: 不能。公式只覆盖均值,不覆盖尾部延迟、通信抖动和请求失败。应观察延迟分位数,并明确耗尽时的处理方式;同时队列满不代表动作适合当前世界。
问题3:SmolVLA 的小模型成绩好,是否证明机器人不需要大模型?
答案: 不能。证据限于给定数据、任务和控制协议;较大版本在一些测试上仍更好。结论是小模型可以在特定资源与任务约束下提供良好折中,而非所有复杂任务都不需要容量。