我们训练出了一个新模型π₀.₇,它展现出泛化能力的跃迁。π₀.₇是一个通用模型,能够以与经过微调的专用模型相当的性能执行广泛的灵巧操作任务;更重要的是,它可以遵循新的语言命令,并执行训练数据中从未出现过的任务。
在实验中,我们观察到π₀.₇首次显现出组合泛化的迹象:它能够重新组合从不同任务中学到的技能来解决新问题,例如使用新的厨房电器,甚至让一个全新的机器人折叠衣物,而训练数据中并没有该机器人的折衣任务。
人们一直认为,这类泛化能力是机器人基础模型的关键优势;然而,迄今为止实际展示的模型,还没有表现出我们在大语言模型(LLM)中看到的那种广泛组合泛化能力。LLM可以把训练数据中的概念以新的方式组合起来:如果一个LLM知道如何把英语翻译成法语,也知道如何输出JSON,那么它就能提供格式化为JSON的翻译结果。
视觉-语言-动作模型(VLA)能够理解多样的语义概念,但尚未被证明可以以新的方式组合技能,例如使用新的工具或厨房电器。即使对于训练中见过的技能,这类模型通常也要像早期语言模型针对特定问题领域进行微调那样,通过微调才能取得最佳结果。
真正的通才模型应该能够开箱即用地执行所有这些技能,并且能够重新组合它们来解决新任务。
π₀.₇展示了这种通用能力的初步迹象:它可以执行我们此前通过强化学习(RL)微调的π*₀.₆专用模型所展示的灵巧操作技能,并具备相同的速度和鲁棒性;它还可以组合和重组所学技能来解决新任务,并且比之前的模型更有效地跨机器人平台、场景和任务进行泛化。
下面的示例展示了这种能力的广度:从精细操作到长时程家务行为,全部由同一个模型开箱即用地完成。
π₀.₇为什么能实现如此广泛的泛化?基础模型实现泛化的关键在于使用广泛而多样的数据;对我们而言,这些数据包括来自许多不同机器人的数据、人类数据,以及运行各种策略所收集的自主执行片段。简单地合并所有这些数据源并不能带来良好结果。
我们发现,要利用所有这些数据源实现组合泛化,关键是向prompt中加入多样化的上下文:使用各种多模态prompt结构训练模型,不仅指定机器人要做什么,也指定应该如何去做。prompt不仅可以包含任务的文字描述,还可以包含各种其他标注和模态。例如,提供视觉子目标可以定义物体的精确空间布局。
提供期望的episode长度可以指定任务完成的速度。关键在于,所有这些信息片段都能消除行为歧义,使得具有不同策略、行为和熟练程度的多样数据可以纳入训练。在测试时,我们的模型既接受标准语言指令,也接受关于期望策略的信息,甚至可以接受由轻量级world model生成的合成视觉子目标。
下面展示π₀.₇可以完成的一些任务。
借助多样化条件利用更多数据
不同的prompt模态让π₀.₇能够整合广泛而多样的数据源,包括来自不同机器人的数据和不同控制模态的数据、人类视频以及自主数据。虽然我们之前的模型也使用过其中一些数据源,但π₀.₇将它们统一到单一的prompt框架下,支持:
- 描述任务和各个子步骤的多样化语言。
- 描述任务执行方式的元数据,例如速度和质量。
- 控制模态标签,用于指示应采用关节控制还是末端执行器控制。
- 视觉子目标图像,展示当前子步骤结束时应呈现的样子。这些图像可以在测试时由world model生成,从而支持视觉泛化。
借助这些不同的标注来源,π₀.₇可以利用更多类型的数据。例如,原本可能会教会模型执行低质量动作的次优自主评估数据,可以通过添加适当的元数据(例如较低质量或较低速度)纳入训练。










组合式任务泛化
对于机器人基础模型而言,最棘手的泛化挑战之一,是遵循用户prompt执行一个新任务。π₀.₇通过多样化语言指令、语言指导和视觉子目标的组合,展现出组合式任务泛化的早期迹象。我们最初是在让模型操作各种厨房电器时观察到这一涌现能力的。
我们没有收集这些特定电器任务的演示数据,而是尝试通过prompt让模型操作它们。对于每种电器,机器人都会收到关于如何使用该电器的语言指导——类似于一个人第一次使用电器时可能得到的、逐步的语言指令。
当我们要求机器人使用空气炸锅烹饪红薯这一新任务时,它会做出合理尝试:几次错误起步后完成部分任务,但没有完全做完。
π₀.₇仅使用zero-shot prompt“将红薯放入空气炸锅”尝试操作空气炸锅。
然而,如果我们通过逐步的语言指导带着它完成任务,它的执行效果会好得多。这比看起来更难,因为它需要理解细粒度指令,并将指令正确地落地到实际操作中:
π₀.₇在逐步的口头指导下操作空气炸锅。
在多次向机器人提供语言指导后,我们可以用这些指令微调一个高层策略,使其能够完全自主地生成语言子目标,从而显著提升任务的全自主执行效果,完全不再需要额外的遥操作。机器人实际上已经从语言指导中学会了这项任务:
π₀.₇执行空气炸锅任务时,由微调后的高层策略生成语言子任务。我们还可视化了world model为每个语言子任务生成的子目标图像;语言子任务和子目标图像共同提供给π₀.₇,使其完全自主地执行任务。
我们想了解机器人究竟从哪里学会了“空气炸锅”是什么。由于训练集规模庞大且多样,很难追踪究竟是哪些具体片段提供了相关信息;这种知识很可能来自机器人执行片段与网页规模的视觉-语言预训练的共同作用。
经过大量搜索,我们找到了两个在家庭环境中收集的片段:机器人关闭空气炸锅(标注为“将炸篮推入空气炸锅”和“将空气炸锅的炸篮放在台面最左侧”),以及开源DROID数据集中一台Franka机器人的数据。
我们找到的与空气炸锅任务最接近的片段:两个关闭空气炸锅的片段,以及开源DROID数据集中使用Franka机械臂的数据。
这些片段与我们实验中移动机器人的实际操作方式差异很大。这表明,π₀.₇能够泛化并组合行为,将红薯放入空气炸锅,就像LLM从网页大规模数据集中看到的文本中组合出不同的文本片段一样。
凭借π₀.₇更强的泛化能力和语言遵循能力,我们可以用语言指挥它完成各种任务,以交互方式“教会”它新的行为,甚至用精确而多变的语言命令与它一起做些有趣的实验!
通过多样化语言命令交互式指挥π₀.₇。
跨具身迁移
π₀.₇展现出了我们见过的最有效的任务跨具身泛化之一。训练集中代表性最不足的具身形态之一,是由两台UR5e工业机械臂和Robotiq平行夹爪组成的双臂UR5e系统。这个机器人很难进行遥操作:沉重的机械臂具有很大的惯性,而夹爪也相对不够精确。
我们要求π₀.₇控制这台机器人折叠衣物,尽管我们没有收集任何使用该机器人折叠衣物的数据;出乎意料的是,它能够稳定完成任务。需要注意的是,这台机器人折叠T恤时的物理运动,与我们用于收集T恤折叠数据的(小得多的)机器人有显著差异:
左侧为使用静态双臂机器人收集的折衣数据,右侧为在双臂UR5e系统上评估π₀.₇的结果。针对双臂UR5e系统没有收集任何该任务的训练数据。由于两种机器人的尺寸、位置和形态差异很大,π₀.₇必须在UR5e上采用明显不同的策略。
π₀.₇在该任务上的成功率,达到了曾在源机器人上执行过该任务的专家遥操作员首次尝试在UR5e上执行时的“zero-shot”成功率。
实际上,π₀.₇的成功率与收集该任务训练数据的人类专家遥操作员相当:这些操作员在原始机器人上执行任务,而后首次被要求使用双臂UR5e系统执行同一任务。这些遥操作员平均拥有375小时的遥操作经验。
以速度和最优性为条件
除了广泛的泛化能力外,我们还希望模型拥有较高的成功率,并能够快速执行任务。在近期工作中,我们提出了Recap,这是一种使用RL训练策略、以优化鲁棒性和吞吐量的算法。
Recap提供了有效的策略优化方式;而借助π₀.₇,我们通过将Recap训练期间产生的经验连同策略元数据蒸馏到π₀.₇模型中,使一个通用模型能够执行Recap优化过的全部任务,并达到相同的成功率和(有时甚至更高的)吞吐量。
同一个π₀.₇模型可以执行折衣、制作浓缩咖啡和折叠纸箱任务,其性能达到甚至超过针对每项任务训练的Recap最佳模型。
单一π₀.₇模型与每项任务对应的RL训练专用策略进行定量比较,任务来自我们的Recap博客文章。纵轴按专用策略的吞吐量归一化。通过在多样化数据(包括RL训练模型产生的自主数据)上训练,单一π₀.₇模型在各项任务上的性能达到甚至超过了针对任务分别训练的RL专用模型。
无需微调即可在灵巧任务上开箱即用
π₀.₇是一个通用模型,因为它能够控制多种不同机器人执行广泛的任务。除上文用于评估特定性能和泛化维度的受控实验外,我们还测试了大量任务,包括削蔬菜、用Windex清洁玻璃门等。下面展示π₀.₇在不同机器人平台上能够执行的部分任务。
下一步
π₀.₇是一个统一模型,具备涌现的组合泛化能力,能够遵循多样化指令和视觉子目标,并且即使对于过去需要微调专用模型的任务,也能展现出强大的开箱即用性能。
未来,π₀.₇这类强大且可操控的模型,或许可以通过“思考”完成未见过的复杂任务:设想可能的执行方式,利用遵循多样化prompt的能力将这些设想落地为动作,再根据结果反思并修改任务计划。
因此,有效的prompt遵循和泛化能力不仅有助于人们更好地指定希望机器人完成的事情,也有助于将现代基础模型的语义推理和问题解决能力落地到真实动作中,使其语义泛化能力转化为物理泛化能力。
如果你对研究这些问题并加入我们感到兴奋,欢迎联系我们!如果你希望合作,并将π₀.₇这类模型应用于现实世界的机器人领域,也可以发送邮件至research@physicalintelligence.company。