论文精读 · Harness for Robotics · 评估与反馈

τ0-VLA

a Hierarchical Robot Foundation Model with World-Model-Guided Test-Time Computation

长程任务里最要命的不是动作做不准,而是选错了下一个子任务。τ₀-VLA 的高层先读执行记忆提出子任务;对把握不大的决策,再展开一次「提议 → 想象 → 评分」的束搜索:世界模型画出每个候选子任务完成时的画面,价值模型打分,反思模型综合后才把子任务交给低层 VLA 执行。

  • 智元 Agibot Finch · 上海创智学院 · 港中文(通讯作者 Jianlan Luo)
  • arXiv 2608.16885v1
  • v1 2026-08-17
  • arXiv · 项目页
按原文 Figure 1 的「做奶茶」例子画:深度 1 的三个候选和分数取自原图,深度 2 的分支是示意。

做了什么

高层:四个模型。提议模型和价值、反思模型都从 Qwen3.5-9B 微调,世界模型从图像编辑模型 Step1X-Edit 训练。低层:Qwen3.5-2B + MoT 动作专家,40 维统一状态/动作空间,在 40,115 小时真机数据上训练。高层每约 1 秒刷新一次子任务,低层以约 30 Hz 执行。

放在 Harness 里看

两类都沾:子任务 + 执行记忆是「结构化执行」的接口;它的核心贡献是「评估与反馈」:在执行之前用想象的后果给候选打分,而不是等执行出错再补救。执行后的真实观测再写回记忆,形成闭环。

结果

四个长程真机任务,仅加分层与记忆(不搜索)平均成功率 27.5% → 45.0%;开启搜索后三项任务成功次数 5→7、6→9、5→7(每格 10 次)。离线下一子任务准确率,书本整理分布外 50.0% → 74.0%。

最该留意的

每格只有 10 次试验。实际用的 N、B、D 和搜索耗时都没给,只给了 PFLOPs。评测协议提到「记忆消融」,但没有结果。基线怎么微调没说。两张图里同一个 Plan Once 基线数字对不上。

问题 · §1

做错的子任务,执行得再完美也没用

打扫房间、做饭、调饮品这类任务要持续几分钟到十几分钟,由一连串有后果的决策组成:机器人要随时判断哪些已经完成、还剩什么、现在该做哪个子任务。论文的观察是:

  • 多数分层 VLA(π0.5、Hi Robot、GR00T 等)的高层每次决策只做一次前向,直接从当前观测和历史映射到下一个子任务,不比较候选,也不看候选会导致什么状态;
  • 没有执行前的评估,错误只能在执行改变了环境之后才被发现,重规划能响应,但收不回失败承诺的代价;
  • 动作层面的搜索只能看到局部物理后果,纯语言推理能看很远但不落地。子任务介于两者之间:足够稀疏,值得多花算力;又足够长,执行后的状态变化看得出来。

所以论文把「生成下一个子任务」当成一个可以按难度分配算力的推理问题,类似语言模型的测试时计算(o1、DeepSeek-R1)。

原文 Figure 1左:预训练数据包括遥操作、自主运行和 UMI 数据。中:做奶茶时问「下一步做什么」,VLM 提议(P)、世界模型想象结果(W)、价值模型打分(V);深度 1 保留「拿勺子」「拿杯子」,淘汰「放杯子」;深度 2 继续展开,最后由 VLM 反思(F)得出「拿勺子」。下:选中的子任务交给低层 VLA。右:长程移动操作、精细操作、跨本体。

方法 · 分层结构 · §3–4.1

高层决定「做哪个」,低层决定「怎么做」

低层 VLA 把多视角观测 ot、本体状态 st、语言指令 ct 和控制元数据 η(本体类型、控制模式、是否全身控制)映射为 H 步动作块。直接执行时 ct 就是整句任务指令 ℓ。分层时,高层策略 μ 每一步读取:

ht = (ℓ, 𝓜t−1, z⋆t−1, ot),   (𝓜t, z⋆t) = μ(ht),   at:t+H−1 = πθ(ot, st, z⋆t, η)(2–4)

𝓜 是执行记忆,z⋆ 是当前子任务。若新子任务和上一步相同,低层继续执行;不同,低层就开始执行新的子任务。部署时两层异步流水:后台进程约每 1 秒刷新一次缓存的子任务,控制循环以约 30 Hz 读缓存出动作,高层慢或失败只会推迟子任务的刷新。

原文 Figure 2(a) 高层:Qwen3.5-9B 读多视角观测、任务「做奶茶」、执行记忆「已放好杯子」,输出思考、更新后的记忆和候选子任务「拿勺子」。(b) 低层:Qwen3.5-2B + MoT 动作专家,读元信息、机器人状态、加噪动作和子任务。(c) 束搜索:三个候选经世界模型得到想象画面,价值模型打分(0.95 / 0.50 / 0.95),保留 top-B,展开到深度 D 后反思并提交。示例保留分支:拿勺子 → 舀果冻 → 倒果冻。

方法 · 执行记忆与数据构造 · §5.4 · 附录 B.4

只扰动输入记忆,就能教模型纠错

高层数据从已有示范自动生成:任务指令(L1)、阶段描述(L2)、可执行子任务标注(L3)。用 Gemma4-31B-it 预标注 <think>(场景、进度、约束、失败)和 <memory>(压缩已完成阶段、保留当前子任务细节),从头部和两个手腕三路视频抽关键帧,组装成 VQA 样本。

为了让模型在部署时能处理「记忆和画面对不上」,作者只扰动输入里的记忆,目标仍从示范里读出正确值,派生出五类样本,不需要额外标注:

五类训练样本

附录表 B2;𝓜n 为进入第 n 段时的记忆

质量控制:先人工抽查发现「跨任务污染」(标注模型把别的任务的约束写进来,比如水果上架任务里出现奶茶的约束),再写成程序过滤器,在 326 万样本的验证集上残留污染为零;空 <subtask> 的脏数据按任务脏比例分三档处理,丢掉 11.74% 的回合,保留 4,040 万个干净样本。

疑点承诺了记忆消融,但没有结果

引言写「我们进一步给出对执行记忆、带后果的搜索和算力-准确率权衡的详细实证分析」,附录 C.1 的评测协议也写「记忆消融只改变是否提供执行记忆」。但正文和附录里都找不到记忆消融的结果。和「记忆」相关的证据只有主表里分层系统和直接执行的对比,以及 Clean Room、Stir Fry 的定性描述。分层系统同时引入了子任务分解和记忆,两者的贡献分不开。

方法 · 低层策略 · §4.3 · §5.2 · 附录 B.2

一个 VLA,40 维统一动作空间

低层是 Qwen3.5-2B 视觉语言主干 + MoT 动作专家(每个全注意力层里动作 token 和主干 token 共同注意,参数分开),条件 flow matching 训练,动作块 H = 30,10 步 Euler 积分。不同本体都映射到 40 维状态/动作空间,用逐样本掩码选有效通道,掩码同时作用在加噪路径和损失上。

末端动作是相对当前位姿的增量(位置增量在当前末端坐标系下),关节动作是相对当前关节角的偏移。每臂不足 8 个关节的从前往后填,其余掩掉。

三阶段训练

① 知识隔离共训:动作损失的梯度在主干接口处截断,同时训练多模态数据。② 端到端共训:去掉隔离,保留多模态数据作辅助。③ 任务特定适配:每个部署任务用少量示范微调(条数未披露)。

40,115 小时数据

自采约 23.4K 小时:AGIBOT G1 21.9K、G2 585、ARX AC One 578、Franka 347;公开数据约 16.7K 小时,其中开源 UMI 数据 9.25K。另外穿插视觉语言数据(指令跟随、定位、空间与深度推理)。

低层训练数据构成(附录 B.3)

单位:千小时。「其他公开」= 16.7K − 9.25K UMI,论文未细分。

实验设置 · §5.1 · 附录 B

四个长程任务,最长 12 分钟

原文 Figure 3(a) 打扫房间:收两件脏衣服进洗衣篮、挂手提包、把毯子递给人、扔掉茶几上的零食袋。(b) 准备食材:开冰箱取番茄和鸡蛋,打蛋、搅拌、放回工具。(c) 番茄炒蛋:切番茄、开电磁炉、放油和蛋液、翻炒、加番茄和盐、装盘、收拾。(d) 做奶茶:放杯、加两种小料、倒奶和茶、封盖、插吸管。(e) 收衣服(ARX AC One)。(f) 整理化妆台(双 Franka)。
任务平台里程碑典型时长时限用途
Clean RoomAGIBOT G1(移动)25约 8 min20 min主表 + 搜索实验
Prepare IngredientsAGIBOT G1(移动)14约 4 min20 min主表
Tomato and Egg Stir FryAGIBOT G1(移动)22约 10 min20 min主表
Make Milk TeaAGIBOT G113约 3 min10 min主表 + 搜索实验
Book OrganizationARX AC One3约 1 min5 min搜索实验(分布内/外初始排列)
Collect LaundryARX AC One(移动)5约 1 min5 min低层跨本体
Tidy Makeup Table双臂 Franka FR32 / 2 / 4共约 30 s各 5 min低层指令跟随
  • 成功率 SR:所有必需里程碑和终止条件都完成才算成功;某个子任务失败后自主重试成功,仍算成功。番茄炒蛋里重复加盐是禁止动作,直接判失败。
  • 进度 Progress:每个里程碑首次完成得 1 分,重试后完成或部分完成得 0.5 分,前置里程碑没完成则后续不得分(按依赖图),再对里程碑和试验取平均。
  • 离线子任务预测:在标注好的子任务边界样本上预测下一个子任务,用 GPT-5.4 作语义裁判,分「等价 / 相邻 / 错误」三档,只有「等价」算对;每个样本两次零温度调用,不一致再加调用多数投票。
  • 基线:GR00T N1.7、LingBot-VLA、π0.5,以及不带高层的 τ₀-VLA(直接给整句指令)。基线的微调数据和步数没有描述。
  • 每个方法、每个任务 10 次独立真机试验,每次试验前复位到相同初始状态。

结果 · §5.2–5.3 · 表 1–2

分层带来的提升,比搜索带来的更大

长程任务(表 1)

四个长程任务:成功率与进度

每格 10 次。最后一行(分层系统)不开搜索,即 Plan Once。悬停看成功次数。

GR00T N1.7LingBot-VLAπ0.5τ₀-VLA(直接执行)τ₀-VLA(分层,Plan Once)
原表数字(表 1)
  • Clean Room:分层系统跨房间保持进度;没有记忆的失败集中在挂手提包和后面的整理阶段。
  • Prepare Ingredients:失败多发生在拿蛋、打蛋、搅拌,前面错了后面全受阻,记录已完成阶段特别有用(2/10 → 4/10)。
  • 番茄炒蛋:瓶颈是加盐。加盐后画面几乎没变化,直接执行的策略会重复加或干脆跳过;分层系统把「已加盐」写进记忆,0/10 → 4/10。
  • 做奶茶:两种 τ₀ 都 5/10,失败在封盖和插吸管,属于最后的接触操作。

解读低层本身领先不多

只比低层:直接执行的 τ₀-VLA 与 π0.5 在 Clean Room(4 vs 4)、Prepare Ingredients(2 vs 2)、Stir Fry(0 vs 0)的成功次数相同,只在做奶茶上多 2 次;Prepare Ingredients 的进度还低于 π0.5(66.43 vs 73.93)。平均成功率从 27.5% 到 45.0% 的提升主要来自高层的分解和记忆。番茄炒蛋这个例子很有说服力:「是否已经加过盐」看画面看不出来,必须有记忆。

跨本体的低层(表 2)

Collect Laundry(ARX AC One)与 Tidy Makeup Table(双 Franka)

都是直接执行整句指令,不用高层。每格 10 次。

GR00T N1.7LingBot-VLAπ0.5τ₀-VLA

τ₀ 四组里成功 10 / 10 / 9 / 10 次,进度都在 92.5% 以上。π0.5 成功 9 / 9 / 8 / 7 次,GR00T 在 Cotton Pad 上同为 10/10。失败模式:LingBot-VLA 抓不起 T 恤、倾向选离得近的物体;GR00T 撞到床脚、在抽屉动作时停顿;π0.5 偶尔松开再抓、关抽屉不顺。

测试时计算的收益 · §5.4 · 图 4–5 · 表 3

离线准确率涨得多,真机成功次数涨 2–3 次

下一子任务预测准确率(原文 Figure 4)

Plan Once:高层一次前向;Best-of-N:采 N 个候选,用同一个世界模型和价值模型选最高分(只看一步);TTC:多层束搜索 + 反思。数字取自矢量 PDF 的柱顶标注。

Plan OnceBest-of-NTTC

真机闭环:Plan Once vs TTC(表 3)

每格 10 次,低层不变。Book Organization 用随机打乱的初始排列,不分分布内外。

Plan OnceTTC
原文 Figure 5横轴是每个样本的测试时算力(PFLOPs),每个点是一种搜索配置,橙色虚线是饱和指数拟合,灰色虚线是 Plan Once。做奶茶从 64.7% 涨到约 87%;书本整理从 55.3% 涨到约 79%。算力在 0.5–1.5 PFLOPs 之间涨得最快,之后趋于平缓。

疑点Book Organization 的 Plan Once 有三个数字

Figure 4 里书本整理的 Plan Once 是分布内 66.0%、分布外 50.0%,Figure 5 的 Plan Once 基线却是 55.3%,和两者都对不上。如果是两组按样本量加权合并,分布外样本要占约三分之二,论文没有说明。Figure 5 里书本整理的最高点约 79%,而 Figure 4 的 TTC 是 88.0%(分布内)和 74.0%(分布外),两图用的配置和样本集是否相同也没写。

疑点算力给了 PFLOPs,没给秒数

论文没有说明实验中 N、B、D 取多少,只在图注里画了 N = 3、B = 2 的示例;也没有报告一次搜索的墙钟时间。按上面的计数,N = 3、B = 2、D = 3 一次搜索就要 15 次图像生成。部署时高层约每 1 秒刷新一次,在搜索没算完之前,低层一直按旧的子任务执行。搜索的延迟对闭环表现有多大影响,论文没有分析。闭环里每格 10 次试验,5/10 → 7/10 的差距也在统计误差以内。

读懂它

这篇真正说明了什么

关键 insight

1. 在「子任务」这一层花算力

动作层搜索只能看到局部后果,纯语言推理看得远但不落地。子任务稀疏,值得多算;时间足够长,结果在画面上看得出来,可以用世界模型想象、用价值模型比较。这是论文最核心的设计论点。

2. 执行前评估,减少「错误承诺」

MotorMind、TT-VLA 都是执行后才知道对错。τ₀ 在子任务提交之前先比较候选的后果。代价是要训练一个世界模型和一个价值模型,评估的是想象,不是现实。

3. 记忆是长程任务的刚需

加盐这种「做了但看不出来」的步骤,单看当前画面无法判断是否完成。分层系统把番茄炒蛋从 0/10 提到 4/10。记忆扰动的数据构造(滞后、超前、未察觉的失败)不需要额外标注,是可以复用的做法。

4. 按置信度决定要不要搜索

多数决策直接用提议模型的输出,只有 token 置信度低时才搜索。这让「多花算力」变成按需分配,但阈值是逐任务校准的,进搜索的比例也没报告。

容易误解的地方

  • 主表的分层系统没开搜索。27.5% → 45.0% 来自分层和记忆;搜索的闭环效果只在另外三个任务、每格 10 次上测过。
  • 「成功」允许重试。子任务失败后自主重试成功仍记为成功,只在进度分里扣半分。
  • 离线准确率由 GPT-5.4 判定。「等价」要求手臂、动作、物体、目的地都一致,「相邻」(顺序可交换的合理步骤)不算对。
  • 世界模型只看一张头部相机图。不看腕部相机,也不看本体状态。

FAQ

Best-of-N 和 TTC 都用同样的世界模型和价值模型,差别在哪?

Best-of-N 只采一层候选,按价值模型的分数直接选最高的。TTC 多了两样:多层展开(看几步之后的想象状态,用累计分数排序),以及反思模型(读保留分支的路径、想象终态和分数,重新生成子任务,可以修正候选的措辞或选择不在候选里的子任务)。离线准确率上 TTC 比 Best-of-N 高 5–17 个点。

价值模型怎么训练?用的标签从哪来?

先用提议模型和世界模型从真实观测出发反复交替,生成多步的想象轨迹,作为离线数据集。每个候选对照该状态的真实下一步来打五档标签。反思模型用同样的离线轨迹,目标是真实的下一个子任务。所以两者学的都是「接近示范里的下一步」,而不是任务回报。

和 π0.7 的世界模型有什么不同?

论文相关工作里的区分:π0.7 的世界模型为已经选定的子任务生成子目标图像,影响的是「怎么执行」;τ₀ 在提交之前对多个候选想象后果,影响的是「执行哪个」。

为什么书本整理适合测搜索?

四本书按高矮排序,每步交换两本。初始排列不同,正确的交换顺序就不同,没有固定的计划可背。分布外初始排列没在训练中出现过,Plan Once 只有 50%,搜索到 74%;闭环 6/10 → 9/10,是三个任务里提升最大的。

局限与疑点

作者承认的,和我们读出来的

论文自己提到的

  • 测试时算力的收益会饱和,适中的预算性价比最高(Figure 5)。
  • 做奶茶剩下的失败在封盖和插吸管,最后的接触操作是主要瓶颈。
  • 数据标注的跨任务污染问题,通过程序过滤器解决。

正文没有单独的局限性章节。

我们读出来的

  • 疑点承诺的记忆消融没有结果;分层和记忆的贡献分不开。
  • 疑点实际 N、B、D 未披露;没有搜索延迟和进搜索比例。
  • 疑点书本整理 Plan Once 在两图中分别为 66.0 / 50.0 与 55.3。
  • 疑点基线的微调数据和步数没有描述;τ₀ 第三阶段任务微调的示范数也未披露。
  • 每格 10 次试验,多数差距在统计误差内。
  • 世界模型想象的准确性没有评估;深度 ≥ 2 时在想象上继续想象。
  • 离线准确率依赖 GPT-5.4 裁判,没有人工一致性校验。
  • 路由阈值逐任务在留出数据上校准,换新任务时如何设置不清楚。

放到专题里看

「执行前评估」的代表

在 Harness for Robotics 专题里,τ₀ 属于评估与反馈:评价信号来自世界模型和价值模型,作用在尚未执行的子任务上;执行后的真实观测通过记忆写回,形成闭环。它同时具备结构化执行的骨架:任务 → 子任务(语言接口)→ 动作块。

τ₀-VLATT-VLAMotorMindACoT-VLA
评价在执行的之前(想象)之后(每一步)之中 + 之后无
评价器世界模型 + 五档价值模型VLAC 进度估计通用 VLM + 实测状态—
改变什么选哪个子任务;记忆策略参数继续 / 停 / 重试 / 重规划—
记忆训练出来的、可自我纠正的 <memory>无(每回合重置)后台 Memory 便条无
任务时长1–10 分钟(最长 12)160 步平均约 4 分钟数秒到数十秒
需要训练高层 4 个模型 + 低层 VLA不训练评价器,在线更新 LoRA都不训练端到端训练
  • 和 MotorMind:两者的高层都在做「下一步做什么、做完没有」,都有执行记忆。MotorMind 的诊断显示通用 VLM 判断进度只有 43–76% 准确,τ₀ 的做法是专门训练记忆更新,并用扰动数据教它纠错。MotorMind 不训练、靠执行后的检查和重试;τ₀ 训练、靠执行前的搜索。
  • 和 τ₀-WM:同一团队早三个月的工作,同样在执行前评价,但在动作块层面:视频动作模型给出 4 个候选,先用重去噪一致性筛,不可靠时由动作条件视频模拟器想象每个候选的多视角未来并打逐帧进度分。τ₀-VLA 在子任务层想象终态图。两篇互不引用;τ₀-VLA 的引言认为动作层的搜索「往往只暴露局部的物理后果」,这正是 τ₀-WM 所在的层面。
  • 和 TT-VLA:同属评估与反馈,但一个在承诺前、在子任务层,一个在承诺后、在动作层。两者可以叠加:τ₀ 选对子任务,TT-VLA 在执行这个子任务时微调动作。不过 τ₀ 的低层是 flow matching,TT-VLA 目前用不上。
  • 和 ACoT-VLA:τ₀ 的子任务接口正是 ACoT 批评的「语言 CoT」。但两者处理的时间尺度不同:ACoT 的参考轨迹只覆盖未来约 3 秒,τ₀ 的子任务要持续几十秒。ACoT 式的动作草稿完全可以放进 τ₀ 的低层。

术语表

读这篇会遇到的词

展开术语表
TTC
Test-Time Computation,测试时计算:推理时为困难决策分配更多算力,本文指世界模型引导的子任务束搜索。
Plan Once
高层每个决策点只做一次前向,不搜索。仍是分层系统,区别于不用高层的直接执行。
Best-of-N
采 N 个候选,用世界模型和价值模型打分后选最高分,只看一步。
N / B / D
束搜索的分支数、束宽、深度。
𝓜(执行记忆)
文本形式的执行历史摘要,由提议模型每步更新。
zdir / z⋆
提议模型的直接提议 / 最终交给低层的子任务。
gt
路由开关,0 走快速路径,1 进搜索。
Step1X-Edit
图像编辑模型,本文的世界模型从它初始化。
MoT
Mixture-of-Transformers,动作专家与主干共享注意力、参数分开。
knowledge insulation
知识隔离:动作损失的梯度不回传到 VLM 主干,保护预训练能力。
Progress
按里程碑依赖图计分的进度,首次完成 1 分,重试后完成 0.5 分。