将机器人策略扩展至 100 项家庭任务

将机器人策略扩展至 100 项家庭任务

Ilia Larchenko, Gleb Zarin, Atindra Nair, Keerti Manney, Vitaly Kleban +2 位

3 分钟阅读•2026年11月11日

将大语言模型智能体用作机器人控制器

另一条研究路线是直接使用大语言模型控制机器人:通过从已学习的技能中进行选择、编写控制代码,或协调低层策略来实现。随着能够连续数小时使用工具的前沿模型出现,这种做法在仿真中已成为切实可行的选择。GPT-6 Astra 于 2026 年 9 月发布,其能力足以完成一些我们的已学习策略无法完成的 BEHAVIOR 任务,因此我们最终提交的方案将 14 项任务交由基于 Astra 的智能体处理(第 9 节)。

贡献

  • 一套将任务条件化 VLA 从 50 项任务扩展到 100 项任务、而无需从头重新训练的方法:利用技能标注构建语义阶段、基于相似度初始化新的任务与阶段嵌入,以及采用与遥操作控制相匹配的 21 维动作空间(第 3 节)。
  • 在 VLA 的多个层级中加入寄存器、暂存令牌和注意力汇;在持续训练过程中通过参数手术,将预训练 SigLIP 的注意力汇离群值移入寄存器,使注意力图变得可读(第 4 节)。
  • 降低方差的多样本流匹配方法,以及一种根据单次梯度噪声测量来选择流样本数量的方法(第 5 节)。
  • 评测基础设施通过溯源信息、诊断数据和可恢复的模拟器状态,让跨云端 rollout 可检查、可复用;并能在每块 GPU 上同时运行六个模拟器,整体速度快于实时(第 7 节)。
  • 对于已学习策略较弱、且智能体表现更好的 14 项任务,采用 GPT-6 Astra 智能体路线(第 9 节)。

代码、模型检查点、2025 年的起始检查点,以及评测视频和可视化示例均可从项目页面获取。

沿用的部分

我们沿用了 2025 年方案中的模型和大部分服务逻辑:

  • 使用任务嵌入而非文本:每项任务都有一个已学习的嵌入,提示词不会被分词。
  • System 2 阶段:模型根据基础任务令牌预测当前任务阶段,并以阶段嵌入作为条件;推理时通过投票追踪阶段。
  • KV 混合:每个动作专家层都会关注所有 VLM 层的键和值的可学习混合结果。
  • 多样本流匹配:VLM 前缀只计算一次,动作专家则运行多个流样本(第 5 节)。
  • FAST 辅助损失:训练期间,VLM 还会预测目标动作块的 FAST 令牌。
  • 推理时采用相关性感知修复:将前一动作块中已确定的动作作为下一块的锚点,再利用动作间的相关性将修正传递到尚未确定的动作。

我们从 LeHome 方案中沿用了训练方面的做法:加权多数据集加载器、修正后的状态缩放(2025 年有许多归一化状态值超出状态分箱范围,因此被截断)、对回合结束时填充步的损失屏蔽,以及数据增强组合(裁剪、旋转、颜色抖动、遮挡、相机和状态丢弃)。2026 年新增的一项做法是:任务完成后的帧——即每段演示中空闲的尾部片段——绝不用于训练采样。

从 50 项任务迁移到 100 项任务

2025 年的方案使用四个检查点,每个检查点都针对 50 项任务中的一个子集进行微调。2026 年,一个检查点即可服务全部 100 项任务。该检查点以 2025 年方案中对当年得分贡献最大的检查点为热启动基础;一个转换脚本即可将其映射到新的任务集、阶段布局和动作空间。2026 年新增的所有参数均以零、单位矩阵或小方差正态分布初始化,因此转换后的模型仍与 2025 年模型的功能接近。

语义阶段

2025 年,由于我们没有使用技能标注,System 2 阶段按照每个回合的时间等分(每项任务 5–15 个阶段)。有了 20,000 段已标注演示后,我们得以检查这些时间片与任务实际步骤的匹配程度,结果发现匹配得并不好。平均而言,一个时间阶段中只有 50% 的帧属于其最常见的标注步骤(每项任务为 0.17–0.82);100 项任务的 1,093 个时间阶段中,57% 没有任何步骤覆盖其半数以上的帧;而且时间阶段边界与真实步骤边界的距离,并不比随机边界更近。同一任务内的回合长度相差 20%,因此在一个有 11 个阶段的任务中,固定时间网格可能会向前或向后偏离约两个阶段。

我们改用基于标注构建的语义阶段:

  • 每个回合都在任务完成的帧处截断,并将标注技能序列与该任务的典型序列(medoid)对齐;重试和额外步骤归入当前步骤。
  • 在演示之间意见一致的位置将步骤归组为阶段。演示者执行顺序不一的部分(例如整理物品)则成为不限定顺序的进度阶段。
  • 随后通过一些规则调整分组:抓取动作与按压类动作(按压、切换、拨动)绝不放在同一阶段,使夹爪规则能够区分抓取失败和按压失败;同一电器外观相似的状态保留在不同阶段;连续重复的步骤合并为一个阶段;极短阶段则与相邻阶段合并,除非它们属于独立的最终动作。

最终得到 413 个阶段(每项任务 2–9 个),而非 1,093 个时间阶段。所有标签均由确定性脚本根据数据集标注重新生成。

语义阶段根据已标注技能对齐任务演示

新任务和新阶段的热启动

阶段。同样的思路也应用于更细一层。旧任务中的语义阶段,以该任务 2025 年各时间阶段嵌入的加权平均值作为起点,权重取决于各时间阶段所包含的帧数。新任务的阶段则以相似旧任务中的对应阶段为起点(例如,“打开冰箱”会参考旧任务中打开冰箱的阶段)。阶段头的输出权重也以相同方式转换。

精简动作空间

2025 年的模型预测 32 个维度,其中 23 个是实际维度(底座 3、躯干 4、双臂各 7、双夹爪)。我们调整了动作表示,使其符合遥操作中使用的自由度:

  • 移除 9 个填充维度。
  • JoyLo 遥操作系统不会独立移动 4 个躯干关节。它使用两个躯干控制量:translate 沿着经过三个关键姿态的固定路径移动躯干,从直立姿势到完全前弯;tilt 则为第三个关节增加偏移;第四个关节始终为零。数据集中的 211M 帧里,每条躯干指令都严格遵循这种形式,而且可以根据 4 个关节精确还原 translate 和 tilt。因此,模型预测 translate 和 tilt,再将输出映射回 4 个关节。

最终得到 21 维的动作与状态空间:底座 3、translate、tilt、左臂 7、左夹爪、右臂 7、右夹爪。4 个彼此相关且部分冗余的躯干维度被精简为 2 个有实际意义的维度,策略也因此无法再生成演示数据中从未出现过的躯干姿态。统一的控制空间还让 JoyLo 操作者能够在回合进行中平稳接管策略控制。其余维度的权重直接复制,两个新增的躯干行则初始化为零。

同一原则也适用于词表:模型只会嵌入 256 个状态分箱(FAST 令牌有独立的嵌入表),因此我们仅保留 Gemma 的 257,152 行嵌入中的 256 行。这样可移除 526M 个从未获得梯度、却在每个训练检查点中存储了四份的参数(权重、EMA 和两个 Adam 矩):每个检查点约 8 GB。

注意力汇、暂存令牌和寄存器

这部分工作最初是从调试问题开始的。为了理解失败原因,我们会为 rollout 的每一步绘制动作令牌对三个相机的注意力图。对于热启动自 2025 年模型的版本,这些图几乎毫无用处:每一帧、每个回合、三个相机中亮起的总是同几个单元格(回合平均注意力图的相关性为 0.97)。

原因在于预训练 SigLIP 的位置嵌入:少数单元格的范数异常偏高(单元格 (12,1) 的范数为 313,而平均值为 22,且主要集中在一个通道),因此其令牌成了注意力的、与内容无关的“停靠位”。最显著的 12 个单元格占据了全部图像注意力的 31.9%,仅单元格 (12,1) 就占右腕相机注意力的最高 29%。这正是视觉 Transformer 和语言模型研究中描述的现象:softmax 需要一个位置来放置多余的注意力,于是模型将某些令牌改作此用途,丢失了这些令牌原本承载的信息。除了信息损失,这也让注意力图变得难以解读。

我们在四个层级上为此设置了专用位置:

  • SigLIP 寄存器:每个相机的视觉塔内设置 8 个可学习令牌,不添加位置嵌入。其输出经过与图像块令牌相同的投影后加入前缀(24 个令牌),并与对应相机的令牌一起进行掩码处理。
  • VLM 暂存令牌:在前缀中设置 8 个可学习令牌,与图像进行双向注意力交互。
  • 动作专家暂存令牌:在后缀开头设置 4 个可学习令牌。
  • 两个 Transformer 的每个注意力层中都设置注意力汇:每个查询头都有一个带可学习 logit 的虚拟键;与 gpt-oss 不同的是,每个 KV 头还有一个可学习值,因此停靠在汇上的注意力仍会返回一个已学习的向量,而不是被丢弃。

我们还在共享 SigLIP 编码器之后,为每个相机增加了一个线性投影,并以单位矩阵初始化。

我们没有对这些改动进行消融实验。经过手术式调整后,损失已完全恢复,因此我们认为它们没有造成损害;但除了让调试更容易之外,我们没有证据表明这些改动提高了成功率。寄存器、暂存令牌和注意力汇的数量选择也相当随意。

迁移注意力汇前后的注意力图

多样本流匹配

每次观测使用多个流样本

使用[流采样计划;所提供文本中未提供公式],该计划偏向噪声较强的一端。所有[流样本数量]个样本共享前缀,其梯度会通过 VLM 的键和值反向传播。

梯度噪声的两个来源

对于一批包含 [批次大小] 个观测的数据,梯度方差有三个来源:批次中包含哪些观测、这些观测经过的随机数据增强,以及流抽样 [流样本数量]。只有流抽样项会随着 [流样本数量] 的增加而缩小:

流抽样对梯度方差的贡献会随着样本数量增加而降低;单次流抽样的方差另行表示。

我们在固定参数下使用探针测量这三项,每次只对一个来源重新采样。在 2025 年的设置中([独立流抽样次数]),流抽样占梯度方差的 21%,数据增强占 38%,观测选择占 42%。在我们的批次大小下,梯度主要受噪声影响,因此降低梯度方差的价值大致相当于按比例增大批次。

因此有两种降低噪声的方法:为每个观测增加流样本数,只能缩小流抽样项;或者增大批次,这会缩小所有项。两种方法都会增加计算开销。下面我们先提高每个流样本的利用效率(第 5.3 节),再比较两种方法在单位计算量下的效果(第 5.4 节)。

其他优化

分组学习率。我们尝试了多个分组乘数,并将其应用于最终更新,因此不会影响优化器状态,且可在恢复训练时进行更改。最终方案对动作专家、动作与时间投影、KV 混合以及任务/阶段嵌入采用 [报告的乘数],其他所有部分(包括视觉塔)则采用 [报告的乘数],并将梯度裁剪至 2.0。

效率。将 FAST 目标长度上限从 200 降至 68 个令牌(每个动作块平均为 37 个),可节省约 9% 的单步耗时;选择令注意力键数量为 16 的倍数的令牌数,又可节省 4–5%。移除未使用的词表(第 3 节)可将优化器状态和检查点的大小缩减约 8 GB。

数据增强。头部相机:随机裁剪(98%)和旋转([旋转幅度]);所有相机:颜色抖动和矩形遮挡(概率 0.3,面积最多占图像的 10%);每个腕部相机以 0.05 的概率丢弃,所有状态令牌以 0.02 的概率丢弃。

训练

提交的检查点来自在全部 20,000 段演示上进行的一次训练运行的第 200k 步,并以转换后的 2025 年检查点为热启动。训练分为两个阶段:

  • [所提供文本中未提供第一阶段的配置],批次大小为 480(可容纳的最大值),训练 130k 步,峰值学习率为 [学习率];每步耗时约 10.5 s(46 samples/s)。

B300 阶段的前半段同时也是试验平台:我们在实时训练过程中尝试了多种训练参数和模型改动,从检查点恢复训练,并保留有效的改动。在大部分训练过程中,优化器使用 AdamW,参数为 [优化器设置],EMA 为 0.995;余弦调度包含 5k 步预热,流匹配损失、阶段头和 FAST 的损失权重分别为 1、0.1 和 0.05。模型总共见过约 200M 个训练样本,大致相当于遍历演示数据中的 211M 帧一次。

评测基础设施

评测 100 项长时任务的成本很高:一个回合的实际耗时最长可达数十分钟,而启动一个模拟器需要 6–9 分钟。在整个竞赛期间,我们运行了约 9,000 个评测回合,约 100M 个环境步,或近 1,000 个模拟小时;每次运行都保存了其溯源信息、诊断数据和可恢复的场景检查点,使我们能够比较模型、检查失败情况,并从记录的状态开始后续实验。

云端基础设施

跨云端统一记录。我们在本地机器和两个云平台上运行评测(先是 RunPod,随后是 Nebius);所有运行结果都会上传到同一个云存储桶。网页门户会自动为其建立索引。每次运行都附带一份清单,记录完整溯源信息:代码修订版本和差异、模拟器与软件包版本、所有评测器和服务参数,以及所服务检查点的校验和;该校验和可将运行结果关联到模型注册库。

丰富的数据。已记录的评测会保留视频和资源遥测数据,以及逐步动作、观测与策略诊断、推理耗时和 BDDL 目标进度。在开始时、每 30 步以及终止时,我们会保存机器人和所有已初始化的场景物体,包括处于休眠状态的物体和非任务物体。这样一来,恢复实验便能在失败点附近使用可恢复的场景,同时又能控制存储开销和评测减速;代价是只能恢复已保存的步骤。如果某个动作会创建新物体(例如切片),我们也会保存重建这些物体所需的场景描述。

恢复与检查。这些已保存的状态可以载入全新的模拟器,用于重放部分 rollout,或开展有针对性的恢复实验。门户让人和编程智能体能够查找任意模型和回合、比较结果、并排观看视频和目标进度,以及留下带时间戳的评论。智能体 rollout 使用同一套存储和查看器。

所提供的论文文本在本节中途结束。

常见问题

2026 年的策略如何用一个检查点处理 100 项任务? 该策略以 2025 年的检查点为热启动基础,并使用语义任务阶段、基于相似度的初始化,以及共享的 21 维动作空间。

为什么要用语义阶段取代基于时间的阶段? 时间切片与已标注的任务步骤匹配不佳。语义阶段根据演示标注构建,并将阶段数量从 1,093 减少到 413。

寄存器和注意力汇解决了什么问题? 少数 SigLIP 位置嵌入单元格吸引了大量图像注意力,使注意力图难以解读。为此,模型加入了专用寄存器、暂存令牌和注意力汇。

如何让评测运行结果能够复用? 运行结果连同溯源信息、诊断数据、视频和可恢复的模拟器状态一并保存,因此可以检查失败情况,并从记录的场景开始后续实验。