一句话定位

Physical Intelligence 的首个通用机器人策略:在预训练 VLM(PaliGemma 3B)主干上外挂一个 300M 参数的 action expert,用 flow matching(条件流匹配) 直接生成连续动作块(action chunk,H=50),把跨本体(7 种机器人构型、68 类任务、约 1 万小时真机数据 + OXE)的模仿学习统一进一个 3.3B 模型,实现最高 50Hz 的灵巧控制;后续以 openpi 开源。

背景与定位

π0 属于 VLA(vision-language-action) 范式,即在互联网预训练的视觉-语言模型(VLM)上继续训练以吸收语义先验、再让模型输出机器人动作。它的核心分野在于动作表示

  • 早期 VLA(如 openvla、RT-2)用自回归离散化把动作当作离散 token 逐个预测。论文指出这种做法难以支持 action chunking 与高频控制——OpenVLA 在 π0 的灵巧任务上得分几乎为 0。
  • π0 改用 flow matching(rectified flow / 条件流匹配,扩散的一种变体)产生连续动作分布,天然适配高频灵巧动作块。这与 octo(基于 diffusion head 的 transformer 策略)和 Diffusion Policy 一脉相承,但 π0 独有的是用预训练 VLM 主干加一个专门的 action expert。
  • 架构灵感来自 Transfusion(单 transformer 用 flow-matching loss 监督连续 token、cross-entropy 监督离散 token)与 Playground v3(为 diffusion token 用独立权重)。π0 把二者引入 VLA,作者称其为首个产出高频动作块的 flow-matching VLA

数据侧沿用 cross-embodiment trainingdroid、Open X-Embodiment/OXE、Bridge v2 等),把单臂、双臂、移动操作等不同构型混进同一模型;平台上覆盖了 mobile-aloha 类的 Mobile ALOHA 双臂移动底盘。方法论上则显式对标 LLM 的 pre-training / post-training 两段式:大而杂的预训练给”通用能力 + 从错误中恢复”,小而精的后训练给”某任务的流畅高质量执行”。

模型架构

整体:VLM 主干 + action expert 的双专家单 transformer。 遵循 late-fusion VLM 范式,图像经编码器嵌入到与语言 token 同一空间;再额外接入机器人本体感知状态 qt 与动作 At。模型建模条件动作分布 p(At|ot),其中 At = [at, …, at+H−1] 是未来动作块(H=50),ot = [I¹t,…,Iⁿt, ℓt, qt] 包含多路 RGB 图(每机器人 2 或 3 路)、语言指令、关节角向量。

主干(VLM backbone):PaliGemma(开源 3B VLM,基于 Gemma 2B 语言模型)初始化,配置 {width=2048, depth=18, mlp dim=16,384, num heads=18, num kv heads=1(multi-query attention), head dim=256}

Action expert(动作专家): 从头初始化的第二套权重,专门处理 [qt, Aτt] 这类 VLM 预训练未见的输入。为加速推理(每步都要多次前向)下调至 {width=1024, mlp dim=4096},约 300M 参数;与主干仅在 self-attention 层交互(类似 2 元 mixture-of-experts,按 token 路由)。主干 3B + expert 0.3B ≈ 3.3B 总参数

动作条件与 flow 建模:

  • 训练目标:条件流匹配损失 Lτ(θ)=E ||vθ(Aτt,ot) − u(Aτt|At)||²,线性高斯/最优传输路径 q(Aτt|At)=N(τAt,(1−τ)I),去噪向量场 u=At−ε
  • flow-matching 时间步 τ 从 shifted beta 分布 p(τ)=Beta((s−τ)/s; 1.5, 1) 采样,偏重低 τ(高噪声),且 τ>s 不采样,s=0.999
  • 每个动作 token 的嵌入 W3·swish(W2·concat(W1·aτt', ϕ(τ))),ϕ 为正弦位置编码注入 flow 时间步。

注意力掩码: blockwise causal,3 个块 [图像+语言] → [qt] → [噪声动作 Aτt];块内双向、块间不能看未来块。图文块隔离未来输入以减小相对 VLM 预训练的分布漂移;qt 单独成块使其 KV 可在采样时缓存;动作块可注意全序列。

跨本体统一: 配置/动作向量统一取数据集中最大机器人的维度(18 维:两只 6-DoF 臂 + 2 夹爪 + 移动底盘 + 竖直躯干),低维机器人零填充,缺失相机槽做 mask。

非 VLM 基线 π0-small: 470M 参数、无 VLM 初始化,用 DistilBERT 编码语言、R26-S-32 ResNet-ViT 混合图像编码器、DiT + AdaLN-Zero 的 action expert,同样跑 10 步 flow matching,用于消融 VLM 预训练的收益。

数据

预训练混合(按 timestep 计量,每样本是一个 (ot,At) 元组):

  • PI 自采数据集:903M timesteps——其中 106M 来自单臂、797M 来自双臂机器人,含 68 个任务,跨 7 种机器人构型(博客口径按 8 台算,论文把 ARX/AgileX、移动 Trossen/ARX 各并为一类,故为 7)。此处”任务”定义宽泛(如”bussing”含各种餐具/杯子/垃圾),实际行为多样性远超 68 这个数字。
  • 开源数据:占混合的 9.1%——OXE(论文用其子集 “OXE Magic Soup”,涵盖 22 台机器人)、Bridge v2、droid。这些数据多为 1–2 路相机、2–10Hz 低频控制,但覆盖大量物体与环境。
  • 全量预训练 约 10,000 小时 真机演示数据,论文称是当时”就机器人数据量而言最大的机器人学习实验”。

语言标注: 混合 task names(任务名)与 segment annotations(对约 2 秒子轨迹的细粒度标注),用于语言条件与高层策略分解。

配比/加权: 各 task-robot 组合按 n^0.43 加权(n 为该组合样本数),下压过采样组合(如被过度代表的 laundry folding)。

机器人平台(7 构型): UR5e(单臂、2 相机、7 维)、Bimanual UR5e(3 相机、14 维)、Franka(2 相机、8 维)、Bimanual Trossen(ALOHA 式、14 维)、Bimanual ARX & AgileX(3 相机、14 维)、Mobile Trossen & Mobile ARX(Mobile ALOHA 式非完整约束底盘,配置 14 维 / 动作 16 维)、Mobile Fibocom(完整约束底盘,配置 14 维 / 动作 17 维)。

后训练数据: 任务专属高质量数据,规模从最简单任务的 5 小时 到最复杂任务的 100+ 小时

训练方法

两段式(对齐 LLM):

  1. Pre-training —— 上述大而杂混合,目标是”广覆盖 + 从错误中恢复”,训成一个能力宽泛但不专精的 base model;主模型训 700k steps
  2. Post-training —— 用一致、流畅的高质量任务数据微调专精;作者做了小数据(1/5/10 小时)高效微调与大数据(laundry、mobile manipulation)高质微调两档。

目标函数: 全程 imitation / 条件流匹配(无 RL)。动作以连续 flow matching 生成,离散 token 自回归——这是相对 openvla 的关键区别。

推理采样: 从 A⁰t∼N(0,I) 起用前向 Euler 积分向量场,10 步积分(δ=0.1);prefix ot 的 KV 缓存,只对动作后缀重算。

语言与高层策略: 复杂任务(如 bus the table)可由一个高层 VLM 把高层指令分解为即时子任务(“pick up the napkin”),类似 SayCan;π0 本身能处理语言输入,故可直接消费这些中间指令。

关键超参: H=50 动作块;τ 采样 s=0.999(允许 δ>1/1000、最多 1000 积分步,但实验用 10 步);action expert 与主干仅在 attention 交互。

对比基线的训练步数(compute 口径): 主 π0 = 700k steps;“parity” π0 = 160k steps;OpenVLA 训 160k、Octo 训 320k(因时间受限未训到与 π0 同 epoch)。

Infra(训练 / 推理工程)

  • 训练硬件 / GPU 数 / GPU-hours:未披露(论文有 “Training infrastructure” 贡献者名单,但未给卡型、卡数、并行策略、精度、训练时长等具体数字)。
  • 推理硬件与时延(明确披露,实测于 NVIDIA GeForce RTX 4090 消费级 GPU,3 路相机):
    • image encoders:14 ms
    • observation forward pass:32 ms
    • ×10 action forward pass(flow):27 ms
    • 网络时延(离板时):13 ms
    • 板载总推理 73 ms;离板总推理 86 ms
  • 控制频率与动作块执行: 不做 temporal ensembling(早期试过反而掉点),改为开环执行动作块。20Hz 的 UR5e/Franka 每 0.8 s 推理一次(执行 16 个动作);其余 50Hz 机器人 每 0.5 s 推理一次(执行 25 个动作)。移动机器人推理经 Wi-Fi 离板完成。
  • 开源工程(openpi): 后续以 openpi 开源,提供在 10k+ 小时数据上预训练的 base checkpoint。README 披露显存门槛:推理 >8GB(RTX 4090)、LoRA 微调 >22.5GB(RTX 4090)、全量微调 >70GB(A100 80GB / H100);训练脚本用 fsdp_devices 做模型并行,但当时不支持多节点训练。

评测 benchmark

评测全为真机、每任务/方法约 10 次 episode 取平均,1.0 为满分、部分完成给部分分。

① Out-of-box(仅预训练、直接语言 prompt,博客给出精确分数,5 任务均值):

任务π0π0-smallOpenVLA(7B)OpenVLA(仅 UR5e)Octo(93M)
Bussing Easy (UR5e)0.9710.44300.3430.043
Bussing Hard (UR5e)0.8750.333000
Shirt Folding (Bi-ARX)1.00.500000
Grocery Bagging (UR5e)0.7860.271000
Toast out of Toaster (Bi-Trossen)0.7500000

π0 全面领先;仅训 160k steps 的 “parity” 版仍胜过所有基线;π0-small(无 VLM 预训练)第二,说明 VLM 预训练带来 >2x 提升。OpenVLA 因自回归离散化不支持动作块,几乎全 0。

② 语言指令跟随: 对比 π0 与 π0-small,分 -flat(只给总指令)、-human(人类专家给中间步指令)、-HL(高层 VLM 给指令)三档,跨 bussing / table setting / grocery bagging。π0 的语言跟随准确率显著高于 π0-small,且能把”更好的语言理解”转化为高层引导下更强的自主表现;π0-small 因语言能力弱,加高层专家反而无收益。

③ 学习新灵巧任务(微调,1/5/10 小时数据): 在 stack bowls、towel folding、Tupperware in microwave、paper towel replacement、Franka items in drawer 上,对比 openvlaocto、ACT、Diffusion Policy。π0 普遍最优;预训练带来的增益在更接近预训练分布的任务上更大,微调有时比 from-scratch 好约 2x

④ 复杂多阶段任务(微调 + 语言,单次 5–20 分钟): laundry folding、mobile laundry、dryer unloading、table bussing、box building、to-go box、packing eggs。完整”预训练+微调” π0 在所有任务上都拿到 >50% 满分,且普遍胜过 out-of-box 与 scratch 消融,越难的任务预训练收益越大。作者称这是学习型灵巧操作的新 SOTA,也是端到端机器人学习文献中最长的灵巧任务。

创新点与影响

贡献:

  1. 首个高频动作块的 flow-matching VLA:在预训练 VLM 上外挂独立权重的 action expert,用条件流匹配产出连续动作块,突破自回归离散 VLA 在高频/灵巧任务上的瓶颈,把控制频率推到 50Hz。
  2. 一套机器人基础模型的”配方”:cross-embodiment 预训练 + LLM 式 pre-/post-training 两段式,系统论证了预训练给通用性与纠错、后训练给流畅高质执行。
  3. 迄今最大规模的机器人操作预训练混合(约 1 万小时真机 + OXE/DROID/Bridge),并示范了整衣、叠衣、装箱、装蛋盒等前所未有的长时程灵巧任务。
  4. 开源影响:以 openpi 开源 π0 及后续 π0-FAST(FAST 动作 tokenizer 的自回归版)、π0.5(knowledge insulation、更强开放世界泛化),成为社区 VLA 研究与真机部署的基座之一。

作者自陈的局限:

  • 预训练数据如何组成/加权仍无定论——本文只是”把能拿到的都混进来”,何种数据更有用、如何配比是开放问题。
  • 并非所有评测任务都可靠工作;无法预测要多少、何种数据才能达到近乎完美的性能。
  • 跨高度不同域的正迁移程度未知:通用性能否延伸到自动驾驶、导航、足式运动等差异更大的领域,留待未来验证。

原始链接

一手源存档(sources/)

  • pi0—blog — 官方博客快照(含 out-of-box 精确分数表): sources/embodied/2024/pi0--blog.md
  • pi0—openpi-github-readme — openpi GitHub README 快照(checkpoint 列表、显存门槛): sources/embodied/2024/pi0--openpi-github-readme.md
  • arXiv 2410.24164 全文 PDF(arXiv 原文 PDF,不入 git): https://arxiv.org/pdf/2410.24164