ForceVLA2 :机器人不仅要“看见”,还要知道自己用了多大力

当机器人要把齿轮插进装配槽、把埋在泡沫球里的盘子找出来,或者沿着弧形花瓶稳定擦拭时,视觉只能回答一半问题:目标大概在哪里。
剩下的一半发生在接触之后:有没有碰到?压得够不够?方向是否顶偏?该继续沿轨迹走,还是顺着接触力滑动?如果机器人始终只追踪预先预测的位置,它可能“看起来走对了”,却在真正接触时卡死、打滑,甚至触发机械臂过载。
CVPR 2026 论文 ForceVLA2 想解决的正是这条断层。它不是简单地给 VLA 多接一个六维力/力矩传感器,而是把力信号贯穿到三个层次:
- 用力觉提示帮助 VLM 理解当前处于哪个任务阶段;
- 让实时力信号绕过长链路,直接进入动作专家形成快速反馈;
- 让模型同时输出末端位姿增量和目标力/力矩,真正执行混合力—位置控制。
一句话概括:
ForceVLA2 把力从“供模型参考的观测”,升级成了“参与任务推理、决定控制模式并直接进入动作空间的变量”。
论文:https://arxiv.org/abs/2603.15169
项目主页:https://sites.google.com/view/force-vla2/home
先看最反直觉的结果:有力传感器,不等于会用力
论文在五个真实机器人任务上比较了原始 π₀、π₀.₅、ForceVLA,以及一个非常重要的基线:直接把原始力信号塞给 π₀(π₀ w/ F)。
结果是:
- 原始 π₀:平均成功率 18%;
- π₀ w/ F:平均成功率 17%;
- ForceVLA:平均成功率 35%;
- ForceVLA2:平均成功率 66%。
也就是说,朴素加入力信号不仅没有带来提升,整体上还略降了 1 个百分点。
原因并不神秘。预训练 VLA 原本学习的是“视觉—语言—位置动作”之间的稳定映射。高频、带噪、随接触状态剧烈变化的力信号如果只被当作又一串输入 token,很可能成为干扰项。模型知道“当前受到了 12 N 的力”,并不等于知道:
- 这股力属于正常接触还是危险顶压;
- 当前任务应该由视觉还是力觉主导;
- 应该改变位置轨迹,还是改变目标接触力;
- 当前子任务是否已经完成。
ForceVLA2 的贡献,恰恰是给这些问题安排了不同的处理通路。

图 1|ForceVLA2 概念:从力觉感知走向混合力—位置控制
一张图看懂 ForceVLA2

图 2|原创理解图:ForceVLA2 的长时程推理与短时程力反馈双通路
它可以被理解成一个“双时间尺度”的系统。
上层更慢、更关注任务结构:机器人现在是在“抓齿轮”“对齐齿轮”,还是“向装配槽插入”?不同阶段需要的接触方式完全不同。
下层更快、更关注此刻的物理状态:力是否突然变大?接触面是否发生移动?末端是否需要立即顺应、退让或重新寻找目标?
最终,两条信息流在 Cross-Scale MoE 中汇合,再由 Flow Matching 动作头生成位置、力和任务进度。这个设计很像人类操作:我们先知道自己在“擦”“按”还是“插”,但手一旦碰到物体,又会根据瞬时触感不断微调。
方法一:Force Prompt 让 VLM 知道“现在做到哪一步”
普通任务指令可能只有一句:
Assemble the gears.
这句话说明最终目标,却没有说明机器人此刻处于哪个物理阶段。ForceVLA2 为每个任务预先定义 3~5 个子任务,并引入力觉提示(Force Prompt)描述当前阶段,例如:
抓取齿轮 → 对齐装配位置 → 插入装配槽。
多视角图像、全局任务指令和当前 Force Prompt 一起送入以 SigLIP/PaliGemma 为基础的 VLM。这样,VLM 不只做视觉语义理解,还获得了阶段性的物理语境。
这里需要把一个容易误读的地方说清楚:**Force Prompt 不是把 300 Hz 的六维力传感器波形直接翻译成自然语言。**它更接近一个带力觉语义的子任务状态提示。模型同时预测连续的任务进度变量 (s_t),据此保持当前阶段或切换到下一阶段。
这条通路解决的是长时程问题:
当前接触意味着什么?下一步应该进入哪个操作阶段?
方法二:同一份力信号,走“理解通路”和“反应通路”
这是 ForceVLA2 最值得细看的结构。
末端状态包含两部分:
- 末端位姿:三维位置与四元数,共 7 维;
- 末端六维力/力矩:三个方向的力与三个方向的力矩,共 6 维。
位姿和力首先被编码成状态 token,再通过 Cross-Attention 与视觉—语言上下文交互。这样模型可以结合任务语境理解同一个数值。例如,向下 10 N 在“按压瓶泵”中可能是必要动作,在“抓取齿轮”中却可能意味着危险碰撞。
但如果所有力信号都必须先经过 VLM 和多模态融合,瞬时接触变化就可能被长链路稀释。因此论文又保留了一条 Force Token Bypass:原始力嵌入绕过高层融合,直接送入 Cross-Scale MoE。
于是,同一份力信号承担两个角色:
- 经过语义融合的力:告诉模型“这股力在当前任务里意味着什么”;
- 保留瞬时变化的力:告诉动作专家“现在立刻应该怎样调整”。
这比“把所有模态拼起来交给一个 Transformer”更有针对性,因为高层推理和低层反应本来就不处在同一个时间尺度。

图 3|ForceVLA2 总体框架
方法三:Cross-Scale MoE 决定当前更该相信谁
自由空间运动时,视觉通常最重要;刚接触物体时,末端状态开始变得关键;进入擦拭、按压或插接阶段后,力觉可能成为主导信号。
ForceVLA2 没有让三种模态始终以固定比例融合,而是设计了三个轻量专家:
- Visual Expert:处理视觉—语言上下文;
- State Expert:处理末端位姿与本体状态;
- Force Expert:处理实时力/力矩。
门控网络为每个 token 计算动态路由权重。其目的不是宣称某一种模态永远更可靠,而是让控制重点随任务阶段变化:
接近物体:视觉主导
↓
建立接触:状态与力觉权重上升
↓
持续擦拭 / 按压 / 插接:力觉闭环主导细调
消融实验也支持这一点:只加入视觉模态时平均成功率为 50%,视觉与力觉共同进入 Cross-Scale MoE 后上升到 66%。不过,论文也观察到一个细节:在 Press Bottle 和 Clean Board 这类力控制模式相对简单的任务上,额外加入力 token 反而略有下降。作者推测,简单任务只需要一次位置/力控制切换,过多力输入增加了不必要的自由度。
这提醒我们:多模态不是越多越好,关键是信息在什么阶段、以什么路径进入模型。
方法四:动作不再只有“往哪走”,还包括“施加什么力”
传统 VLA 通常预测末端位姿或关节动作。即使它读取了力传感器,最终能够直接控制的仍然只有位置。真实接触力由物体刚度、摩擦、接触角度和环境扰动共同决定,因此很难仅靠位置轨迹稳定控制。
ForceVLA2 的 Flow Matching 动作专家联合输出:
- 末端位姿增量 Δp;
- 六维目标力/力矩 f;
- 子任务进度 s。
可以把它理解为:
位置命令负责“末端要到哪里”,力命令负责“接触后要以怎样的力度和方向继续完成动作”。
这才是论文标题中 Hybrid Force-Position Control 的实质。力不再只是观测,而是动作的一部分。附录进一步说明,执行端通过基于雅可比矩阵的映射连接不同机械臂控制接口;作者据此称该方案可适配力矩控制机器人、带末端 F/T 传感器的机器人及部分低成本执行器。不过,本论文的完整实验仍集中在 Flexiv Rizon 4s 平台上,因此跨本体验证还不能只凭接口描述下结论。
ForceVLA2-Dataset:1000 条轨迹,记录的不只是“手怎么走”
为了训练这套模型,作者构建了 ForceVLA2-Dataset:
- 5 个接触密集型任务;
- 1000 条真实机器人演示轨迹;
- 约 50 万个同步时间步;
- 每个任务被划分为 3~5 个子任务;
- 包含多视角 RGB、任务指令、Force Prompt、末端位姿、力/力矩和力控制监督。
五个任务分别是:按压瓶泵、擦拭花瓶、清洁黑板、从泡沫球中取盘子、装配齿轮。
数据由 Flexiv Rizon 4s 机械臂、DH Robotics AG-95 夹爪和力反馈 GELLO 遥操作系统采集。视觉来自两台第三视角 RealSense D455 和一台腕部 D435;末端六维力/力矩以 300 Hz 记录,图像以 30 fps 采集并在存储前做时间同步。

图 4|ForceVLA2-Dataset 的模态与五类任务
这个数据集真正稀缺的并不是“又多了 1000 条机器人轨迹”,而是它把三种监督对齐在一起:
任务阶段是什么
+
机械臂怎样移动
+
接触时应该施加什么力
这使模型能够学习从“感知到力”进一步走向“主动调节力”。
实验:66% 平均成功率,到底证明了什么?
每个任务执行 20 次独立测试,五个任务合计 100 次。主要结果如下:
| 方法 | 按压瓶泵 | 擦拭花瓶 | 清洁黑板 | 取出盘子 | 装配齿轮 | 平均 |
|---|---|---|---|---|---|---|
| π₀ | 35 | 20 | 35 | 0 | 0 | 18 |
| π₀.₅ | 45 | 30 | 45 | 15 | 20 | 31 |
| ACP | 25 | 30 | 25 | 0 | 0 | 16 |
| π₀ w/ F | 30 | 25 | 20 | 10 | 0 | 17 |
| ForceVLA | 70 | 25 | 55 | 15 | 10 | 35 |
| ForceVLA2 | 80 | 75 | 70 | 35 | 70 | 66 |

图 5|五个真实任务的成功率对比
论文摘要所说“比 π₀ 和 π₀.₅ 分别提升 48% 和 35%”,这里指的是平均成功率的百分点差:66−18=48,66−31=35,而不是相对百分比增长。
这些数字至少说明三件事。
1. 单纯位置控制在“隐藏接触”任务上几乎失效
π₀ 在取盘子和装配齿轮两个任务上都是 0%。这两类任务无法只靠看见目标后走一条位置轨迹:前者需要在泡沫球遮挡中通过接触探索,后者需要在微小装配误差下持续对齐。
2. ForceVLA 已经证明“感受到力”有用,但仍不会主动调力
ForceVLA 平均达到 35%,明显优于 π₀。可在装配齿轮任务上,它仍只有 10%。ForceVLA2 达到 70%,相差 60 个百分点。这正是“力作为感知输入”和“力作为控制目标”之间的差距。
3. 最大收益出现在视觉最难判断接触状态的地方
擦拭花瓶、取出盘子和装配齿轮都需要依靠接触反馈修正动作。ForceVLA2 的优势在这些任务上最明显,说明提升不是来自更强的纯视觉识别,而是来自闭环物理交互。

图 6|典型任务定性结果与过载对比
动态扰动:桌子被移动后,它还能继续“贴着做”
标准成功率之外,论文还设计了更能说明闭环能力的扰动实验。
在按压瓶泵时,研究人员突然降低支撑台高度。只追踪既定末端位姿的策略会慢慢追赶新位置,容易丢失接触;ForceVLA2 则根据力反馈调整动作,继续完成按压。
擦拭花瓶时,研究人员改变花瓶倾角,导致表面法向发生变化。ForceVLA2 可以沿新表面滑动并保持接触,而其他 VLA 更容易继续执行原轨迹,最终过载。
在泡沫球中寻找盘子时,即使第一次抓取失败,它也能继续通过力引导探索并重新抓取。

图 7|高速跟随、方向跟随与抓取失败后的重新定位
这类实验比静态桌面上的成功率更重要,因为它验证了 ForceVLA2 不是只记住一套位置轨迹,而是在环境改变后仍能利用接触反馈维持任务。
消融:真正贡献最大的不是 Prompt,而是 Cross-Scale MoE
作者以 π₀ 的 18% 为起点逐步加入模块:
- 加入 Force Prompt:18% → 27%;
- 再加入 Multimodal Encoder:27% → 40%;
- 再加入 Cross-Scale MoE:40% → 66%。

图 8|Force Prompt、Multimodal Encoder 与 Cross-Scale MoE 的逐步消融
其中,Cross-Scale MoE 带来了最大的单步增益:26 个百分点。这说明系统最需要的不是一句额外的阶段提示,而是一个能够在视觉、状态和力觉之间动态切换控制重点的路由机制。
另一个非常有价值的消融是“力应该注入哪里”:
- 直接注入 VLM 通路:平均 5%;
- 注入 Multimodal Encoder:平均 58%;
- 与末端状态融合并保留最终设计:平均 66%。
把原始力直接塞进 VLM,结果比 π₀ 基线还差。这从反面证明了 ForceVLA2 的核心判断:高频物理信号不应该无差别污染高层语义表征,而应该在靠近动作控制的位置建立专门通路。

图 9|Cross-Scale MoE 的视觉与力觉输入组合
ForceVLA、ForceVLA2 与触觉 VLA,到底差在哪里?
可以用“力在系统里扮演什么角色”来区分:
| 路线 | 力/触觉的角色 | 动作输出 | 主要能力 |
|---|---|---|---|
| 普通 VLA | 没有直接物理反馈 | 位置/关节动作 | 看见目标后执行轨迹 |
| π₀ + 朴素力输入 | 附加观测 | 仍以位置动作为主 | 容易把力当噪声 |
| ForceVLA | 核心感知模态 | 位置动作 | 更清楚当前接触状态 |
| ForceVLA2 | 任务提示 + 实时反馈 + 控制目标 | 位置 + 6D 力/力矩 + 进度 | 主动混合力—位置调节 |
| 触觉 VLA | 局部接触形状、纹理、滑移等 | 依方案而定 | 擅长精细局部接触感知 |
力觉与触觉并不是互相替代。六维 F/T 传感器擅长测量末端整体受力和力矩,适合稳定按压、擦拭、插接与顺应控制;触觉阵列则能提供接触位置、局部形变、纹理和滑移等空间信息。更完整的多模态物理感知路线,很可能是:
视觉负责全局目标与语义,触觉负责局部接触分布,六维力/力矩负责整体交互载荷,控制策略负责把三者变成可执行动作。
这篇论文目前还有哪些边界?
ForceVLA2 的方向很重要,但现有证据仍有清晰边界。
1. 数据规模和本体覆盖仍小
1000 条轨迹、5 个任务、单一主机械臂,足以验证概念,却还不足以证明跨任务、跨物体、跨本体的通用力觉智能。论文在 Appendix D 讨论了硬件无关接口,但没有给出多机器人平台的系统性结果。
2. 代码和数据暂未开放
截至本文整理时,官方项目页仍标注 “code and dataset is coming soon”。因此目前可以审阅论文和演示视频,但还不能独立复现训练、控制器参数与完整评测。
3. 评测次数有限,统计报告不够完整
每个任务 20 次测试,结果以成功率呈现,但正文没有同时给出置信区间或跨随机种子的方差。尤其是 0%、5%、10% 这类结果,一次成功或失败就对应 5 个百分点。
4. 子任务结构仍依赖预定义与离线标注
每个任务被人工拆成 3~5 个子任务,边界依据视觉与同步力曲线离线标注。它解决了“如何利用阶段结构”,尚未彻底解决“如何从开放任务中自动发现阶段结构”。
5. 计算与部署成本仍偏研究平台
论文报告使用 8 张 A100、batch size 32、训练 3 万步,约 10 小时;在 RTX 4090 上、action chunk size 为 30 时,推理速度约 15 Hz。这个频率可以支撑论文中的闭环操作,但尚无 Jetson 或机器人端侧算力上的结果。
6. 进度阈值表述存在需要澄清的细节
论文将进度 (s_t) 描述为 0~1 的连续值,同时又写到“超过 1(threshold)时切换子任务”。如果阈值确为 1,理论上很难出现“超过”;更可能是正文省略了实际使用的小于 1 的阈值,或存在表述错误。该细节不影响整体架构,但复现时必须由代码或作者说明确认。
为什么这篇对“多模态物理感知”方向特别重要?
很多工作谈视觉、触觉、力觉融合时,容易把研究目标停在“识别得更准”:多一种模态,就多一种环境信息。
ForceVLA2 把问题向前推进了一步:
多模态感知
↓
物理状态理解
↓
任务阶段推理
↓
控制权动态分配
↓
可执行的力—位置动作
这条链路意味着,后续真正有价值的课题不只是研究“怎样编码六维力”或“怎样融合触觉 token”,而是研究:
- 不同模态应该进入高层推理还是低层反应;
- 高频物理信号怎样绕过大模型的慢路径;
- 力觉、触觉与视觉如何决定当前控制模式;
- 多模态表示最终怎样落到阻抗、导纳、力矩或混合控制接口;
- 如何在保持泛化能力的同时满足实时闭环。
从这个角度看,ForceVLA2 的 Cross-Scale MoE 和 Force Bypass 比“加入了 6D F/T”本身更值得精读。它提供的是一种可迁移的架构思想:让语义推理与物理反射分层,但在动作生成处重新汇合。
总结
ForceVLA2 最重要的价值,不是把 VLA 的输入模态从 RGB、语言扩展到六维力/力矩,而是补上了“物理反馈怎样真正改变动作”的闭环:
- Force Prompt 让 VLM 获得阶段性的力觉任务概念;
- Multimodal Encoder 让位姿和力在语义上下文中被解释;
- Force Bypass 保留瞬时力反馈,避免高层融合拖慢或稀释反应;
- Cross-Scale MoE 动态决定视觉、状态和力觉在当前阶段谁更重要;
- Flow Matching 头同时生成位置、力/力矩和任务进度,让力成为可控输出。
最终,它在五个真实接触任务上取得 66% 平均成功率,相比 π₀ 和 π₀.₅ 分别高出 48 和 35 个百分点,并在齿轮装配上把第二名的 20% 提升到 70%。
但更值得记住的不是 66% 这个数字,而是下面这句话:
真正的物理智能,不只是让机器人感受到世界施加给它的力,而是让它知道这股力意味着什么,并据此决定下一刻应该怎样与世界相互作用。
参考资料
- Yang Li et al. ForceVLA2: Unleashing Hybrid Force-Position Control with Force Awareness for Contact-Rich Manipulation. CVPR 2026 / arXiv:2603.15169. https://arxiv.org/abs/2603.15169
- ForceVLA2 官方项目主页. https://sites.google.com/view/force-vla2/home
- CVPR 2026 Open Access 页面. https://openaccess.thecvf.com/content/CVPR2026/html/Li_ForceVLA2_Unleashing_Hybrid_Force-Position_Control_with_Force_Awareness_for_Contact-Rich_CVPR_2026_paper.html