VLA(vision-language-action)训练这一两年走到一个尴尬阶段:架构基本收敛——pretrained VLM backbone + flow-matching action head 已成为 Physical Intelligence π 系谱、Qwen-VLA、GR00T 等一众工作的事实标准——但 recipe 还没收敛。数据 scaling 从 million 推到 billion sample 这一档跃迁里,data 怎么配、phase 怎么拆、loss 怎么权、compute 怎么省,业界各家给出的答案差异显著,且大多是后置工程经验,缺少同条件下的横向 ablation。

这就让 TRI 这篇 A Systematic Study of Data Modalities and Strategies for Co-training LBMs(4000 小时机器人 + 50M VL 样本,89 个 policy,58000 个 sim rollout + 2835 个 real rollout)变得格外有价值。它的定位更接近一张 co-training 决策图——告诉你哪些 modality 真有用、在哪个 phase 起作用、组合起来是不是 cumulative。叠上 Qwen-VLA paper 在四阶段 recipe 上给出的工程经验,billion 级 VLA 训练的设计空间就从"靠直觉"变成"有锚点"。

这篇文章做四件事:(1) 紧凑列出 TRI 的五条结论;(2) 把这五条 + Qwen-VLA 的可迁移经验,翻译到自驾 VLA 的语境;(3) 给出 million→billion 跃迁下的 recipe 思路,分数据混料、Phase 结构、loss 设计、compute 与工程四个维度;(4) §六 补上 2026 下半年对其中两条结论的修正。

TRI Co-training LBM 总览:模型架构、数据 modality、评测 setup

一、TRI 实证给出的五条结论

TRI 的实验设计直接对标"VLA backbone 是 PaliGemma2-PT,action head 是 8 层 flow transformer,loss 是 flow matching + 可选 cross-entropy"——这跟当前业界主流的 Qwen-VL 系 / SmolVLM 系 backbone 配 flow matching action expert 的设置,本质上是同构的。它系统地变动两个轴:

  • 数据 modality:标准 VL 数据(RoboPoint、RefSpatial)、机器人轨迹的密集语言标注(heuristic + GPT-5 caption)、跨载体机器人数据(OXE-Ramen)、人类视频(Ego4D / EgoDex / Something-Something V2 等的 latent action 与 VLM caption)、离散机器人动作 token(FAST、VQ-VAE)。
  • 训练 strategy:单阶段 co-training、两阶段 1st-phase-only co-training、两阶段 full co-training。

跑了 89 个 policy 之后落下五条互相独立的结论,每一条都直接影响 recipe 设计:

结论 1:标准 VL 数据 + 跨载体机器人数据是最稳的 cumulative gain。 对 distribution shift、unseen task、language following 三类泛化指标全面提升,对 in-distribution 不掉。这两条 modality 是任何后续 recipe 的"必加项"。

“对 in-distribution 不掉"这半句要配着 Appendix 1B 读才准确。论文在那里单独 ablate 了两个旋钮——cross-entropy 权重 ww 和每个 batch 里目标机器人数据与协训数据的配比——结论是两个旋钮往上调都会压 in-distribution 表现,往下调又拿不到泛化收益。它最终采用的 w=0.02w=0.02 加 9:1 配比,是在这条权衡曲线上调出来的平衡点。所以"不掉"是调参的结果,不是协训这件事自带的性质。后面 §3.1 和 §3.3 两节的具体数值都从这里来。

结论 2:离散 action token(FAST / VQ-VAE / latent action from video)在 data-rich 区间没有统计显著收益。 Latent action 只在 target robot data 很少的区间有增益,随微调机器人数据量上升而递减(Fig 8);FAST token 按论文的说法是直接降泛化。

这条要加一个限定才站得住。TRI 的架构没有 knowledge insulation——它从 VLM 末端若干层抽一个紧凑全局 embedding 喂 action head,不做动作梯度对 backbone 的隔离。而 π₀.₅ 那条线主张离散 token 的价值恰恰在于配合 stop-gradient 当 backbone 的表征信号用,两者要同时在场。TRI 没有测这个配置。所以准确的表述是”把 FAST 当一条协训 modality 掺进去,在这个 scale 下没有收益",不等于"离散 token 这条路没用"。对自驾 recipe 的实际含义不变:不要为了协训去投 tokenizer 训练成本;但如果是把离散 token 当动作解码器的候选方案,这篇论文不构成否决。

结论 3:纯 robot data 训练会显著侵蚀 VLM backbone 的 visiolinguistic 能力。 Fig 12 把 no-co-training baseline 在 MMBench / MME / SeedBench / SpatialEval / GQA 一圈测下来全面退化,相比 PaliGemma2-PT 直接掉到接近"完全失去生成语言的能力"。这个发现的 implication 很硬:如果只用机器人/驾驶数据长训,VLM 内在的世界知识——包括识别物体、理解空间关系、读懂指令——会在训练过程中被逐步擦掉,而你看不到,因为下游 task 本身不直接测这些。

Fig 12 里还有一条容易被略过的分项:单独拿出来用时,只有标准 VL 数据能把 backbone 拉回来并在空间推理和真实场景问答上超过 PaliGemma2-PT,其余几条 modality 单独用都没有增益,要组合起来才累积。这决定了 §3.1 的混料表里 VL 数据不能被密集标注顶替——两者在论文里做的根本不是同一件事。

Fig 12:单一 modality co-training 与全部 effective modality 组合对 VLM backbone 在 VL benchmark 上的塑形效果。no-co-training baseline 几乎完全丧失生成语言能力。

结论 4:组合 effective modality 收益是累积的。 从 baseline 一路加 VL → +robot annotation → +human video annotation → +cross-embodiment,sim unseen task 的成功率从 36.2% 涨到 72.6%(+36.4 个点),real-world language following 从 24.1% 涨到 69.4%(+45.3 个点)。每加一项都涨,没有平台。这非常关键——因为它说明在 data-rich 区间,“只加一项 modality 就够了"是站不住的;亿级 recipe 应该 设计成 stack 而不是 选 one of。

结论 5:显式 CoT inference-time 条件(先生成 CoT,再用其条件 action)在论文的仿真 benchmark 上没有收益。 论文测了三种 CoT 来源(scripted annotation、VLM-based annotation、latent action),inference 时让 policy 先生成 CoT 再生成 action,一致输给"训练时见过 CoT、推理时不显式生成"的 implicit two-phase 策略;用 VLM-based annotation 和 latent action 当 CoT 源时还有可辨别的退化。机理是生成 CoT 自身的误差会直接传导进后续动作预测。

论文自己把这条的适用范围划清楚了:此前报告 CoT 有收益的工作,评测的大多是需要多步规划或复杂语义推理的任务,而 TRI 的仿真 benchmark 不属于这一类。搬到自驾时这个边界要对齐着看——跟车、车道保持这类 observation→action 映射直接的任务落在 TRI 的区间里,CoT 推到推理期只是多付延迟;但路口选道、偏航纠正、博弈类场景恰好落在论文划出的例外侧。拿这条去否掉自驾的 reasoning 监督会用过头。

第五条不等于"放弃 reasoning”——它说的是"不要在 inference 时显式跑 CoT 链"。把 reasoning 数据当 训练时的 auxiliary supervision 仍然有效(这恰好就是结论 1 中 VL data + dense annotation 的角色)。这两件事在论文里是明确分开的,后面 §六 会看到这个区分在 2026 下半年被几篇工作推成了通用设计原则。

把这五条放到一张表里看:

Modality单阶段 co-train两阶段 1st-only两阶段 full最佳策略
标准 VL data (RoboPoint, RefSpatial)涨涨涨两阶段 full
Robot 轨迹密集 annotation (scripted+VLM)涨涨涨两阶段 1st-only / full
跨载体 robot data (OXE-Ramen)涨涨持平两阶段 1st-only
Human video VLM-caption涨涨涨两阶段 full
Human video latent action持平 / 微涨低数据时涨持平大 data 不用
FAST token平/降平持平不用
VQ-VAE action token微涨平持平不用

Fig 9(左):每条 effective modality 的最佳策略汇总;模型在 sim seen / seen-DS / unseen / unseen-DS 上一致超 baseline。

一个关键机制:配对与非配对 modality 走的是两条通路

这张表容易让人以为所有 modality 都是"按比例掺进 batch"。论文 Appendix 1B 明确分了两类,处理方式完全不同:

类型包含怎么进 batch
非配对标准 VL 数据、跨载体机器人数据、human video按 9:1(目标机器人数据 : 协训数据)掺,协训占一成
配对轨迹上的密集语言标注、机器人数据的离散 action token不走配比。同一个 sample 同时产生连续动作的 flow-matching loss 和对应协训样本的 CE

区别的来源是样本能不能跟目标机器人数据一一对应。密集标注是在同一条轨迹上写出来的,所以模型在一个 sample 上同时学两件事,比例 1:1 by construction,只由 ww 调强弱;标准 VL 数据跟任何一条机器人轨迹都没有对应关系,只能占掉 batch 里的槽位,所以要用配比压住。跨载体数据是特例——学习目标仍是机器人动作上的 flow matching,1st-phase 里按 6:4 跟目标数据混。

这个区分对自驾落地很要紧。把感知标注改写成 QA 去协训,属于配对类:它们是从同一批 clip 的标注字段里长出来的。按论文的做法,这类监督应该留在同一个 sample 上、用一个小权重挂住 CE,而不是拆成独立样本去跟轨迹样本抢 batch 槽位。后者会在配比和权重两个维度同时偏离论文验证过的设置。

二、把五条结论翻译到自驾 VLA

TRI 的实验是 PaliGemma2 + 8 层 flow transformer,目标是机器人 manipulation。把它的结论搬到自驾 VLA(Qwen3-VL 类骨干 + flow-matching action expert,目标是 waypoint / 控制信号生成),五条里有三条会因为"数据 scale 跃迁到 billion"而被显著放大。

第一处放大:VLM erosion 在 billion 量级会从 silent failure 变成生产事故。 一个常见的 production 选择是把 VLM 的 lm loss 关掉,让训练梯度只来自 action 头——理由是"反正下游只跑回归,VLM 文本生成能力不直接用"。TRI Fig 12 的实证结论硬性否决了这条路:纯下游数据训练在 VL benchmark 上是断崖式退化,“几乎完全丧失生成语言的能力”。million 量级上这条 erosion 还能被 backbone 残存的 prior 兜住,到了 billion 量级,erosion 的累积会侵蚀 backbone 的 spatial reasoning 与 instruction following——这两项恰恰是 VLA 区别于 vanilla E2E regression 的关键卖点。

第二处放大:单 modality co-training 的过拟合风险线性扩张。 TRI Fig 10 显示,从单 modality 到 stack 四个 effective modality(VL data + robot annotation + human video caption + cross-embodiment),sim unseen task 从 36.2% 涨到 72.6%(+36.4 pp),real-world language following 从 24.1% 涨到 69.4%(+45.3 pp)。这条意味着:data 量从 million 扩到 billion,如果不动 modality 配方、只是把同一种数据复制 100 倍,等于把同一种偏置放大 100 倍。VLA 在 unseen 路况、unseen 指令上的泛化会出现典型的"loss 看似在降、泛化曲线却走平"。

第三处放大:离散 action token 在 data-rich 区间的判决。 低 target-robot-data 区间上 latent action 还有微弱增益,随微调数据量上升递减(TRI Fig 8)。给出的工程结论是:billion 量级 recipe 不要为了协训去投 latent action / FAST tokenizer 的训练成本,那块预算应该重新分配到 driving spatial QA 等 VL 数据上。按结论 2 那节的限定,这句话管的是"拿离散 token 当协训 modality",不覆盖"拿离散 token 当动作解码器"。

剩下两条(结论 4 累积、结论 5 不要 inference-time CoT)方向无歧义,直接吸收。

数据 quantity 与 modality diversity 是两个独立的 lever,billion 级 recipe 必须同时动。

三、billion 级 sample 的 recipe 设计:四个维度

把 recipe 设计拆成四个相对独立的维度。每一个维度对应一个具体的工程决策,给一个推荐值,并指出风险点。

3.1 数据混料:billion sample 由什么组成

TRI 的 4000 小时 + 50M VL 样本数大约在 5000w 总样本量级。我们要扩到 billion,至少要把混料表先列出来,避免量级跃迁实际上只是把同一种数据复制多份。

参考 TRI Final Model 的 effective combination + Qwen-VLA paper 在 CPT 阶段给出的混料比例(操作 74.2% / 自我中心人类 6% / 导航 7.5% / 合成 3.7% / VL 8.5%)+ 自驾领域的 modality 映射,给一份混料草案。按 §一 末尾那个区分,表要拆成两段:占 batch 槽位的非配对数据,和挂在同一 sample 上的配对标注。

占 batch 槽位(非配对)

Modality占比自驾领域映射
Target navi (waypoint + frames)65%主力数据,扩量
跨载体 robot data → 跨车型/跨城/跨传感器20%不同车型采集、不同城市路网、不同 sensor stack
标准 VL data (driving spatial QA)10%RefSpatial / RoboPoint 风格但锚定到驾驶场景;OOD 物体识别 + 空间关系
Human video VLM-caption5%dashcam 数据 / 第一视角驾驶视频的 caption;可选

挂在同一 sample 上(配对,不占槽位)

Modality怎么进 loss自驾领域映射
轨迹密集 annotation同 sample 同时出 FM 与 CE,强弱由 ww 调,见 §3.3GPT-5 / Gemini 给 navi clip 写 per-clip 行为描述(“在拥堵路口减速等待左转”)
感知标注改写的 QA同上meta-action / 红绿灯 / 车道这些已有标注字段
FAST / VQ-VAE / latent action不用协训用途按结论 2 否决

几个数值锚点的来源。VL 数据这一档,论文 Table S1 里 Final Model 的 2nd-phase 是 4:1:4:1(目标 40% / VL 10% / 跨载体 40% / human 标注 10%),3rd-phase 是 9:0.5:0.5(目标 90% / VL 5% / human 标注 5%),整条 schedule 里 VL 始终压在 10% 以内;单 modality 协训的默认配比也是 9:1。所以表里给 10% 是贴着论文上沿走的,不宜再往上加。跨载体敢给 20%,是因为它的学习目标仍然是机器人动作上的 flow matching,论文 2nd-phase 直接给到 40%,不受那条 9:1 约束。

跟 Qwen-VLA CPT 比对:Qwen-VLA 在通用机器人 generalist 设置下给操作 74.2% 这个相当大的占比,把 VL 压到 8.5%。我们这里 target navi 给到 65%,差额主要让给跨载体——一家厂商手里的"跨车型 + 跨城"数据相对易得,TRI 的 OXE-Ramen 风格应该被翻译成"主动多采集、占比拉高"。

几个不显然的设计动机:

  1. “跨载体"在自驾的对应物——可以理解为不同车型 / 不同采集 stack 之间的差异。TRI 用 OXE 12 个 robot setup 是为了让 backbone 学到 morphology-invariant 特征。映射到自驾的语境:“不要让 backbone 只见过单一车型的相机外参 + 单一城市的路网拓扑”。20% 跨载体样本的目的是让 VLA 在新车型 / 新城市首次部署时,generalization gap 不至于断崖式扩大。

  2. 密集 annotation 的关键不是数量,是覆盖。TRI 用 heuristic(按 16 步 EE 状态变化生成 action primitive)+ GPT-5 caption(episode 级)双路。在自驾场景,heuristic annotation 几乎是免费的——每个 clip 都有 navi 指令、车速、方向盘转角,自动写成"在 X 路口左转,前方有 Y 个目标"完全可行。因为它是配对类,不占 batch 槽位,覆盖率可以直接拉到接近 100% 的 clip,成本只体现在 caption 的调用费上。

  3. 驾驶 spatial QA 是这版 recipe 最重要、当前业界普遍 0 投入的 modality。RoboPoint 在 manipulation 场景做点位预测、空间关系推理,TRI 实验里它对 unseen task / DS 的提升幅度是单一 modality 里最大的,而且是唯一一条单独使用就能把 backbone 的 VL 能力拉回来的。自驾领域 没有 公开的等价 dataset。这是一个值得专门组队做的内部数据工程项目——把 nuScenes/Waymo 风格驾驶帧 + 自动生成空间问答(“前车距离主车多少米”、“右后方是否有车”、“红灯还是黄灯”)打包成 SFT-friendly 的格式。

    这里要补一句论文自己承认的空白:TRI 在 Limitations 里写明,他们没有按任务类型(VQA、captioning、detection、spatial reasoning)拆开分析 VL 数据的影响。所以"哪一类 VQA 最该投"目前没有公开的实证答案,上面的 10% 是一个总量锚点,内部的类别配比仍然要自己做消融。

  4. 离散 action token 不进协训混料。注意这条的边界:TRI 否的是把它作为协训 modality,且是在没有 knowledge insulation 的架构上测的。把离散 token 当动作解码器用不在这条的射程内。

3.2 Phase 结构:单阶段 vs 两阶段 vs 三阶段

TRI Table I 给出三种策略,Fig 9 给出每个 modality 的最佳归属:

  • 标准 VL data + human video caption → 两阶段 full(1st-phase 学,2nd-phase 继续混入)
  • 跨载体 robot data → 两阶段 1st-phase-only(1st 学完,2nd 退出,避免 target distribution 被稀释)
  • 密集 annotation → 两阶段 1st-only / full 都 OK

这是单 modality 实验的归属。论文最终那个 Final Model 实际跑的是三阶段,Table S1 给了完整配比:

阶段batch 配比目标机器人数据占比
1st标准 VL : 轨迹标注 : human video 标注 = 1:1:10%
2nd目标 : 标准 VL : 跨载体 : human 标注 = 4:1:4:140%
3rd目标 : 标准 VL : human 标注 = 9:0.5:0.590%

形状值得注意:1st-phase 完全不碰目标机器人动作数据,是一个纯协训的表征阶段;越往后目标数据越重,到 3rd-phase 协训只剩一成。配对类的轨迹标注在 1st-phase 因为没有动作可配而独立占槽位,进入 2nd-phase 后改为跟着目标样本走,所以不再出现在配比里。

映射到 billion 级自驾 recipe:

flowchart LR
    A[Phase 1: ~25% step
纯协训表征
VL + 轨迹标注 + dashcam caption
不含 target navi] --> B[Phase 2: ~45% step
target navi 与跨载体并重
VL 保持一成] B --> C[Phase 3: ~30% step
target navi 主导
VL 降到 5%
跨载体 退出] C --> D[Eval: closed-loop
+ VLM benchmark
+ unseen route]
PhaseStep 占比非配对 mix(每 step batch 抽样比例)
1~25%VL 40% / 轨迹标注 40% / dashcam caption 20% / navi 0%
2~45%navi 40% / 跨载体 40% / VL 10% / dashcam caption 10%
3~30%navi 90% / VL 5% / dashcam caption 5% / 跨载体 0%

轨迹密集标注和感知 QA 在 Phase 2、3 不占上表的槽位,它们挂在 navi 样本上跟着走。

为什么最后一阶段还留 5% 的 VL?因为 TRI 实验显示标准 VL data 和 human video caption 的"持续混入"在后续阶段仍在涨,尤其 language following 上。Qwen-VLA paper 的 SFT 阶段同样让 VL 流持续 co-train 作为 multi-task 的一支。两边一致:backbone 要服务 navi 指令理解(“前方 200 米掉头”、“取最右侧匝道”),不能让 VL 监督在收尾阶段完全消失。但也只到 5%——Appendix 1B 的 Fig S3 说得很直接,这个比例往上抬就开始压 in-distribution。

3.3 Loss 设计:让 VLM lm loss 持续在场

很多 production recipe 出于"训练吞吐"或者"反正下游不直接用语言生成"的考虑,会把 VLM 的 lm loss 权重置零。结合 TRI Fig 12 的实证(这种设置在长训练后会让 VL benchmark 全面退化),更稳妥的做法是给 VLM lm loss 一个非零但不会喧宾夺主的权重。

总损失写作:

Ltotal=LFM+w⋅LCE L_{\text{total}} = L_{\text{FM}} + w \cdot L_{\text{CE}}

其中 LFML_{\text{FM}} 是 flow matching 损失(参见 Lipman et al. 2022),LCEL_{\text{CE}} 是 VLM 对 dense annotation / VL data 的下一 token cross entropy。

ww 取多少,两篇论文给的不是同一个数,差了 5 倍:

来源ww配套设置
TRI Appendix 1B0.02配 9:1 的目标数据 : 非配对协训数据配比
Qwen-VLA SFT0.1action loss 1.0,VL 流作为 multi-task 的一支持续在场

TRI 的原话是"We adopt w=0.02w=0.02 and a 9:1 ratio of robot data to co-training data”。所以这里没有一个跨团队收敛的 sweet spot 可以直接抄。

差异本身是有结构的。TRI 把 ww 和配比当成两个耦合旋钮一起调,Fig S2 和 S3 分别扫这两个轴,结论都是往上抬压 in-distribution、往下压丢泛化。在它的设置里,配对类的密集标注挂在每一个目标样本上,CE 项出现的频率极高,所以权重必须压得很低才不会盖过 flow matching;非配对的 VL 数据又另外被 9:1 限流。Qwen-VLA 的 0.1 对应的是另一套 batch 构成。两个数各自成立,但都不能脱离配比单独搬运。

落地时的做法:ww 和协训配比要一起扫,不要固定一个抄来的数再去调另一个。从 0.02 这一侧起步比从 0.1 起步安全,因为 in-distribution 的退化在开环回归指标上不容易被看见。如果 batch 里 CE 样本很稀疏(比如只有非配对 VL 数据在出 CE),ww 可以往 0.1 靠;如果每个样本都在出 CE,就该贴着 0.02。

1
2
3
# w 与协训配比耦合,两个一起扫
vlm_lm_loss_weight: 0.02   # 起点;CE 样本稀疏时可上探到 0.1
action_head_loss_weight: 1.0

还有一个工程细节:在 fm 和 ce 混合 batch 下,loss mask 设计必须正确,并且要强制每个 batch 里都有一定比例的 VL / annotation 样本(用 dataset weighted sampling),否则 lm loss 会变成稀疏锯齿信号,扫出来的 ww 也不可信。

这一条改动单独看,ROI 比大多数其他改动加起来还高——因为 backbone erosion 是 silent failure,下游回归 metric 看不到。

3.4 Compute 与工程:哪些线性 scale、哪些非线性

从 million 把数据量推到 billion 时,把当前 compute 配置直接 ×N 起来会撞上几堵墙。逐项过:

Step 数:epoch 必须从两位数掉到个位数。Million 量级常见的几十 epoch 在 billion 量级直接换算就是亿级 step、几个月 walltime,不可行。从 Chinchilla scaling law 的"过度训练"思路反推(Llama 3 8B 是 90× over-trained,Llama 3 405B 是 ~1.5× 量级),billion sample 上每个样本看 5–10 遍是合理的工业区间。不要重复 Chinchilla 那条 D/N=20 的字面值——那个常数是 LLM 数据 + 优化器下拟合的,VLA 在 action head 上是 multi-modal target,常数不一样;但"data 多就让模型多看几遍而不是更多遍"这条判断是普适的。

Tokenize cache:一次性预 tokenize 在 billion 量级是不可接受的。Million 量级常见的"预 tokenize 一次写死"做法在 billion 上会变成几十到上百小时的纯 I/O 浪费。必须改成 streaming:on-the-fly tokenize + LRU cache + 跨 epoch 复用。preprocessing 的 worker 数也要从几十扩到一两百,I/O 瓶颈大于 CPU 瓶颈,跑前要测数据后端的 throughput。

Effective batch 与 learning rate:billion 级建议保持有效 batch 在千级(再扩会让 grad noise scale 偏离 fm 训练的 sweet spot),lr 按 square-root scaling 规则的近似从原来的量级再降约一半,warmup ratio 从 2% 拉到 5%(因为绝对 step 数大幅上涨,2% warmup 太短)。max grad norm 0.5 可以保留,但要密切监控 gradient norm——VLM lm loss 接回来后,前几千 step 的 grad 量级会变化,可能需要短时 clip 收紧。

并行策略:DeepSpeed ZeRO-2 在百卡级够用;扩到千卡级以上要评估 ZeRO-3 + activation checkpointing 或者 FSDP。Action expert 部分参数量小,主要参数还是 VLM backbone,Z3 的 partition 收益有限;但 activation memory 会随 batch / seq 线性涨,必须留出 buffer。

Probe schedule:billion 级 recipe 一旦 fire 12+ 小时才能见到第一个 ckpt,不能再用"训完看 final metric"。每个 modality / 每个 phase 改动必须配廉价 probe:每 5k step 跑一次小 eval set + dump 一次 batch dict 看 modality 抽样比例 + 跑一次 VLM benchmark 子集(MMBench-mini)。一旦 VLM benchmark 出现 >5% 退化,立刻 abort,不要等 final。

集群与数据路径:billion 级训练大概率会跨集群。要先把 billion sample 物理上做好双集群 mirror,否则 fire 后会因为某个 bucket 在另一个集群拉不到而 abort。这是工程预生产的硬步骤。

Flow matching timestep 分布(Qwen-VLA paper 的一个非显然经验值)。T2A 阶段 paper 用 Sigmoid-Normal,SFT 阶段切回 Beta,反过来会掉 5.7–8.3 pp。这条经验对应的解释是:“timestep 分布的最优形态取决于条件信息丰富度——无视觉条件时密度集中在中间 noise level (Sig-Normal) 信号最大,有视觉条件时密度集中在 clean 端 (Beta) 让 backbone 信号被充分利用”。对应到 §3.2 的三阶段里,Phase 1 视觉密度较低(纯协训、无 target navi)、Phase 3 视觉密度高(target navi 主导),这条建议是前段用 Sigmoid-Normal、后段切回 Beta;额外成本几乎为零,期望收益是几个 pp 的 sim 评测。

四、几条只在 billion 量级才会显出的副作用

到了 billion sample,下面几个问题会从"无所谓"升级到"会决定成败":

Quality > quantity 的拐点。 数据从 million 涨到 billion 时,如果只是简单按车型/时段堆料,里面很可能有 30–50% 是低质量的(夜间未标注好的 frame、传感器卡顿的片段、人工接管标注错误)。一个 billion 低质 vs 半个 billion 精挑,前者会让训练 loss 看似下降但泛化不动。需要在数据 pipeline 里前置质量打分(VLM-as-a-judge 给每个 clip 打 0–5 分,过滤 <3 分),把"billion"控制在 有效 billion 而不是 raw billion。

长尾分布的 re-weighting。 均匀采样在 billion 级会让长尾 case(罕见路况、紧急避让、错位标注的修正案例)被淹没。Llama 3 那种 “annealing phase 拉高 high-quality 占比” 的思路对 VLA 同样适用:训练后期 30% step 让 quality-curated subset 占比从 5% 拉到 20%,让模型在"已经学会一般情况"之后专注啃硬 case。

评估变密集 + 廉价。Billion 级 recipe 一次 fire 跑几天,不能再依赖 train-end full eval。必须建立"分钟级 eval canary"——一组 100–200 个 clip 的固定 set,每 1k step 跑一次,跑 3 分钟出 ADE / collision / language-following 三个分数,写入 dashboard。这个 set 的曲线下降趋势比 final eval 更早、更早能告诉你 recipe 是不是走偏。

Canary set 的难度分层(Qwen-VLA paper 的 VL 协训消融给的另一条经验)。Qwen-VLA 在 LIBERO / Simpler-WidowX 这种简单 benchmark 上 VL+VLA 与 VLA-only 几乎并列;到 RoboCasa-GR1 / RoboTwin-2.0 这种复杂场景上 VL 协训才显示 +4.6 ~ +4.9 pp。直接迁移到自驾:canary set 不能只放城市常规路况,必须包含一组"VL 信号才能区分胜负"的复杂指令 + 复杂场景子集,否则 VL 协训这条 modality 的工程价值在 dashboard 上根本看不出来——容易被误判为"没用、砍掉"。

多 modality batch sampler 的可重现性。一旦 batch 里有按比例抽样的 modality,sampler 的 RNG seed、bucket shuffling、跨 epoch 的 sample 顺序都会影响 final loss。Billion 级训练失败重启,如果 sampler state 没存,第二次 resume 出来的 loss 曲线会跟第一次有 plot-visible 差别,让 debug 变难。要确保 sampler state 和 dataset shard 的 cursor 都序列化进 ckpt。

冷启动的 phase-1 是不是真有用——必须 A/B。多阶段 co-training 比单阶段多了一次 phase-1 的 compute 成本,而 TRI 的 phase-1 完全不碰目标数据,这笔投入在 billion 级至少烧掉几万 GPU 小时。在大投入之前,必须有一个"小规模 A/B"实验先跑通:在比目标量级小一两个数量级的 subset 上比较单阶段 vs 多阶段,验证 phase-1 的预期收益(按 TRI Fig 10 推算大约 +5 至 +10 个点的 unseen task 提升)确实在 navi 任务上复现。如果不复现,phase-1 应该砍掉换成 vanilla 单阶段。

五、落地清单

按 ROI 倒序排,给一份具体的落地动作:

  1. 把 VLM lm loss 重新接回训练,ww 从 0.02 起步、跟协训配比一起扫——这是最便宜、收益最大的改动。不要直接抄某一篇的单点值,TRI 和 Qwen-VLA 在这个数上差 5 倍,各自绑着不同的 batch 构成。先在小规模 A/B 上验证 backbone erosion 假设、确认 lm loss 接回来不破坏 action 收敛,再推到大规模。这一步必做。

  2. 建立 driving spatial QA 数据集——这是 billion 级 recipe 中 ~10% 占比的内部数据工程项目。锚定到 nuScenes / 自采数据,自动生成 + 人工抽检,目标是 RoboPoint 风格但驾驶域。这是 billion 级 recipe 里 最有 leverage 的非显然投资。类别内部怎么配(VQA / captioning / detection / spatial reasoning)没有公开答案,TRI 自己也把这条列进了 Limitations,要自己做消融。

  3. 跨载体 / 跨车型数据 pipeline——把不同车型 / 不同地区 / 不同 sensor stack 的现有数据统一格式。瓶颈是 sensor 外参对齐而非数据收集。

  4. 改 tokenize 为 streaming on-the-fly——billion 级前不做这步,第一次 fire 就废几十到上百小时在 tokenize cache 上。

  5. 建立"分钟级 canary eval"含难度分层——常规 + 复杂 (要 VL 信号才区分胜负) 两组固定 set,每 1k step 跑,写 dashboard。

  6. 小规模 A/B 验证多阶段 vs 单阶段——在比目标量级小一两个数量级的 subset 上验证,确认 phase-1 的 +5/+10 提升在 navi 任务上复现,再投 billion 级。

  7. 真正 fire billion 级训练——按上述四个维度配置,预计百卡到千卡级、5–10 epoch、十几天 walltime。

第 1、4、5 三步无论 billion 级训练做不做都应该立刻做——它们是任何 VLA training stack 都受益的工程债务清算。

六、2026 下半年的几处修正

这篇初稿写于 2026 年 6 月。到十月,其中两条结论的地基变了,补在这里。

CoT 这条从"一个 benchmark 上的空结果"变成了设计原则

TRI 对结论 5 的措辞是谨慎的——“在我们的仿真 benchmark 上没有改善”,并且自己点出此前报告 CoT 有效的工作评测的是多步规划与复杂语义推理任务。十月有两篇工作把机制层面说清楚了,而且都带自驾评测。

TacitVLA(2026-10)直接把"action expert 不去 attend 自己生成的 reasoning"做成架构约束,论点是 CoT 的收益来自训练期对 backbone 表征的塑形,推理期再消费一遍生成文本是多余的。结果是跟显式 reasoning 版本同性能、延迟低到 1/3.4;跟同架构的无 reasoning 版本比,成功率高 17.1 个点。评测覆盖 RoboMME / RMBench / LIBERO 和自驾的 PhysicalAI-AV。

AUGUstus(2026-10)是自驾 VLA,用了另一条路线达到同一个结论:把 action 生成排在 CoT 之前,CoT 只作为训练期的联合监督,推理时只取 action。NAVSIMv1 94.6 PDMS、NAVSIMv2 90.7 EPDMS,实车跑到 12 Hz。

两篇合起来,可以把结论 5 从"TRI 在它的 benchmark 上的空结果"升级成一条可操作的设计原则:reasoning 监督放训练期,推理期不要让动作等文本。这也顺带解释了 §一 里那个看起来矛盾的地方——针对偏航、路口选道这类任务做专项 CoT 标注确实有效,有效的是训练期的监督形态,跟"推理时要不要生成 CoT"是两个独立的决定。

实践含义很具体:如果 action expert 的 condition KV 只取 prompt 段、吃不到 assistant 段的 CoT,这件事本身不是缺陷。想让 CoT 的语义进到动作侧,优先考虑把其中的离散量(目标车道、meta-action)走已有的 AdaLN / 条件注入通路,而不是去延长 prompt 或者在推理期生成 CoT。

离散 action token 的判决要缩小射程

结论 2 的实验是在没有 knowledge insulation 的架构上做的,前面已经补了限定。补充一点:2026 下半年陆续有工作报告新的 action tokenizer 在成功率上明显超过 FAST,也有工作主张离散瓶颈本身就起到了梯度隔离的作用。这些结果目前都在 LIBERO 这一档的规模上,跟 TRI 的 4000 小时不可直接比较,不足以推翻结论 2,但足以说明活跃的变量已经从"离散还是连续"转移到了"tokenizer 怎么设计、要不要配梯度隔离"。把 FAST 的实验结果当成整个离散路线的判决,是读过头了。

一处没变但值得强调的空白

TRI 在 Limitations 里明确写了没有按任务类型拆解 VL 数据的影响。四个月过去,这个空白仍然没有被公开工作填上:协训里该放多少 VQA、放哪几类 VQA,没有可引用的最优配比。本文 §3.1 给的 10% 是从论文的 9:1 和 Table S1 反推的总量锚点,类别内部的配比只能自己做消融。这大概是目前 VLA 训练 recipe 里性价比最高的一块无人区。

七、写在最后

TRI 这篇 paper 提供的核心价值是一张 决策图。它告诉我们在 manipulation 场景下、千万样本量级、PaliGemma2 + flow matching 这套架构里,哪些 modality 真有用、哪些是浪费 compute。把它的结论翻译到自驾 VLA 的语言上——把"manipulation"换成"navi"、把"OXE-Ramen"换成"跨车型 + 跨城"、把"Ego4D human video"换成"dashcam fleet 视频"——五条结论的方向是迁移的:

  1. VL + 跨载体 是必加项,但"不伤 in-distribution"是调出来的,不是白送的;
  2. 离散 action token 作为协训 modality 在 data-rich 区间没用,作为动作解码器另说;
  3. 纯下游数据训练会侵蚀 VLM backbone,而单独能把它拉回来的只有标准 VL 数据;
  4. 多 modality 累积;
  5. CoT 留在训练阶段,不要在 inference 时显式生成。

million→billion 跃迁下的 recipe 设计本质上是把这五条 + Qwen-VLA 在 SFT 权重 / timestep 分布 / VL 协训显效条件上的工程经验,翻译成具体的混料表、Phase 表、Loss 配置和工程动作。其中 最早就该做、不必等 billion 训练计划批下来 的一项就是把 VLM lm loss 接回来,并且把权重和协训配比当成一对耦合旋钮一起扫。

更长期看,这个判断指向一个反 intuition 的方向:自驾 VLA 想要再涨一档泛化,瓶颈未必是更多 navi clip,而是更多 driving spatial QA + 更精的混料 recipe。这个判断需要更多 ablation 验证,但 TRI 的实证数据已经给了第一批可信的 prior。

References

  • Lin et al. A Systematic Study of Data Modalities and Strategies for Co-training Large Behavior Models for Robot Manipulation. arXiv:2602.01067, Toyota Research Institute, 2026.
  • Wang et al. Qwen-VLA: Unifying Vision-Language-Action Modeling across Tasks, Environments, and Robot Embodiments. arXiv:2605.30280, 2026. 配套博文 Qwen-VLA 解读。
  • Lu et al. TacitVLA: Reasoning Vision-Language-Action Models Without Reasoning Latency. arXiv:2610.17540, 2026.
  • Ye et al. AUGUstus: Autonomous Driving VLA Model with Unified Generation and Understanding. arXiv:2610.16985, 2026.
  • Black et al. π0: A Vision-Language-Action Flow Model for General Robot Control. arXiv:2410.24164, 2024.
  • Physical Intelligence et al. π0.5: A Vision-Language-Action Model with Open-World Generalization. arXiv:2504.16054, 2025.
  • Lipman et al. Flow Matching for Generative Modeling. arXiv:2210.02747, 2022.
  • Hoffmann et al. Training Compute-Optimal Large Language Models (Chinchilla). arXiv:2203.15556, 2022.
  • Sardana et al. Beyond Chinchilla-Optimal: Accounting for Inference in Language Model Scaling Laws. arXiv:2401.00448, 2024.
  • Steiner et al. PaliGemma 2: A Family of Versatile VLMs for Transfer. arXiv:2412.03555, 2024.
  • Pertsch et al. FAST: Efficient Action Tokenization for Vision-Language-Action Models. arXiv:2501.09747, 2025.
  • O’Neill et al. Open X-Embodiment: Robotic Learning Datasets and RT-X Models. ICRA 2024.
  • 本站 训练大模型的工程学:从 Chinchilla 到 2026——本文 §3.4 关于 epoch 数、tokenize streaming、effective batch 与 lr 的讨论以这篇为前置。