[{"content":"这篇文章要回答的问题 如果真要造一个机器人基础模型，该怎么造？什么会挡住你？\n推导链只有一条。先按「它必须做到什么、必须跑在哪里」把这个对象定义清楚，再把它拆成大脑和身体两个子系统。然后把造出大语言模型的那台机器搬过来，把它的三根支柱说准，逐根拿去对照机器人——机器人只占住了其中一根，另外还多背了一条文本从来没遇到过的约束。五个卡点由此浮出来。每个卡点都要在某个具体子系统里用真金白银的工程量去填。把这些工程量排好序，就是施工顺序。\n结论先摆出来，方便你直接反驳：算力应该放在机器人身上；真正难的部分大多属于测量和机构，跟建模关系不大；最先该动手造的东西并不是模型。\n怎么读这篇文章 语言模型那部分背景——transformer、预训练、规模化定律、计算强度——集中在第 3 部分讲，别处不再展开。已经熟悉的可以直接跳过，前面几部分不依赖它 [arXiv:2001.08361]。\n全文贯穿三条约定，它们是承重的。\n每条论断都标了类型。 disclosed 指某个一手来源明确写了；inferred 指我们从已披露事实推出来的，并且会说明推法；undisclosed 指实验室外没人知道，那就送进 gap 清单，不含糊带过；marketing 指公司博客或新闻稿，既没有论文也没有第三方复现，每次出现都会当场标出来——这个领域里新闻稿和真实结果之间的距离大得异乎寻常 [blog: NVIDIA GEAR GR00T N1.5]。\n每个数字都带着出处，并且由脚本对着一份 fact ledger 机器校验。正文里出现的数字只要在 ledger 里查不到，或者哪一段没有引用，构建脚本就会直接失败 [arXiv:2604.15483 §V-E]。\n证据到头的地方，文章会直说，而不是顺手写一句听起来合理的话。第 6 部分整体是推测性的，并已明确标注 [arXiv:2604.15483]。\n第 0 部分 —— 两个数字 一台从没见过任何叠衣服演示数据的双臂 UR5e，把一件衬衫叠到了 85.6% 的任务进度、80% 的成功率 [arXiv:2604.15483 §IX]。驱动它的模型，训练数据来自别的机器人在做别的事情。\n同一个任务交给十位专家级遥操作员，每人约有 375 小时经验，从操作员里按前 2 百分位挑出来。他们第一次上手这条机械臂，拿到的是 90.9% 的进度、80.6% 的成功率 [arXiv:2604.15483 §IX]。一个没有任何任务专用数据的通用模型，成绩落在专家第一次碰这套硬件的水平上，差距不到一个百分点。\n这是第一个数字。第二个数字是：那个模型跑在一块 H100 上 [arXiv:2604.15483 App. D]；而一个在某个相机位姿下训到 100% 成功率的策略，把相机挪 10 厘米、转 20 度，成功率掉到 0% [arXiv:2409.03403]。\n泛化是真的。它的脆弱是机械层面的。\n第 1 部分 —— 机器人基础模型是什么 四条轴，不止一条 先把这东西的形状说清楚： 最多 4 路相机图像、当前关节构型、一句英文指令进去；一段 50 个未来关节目标的序列出来，交给你的伺服环去执行 [arXiv:2604.15483 §IV]。\n要带进后面几节的性质只有一条： 想换出新行为，你唯一需要动的就是那句话 [arXiv:2604.15483 §V]。完整的接口签名，以及输出为什么是一整段而不是一步，都放在第 2 部分。\n这个词被用得太随意，值得先钉死。机器人基础模型是同时满足四项要求的系统，而有意思的地方在于：这四项，领域内满足得很不均匀 [arXiv:2108.07258]。\n任务泛化 —— 用一句话把它 prompt 到新任务上，走的就是刚才那条通道。评测覆盖 14 个场景，每个场景 3 到 6 条开放式指令，环境是没见过的厨房和卧室 [arXiv:2604.15483 §IX-B]。 本体泛化 —— 用一句话把它 prompt 到新机体上。同一套权重驱动运动学不同的机器人。在 22 种本体、60 个数据集的规模上，跨本体模型平均比逐数据集训练的专用方法高出 50% [arXiv:2310.08864]。 类人交互 —— 接得住开放式指令，并且把自己打算干什么暴露出来。π 系列会输出一串人可读的子任务描述，每 4 秒刷新一次 [arXiv:2604.15483 §VI]；显式的中间推理把任务进度从 0.55 抬到 0.67 [arXiv:2510.03342]。 持续进化 —— 从自己的经验里变强，跟着机体磨损调整，接得住新派给它的活。这条轴弱得非常明显：靠自主 rollout 驱动自我改进，公开的闭环只有一个 [arXiv:2511.14759]；至于适应机械磨损，没有任何一家发表过 [arXiv:2104.08212]。 第四条轴才是把模型变成产品的那条，也恰恰是至今没人交付出来的那条。记住它，第 6 部分会绕回来。\n把基础模型和大策略区分开的那个消融 「用了很多数据训出来的」和「基础模型」是两个不同的论断，有一个实验能干净地把它们分开。把网络预训练从跨本体模型里抽掉，它在 emergent skills 上得 0%、在泛化上得 1%；把预训练加回去，同样的架构拿到 48.7% 和 47% [arXiv:2310.08864 Table II]。\n语义是继承来的，机器人数据教不出来。这篇文章后面所有推导都建立在这个事实上，因为它是机器人模型唯一能站在互联网已经付过的账上起步的理由 [arXiv:2307.15818]。\n哪几条轴真的被证明了 「泛化」这个词在机器人写作里承担了太多没兑现的工作。各条轴上的证据厚薄差很多，值得逐条说清楚。\n新物体。 多家实验室都做出来了——在没见过的物体和背景上，大致是上一代的两倍，覆盖 280 个任务、6 千次评测 [arXiv:2307.15818]。 新场景。 这是领域内最硬的单点结果。训练数据从 3 个地点，扩到 12、22、53、82，最后到 104 个地点，性能单调上升；104 地点的模型大致追平了直接在测试住宅里训练的对照模型 [arXiv:2504.16054]。 跨本体。 证明了，但天花板有据可查：emergent skills 上 75.8% 对 27.3% [arXiv:2310.08864]。 长程组合。 在 10 到 15 分钟量级的任务上证明了，比如多阶段房间整理 [arXiv:2504.16054]。 新的物理条件 —— 摩擦、负载、惯量、柔顺性、刚度。这是最弱的一条轴，没有任何实验室发表过在这些变量上的扫描 [arXiv:2604.15483]。光照和杂乱度有人测，机械变量没人测。 有两件事应该给上面所有内容降降温，而且你最好从这里听到，别以后自己撞上。独立工作发现，当前最强的一批模型存在词汇—运动学捷径和语义特征坍缩，静态 benchmark 把这种退化盖住了 [arXiv:2604.18000]，也记录了视觉直接压过语言指令的情形 [arXiv:2602.17659]。而领域内领先的实验室自己也承认：在它那个数据规模上，「实际上很难确切判定哪些任务是真的见过、哪些没见过」，模型「很可能主要是靠把别处情境里的技能重新组合」来实现泛化的 [arXiv:2604.15483]。\n算力应该放在哪里 这是个产品决策，而且通常被往后拖。它不该被往后拖，因为它决定了你被允许造什么东西。两个选项：一个中心服务，机器人隔着网络去查；或者一个直接装在机器上的模型。\n延迟。 离机推理要在 73 毫秒模型时间之上再加大约 13 毫秒 Wi-Fi，合计 86 毫秒 [arXiv:2410.24164]。这个数扛得住——但扛得住的原因是有专门为此设计的算法。实时 chunking 在注入 100 毫秒和 200 毫秒延迟时没有可测的性能损失，超过 300 毫秒就崩 [arXiv:2506.07339]。与此同时，当代模型挂四路相机，在单块 H100 上已经要 300 毫秒 [arXiv:2511.14759]。网络预算在网络还没接进来之前就花光了。\n功耗。 H100 是 700 W [spec: NVIDIA H100 SXM]，Jetson Thor 是 40 到 130 W [spec: NVIDIA Jetson AGX Thor]。给个尺度感：一台 842 Wh 电池、续航 4 小时的人形机器人，整机平均功率约 210 W [spec: 1X NEO]，这意味着一块边缘计算模组要吃掉整机功率预算的 19% 到 62% [computed: 40 to 130 W against 210 W]。把 H100 装到机器人身上不是功耗问题，是物理上做不到。\n单台成本。 一块边缘模组 $3,499 [spec: NVIDIA Jetson AGX Thor]，对面是一块数据中心 GPU——每台机器人一块，而且一直要付 [spec: NVIDIA H100 SXM]。\n故障形态。 策略跑在服务器上的机器人，断网的那一刻就不再是机器人了。这一条属于推理，不是实测结论，此处如实标注——但这是买家会算的账，研究者不会算 [arXiv:2506.07339]。\n结论是端侧，附一个诚实的限定：今天的前沿模型装不进去。同一个模型、同一套运行时，在 H100 上跑 35.9 Hz，在 Jetson Thor 上 10.7 Hz，在 AGX Orin 上 4.6 Hz [repo: Isaac-GR00T hardware_recommendation.md]。正是这个差距，让第 5 部分里的压缩工作变成承重结构，而不是可选项。\n第 2 部分 —— 两个子系统：大脑与身体 大脑，以及它的输入输出契约 把术语剥掉，大脑就是一个函数，每秒被调用二十到五十次。\n输入： 最多 4 路相机图像，分辨率 448×448；最多 6 帧近期历史；当前关节构型；一句英文指令 [arXiv:2604.15483 §IV]。\n输出： 一个 action chunk —— 一段长度 H = 50 的未来关节目标序列，其中只有前 15 或 25 步会被真正执行，然后模型被重新调用 [arXiv:2604.15483 §VI-B]。控制回路在多数平台上跑 50 Hz，在 UR5e 上跑 20 Hz [arXiv:2604.15483 §VII]。\n整个接口就这么多。注意这道边界画在哪儿：它是大脑的边界，不是整台机器的边界。模型是一个 setpoint 生成器——它不接管你的伺服环，它给伺服环喂数 [arXiv:2604.15483 §VII]。它一次预测大约一秒的运动，却只承诺其中三分之一，省下来的时间正好用来思考 [arXiv:2506.07339]。\nchunk 不是实现细节，背后的消融结果相当刺眼：一次只预测一步，在一个精细双臂任务上成功率 1%；一次预测 100 步，成功率 44% [arXiv:2304.13705]。机理是误差累积——一点偏差把机器人推到训练分布边缘之外，下一步预测就更差一点，循环发散。一次承诺一整段运动，等于把发散的机会数直接除掉一个量级 [arXiv:2304.13705]。\n把上面那份输入清单再读一遍，因为它没有包含的东西，正是接下来两节的全部论点。大脑必须具备的能力：\n视觉、语言、本体感知。 就是上面那三路通道，每个已落地的系统都有 [arXiv:2604.15483 §IV]。有代表性的平台暴露的是 14 维状态 [repo: openpi aloha_policy.py]。 推理。 口号意义上的「会思考」不算数，这里指的是一个后续系统真的会消费的显式中间表示。π 系列每 4 秒刷新一次 [arXiv:2604.15483 §VI]；在做过消融的地方，它值 0.55 到 0.67 的任务进度 [arXiv:2510.03342]。 力与触觉。 研究系统里测得到，前沿模型里一个都没接。加一路力信号平均涨 23.2%，插拔任务从约 10% 抬到约 80%，训练集只有 244 条轨迹 [arXiv:2505.22159]。触觉把 USB 插接从 5% 抬到 35%，充电器插接从 40% 抬到 90%，分布外擦拭从 0% 抬到 80% [arXiv:2507.09160]。 音频。 没有任何前沿机器人基础模型公开过音频输入通路。这里只把它标成一个缺口，不展开 [arXiv:2604.15483]。 动作生成。 表示形式的选择，第 3 部分会论证它是中枢性的一条轴 [arXiv:2501.09747]。 身体 这几条要求读起来像一份硬件规格书，因为它本来就是。\n灵巧与精细控制。 研究级机械臂接受 1 kHz 的指令 [spec: Franka Research 3]，而它上面那个策略产出 setpoint 的频率是 50 Hz [arXiv:2604.15483 §VII]。接触物理活在模型够不着的频段里，这正是 harness 必须存在的原因。 精度。 重复定位精度的跨度：研究级机械臂优于 0.1 毫米 [spec: Franka Research 3]，领域内大量训练实际用的低成本机械臂是 1 毫米 [spec: Trossen ViperX 300]——共享同一份数据集的这些平台之间，差了大约 10x [computed: 1 mm against 0.1 mm]。 鲁棒与安全。 面向人类环境设计的人形机器人，公开数据是 95% 反驱性、30 kg 自重、头部伤害指标低于 250 [spec: 1X NEO]。标准写得很明确：降速模式上限 250 mm/s，安全等级 PL d 与 SIL 2 [std: ISO 10218:2025]；接触力上限从面部 65 N 到大腿 220 N [std: ISO/TS 15066:2016]。 运维成本。 领域内最大的公开缺口。所有做到规模化部署的研究里，平均无故障时间都没披露 [arXiv:2104.08212]；跨台制造差异被点过名，但从来没被量化 [arXiv:2506.18123]。 中间那层 harness 没人会把一个 5B 参数的 transformer 塞进伺服环，所以每个认真的系统都会切成两半，分别跑在不同频率上：语义层 1 到 10 Hz，setpoint 层 20 到 50 Hz，伺服层 200 到 1000 Hz [arXiv:2503.14734]。有一套公开的人形栈，三层分别跑 7 到 9 Hz、200 Hz 和 1 kHz [blog: Figure Helix]——marketing 级来源，背后没有论文。另一套全身控制栈，策略跑 2.5 Hz，控制器跑 50 Hz [repo: Isaac-GR00T hardware_recommendation.md]。\n各家真正有分歧的地方是这道缝开多宽。有的系统在两半之间只传一个连续隐向量 [blog: Figure Helix]；有的对一整串中间特征做 cross-attention [arXiv:2503.14734]；π 系列传的是一句人可读的子任务描述外加一张生成图像 [arXiv:2604.15483 §VI]。最后这个选择费带宽，换来的是可调试性：机器人做错事的时候，你能读出来它以为自己在干什么。\n而整条通路——从光子到力矩——至今没有任何实验室在任何平台上完整发表过 [repo: openpi websocket_policy_server.py]。\n第 3 部分 —— 那台跑通了的机器，以及它搬不过来的地方 要理解机器人为什么难，先得准确理解语言建模为什么容易——工程量上并不容易，容易的是一个很具体的意义：往里投资源，它就可靠地起作用。\n方法论 把智能从数据集里压缩进权重，用算力换进展，别用手工设计的特征换进展。这件事之所以是一套战略而不只是一种指望，是因为回报可以预测。loss 随数据、参数、算力呈幂律下降，指数分别是 0.095、0.076、0.050，拟合跨越 7 个数量级 [arXiv:2001.08361]。数据翻十倍，loss 乘 0.80；参数翻十倍，乘 0.84 [arXiv:2001.08361]。\n这种可预测性本身就是一件预算工具。它告诉某家实验室：在同等算力下，70B 模型配 1.4T token，会打赢 280B 模型配 300B token，最优配比大约是每参数 20 个 token [arXiv:2203.15556]。规模化定律是你决定买什么的依据——所以一个没有规模化定律的领域，是一个没法做规划的领域。\n支撑那台机器跑起来的，是三根支柱。\n支柱一 —— 数据的组织范式 一切皆 token。同一套表示覆盖翻译、摘要、代码、对话，正是这一点让「一条普适的定律」变得可寻，而不至于退化成每个任务一条曲线 [arXiv:2001.08361]。\n而且语料本来就在那儿。一条开源流水线把 96 个 Common Crawl 快照蒸成 15T token、44 TB 文本，只花了 1,536 GPU 小时 [arXiv:2406.17557]，折合大约 $10k 的算力 [computed: 1,536 GPU-hours at commodity rates]。没有任何人被雇来生产这些文本，它是互联网存在的副产品。\n在这之上，评测几乎不要钱：留出集困惑度，加上机器可以直接判定的任务结果。测试周期以分钟计，随基础设施扩展，不随人头扩展 [arXiv:2001.08361]。on-policy 数据也便宜，因为沙箱就是一次 API 调用。\n支柱二 —— 计算范式 这里是最常被说错的一段。所谓「大模型」，真正的衡量标准是计算强度——每从内存搬运一个字节，能做多少次浮点运算；参数量本身说明不了什么。\n每块加速器都有一个 ridge point：峰值算力除以内存带宽。落在它左边，芯片在等内存，标称算力是假的；落在它右边，芯片才真的在算。下面这组数字由厂商规格书推出。\n器件 峰值 带宽 ridge point H100 SXM 3,958 TFLOPS FP8 3.35 TB/s 约 1,181 FLOP/byte Jetson AGX Thor 1,035 TFLOPS dense FP4 273 GB/s 约 3,791 FLOP/byte AGX Orin 275 TOPS sparse INT8 204.8 GB/s 约 1,343 OP/byte 这三行的精度各不相同，所以它不是一次同口径的算力对比，也不该被那样读 [spec: NVIDIA H100 SXM]。真正可比的是：每块器件对负载提出的比值要求。Thor 的 ridge point 比 H100 的往右挪了大约 3.2x [computed: 3,791 over 1,181]，意思是边缘器件对访存受限负载的惩罚，比它 TOPS 数字暗示的要重得多 [spec: NVIDIA Jetson AGX Thor]。\n实测后果在公开数据里看得见：同一个 action expert，在 Thor 上要 26.20 毫秒，在消费级 GPU 上只要 7.25 毫秒，惩罚倍数 3.6x [arXiv:2602.18397]。看 GB/s 那一行，别看 TOPS 那一行。\ntransformer 能赢，是因为序列建模足够通用，而且这个架构计算密度足够高，能把硬件换成能力 [arXiv:2001.08361]。这句话的两半缺一不可。\n支柱三 —— 基础设施 这个规模上的训练本身就是一件工程作品：某个 540B 参数的训练跑出了 46.2% 的 model FLOPs utilization [arXiv:2204.02311]，这需要上千块加速器，以及足以扛住它们连着坏几周的容灾能力。推理是它的镜像——低延迟、高并发，再加上 test-time scaling 和一套能让长程多轮调用保持正确的 harness [arXiv:2001.08361]。\n对照表 机器人满足支柱二。支柱一和支柱三，它没有以那种曾经产生威力的形态满足；此外它还多背一条文本从未面对过的约束：物理不等人 [arXiv:2604.15483 §VII]。\n五个卡点 这是整篇论证的枢纽。每个卡点用一句原理加一个决定性数字给出，第 4 部分再算它各要付多少代价。\n其一：没有统一的动作词表。 文本只有一套字母表，机器人没有。动作空间要补零到 18 或 19 维，才能被拼进同一个训练混合里 [arXiv:2410.24164]。标准语料之间控制频率从 3 Hz 跨到 50 Hz [arXiv:2310.08864]，于是同样 50 步的 chunk，在一台机器上是 1 秒运动，在另一台上是 2.5 秒 [computed: 50 steps at 50 Hz and 20 Hz]。连 tokenizer 的效率都取决于机体：同一套压缩方案，在 5 Hz、7 自由度下压缩比 1.75x，在 50 Hz、14 自由度下是 13.2x [arXiv:2501.09747]。而机器人领域唯一被复现过的规模化定律，跑的是多样性，不是数据量——归一化分数随 pair 数以 0.88 乘以 −0.30 次幂改善，而每个 pair 的演示数在总量约 800 条时就饱和了 [arXiv:2410.18647]。\n其二：没有无监督语料。 最接近网页文本的东西是第一人称人类视频，两个最大的公开语料加起来 4,956 小时 [computed: 3,670 h plus 1,286 h]，对面是 15T token 的网页文本 [arXiv:2110.07058]。机器人数据是被制造出来的：某个预训练混合大约代表 10,000 小时、903M 个时间步 [arXiv:2410.24164]，按全负担 $50 每小时算，约合 $500k 的人力成本 [computed: 10,000 h at $50 per hour]。另一份数据集动用了 100 台机器人、4,000 平米场地，产出 1,001,552 段 episode、2,976.4 小时 [arXiv:2503.06669]。还有一份用了 18 套采集架、50 名采集员、12 个月，换来 76k 条轨迹 [arXiv:2403.12945]。\n其三：计算范式搬得过来，但多花的算力没买到关键指标。 加载视觉语言 checkpoint 再挂一个 action head，是货真价实的迁移，第 1 部分那个网络预训练消融就是证据。可是把 backbone 固定、只换 action head：50 步去噪的 diffusion 跑 10.1 Hz、成功率 95.4%；连续回归跑 109.7 Hz、成功率 95.3% [arXiv:2502.19645]——吞吐差了约 11x，成绩差了 0.1 个百分点 [computed: 109.7 Hz against 10.1 Hz]。多烧一个数量级的算力却换不到可测收益，这跟规模化定律正好相反。\n其四：训练基础设施不是瓶颈，端侧适配可能才是。 没有哪个机器人结果是在语言模型那个量级上被算力卡住的。领域内公开的最大一笔算力开销花在数据生成上——240k 个样本，1,500 块 GPU 跑 54 小时 [arXiv:2505.12705]。真正悬着的问题在另一端：在机器上做适配——已有端侧模型能用 50 到 100 条演示微调到新任务 [arXiv:2503.20020]。\n其五：推理意味着一台真机器。 语言 harness 卡住，代价是回答慢了。策略卡住，代价是把一条过期轨迹发给一个已经变了的世界。实时 chunking 之所以存在就是因为这个，它 100–200 毫秒的容忍度和 300 毫秒的上限之所以承重也是因为这个 [arXiv:2506.07339]；而光子到力矩的延迟没有任何实验室发表过，这是一次测量失职，谈不上疏忽 [repo: openpi websocket_policy_server.py]。\n五个卡点里，只有一个是建模问题。其余四个属于测量、机构和数据引擎。\n第 4 部分 —— 这些卡点在每个子系统里各要付多少代价 六个格子。每一格都是第 3 部分某个卡点落到具体工程层面之后的本地形态。\n大脑 / 评测 —— 来自卡点一 先造量具，再造被量的东西，因为量具现在根本不存在。\n先算一笔没人算的账。在常规显著性和检验力下，要把 50% 的策略和 60% 的策略分开，每个策略需要 387 次试验；要把 50% 和 55% 分开需要 1,565 次；哪怕只是把 80% 和 90% 分开，也要 199 次 [computed: two-proportion test, alpha 0.05, 80% power]。而领域内实际跑 10 到 60 次 [arXiv:2506.18123]——有影响力的论文里，一篇是每任务每策略 10 次 [arXiv:2504.16054]，另一篇总共约 125 次真机 rollout [arXiv:2503.14734]。一个在 20 次试验里测出 60% 的策略，95% 置信区间是 0.39 到 0.78 [computed: Wilson score interval]。这不叫测量。\n后果已经被量化过。一次大规模审计发现，LIBERO 上只有 19.8% 的论断、SimplerEnv 上只有 19.7% 的论断在统计上显著 [arXiv:2606.04233]。同一份工作还发现，一个 90M 参数、完全不读指令的探针，在四个 LIBERO 子集上拿到 99.0、100、98.8 和 92.4% [arXiv:2606.04233]——模型不读指令也能通过的 benchmark，测的显然不是指令跟随。\n更麻烦的是，这些 benchmark 恰好对硬件团队掌控的那些变量极其敏感。改变机器人初始状态，一个模型掉 87.6 分，另一个掉 59.9 分；改变相机视角，分别掉 78.4 和 37.4 [arXiv:2510.13626]。在位置扰动下，标准 LIBERO 上拿 98% 和 92% 的模型直接坍到 0.0% [arXiv:2510.03827]。在真机 benchmark 上，同一个任务因操作员不同，成绩可以从 0% 到 100% [arXiv:2510.17950]。\n已有的东西值得用起来。精心构造的套件上，real-to-sim 的 Pearson 相关达到 0.924 [arXiv:2405.05941]；跨 7 家机构、4,284 段 episode 的分布式评测，约 100 次成对比较后收敛 [arXiv:2506.18123]；自适应试验分配最多省下 70% 的试验次数 [arXiv:2603.13616]；一个世界模型评测器以 100 H100 小时的复现成本，拿到与真机评测 0.989 的秩相关 [arXiv:2607.01060]。\n大脑 / 训练 —— 来自卡点二和卡点三 数据不存在，也爬不到，只能被工程化地造出来。好消息是，唯一那条被复现过的定律告诉了你该买什么。\n买多样性，别买数据量。被验证过的配方是 32 个「环境×物体」组合、每个 50 条演示，在没见过的环境里拿到 85% 到 92.5%，采集只用了 4 个人一个下午 [arXiv:2410.18647]。同一份研究覆盖超过 40,000 条演示和 15,000 次真机 rollout，发现每个 pair 的演示数在总量约 800 条时饱和 [arXiv:2410.18647]。\n混合权重的分量比看上去重：学出来的混合权重比均匀加权高 38%，比人工挑的权重高 32% [arXiv:2408.14037]；一种数据筛选方法用不到 33% 的数据就追平了全量表现 [arXiv:2506.19121]。异质性则是共用语料要交的税——标准开源混合里，腕部相机覆盖率 27%，语言标注覆盖率 56% [arXiv:2405.12213]，再叠上卡点一里的补零和频率跨度。有一种做法把每种本体都压成 16 个固定 token，跨 52 个数据集、约 200k 条轨迹，换来 20% 的提升 [arXiv:2409.20537]。\n对着 327 篇论文做的元分析给出，机器人领域在数据、模型、算力上的指数分别是 0.276、0.246、0.141 [arXiv:2405.14005]——比语言模型的指数陡，但拟合跨度只有大约三个数量级，而不是七个。\n大脑 / 部署 —— 来自卡点三和卡点五 压缩有悬崖，而且不缓。某个方法在 3.0 bit/权重时守住 94.8%，掉到 2.0 时变成 48.0% [arXiv:2605.24011]。机器人专用的量化方案不是可选项：一套 W4A8 拿到 97.6%，对面 FP16 是 97.1%，模型从 4.27 GB 压到 1.28 GB [arXiv:2602.20309]；而把通用语言模型的训练后量化直接套到同一个策略上，只剩 76.3%，掉了 21 分 [arXiv:2602.20309]。\n算法与运行时的协同设计才是杠杆所在。编译带来 1.5 到 2.9x，优化过的推理流水线带来 1.5 到 3.3x [repo: Isaac-GR00T hardware_recommendation.md]。一个单步 flow 变体把某个策略从 274 毫秒压到 83 毫秒，成功率还从 97.75% 升到 98.75% [arXiv:2604.05656]。chunking 加连续动作把一个系统从 4.2 Hz 拉到 109.7 Hz、从 76.5% 拉到 97.1%，加速 26x [arXiv:2502.19645]。\n对公开数据保持怀疑。同一个模型在同一块边缘器件上的延迟，不同来源之间从 46 毫秒跨到 246 毫秒，差 5x [arXiv:2602.18397]。\n身体 / 硬件设计 —— 来自卡点一和卡点五 标定是一阶精度项，算不上维护琐事。某个公开数据集在发布之后，为其中 36,000 段 episode 重新提供了更好的相机标定 [spec: DROID dataset site]。相机挪 10 厘米、转 20 度，100% 成功率的策略坍到 0% [arXiv:2409.03403]。安装刚度和重复定位精度给模型划了一条它翻不过去的下限 [spec: Franka Research 3]。\n传感是另一半。能被换掉的触觉皮肤，比精度高的触觉皮肤更重要：某个设计的跨个体性能损失是 13%，对照基线是 43%，归一化跨个体波动 0.12 对 0.54，更换耗时 12 秒对 236 ± 64 秒 [arXiv:2409.08276]。一个 460k 张图像的触觉预训练语料已经存在 [arXiv:2410.24090]。这些东西，一样都没有接进前沿模型。\n身体 / 采集管线 —— 来自卡点二 采集架阶梯是这个领域里成本收益最清楚的一张表。手持工位单价 $371——$73 的夹爪加 $298 的相机——每小时产 111 条演示，对面遥操作是 35 条，吞吐倍数 3.2x，在新环境里拿到 71.7%，迁移到研究级机械臂上还有 90% [arXiv:2402.10329]。低成本遥操作接口不到 $300 [arXiv:2309.13037]；外骨骼采集架 $0.6k，替掉的是约 $60k 的平台 [arXiv:2503.03081]；双臂工位不到 $20k [arXiv:2304.13705]，移动版 $32k [arXiv:2401.02117]。\n剩下的由操作员成本决定。某西方公司公开的时薪是 $25.25 到 $48.00 [blog: Tesla job posting via Fortune]，而中国采集中心被报道的价格约为每小时 $3 [blog: Rest of World]——两条都是 marketing 级来源，此处如实标注。\n按单位学习量算，人类视频是最便宜的来源：1 小时人类视频约等于 1,400 条演示，而 1 小时机器人时间只等于 135 条 [arXiv:2410.24221]。而且它真的有用——叠衣服成功率 88% 对 55%，没见过的布料颜色上 85% 对 25% [arXiv:2410.24221]，相关方法再加 44 个百分点 [arXiv:2509.19626]。仿真和生成式增广排在它上面：真实加仿真拿到 24.4% 和 9.3%，纯真实数据只有 13.6% 和 2.6% [arXiv:2406.02523]；某条流水线把不到 200 条演示放大成超过 50,000 条 [arXiv:2310.17596]；某个生成式流水线把新环境中的新行为从 0.0% 抬到 28.5% [arXiv:2505.12705]。\n身体 / 运行时外壳 —— 来自卡点五 模型自己那段时间，是整个问题里被测过的三分之一：图像编码器 14 毫秒，prefix pass 32 毫秒，flow 步 27 毫秒 [arXiv:2410.24164]。曝光、传输、预处理、坐标变换、执行器响应，整个领域都没测 [repo: openpi websocket_policy_server.py]。一份公开预算能容忍 0 到 12 个时间步的延迟，在 50 Hz 下就是 240 毫秒的窗口 [computed: 12 timesteps at 50 Hz]。\n安全是架构问题，学不出来。神经策略拿不到 Performance Level 认证，所以过滤器必须放在策略之外：一个基于可达性的安全过滤器跑在 100 Hz，在 66 条真机轨迹上验证过 [arXiv:2410.11157]。相关标准在 2025 年做了自 2011 年以来的第一次修订 [std: ISO 10218:2025]，而面向动态稳定移动机器人的标准还停在 Working Draft [std: ISO 25785-1]。\n第 5 部分 —— 施工顺序 前面全部是诊断。这一部分是解答，也是最该被挑刺的一部分，因为只有它做出了承诺。\n前面每一节都埋了钩子。它们在这里被逐个收回：\n前面留下的问题 在哪里解答 第四条轴——持续进化——只有一个公开闭环 M3 端侧结论，以及今天的模型装不进去 M4 力和触觉身体测得到，模型一个都没接 M1，从第一天就录 卡点一：没有统一的动作词表 M2，action token 接口 卡点二：没有无监督语料 M1，数据引擎 卡点三：多花的算力没买到关键指标 M2，action head 的选择 卡点四：瓶颈在端侧适配，不在训练规模 M3 与 M4 卡点五：推理意味着一台真机器 M0 的延迟预算，M4 的运行时 难点网格的全部六格 M0 到 M5，一格一个 六个里程碑，每个都有一个用数字表述的通过条件，因此都可能失败。排序原则只有一条：先造量具，再造被量的东西 [arXiv:2506.18123]。\n凡是已经在前沿规模上被真正执行过的里程碑，这里讲的都是「实际造出来的东西」，而不是「理想中该怎么做」——π 系列是目前唯一被完整披露的实例，下面的图也全部来自对它的逐行精读 [arXiv:2604.15483]。\n先把「怎么借鉴」说清楚 语言模型那台机器有三个阶段，形式上三个都能搬过来。真正变形的是第三个，原因就是卡点二：没有便宜的 verifier，奖励只能从机器人自己的经验里来 [arXiv:2511.14759]。\n阶段 在语言里 在机器人里 哪里断了 预训练 网页语料上的 next-token 从 VLM checkpoint 出发，一个通才覆盖所有机器人和任务 语料不存在，只能被制造出来 [arXiv:2410.24164] 后训练 在精选数据上做指令微调 用 subgoal 和 episode 元数据做条件；把输入从固定装机上解绑 监督信号是一条演示，不是一个偏好 [arXiv:2604.15483 §V-E] RL 对着 reward model 做偏好优化 在机器人自己的 rollout 上做 advantage 条件化 没有 verifier；奖励稀疏，rollout 烧的是机器人小时 [arXiv:2511.14759] M0 —— 造量具 你没法拿一把自己都不信的尺子去做后训练，而领域自己的审计说，五个对比里有四个不显著 [arXiv:2606.04233]。\n要造什么。 一套能在 387 次试验以内分辨出 10 分差距的评测装置 [computed: two-proportion test, alpha 0.05, 80% power]，做法是把三样已经存在的东西拼起来：序贯检验、相关性验证到 Pearson 0.924 的 real-to-sim 代理 [arXiv:2405.05941]，以及最多能省 70% 试验次数的自适应分配 [arXiv:2603.13616]。如果有合作方，分布式成对比较约 100 次之后收敛 [arXiv:2506.18123]。\n要发布什么。 你自己平台的光子到力矩预算，因为没有任何实验室为任何平台发布过 [repo: openpi websocket_policy_server.py]。M4 反正也要用到它；现在就测出来，是「工程目标」和「一厢情愿」之间的区别。\n通过条件。 这把尺子能把两个你已知有差别的策略分开，且试验次数落在上面那个数以内 [computed: two-proportion test, alpha 0.05, 80% power]。关掉大脑/评测。\nM1 —— 造数据引擎 它是一个飞轮，不是一个数据集 前沿系统的数据来自 8 个来源，汇进同一份带标注的混合 [arXiv:2604.15483 §VI-A]。其中三个值得点名，因为一个只想「攒一个静态数据集」的团队根本想不到要采它们：包含失败在内的自主评测 rollout、在这些 rollout 里发生的人工介入，以及 RL 训练过程中收集的数据——实验室把最后这一项称为一种蒸馏过程 [arXiv:2511.14759]。已部署策略跑出来的 rollout，就是明天的训练数据。要造的是这个回路，不是那份语料。\n有两条纪律，决定这个回路是良性还是退化的。\n故意把差数据留下。 失败、包含失误的成功、以及旧版本模型的评测数据，都是被刻意保留的 [arXiv:2604.15483 §VI-A]。这跟「先过滤一遍」的本能正好相反，而它能成立完全依赖下一节：是元数据让「留下它们」变得安全。\n把评测数据从训练里排除。 任何以泛化为目的的评测任务中收集到的自主数据，都被排除在混合之外 [arXiv:2604.15483 §VI-A]。没有这条排除，飞轮就在悄悄地训练测试集，而 M0 产出的每一个数字都会变成虚构。\n一条 episode 里必须录进什么 每条 episode 都被存成一个带条件的样本，而不是一条原始轨迹，条件就是 prompt 里的纯文本 [arXiv:2604.15483 §V-E]：\n\u0026lt;multi-view observation\u0026gt;\u0026lt;multi-view subgoals\u0026gt; Task: peel vegetables. Subtask: pick up the peeler. Speed: 8000. Quality: 5. Mistake: false. Control Mode: joint. \u0026lt;proprioception\u0026gt; Speed 是 episode 长度（时间步），按 500 步一档分箱 [arXiv:2604.15483 §V-C]。Quality 是人打的 1 到 5 的整数 [arXiv:2604.15483 §V-C]。Mistake 是逐段的粗粒度布尔标注 [arXiv:2604.15483 §V-C]。Control Mode 区分关节空间和末端执行器指令，而且是唯一一个从不被丢弃的字段 [arXiv:2604.15483 §V-D]。\n整个想法就浓缩在这一串字符里：把条件加在这条数据是怎么产生的上，而不只是加在做了什么上。因为模型是带着这些字段训出来的，它们在推理期就变成旋钮——把 quality 提到 5、mistake 设成 false，策略就去模仿你数据里好的那一半 [arXiv:2604.15483 §VII]。平庸的演示从「污染」变成了「对照」，这也正是「把差数据留下」能成为策略而不是疏忽的原因。\n力信号和元数据必须从第一天就录。 事后补任何一路都等于把语料重采一遍；而在已经加过力通道的地方，它平均涨 23.2% [arXiv:2505.22159]。\nepisode 从哪来 从唯一背后有复现定律的配方起步：32 个「环境×物体」组合、每个 50 条演示，在没见过的环境里拿到 85% 到 92.5%，4 个人一下午采完 [arXiv:2410.18647]。四个单价 $371 的手持工位是 $1,484 的资本开支 [computed: 4 stations at $371]。人类视频要立刻叠进来——1 小时约等于 1,400 条演示，而 1 个机器人小时只等于 135 条 [arXiv:2410.24221]。仿真放最后：真实加仿真拿到 24.4% 和 9.3%，纯真实只有 13.6% 和 2.6% [arXiv:2406.02523]。\n通过条件。 看多样性，别看数据量：真正要数的是「组合数」，而每个组合的演示数在总量约 800 条时饱和 [arXiv:2410.18647]。关掉身体/采集，以及大脑/训练的一半。\nM2 —— 模型怎么参数化 这一摞怎么摆 控制通路上约 5B 参数：相机画面进入一个 400M 的 SigLIP 级视觉编码器，经过一个做时间与空间压缩的历史编码器，抵达 4B 的 Gemma-3 backbone；一个 860M 的 flow-matching action expert 读取 backbone 的激活，吐出 chunk [arXiv:2604.15483 §IV]。本体感知走线性投影，每个历史状态一个 token [arXiv:2604.15483 §VI-B]。另有一个 14B 的 world model——7B 理解加 7B 生成——跑在控制通路旁边而不是里面，产出最多 3 张 subgoal 图像 [arXiv:2604.15483 App. C]。\n比这张快照更值得看的是它的演化路径，因为它显示了哪些改动真的回本了：\n那道防火墙，才是最该抄的部分 一个 FAST token 的交叉熵头训 backbone，flow matching 训 expert，两者用 stop-gradient 耦合：action expert 的梯度不回流进 backbone [arXiv:2604.15483 §III]。离散头去塑造 backbone 的表示，而连续头拽不动它。这就是 knowledge insulation，也是让一个模型同时吸收网页语义和运动技能、而两者互不抹除的那个机制。\n注意力模式执行的是同一种隔离。正好 50 个 action token，彼此双向，并 attend backbone 的激活；其余部分 block-causal；而 FAST token 和 flow action 之间从不互相 attend [arXiv:2604.15483 App. B]。FAST token 只在训练期存在——到了推理期，离散那一支直接消失 [arXiv:2604.15483 App. B]。\n这也是对卡点三的回答。action head 正是团队最容易因为「时髦」而伸手去拿 diffusion 的地方；而实测的账是 10.1 Hz 配 95.4%，对面 109.7 Hz 配 95.3% [arXiv:2502.19645]。算力要花在 backbone 上，别花在去噪步数上。\n记忆，几乎白送 历史是 6 帧观测，采样间隔 1 秒 [arXiv:2603.03596]。消费它们的那个编码器，相对单图 ViT 没有增加任何可学习参数，向后传的 token 数也和无记忆 VLA 一样——记忆来自注意力模式，不来自容量 [arXiv:2603.03596]。后训练阶段它可以扩到 18 帧、54 秒 [arXiv:2603.03596]。\n通过条件。 全量微调按 70 GB 显存下限做预算 [repo: openpi README]，并且在 M0 那把尺子上以显著性打赢现有方案。关掉大脑/训练。\nM3 —— 预训练、后训练，然后 RL 这一段是硬件团队交给学习团队的那一份，所以它按算法来写，而不是按计划来写：对象是什么、在最大化什么、一步训练逐行做了什么、推理时又发生什么 [arXiv:2604.15483 §III]。\n记号，只定义一次 符号 是什么 具体取值 $o_t$ $t$ 时刻的观测 最多 4 路 448×448 图像，加上关节构型 [arXiv:2604.15483 §IV] $o_{t-T:t}$ 观测历史 6 帧，步长 1 秒 [arXiv:2603.03596] $C_t$ 上下文 子任务字符串、speed、quality、mistake、control mode，以及可选的 subgoal 图像 [arXiv:2604.15483 §V-C] $A_t = a_{t:t+H}$ 动作 chunk $H = 50$ 个未来关节目标 [arXiv:2604.15483 §IV] $\\tilde{H}$ 真正执行的前缀 50 步里的 15 或 25 步，然后重新规划 [arXiv:2604.15483 §VII] $\\theta$ backbone 参数 4B Gemma-3，内含 400M 视觉编码器 [arXiv:2604.15483 §IV] $\\phi$ action expert 参数 860M flow matching transformer [arXiv:2604.15483 §IV] $\\omega$ value model 参数 670M，只在 RL 阶段存在 [arXiv:2511.14759] 整条流水线最大化的是同一个量，下面每个阶段只是逼近它的不同方式 [arXiv:2604.15483 §III]：\n$$\\max_{\\theta,\\,\\phi}\\ \\ \\mathbb{E}_{(o,\\,C,\\,A)\\sim\\mathcal{D}}\\Big[\\log \\pi_{\\theta,\\phi}\\big(A_t \\mid o_{t-T:t},\\ C_t\\big)\\Big]$$有一条注意事项要一路带到第三阶段，因为它正是 LLM 类比断掉的地方：flow matching 的 expert 优化的是这个对数似然的一个近似下界，而不是它本身，所以后面根本没有一个可微的似然给 policy gradient 用 [arXiv:2604.15483 §III]。\n两个目标，一道防火墙 预备知识 —— flow matching。 flow matching 学的是一个速度场，它沿着一条以 flow time 为参数的路径，把一个噪声样本搬运到一个数据样本。训练时在路径上随机取点回归这个速度，采样时把它积分出来。它是 diffusion 在连续动作上的对应物，路径更直，因此积分步数更少。\n离散那一支训练 $\\theta$。 FAST 用离散余弦变换压缩这个 chunk，量化，再用 byte-pair 编码成语言模型本来就有的 token，于是动作目标说的是 backbone 的母语 [arXiv:2501.09747]：\n$$y = \\mathrm{BPE}\\big(\\mathrm{quant}(\\mathrm{DCT}(A_t))\\big),\\qquad \\mathcal{L}_{\\mathrm{CE}}(\\theta) \\;=\\; -\\sum_{k}\\log p_{\\theta}\\big(y_k \\mid y_{\\lt k},\\ h_{\\theta}(o_{t-T:t}, C_t)\\big)$$这就是普通的 next-token 交叉熵，跟 backbone 预训练时用的是同一个损失——这也正是它不会忘掉「滤锅是什么」的全部原因 [arXiv:2604.15483 §III]。\n连续那一支训练 $\\phi$。 采噪声 $\\epsilon \\sim \\mathcal{N}(0, I)$，采一个偏向路径噪声端的 flow time $\\tau$，做插值，然后回归那个把噪声送往动作的速度 [arXiv:2410.24164]：\n$$A^{\\tau} = \\tau A_t + (1-\\tau)\\,\\epsilon, \\qquad \\mathcal{L}_{\\mathrm{FM}}(\\phi) \\;=\\; \\mathbb{E}_{\\tau,\\,\\epsilon}\\Big\\|\\,v_{\\phi}\\big(A^{\\tau},\\ \\tau,\\ \\mathrm{sg}[\\,h_{\\theta}\\,]\\big) \\;-\\; (A_t - \\epsilon)\\,\\Big\\|^{2}$$这里的符号约定取 $\\tau = 0$ 是噪声、$\\tau = 1$ 是动作 chunk；原文用的是相反的朝向，其余完全一致 [arXiv:2410.24164]。\n耦合只有一个算子。 $\\mathrm{sg}[\\cdot]$ 是 stop-gradient，防火墙全在这里：expert 读得到 backbone 的每一个激活，却改不动其中任何一个 [arXiv:2604.15483 §III]。总损失是 $\\mathcal{L}_{\\mathrm{CE}} + \\lambda\\,\\mathcal{L}_{\\mathrm{FM}}$，而 $\\lambda$ 是这一节里唯一没人公开过的数——它进 gap 清单，而不是被我写成一句自信的话 [arXiv:2604.15483 §III]。\n一步训练，逐行拆开 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 for o, C, A in mixture: # M1 的飞轮，每个 batch 重新采样 C = drop_fields(C) # 丢弃率见阶段二；让每个字段都变成可选 h = backbone(o, C) # theta: 400M SigLIP + MEM 历史编码 + 4B Gemma-3 # 离散支路 —— 训练 theta，用 backbone 本来就会说的语言 y = fast_tokenize(A) # DCT -\u0026gt; 量化 -\u0026gt; BPE loss_ce = cross_entropy(fast_head(h), y) # 连续支路 —— 只训练 phi tau = sample_flow_time() # 偏向噪声端 eps = randn_like(A) A_tau = tau * A + (1 - tau) * eps v = action_expert(A_tau, tau, stop_gradient(h)) # \u0026lt;-- 防火墙，就这一次调用 loss_fm = mse(v, A - eps) (loss_ce + lam * loss_fm).backward() opt.step() 设计全压在两行上。stop_gradient(h) 就是 knowledge insulation，删掉它是你手上代价最高的一次单字符改动——高方差的回归梯度会一路冲进 backbone，把你当初把它接上来所图的那份网络语义抹掉 [arXiv:2604.15483 §III]。而 fast_head(h) 不带 stop-gradient，才是让 backbone 还在学动作这件事的原因；反过来把它删了，你手上就只剩一个冻住的 VLM 外挂一个策略 [arXiv:2501.09747]。\n注意力掩码是第三道控制，而且它是正确性要求，不是优化技巧：FAST token 就是那个量化过的标准答案，能 attend 到它的 expert 会学会抄答案而不是看场景，到了部署环境——那里根本没有这些 token——直接崩掉 [arXiv:2604.15483 App. B]。\n推理，逐行拆开 1 2 3 4 5 6 7 8 h = backbone(o, C_runtime) # quality=5, mistake=false, speed=第 15 百分位 kv = cache(h) # 动作 attend 前缀；前缀从不回头 attend 动作 A = randn(50, action_dim) # tau = 0：纯噪声 for i in range(5): # delta = 1/5，前向 Euler A = A + (1 / 5) * action_expert(A, i / 5, kv) execute(A[:25]) # 或 A[:15]；然后重新观测，再来一轮 前缀只编码一次，5 个去噪步全部复用，这是掩码直接派发的红利：因为前缀不 attend 动作 token，动作被逐步细化的过程里，前缀里没有任何东西会变 [arXiv:2604.15483 §VII]。一个掩码决策，同时买到正确性和大约一整趟前向的开销。\n到这里元数据字段已经不是标注而是旋钮了，而 guidance 让旋钮更锐利 [arXiv:2604.15483 §VII]：\n$$v \\;=\\; v_{\\phi}(\\,\\cdot \\mid \\varnothing\\,) \\;+\\; w\\,\\big(v_{\\phi}(\\,\\cdot \\mid C\\,) - v_{\\phi}(\\,\\cdot \\mid \\varnothing\\,)\\big),\\qquad w \\in \\{1.3,\\ 1.7,\\ 2.2\\}$$朴素做法是两趟前向。实际实现只用一趟：把有条件和无条件两支打包进同一条序列，做成一棵互不 attend 的注意力树 [arXiv:2604.15483 App. B]。\n阶段一 —— 预训练 一个 generalist，覆盖混合数据里的每一种机器人和每一个任务，从视觉-语言 checkpoint 初始化，用上面那两个目标一起训 [arXiv:2604.15483 §III]。这一阶段没有任何任务特化，也没有任何本体特化：动作空间被补零到一个公共宽度，好让异构机器人共用一个头——这就是卡点一以实现细节的形态现身 [arXiv:2410.24164]。\n这一阶段真正要的是那份共享表征，它让 M5 的第二种本体变得便宜；而第 1 部分那个消融就是为它付钱的理由——把网络预训练抽掉，泛化掉到 1% [arXiv:2310.08864 Table II]。\n阶段二 —— 后训练 这一阶段做的事，是教会模型「它自己的上下文并不可靠」 [arXiv:2604.15483 §V-E]。形式上，每次前向之前先把上下文破坏掉，\n$$\\tilde{C} = D_{\\rho}(C), \\qquad \\Pr[\\,\\text{字段 } j \\text{ 存活}\\,] = 1 - \\rho_j$$而这些比率是完整公开的，罕见到值得逐条照抄 [arXiv:2604.15483 §V-E, §VI-B]：\n丢什么 比率 出处 整段观测历史 $p = 0.3$ [arXiv:2604.15483 §VI-B] 后视相机那一路 $p = 0.3$ [arXiv:2604.15483 §VI-B] 整包 episode 元数据 15% [arXiv:2604.15483 §V-E] 每个元数据字段，再额外 5% [arXiv:2604.15483 §V-E] subgoal 样本内部的子任务字符串 30% [arXiv:2604.15483 §V-E] 是否带 subgoal 图像 只在 25% 的 batch 里带 [arXiv:2604.15483 §V-E] 真实 subgoal 的采样是 $p = 0.25$ 取段末、$p = 0.75$ 在 4 秒内均匀取 [arXiv:2604.15483 §VI-C]。训练同时模拟 0 到 12 个时间步的推理延迟，在 50 Hz 上就是 240 毫秒的预算；这笔账在训练时付掉，推理时一分不花 [computed: 12 timesteps at 50 Hz]。\n这里的 dropout 不是通常意义的正则化，而把它读成正则化，正是团队们说服自己不做它的方式。它真正做的是让每个字段在测试时都可选——子任务字符串不给、元数据不给、历史不给，你仍然拿得到一个策略 [arXiv:2604.15483 §V-E]。它同时也在阻止策略绑死到固定相机装机，也就是第 4 部分量化过的那个从 100% 到 0% 的失效 [arXiv:2409.03403]。\n有两个比率值得单独解释。subgoal 的占比被压在四分之一，是因为一旦上下文里有 subgoal 图像，目标就退化成接近逆动力学，训得快得多——不设上限，模型就学会去读 subgoal 而不是读场景 [arXiv:2604.15483 §V-E]。而 control mode 是唯一一个从不丢弃的字段，因为关节空间指令和末端执行器指令是两条不同的命令，却穿着同一身数字 [arXiv:2604.15483 §V-D]。\n阶段三 —— RL，也就是这套配方开始不合身的地方 两件事同时崩。一是没有便宜的 verifier——「衬衫叠好了吗」没有哪一句断言可以调用；二是 flow matching 策略没有可解析的对数似然，policy gradient 根本没有东西可微 [arXiv:2511.14759]。公开的对比说得很直白：PPO 和 AWR 都打不过下面这个方法，而 PPO 尤其在真实机器人数据强加给你的 off-policy 情形里吃力 [arXiv:2511.14759]。\n定义 —— 奖励。 刻意做得很朴素，好让它不需要逐任务的 verifier 就能移植到任何任务上 [arXiv:2511.14759]：\n$$r_t = \\begin{cases} 0 \u0026 \\text{终止步，成功} \\\\ -c \u0026 \\text{终止步，失败} \\\\ -1 \u0026 \\text{其余} \\end{cases} \\qquad\\quad G_t = \\sum_{k \\ge t} r_k$$数值随后按任务用最大 episode 长度归一到区间 $(-1, 0)$，于是 value function 可以直接读成「这条 episode 还剩多少，取负号」 [arXiv:2511.14759]。失败常数 $c$ 只被描述为「很大的负数」，它进 gap 清单 [arXiv:2511.14759]。\n定义 —— critic。 一个分布式 value model，架构与策略相同，backbone 换成更小的 670M，训练方式是在 201 个离散化 Monte-Carlo 回报的分箱上做交叉熵 [arXiv:2511.14759]：\n$$\\mathcal{L}_{V}(\\omega) \\;=\\; -\\,\\mathbb{E}\\Big[\\log p_{\\omega}\\big(\\mathrm{bin}(G_t)\\ \\big|\\ o_t,\\ \\ell\\big)\\Big]$$用分布而不用标量，是因为真实机队上的回报分布又宽又多峰，取均值会落在一个从不发生的位置上 [arXiv:2511.14759]。\n定义 —— advantage，以及它的二值化。 估计量就是 critic 的一步差分，而阈值取自 critic 自己的预测，而不是取零 [arXiv:2511.14759]：\n$$\\hat{A}_t \\;=\\; V_{\\omega}(o_{t+1}) - V_{\\omega}(o_t), \\qquad z_t \\;=\\; \\mathbf{1}\\{\\hat{A}_t \u003e \\varepsilon_{\\ell}\\}, \\qquad \\varepsilon_{\\ell} = \\text{任务 } \\ell \\text{ 的第 30 百分位}$$然后是那个让整件事成立的动作。 它不去朝高 advantage 更新策略，而是把 $z_t$ 渲染成纯文本——Advantage: positive——插在语言输入之后、动作之前，于是只有动作的对数似然被影响 [arXiv:2511.14759]。接下来就是在整个数据集上做普通的监督训练，失败样本一并算进去。强化学习被换回成了条件模仿——正是让 M1 那句「把坏数据留下」变得安全的同一个把戏，只是往上抬了一层 [arXiv:2604.15483 §V-C]。\n这个方法有三个子过程——带可选人工纠正的采集、value function 训练、advantage 条件化的策略训练——下面这个循环就是这三步依次排开 [arXiv:2511.14759 §IV-C, Alg. 1]：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 def recap(task): # 每个任务调用一次；k 索引的是轮次，不是任务 pi = pi_pretrained # 第 0 轮没有别的可以跑 D = seed_demonstrations # 作用域未披露，见下文 for k in range(K): rollouts = run(pi, task, z=\u0026#34;positive\u0026#34;, human_intervention=True) # 约 300 条轨迹 label_terminal_outcome(rollouts) # 只标成功/失败，不标更细 D += rollouts # 失败刻意留着 omega = fit_value(D_every_task) # 多任务：670M，201 个分箱，MC 回报 eps = percentile([V(o) for o in D if o.task == task], 30) # eps_ell，逐任务 for (o, o_next) in D: z[o] = \u0026#34;positive\u0026#34; if V(o_next) - V(o) \u0026gt; eps else \u0026#34;negative\u0026#34; for seg in human_interventions(D): z[seg] = \u0026#34;positive\u0026#34; # 专家介入被当作好动作 z = randomly_omit(z) # 让推理时还能用 guidance pi = finetune(pi_pretrained, D, condition=z) # 从基座重新初始化，绝不从 pi return pi # 一个属于 `task` 的 specialist，仅此而已 把 k 读成轮次，不要读成任务。 task 是入参，在整次调用里固定不变，所以一个策略永远只在它刚刚被训过的那个任务上 rollout。想改进第二个任务，那是第二次调用，而它重新从 pi_pretrained 起步——两个循环之间从不互相递交策略。它们唯一共享的是 critic，而 critic 是跨全部数据拟合的 [arXiv:2511.14759 §V-C]。于是 specialist 之间不可能互相污染，而这一点是从「重新初始化」那条规则里自然掉出来的，并不需要另外安排 [arXiv:2511.14759 §V-D]。\npi 是哪来的，以及它只保留了哪一份工作。 $k = 0$ 时没有「上一轮」，所以采集器就是预训练 checkpoint 本身——除它之外没有别的可以跑 [arXiv:2511.14759 §IV-C]。此后，每一轮的产出成为下一轮在同一个任务上的采集器，并且是以正指示符为条件去跑的——这就是你向一个条件策略索要它「好的那一半」行为的方式 [arXiv:2511.14759 §V-B]。\n现在看最后那一行没有做的事：pi 从不出现在 finetune 的右边。策略是以**「采数据的那个东西」**的身份被带到下一轮的，而绝不是以「被拿来初始化的那个东西」的身份。这就是「绝不从上一轮出发」的全部内容——它讲的是初始化，不是部署。pi 的这两种读法在循环里同时存在，而把它们分开，正是阻止轮次之间层层复利的那件事 [arXiv:2511.14759 §V-D]。\n这里有两个宽度不同的作用域，把它们混在一起是最快的误读方式。而恰恰就在这个分界上，原文不再说得那么明确，所以值得把「它说了什么」和「本文替它读出了什么」分开摆。\n原文说了，而且是逐任务的。 改进阈值 $\\varepsilon_{\\ell}$ 是 critic 对任务 $\\ell$ 所预测的那些值的第 30 百分位 [arXiv:2511.14759 §V-D]。value 按任务用最大 episode 长度归一 [arXiv:2511.14759 §V-C]。specialist 作为一个类别是存在的，并且从预训练模型微调而来，而最终的 generalist 从零训练 [arXiv:2511.14759 §IV-C]。采集预算也是按任务报的：叠衣服每轮约 300 条轨迹，装箱则是 600 次自主试验加 360 次介入试验 [arXiv:2511.14759]。\n原文说了，但是全局的。 critic 是一个跨任务的 value function，拟合在迄今为止收集到的全部数据上 [arXiv:2511.14759 §V-C]。而预训练 checkpoint 背后的那份演示语料，是横跨众多任务、多种机器人的数万小时——那是一份语料，不是某个任务的种子集 [arXiv:2511.14759 §IV-C]。\n原文没说。 specialist 微调时究竟从那份语料里取哪一片。论文给了循环，也给了逐任务的阈值，但没有给数据作用域——这正是上面第一行写成 seed_demonstrations 而不是写成某个像 API 的东西的原因。本文取的是窄的那个读法（只看这一个任务的数据），因为逐任务的预算和逐任务的阈值都指向它；而这个读法被放进 gap 清单，而不是被当成配方端上来 [arXiv:2511.14759]。\n所以，产出之所以是 specialist，靠的并不是算法内部有什么筛选步骤——那里根本没有。靠的是 D 和采集的作用域，在循环开始之前就已经定好了。critic 之所以敢做全局的，是因为它的职责是给状态打分；策略更新之所以是局部的，是因为它的职责是把这一个任务干成 [arXiv:2511.14759 §IV-C]。\nfinetune 到底是什么，以及为什么不需要 importance sampling 关于最后那一行，最吃重的一个事实是：它不是一次强化学习更新。它就是阶段二那一步监督训练——backbone 上的 FAST 交叉熵、expert 上的 flow matching，由 stop-gradient 耦合——跑在 D 上，只是 prompt 里多了一个字符串 [arXiv:2511.14759 §V-B]。目标函数是\n$$\\max_{\\theta,\\,\\phi}\\ \\ \\mathbb{E}_{(o,\\,C,\\,A,\\,z)\\sim\\mathcal{D}}\\Big[\\log \\pi_{\\theta,\\phi}\\big(A \\mid o,\\ C,\\ z\\big)\\Big]$$也就是这一部分开头那个目标，把 $z$ 追加进上下文而已。其余什么都没变：没有比率、没有 clipping、没有信赖域、没有 KL 惩罚、没有 off-policy 修正 [arXiv:2511.14759 §V-B]。\n为什么不需要 importance sampling。 重要性权重存在的意义，是要用另一个策略 $\\pi_{\\beta}$ 采出来的样本，去估计 $\\pi_{\\theta}$ 下的期望——错配才是问题，而 $w = \\pi_{\\theta}/\\pi_{\\beta}$ 是补丁。RECAP 压根没去构造那个期望。它拟合的是数据分布本来样子上的一个条件密度，而 $z$ 恰好携带了那些本来需要被修正掉的信息：对这个条件模型来说，每一条样本都是分布内的，因为标签已经说明了它来自分布的哪一块 [arXiv:2511.14759 §V-B]。一次失败并不是「被标错的成功、需要给个小权重」，它是一条被正确标注的 Advantage: negative 样本。\n为什么 importance sampling 连用都用不上。 那个比率需要 $\\pi_{\\theta}(a \\mid s)$ 的解析形式，而 flow matching 策略给不出来——正是本阶段开头那条事实 [arXiv:2604.15483 §III]。所以「不需要这个修正」和「根本没法用这个修正」，背后是同一个架构事实。这也解释了公开对比为什么落在那个位置：AWR 恰恰就是这个想法的「重加权版本」，它输给了条件化；而 PPO 在 off-policy 情形里很吃力 [arXiv:2511.14759]。\n代价是什么。 条件密度估计走不出自己数据的支撑集。策略会去模仿 D 里带正标签的那批最好的行为，但它不会凭空发明比那更好的行为。想变强，就得去采更好的数据——这正是已部署的 specialist 和人工介入存在的意义——而不是在既有数据上使更大的劲 [arXiv:2511.14759]。唯一一处把模型往数据之外推的地方在推理端：指示符在训练时被随机丢弃，于是 guidance 可以开到大于 1 [arXiv:2511.14759]。\n有两条纪律让它收敛而不是漂走。阈值取的是 critic 对该任务自身预测的百分位，所以它跟着一个在动的策略走，而不是钉在一根固定的横杆上 [arXiv:2511.14759]。以及每一轮的策略都从预训练 checkpoint 微调，绝不从上一轮的策略出发——上面算法里那行看着像笔误、其实不是的语句 [arXiv:2511.14759]。第五轮的权重跟第一轮起点相同；跨轮累积的是数据集和它的标签，不是参数。这才是可逆的安排：某一轮采砸了，把它的轨迹从混合里撤掉重训就行，而「微调之上再微调」出来的坏结果撤不回去 [arXiv:2511.14759]。\ncritic 恰好相反，而算法里那两行很容易被读成自相矛盾，直到你看出它们回答的是两个不同的问题。critic 每轮都在「迄今为止的全部数据」上重新拟合，因为 MDP 本身在动——夹爪磨损和标定漂移意味着，用第一轮机队拟出来的 value function，正在给一台已经不存在的机器人打分 [arXiv:2511.14759]。至于这次重拟是从上一轮的 critic 热启动、还是从它自己的初始化开始，没有公开 [arXiv:2511.14759]。每轮预算约 300 条轨迹 [arXiv:2511.14759]。\n这个闭环产出什么，以及最后上线的到底是哪个模型 上面那段算法自己回答不了的问题：最后一轮活下来的那个 pi，不是你交付出去的那个模型。这个闭环是逐任务跑的，它每一轮产出的是一个 specialist——只管一个难任务，从预训练 checkpoint 微调而来，并以 advantage 指示符为条件 [arXiv:2511.14759]。\n这个 specialist 恰好只有两份工作，这也正是图里那根箭头为什么绕回第一步、而不是从这里退出 [arXiv:2511.14759]：\n它回到机队上，当下一轮的采集器，好让第 $k+1$ 轮的数据比第 $k$ 轮更好 [arXiv:2511.14759]； 它跑出的 rollout 永久进入数据集，并带着当初给它打的 advantage 标签 [arXiv:2511.14759]。 真正上线的是 generalist，而且它是从零训的。 specialist 从预训练模型微调，而最终的 generalist 是在累积起来的混合数据上从零训练，并不是从任何一个 specialist 微调过来的 [arXiv:2511.14759]。这个分工可以读得很直白：specialist 是用来制造「比你的遥操作员更好的数据」的仪器，而 generalist 才是产品 [arXiv:2604.15483 §VI-A]。\n真正值得盯住的是它确实成立的那个证据。在多样化叠衣服和装箱这两项上，generalist 的吞吐超过了用 RL 训出来的 specialist——在 specialist 自己的那根轴上把它们打赢了，而它自己从没跑过一次 policy gradient [arXiv:2604.15483 Fig. 6]。\n所以，多数团队应该走的那个出口。 你的 generalist 也许根本不必跑这个闭环，而前沿的那一代也确实没跑：一个模型去跑 RL 并产出 rollout，下一个模型把这些 rollout 当作普通的带条件训练样本吸收进来——实验室把这称作一种蒸馏 [arXiv:2604.15483 §VI-A]。在划算的地方窄窄地跑 RL，然后让 M1 的飞轮把结果搬进 generalist，全程不需要任何 policy gradient 碰过它 [arXiv:2511.14759]。\n通过条件。 相对 M2，吞吐至少 2x，失败率至少减半 [arXiv:2511.14759]。参考平台：两条 6 自由度机械臂、平行夹爪、3 个相机，任务时长 5 到 15 分钟 [arXiv:2511.14759]。\n这个里程碑就是第 1 部分的第四条能力轴，也是最可能延期的那一个。它同时也是目前唯一公开的、能让机器人在你发货之后还继续变强的路线 [arXiv:2511.14759]。收回「大脑/部署」的训练那一半。\nM4 —— 把算力搬上机器 第一步：先别让机器人干等 在压缩任何东西之前，先把调度修好。服务运行时跑三条线程，谁也不等谁：高层策略吐 subtask，world model 用 1.25 秒生成一张 subgoal，而 VLA 始终拿当前最新的上下文继续执行 [arXiv:2604.15483 §VII]。subgoal 每 4 秒刷新一次，或者语义意图变化时刷新 [arXiv:2604.15483 §VII]。每执行完一个前缀就跑一次推理，去噪 5 步，耗时 38 到 127 毫秒 [arXiv:2604.15483 App. D]。\n异步才是这里承重的那个想法，而且它不要钱：1.25 秒的 world model 调用放在同步回路里是致命的，放在这套调度里则完全看不见 [arXiv:2604.15483 App. D]。\n第二步：再压缩 蒸馏加量化，压进 130 W 的功耗上限 [spec: NVIDIA Jetson AGX Thor]，成功率损失不超过 1 个百分点 [computed: this plan]。按「谁先回本」排序：先上机器人专用量化，因为 W4A8 能守住 97.6% 并把 4.27 GB 压到 1.28 GB，而通用语言模型量化只剩 76.3% [arXiv:2602.20309]。再做步数削减——单步 flow 把某个策略从 274 毫秒压到 83 毫秒，成功率还升了 [arXiv:2604.05656]。最后是编译，值 1.5 到 3.3x [repo: Isaac-GR00T hardware_recommendation.md]。别忘了那个悬崖：3.0 bit/权重时的 94.8%，到 2.0 时变成 48.0% [arXiv:2605.24011]。\n也留意前沿是怎么处理那个压不下去的部件的：world model 被放在 4 块 H100 上服务，所有大矩阵乘法量化到 8 bit，配一个改过的注意力 kernel [arXiv:2604.15483 App. D]。对于不在控制回路里的部件，放到机外是一个合理答案。\n通过条件。 单台机器人的算力成本变成 $3,499 对一块数据中心 GPU，功耗变成 40 到 130 W 对 700 W [computed: EDGE-19 against EDGE-25]。关掉大脑/部署，并兑现第 1 部分的产品结论。\nM5 —— 规模化运维 把平均无故障时间和重标定周期发出来，这是没有实验室披露过的两个数 [arXiv:2104.08212]。通过条件。 换第二种本体、换第二个场地，不重跑预训练 [arXiv:2408.11812]。关掉身体/硬件与身体/运行时。\n对 scaling 该有什么预期 按多样性做规划，别按数据量；按三个数量级的拟合做规划，别按七个 [arXiv:2405.14005]。多样性定律会饱和 [arXiv:2410.18647]。在你自己的量具复现出来之前，默认公开数字偏乐观——毕竟领域自己的审计说，只有约五分之一的对比是显著的 [arXiv:2606.04233]。\n第 6 部分 —— 三个值得押的开放问题 这一部分是推测性的，并已如此标注。fact ledger 没有覆盖到的地方，文章会直说，不会顺手写一句听起来合理的话。\n触觉原生的模型，以及第一人称数据 已经存在的：平均涨 23.2% 的力通道 [arXiv:2505.22159]，把 USB 插接从 5% 抬到 35% 的触觉 [arXiv:2507.09160]，把跨个体退化压在 13% 的可更换皮肤 [arXiv:2409.08276]，460k 张图像的触觉预训练语料 [arXiv:2410.24090]，以及迁移收益达 44 个百分点的第一人称人类数据 [arXiv:2509.19626]。\n缺的是：没有任何前沿机器人基础模型把力当作一等模态吃进去，也没有任何触觉表示能在基础模型规模上跨传感器个体迁移 [arXiv:2410.24090]。这里可押的是：第一个把第 2 部分那张图里那条虚线接上的团队，会拿到别人没有的接触密集型操作能力。\n机体与策略联合优化 这是全文最薄的一节，理由值得挑明：这项工作背后的 fact ledger 里，关于机体形态与策略联合优化的内容一条都没有，所以下面是一个问题，不是一个论断 [arXiv:2604.15483]。\n不过动机是有根据的。共享同一份训练语料的那些平台之间，重复定位精度差了大约 10x [computed: 1 mm against 0.1 mm]。没有实验室发表过在摩擦、负载或刚度上的扫描 [arXiv:2604.15483]。跨台制造差异被点过名，从没被量化 [arXiv:2506.18123]。这些都指向同一件事：机体是一个自由变量，而没有人拿真正重要的那个目标——策略成功率——去优化它。把形态放进优化回路，在仿真里和策略一起演化，是显而易见的下一步；诚实的说法是，这个规模上还没有公开工作这么做。\n持续学习与 test-time training 公开最接近的闭环，是在自主数据和介入数据上训 value model，报告吞吐至少 2x、失败率至少减半，并且连续服务了 13 小时 [arXiv:2511.14759]。公开最接近的端侧适配，是用 50 到 100 条演示做微调 [arXiv:2503.20020]。人在回路的强化学习在 12 个真机任务上做到 12 个全部 100%，每个任务 1 到 2.5 小时，起步只要 20 到 30 条种子演示 [arXiv:2410.21845]。\n没人发表的是：对机械磨损的适应，以及平均无故障时间 [arXiv:2104.08212]。这一条把话题接回第 1 部分的第四条轴。一个察觉不到自己夹爪正在退化的模型，谈不上「从经验中进化」——它只是一张快照，加上不错的宣传。\nGap 清单 实验室外没人知道的事，集中列在一处。每一条都是一个贡献机会，留给有条件去测它的人。\n缺口 状态 预训练数据总量、各来源混合权重、优化器与总算力 未披露 [arXiv:2604.15483] 任何前沿模型背后到底有多少台机器人 未披露 [arXiv:2604.15483] 单条演示的成本，所有实验室 未披露 [arXiv:2506.18123] 平均无故障时间，所有规模化部署的研究 未披露 [arXiv:2104.08212] 跨台制造差异 点过名，未量化 [arXiv:2506.18123] 光子到力矩的延迟，任何平台 未披露 [repo: openpi websocket_policy_server.py] 摩擦、负载、刚度上的泛化扫描 无实验室发表 [arXiv:2604.15483] 交叉熵损失与 flow matching 损失之间的权重 未披露 [arXiv:2604.15483 §III] RL specialist 微调时到底看语料的哪一片 未披露 [arXiv:2511.14759] 商用人形机器人的板载算力厂商、功耗与算力 未披露 [blog: Figure Helix] 这些推导把我们带到哪里 泛化是真的，第 0 部分那第一个数字就是认真对待这个领域的理由。脆弱是机械层面的，第 0 部分那第二个数字就是不要轻信 demo 的理由。夹在两者之间的，是一台只跑通过一次的机器——为语言跑通的，靠三根支柱；而机器人只占住其中一根，还多背一条语言从未面对的约束。\n这不构成停手的理由，它构成按特定顺序动手的理由：先量具，再数据引擎，再策略，再让它自我改进的闭环，最后是把它压进机器里的压缩。五个卡点里有四个属于测量、机构和数据引擎，这意味着大部分工作并不是建模工作——也意味着，能把这些问题关掉的人里，多数人目前并不认为自己是机器学习研究者。\n参考文献 [arXiv:2001.08361] Scaling Laws for Neural Language Models [arXiv:2108.07258] On the Opportunities and Risks of Foundation Models [arXiv:2203.15556] Training Compute-Optimal Large Language Models [arXiv:2204.02311] PaLM: Scaling Language Modeling with Pathways [arXiv:2406.17557] The FineWeb Datasets [arXiv:2604.15483] π0.7: a generalist robot policy [arXiv:2504.16054] π0.5: open-world generalization [arXiv:2410.24164] π0: a vision-language-action flow model [arXiv:2511.14759] RECAP: self-improvement from autonomous experience [arXiv:2506.07339] Real-Time Chunking [arXiv:2310.08864] Open X-Embodiment [arXiv:2307.15818] RT-2: vision-language-action models [arXiv:2212.06817] RT-1: robotics transformer [arXiv:2510.03342] Gemini Robotics 1.5 [arXiv:2503.20020] Gemini Robotics On-Device [arXiv:2503.14734] GR00T N1 [arXiv:2406.09246] OpenVLA [arXiv:2502.19645] OpenVLA-OFT [arXiv:2501.09747] FAST action tokenization [arXiv:2304.13705] ALOHA and ACT [arXiv:2401.02117] Mobile ALOHA [arXiv:2309.13037] GELLO [arXiv:2503.03081] AirExo-2 [arXiv:2402.10329] Universal Manipulation Interface [arXiv:2403.12945] DROID [arXiv:2503.06669] AgiBot World [arXiv:2410.18647] Data scaling laws in imitation learning [arXiv:2405.14005] Scaling laws in robot learning, a meta-analysis [arXiv:2408.14037] Re-Mix: data mixture optimization [arXiv:2506.19121] CUPID: data curation [arXiv:2405.12213] Octo [arXiv:2409.20537] Heterogeneous Pre-trained Transformers [arXiv:2408.11812] CrossFormer [arXiv:2410.24221] EgoMimic [arXiv:2509.19626] EgoBridge [arXiv:2110.07058] Ego4D [arXiv:2406.02523] RoboCasa [arXiv:2310.17596] MimicGen [arXiv:2505.12705] DreamGen [arXiv:2606.04233] Statistical rigour in robot learning benchmarks [arXiv:2510.13626] Perturbation sensitivity of VLA policies [arXiv:2510.03827] LIBERO-PRO [arXiv:2510.17950] RoboChallenge [arXiv:2405.05941] SimplerEnv [arXiv:2506.18123] RoboArena [arXiv:2603.13616] N-SCORE [arXiv:2607.01060] RoboWorld evaluation [arXiv:2602.20309] QuantVLA [arXiv:2605.24011] ActQuant [arXiv:2604.05656] SnapFlow [arXiv:2602.18397] VLA inference on edge accelerators [arXiv:2409.03403] RoVi-Aug [arXiv:2505.22159] ForceVLA [arXiv:2507.09160] Tactile-VLA [arXiv:2409.08276] AnySkin [arXiv:2410.24090] Sparsh [arXiv:2410.21845] HIL-SERL [arXiv:2410.11157] RPCBF safety filters [arXiv:2104.08212] Deep RL at Scale [arXiv:2604.18000] Shortcut learning in VLA models [arXiv:2602.17659] When vision overrides language ","permalink":"https://mzf666.github.io/vla/zh/posts/how-to-build-a-robot-foundation-model/","summary":"一条第一性原理的推导链：机器人基础模型是什么、由什么组成、为什么大语言模型那套机器搬不过来、这个搬不过来在每个子系统里各要付多少代价，以及在这种前提下应该按什么顺序去造。","title":"如何构建机器人基础模型 —— 可能的路线与挑战"},{"content":" 这是长文版的浓缩编排——一屏一页，每页下面配一两句解说。打开全屏演示 →（方向键，或直接滚动）。\n这条链只有一个方向，每一步都依赖前一步。结论摆在第一屏，方便后面被逐条反驳 [arXiv:2604.15483]。\n一台从没见过叠衣服数据的双臂 UR5e，把衬衫叠到了 85.6% 进度、80% 成功率；十位各约 375 小时经验的专家遥操作员，第一次上手拿到 90.9% 和 80.6% [arXiv:2604.15483 §IX]。而同一类策略，相机挪 10 厘米、转 20 度，就从 100% 掉到 0% [arXiv:2409.03403]。\n第 1 部分 —— 它是什么 任务泛化在 14 个场景、每场景 3 到 6 条开放式指令、环境全是没见过的房间上被证明 [arXiv:2604.15483 §IX-B]。本体泛化在 22 种本体、60 个数据集上被证明，但有天花板 [arXiv:2310.08864]。持续进化只有一个公开闭环 [arXiv:2511.14759]，关于机械磨损则一条都没有 [arXiv:2104.08212]。\n把网络预训练从同一套架构里抽掉，emergent skills 掉到 0%、泛化掉到 1%；加回去分别是 48.7% 和 47% [arXiv:2310.08864 Table II]。语义是继承来的，这也是这一切唯一能站在互联网已付账单上起步的理由 [arXiv:2307.15818]。\nH100 是 700 W [spec: NVIDIA H100 SXM]，边缘模组是 40 到 130 W [spec: NVIDIA Jetson AGX Thor]，而一台人形机器人整机平均约 210 W [spec: 1X NEO]。模组要吃掉整机功率预算的 19% 到 62% [computed: 40 to 130 W against 210 W]；而今天的模型还装不进去——H100 上 35.9 Hz，Thor 上 10.7 Hz [repo: Isaac-GR00T hardware_recommendation.md]。\n第 2 部分 —— 它由什么组成 输入是最多 4 路 448×448 图像、6 帧历史、一个关节构型和一句话；输出是 50 个未来关节目标，其中 15 或 25 步会被执行，然后模型被重新调用 [arXiv:2604.15483 §IV]。这是大脑的边界，不是整台机器的边界——模型是 setpoint 生成器，它给伺服环喂数，不接管伺服环 [arXiv:2604.15483 §VII]。\n大脑以 50 Hz 写 setpoint [arXiv:2604.15483 §VII]，而它下面那条机械臂接受 1 kHz 的指令 [spec: Franka Research 3]。共享同一份语料的平台之间，重复定位精度从 0.1 毫米跨到 1 毫米 [computed: 1 mm against 0.1 mm]。力和触觉身体测得到，前沿模型一个都没接 [arXiv:2505.22159]。\n没人会把 5B 的 transformer 塞进伺服环，所以每个认真的系统都切成两半、跑在不同频率上 [arXiv:2503.14734]。各家真正的分歧是这道缝开多宽——一个隐向量 [blog: Figure Helix]、一串中间特征 [arXiv:2503.14734]，或者一句费带宽但换来可调试性的人可读子任务描述 [arXiv:2604.15483 §VI]。\n第 3 部分 —— 那台跑通了的机器 loss 以幂律下降，指数是 0.095、0.076 和 0.050，拟合跨越 7 个数量级 [arXiv:2001.08361]。这种可预测性就是一件预算工具：同等算力下，70B 配 1.4T 打赢 280B 配 300B，最优约每参数 20 个 token [arXiv:2203.15556]。\n一条开源流水线把 96 个 Common Crawl 快照蒸成 15T token、44 TB，只花 1,536 GPU 小时 [arXiv:2406.17557]，折合约 $10k 算力 [computed: 1,536 GPU-hours at commodity rates]。两个最大的第一人称视频语料加起来 4,956 小时 [computed: 3,670 h plus 1,286 h]；而机器人数据是造出来的——约 10,000 小时遥操作，约合 $500k 人力 [computed: 10,000 h at $50 per hour]。\n由规格书推出的 ridge point：H100 约 1,181 FLOP/byte，Thor 约 3,791，Orin 约 1,343 [computed: 3,958 TFLOPS over 3.35 TB/s]。Thor 的往右挪了约 3.2x [computed: 3,791 over 1,181]，实测后果是同一个 action expert 在那里要 26.20 毫秒，在消费级 GPU 上只要 7.25 毫秒 [arXiv:2602.18397]。\n同一个模型、同一套运行时、三块加速器：吞吐跟着 GB/s 那一行走，不跟着 TOPS 那一行走 [repo: Isaac-GR00T hardware_recommendation.md]。\n机器人满足计算这根支柱。数据支柱和基础设施支柱，它没有以那种曾经产生威力的形态满足；此外还多背一条文本从未面对的约束 [arXiv:2604.15483 §VII]。\n动作空间要补零到 18 维，频率从 3 Hz 跨到 50 Hz [arXiv:2410.24164]。50 步 diffusion 换来 10.1 Hz 和 95.4%，连续回归换来 109.7 Hz 和 95.3% [arXiv:2502.19645]。实时 chunking 扛得住 100–200 毫秒，过了 300 毫秒就崩 [arXiv:2506.07339]。五个里，只有一个是建模问题。\n第 4 部分 —— 各要付多少代价 把 50% 和 60% 的策略分开需要 387 次试验 [computed: two-proportion test, alpha 0.05, 80% power]，而领域内实际跑 10 到 60 次 [arXiv:2506.18123]。LIBERO 上只有 19.8% 的论断统计显著 [arXiv:2606.04233]；位置一扰动，拿 98% 和 92% 的模型直接坍到 0.0% [arXiv:2510.03827]。\n唯一被复现过的定律跑的是多样性：32 个「环境×物体」组合、每个 50 条演示，在没见过的环境里拿到 85% 到 92.5%，4 个人一下午采完 [arXiv:2410.18647]。\n手持工位单价 $371，每小时产 111 条演示，对面遥操作是 35 条 [arXiv:2402.10329]。1 小时人类视频约等于 1,400 条演示，而 1 小时机器人时间只等于 135 条 [arXiv:2410.24221]。\nbackbone 固定住，diffusion 多花的算力换来约 0.1 个百分点，代价是约 11x 的吞吐 [computed: 109.7 Hz against 10.1 Hz]。\n某个方法在 3.0 bit/权重时守住 94.8%，掉到 2.0 时变成 48.0% [arXiv:2605.24011]。机器人专用 W4A8 拿到 97.6%，把 4.27 GB 压到 1.28 GB；通用量化只剩 76.3% [arXiv:2602.20309]。\n模型自己那段是被测过的三分之一——编码器 14 毫秒、prefix 32 毫秒、flow 步 27 毫秒 [arXiv:2410.24164]。它前后的所有环节，整个领域都没测 [repo: openpi websocket_policy_server.py]。\n第 5 部分 —— 施工顺序 在这之前全部是诊断。前面每一个钩子都由恰好一个里程碑收回，而每个里程碑都带一个用数字表述的通过条件，所以每个都可能失败 [arXiv:2506.18123]。\n语言模型那三个阶段，形式上都能搬过来。真正变形的是第三个：没有便宜的 verifier，奖励只能从机器人自己的经验里来 [arXiv:2511.14759]。\n把每条 episode 都当作带条件的样本来录：speed 按 500 步分箱、quality 是人打的 1 到 5 分、mistake 是逐段布尔、control mode [arXiv:2604.15483 §V-C]。到了运行时这些就是旋钮——把 quality 提到 5、mistake 设成 false，策略就去模仿你数据里好的那一半 [arXiv:2604.15483 §VII]。\n八个来源汇成一份带标注的混合，而已部署策略跑出的 rollout 就是明天的训练数据 [arXiv:2604.15483 §VI-A]。失败和带失误的成功被刻意留下；以泛化为目的的评测中产生的自主数据则被排除，否则飞轮就在训练测试集 [arXiv:2604.15483 §VI-A]。\n控制通路上约 5B：400M 视觉编码器加 4B backbone 装继承来的语义，860M flow expert 装运动技能，另有一个 14B world model 跑在回路旁边而不是里面 [arXiv:2604.15483 §IV]。\n最该抄的是那道防火墙：action expert 的梯度不回流进 backbone [arXiv:2604.15483 §III]。FAST token 只在训练期存在，且从不与 flow action 互相 attend [arXiv:2604.15483 App. B]。\n一步训练，两个损失，两组参数。FAST token 上的交叉熵训 backbone；flow matching 训 expert，回归那个把噪声送往动作的速度 [arXiv:2410.24164]。stop_gradient 是唯一的耦合，而两个损失的相对权重是唯一没人公开过的那个数 [arXiv:2604.15483 §III]。\n历史以 p = 0.3 丢弃，元数据 15% 与 5%，25% 的 batch 带 subgoal [arXiv:2604.15483 §V-E]。这些不是通常意义的正则化——它们在阻止策略绑死到固定相机装机 [arXiv:2409.03403]。\n压缩之前先把调度修好：三条线程谁也不等谁，所以 1.25 秒的 world model 调用从「致命」变成「看不见」 [arXiv:2604.15483 §VII]。\n没有便宜的 verifier，也没有可解析的似然，所以 PPO 和 AWR 都输给了「条件化」 [arXiv:2511.14759]。拟合一个 critic，把它的一步差分对着该任务的第 30 百分位二值化，把结果以文本写进 prompt，然后在全部数据上做监督训练——失败样本也算进去 [arXiv:2511.14759]。\n一个 670M 的分布式 value model，201 个分箱，稀疏奖励，以及一个以文本形式插在语言输入之后的二值 advantage 指示符 [arXiv:2511.14759]。每轮的策略都从预训练 checkpoint 微调，绝不从上一轮的策略，否则会漂；critic 则相反，每轮都在全部数据上重拟 [arXiv:2511.14759]。\nM4 是产品结论被兑现的地方：单台算力成本降到 $3,499、功耗 40 到 130 W，对面是一块 700 W 的数据中心 GPU [computed: EDGE-19 against EDGE-25]。\n第 6 部分 —— 三个值得押的开放问题 推测性内容，已如此标注。 力通道平均涨 23.2%，而前沿模型一个都没接 [arXiv:2505.22159]。机体与策略联合优化在这个规模上没有公开工作，所以只作为问题提出 [arXiv:2604.15483]。唯一的自我改进闭环报告吞吐 2x、失败率减半 [arXiv:2511.14759]。\n五个卡点里有四个属于测量、机构和数据引擎——这意味着，能把它们关掉的人里，多数人目前并不认为自己是机器学习研究者 [arXiv:2506.18123]。\n长文版承载完整论证、gap 清单和参考文献 [arXiv:2604.15483]。\n","permalink":"https://mzf666.github.io/vla/zh/posts/robot-foundation-model-the-talk/","summary":"演讲版：同一套论证，一屏一页，十五分钟读完，而不是五十分钟。","title":"如何构建机器人基础模型 —— 可能的路线与挑战（TLDR）"},{"content":"本文要论证的一个判断 物理 AI 的通用性来自数据多样性。但多样的数据天然质量参差，朴素地往上堆只会把模型训成平庸。真正的突破口不是过滤，而是给模型讲清楚：这条数据是怎么来的。丰富的上下文能让「数据量」从包袱变成红利，也能让训出来的模型变成一个你可以指挥的东西。\n支撑这个判断的是一条反直觉的规模化曲线：加上 episode 元数据之后，哪怕数据集的平均质量在走低，模型性能照样持续上涨；去掉元数据，性能反而随着低质量数据的涌入而下滑 [π0.7 §IX-E, Fig. 18]。这还引出一个很漂亮的推论——π0.7 靠元数据条件化，把 π*0.6 的强化学习轨迹「蒸馏」了进来，自己一轮 RL 都没跑 [π0.7 §VI-A]。\n怎么读这篇文章 本文假设你熟悉 LLM 的预训练与后训练、扩散与流匹配、大规模 Transformer 工程，同时假设你对机器人一无所知。机器人领域的前置知识全部在正文里讲清，集中放在可跳过的预备知识框里。组织线索是 π0.7 论文本身 [π0.7 §I]。\n三条贯穿全文的约定，它们是承重的，不是装饰 [π0.7 §V-E]：\n每部分都先摆输入输出。 输入 → 输出，论文给了具体形状和单位的地方就写具体值。能说清一个模块「吃什么、吐什么」，就能在不读内部实现的前提下推理它——也就能替换它 [π0.7 §IV]。\n每个论断都标类型。 已公开：论文白纸黑字写了。推断：我从公开事实推出来的，会明说。未公开：外界不可能知道的，一律收进第 10 部分的缺口清单，绝不含混 [π0.7 §VI-A]。\n每个数字都带出处。 本文的数值由脚本机械校验：正文里出现一个不在事实台账里的数字，或哪一段没挂引用，构建直接挂掉。这是我知道的唯一能让这么长一篇文章保持诚实的办法 [π0.7 §V-E]。\n最后界定范围。「复现 π0.7」在这里的意思是把整条规模化路径、设计哲学，以及数据采集、组织、训练、服务的所有公开细节搞透，透到能把这套系统当工程计划重建的程度；不是移植代码。π0.7 既没放权重，也没放代码 [π0.7 ref. 42]。\n第 0 部分 —— 目标是什么，凭什么说它难 本部分的输入输出： 输入——你的 LLM 直觉；输出——「通用物理 AI」的精确定义，以及为什么你已经掌握的那套方法论到这里行不通。\n「通用」到底在说什么 「通用」大概是这个领域被滥用得最厉害的词，所以先把定义钉死：在 π0.7 看来，通才就是在它实际测量的四个维度上都交得出成绩单的模型 [π0.7 §I]。\n开箱即用的灵巧性——不做任何任务专属后训练，直接上手完成多阶段高难操作，同一份权重通吃 [π0.7 §I]。指令泛化——在训练里从没出现过的环境中执行开放式语言指令，具体协议是 14 个场景、每个场景 3–6 条开放式指令，跑在 4 个没见过的厨房和 2 个没见过的卧室里 [π0.7 §IX-B, Fig. 9]。跨本体迁移——把技能迁移到从没演示过这个技能的机器人身体上，比如在双臂 UR5e 上叠衬衫，而叠衣数据几乎全采自另一台更轻的机器人 [π0.7 §IX-C]。组合泛化——把已知技能重新排列组合出训练中从未配对过的「任务 × 场景」，这项成绩是 60–80%，分布内则超过 90% [π0.7 §X]。\n注意这四条的共性：每一条都得真机上场、人在旁边看结果。没有任何离线基准能替代一次真实试验 [π0.7 §IX-E]。\nLLM 的配方为什么搬不过来 文本上怎么造通才你已经很清楚了：爬巨量语料，做 next-token 预测预训练，接指令后训练，离线评测，快速迭代。一旦输出变成物理机器发出的关节指令，这个闭环几乎每一步都会断 [π0.7 §I]。\n图里列的这些不对称是我对论文所解决问题的概括，不是原文引述，请当作推断——只有一条例外。数据规模那行是公开的：π 系列的预训练语料被描述为「跨越大量任务和多种机器人的数万小时演示数据」[π*0.6 §IV-C]。在机器人领域这已经是巨量了，放到文本语料面前只能算个零头。\n后果是连锁的。动作数据得在物理世界里一帧一帧地录，所以瓶颈是数据，不是算力。每台机器人的臂展、质量、惯量、夹爪几何都不一样，语料远没有文本那样独立同分布——论文明确说 UR5e 显著更长、形态不同、重得多、关节惯量更大，得用完全不同的操作策略和桌面摆位 [π0.7 §VIII, App. F]。评测又必须靠真机试验，LLM 研究靠的那个快速迭代闭环在这里根本跑不起来；论文自己也坦承，在这个数据规模下「实际上很难明确判定哪些任务真正算是\u0026rsquo;见过\u0026rsquo;或\u0026rsquo;没见过\u0026rsquo;」[π0.7 §IX-E]。\n预备知识 —— 遥操作。 人类操作员开着机器人干活，系统按控制频率同步录下相机画面和关节位置，这段录像就是一条「演示」或一个 episode。今天几乎所有高质量的机器人动作数据都是这么来的——所以机器人数据是有工资成本的。π0.7 的人类对照实验能让你感受到技能门槛有多高：被招来的 10 名操作员处于经验分布的前 2%，各平台遥操作时长平均约 375 小时 [π0.7 App. F, Fig. 21]。\n采不到的数据，造不出的仿真 数据这么贵，第一反应当然是跑仿真。但仿真的效果比圈外人想的差得多，理解「为什么差」几乎能解释 π0.7 的全部设计取向——这套系统完全建立在真实机器人数据、人类视频和网络数据之上，没用过一帧仿真 [π0.7 §VI-A]。\n家里真正要紧的任务，偏偏全是接触密集、变形物体相关的：叠衣服、做三明治、削菜皮、舀咖啡豆、擦洒出来的水。π0.7 的任务清单几乎清一色这类——从洗衣篮里取出纽扣衬衫叠好、把 T 恤从里向外翻正、涂花生酱再斜切三明治、用挂绳固定的刀切西葫芦 [π0.7 App. G]。布料、食物、液体都不存在可处理的刚体状态；一个能把衬衫动力学模拟到足以指导抓取点选择的仿真器，本身就是个研究课题，不是个拿来就能用的工具。\n第二道坎是家电和环境的长尾。π0.7 的任务里有打开空气炸锅、用烤箱烤贝果、操作意式咖啡机、穿过一扇会自动弹回的壁橱门 [π0.7 App. G]。每样东西都有它独有的卡扣和开合方式。给它们造高保真模型不是规模问题，是个没有边界的建模问题，何况家家户户的东西还都不一样。\n整个领域就这样被推向了真实数据。这段是我对「π0.7 为什么把钱花在这些地方」的推断，但论文的投入方向强烈暗示了它：机队、遥操作员、标注、数据引擎 [π0.7 §VI-A, §VIII]。\n核心困境 现在来看驱动整篇论文的那个陷阱 [π0.7 §I]。\n通用性要求多样性。想当通才，你就得有很多任务、很多环境、很多机器人本体、同一件事的很多种做法。但大规模采来的多样数据，质量必然参差不齐。有的 episode 快，有的慢；有的干净利落，有的中间犯了错又找回来；有的出自资深操作员，有的是模型自己评测时失败的回放 [π0.7 §VI-A]。\n常规做法是过滤：好的留下，烂的扔掉。这是谨慎的从业者会做的事，也正是 π0.7 反对的做法。过滤把你花钱买来的大部分数据扔进了垃圾桶，而被扔掉的那些 episode 里恰恰藏着机器人最需要的信息——事情是怎么搞砸的，搞砸了怎么补救。但全留也不行：在并集上训练，模型学到的是平均行为——平庸、犹豫、容易出错 [π0.7 §I, §IX-E]。\nπ0.7 选了第三条路：全都留下，但告诉模型它在看的是什么。给每条 episode 打上标签：跑得多快、质量多高、中间有没有犯错。测试时，直接向模型索要你想要的那种行为。一条又慢又有失误的 episode 不再是污染源，而是一个标注好了的「慢+有失误」样本，它的存在反而让模型对「快、好、不犯错」的理解更加精准 [π0.7 §V-C, §VII]。\n这套路你可能觉得眼熟——对，就是回报条件化/优势条件化的行为克隆，只不过把标量推广成了多模态上下文 [π*0.6 §V-B]。第 3 部分会展开讲这层关系。\n第 1 部分 —— 预备：VLA 到底是什么 本部分的输入输出： 输入——你的扩散与 Transformer 知识；输出——把「视觉-语言-动作模型」理解成一个契约明确的黑盒，外加后文需要的四个机器人概念。\n契约 视觉-语言-动作模型（VLA）说白了就是一个策略：吃进观测和上下文，吐出一段未来动作 [π0.7 §III]。\n形式化地写，观测是 $o_t = [I_t^1, \\ldots, I_t^n, q_t]$——$n$ 路相机图像加上关节构型；模型输出一个 $H$ 步的动作块 $a_{t:t+H}$，实际只执行其中较短的 $\\tilde{H} \u003c H$ 步，然后重新观测、重新规划 [π0.7 §III]。训练目标是\n$$\\max_{\\theta}\\; \\mathbb{E}_{\\mathcal{D}}\\left[\\, \\log \\pi_{\\theta}\\!\\left( a_{t:t+H} \\mid o_{t-T:t},\\, C_t \\right) \\right]$$其中 $C_t$ 是上下文，$o_{t-T:t}$ 是一段历史观测窗口 [π0.7 §III, Eq. 1]。给较真似然的读者一个诚实提醒：流匹配动作专家优化的是这个量的一个近似下界，而非解析形式的似然本身 [π0.7 §III]。\n落到 π0.7 上，这份契约有非常具体的数字。输入是最多 4 路相机——前视、两个腕部、可选后视——每路最多 6 帧历史，采样步长 1 秒，全部缩放到 $448\\times448$；加上最多 3 张子目标图像（省略后视）[π0.7 §VI-B]。输出是恰好 50 个动作 token，一个 50 步的动作块 [π0.7 §VI-B]。运行时只执行其中 15 或 25 步就重新规划 [π0.7 §VII]。\n这份契约里最值得玩味的其实是缺席的东西。输入里没有动作历史、没有奖励信号、没有地图，除了本体感知之外也没有任何显式状态估计 [π0.7 §III]。策略对自身输出几乎是马尔可夫的：闭环是经由物理世界闭合的，不是经由上下文闭合的。就这一个设计选择，让 VLA 的误差累积行为跟自回归世界模型截然不同——第 11 部分会回到这个对比。\n预备知识 —— 控制频率。 机器人底层控制器要求以固定频率收到新的目标值。π0.7 的平台跑在 50 Hz，只有 UR5e 是 20 Hz [π0.7 §VIII]。50 Hz 下，一个 50 步的动作块刚好一秒钟。所以延迟在这里是一等约束而非锦上添花：推理一旦比执行窗口还慢，机器人就会在动作中途卡死。\n预备知识 —— 动作分块（action chunking）。 模型不是每次前向只出一个动作，而是一口气联合预测 $H$ 步，机器人先执行其中前 $\\tilde{H}$ 步。联合预测能避免逐步独立采样带来的抖动和不连贯，同时把推理开销摊到很多个控制周期上。$H$ 是建模层面的选择，$\\tilde{H}$ 是控制层面的选择，两者在平滑性和反应性之间做权衡 [π0.7 §VII]。\n预备知识 —— 本体（embodiment）。 「本体」就是一台具体的机器人身体：运动学结构、自由度、夹爪形式、相机安装位置。π0.7 覆盖了双臂移动操作机（两条 6 自由度手臂 + 升降轴 + 全向底盘）、静态双臂平台、配 Robotiq 夹爪的双臂 UR5e，以及单臂系统 [π0.7 §VIII, Fig. 4]。各平台的动作空间并不相同，「跨本体迁移」之所以是个真问题而不只是换个标签，原因就在这里。\n动作怎么表示 把连续的机器人动作变成 Transformer 能产出的东西，主流有两条路。π0.7 两条同时走——用在不同参数组上，配不同的目标函数 [π0.7 §III]。\n流匹配把动作块当作连续向量，学一个从噪声到数据的速度场，跟你在生成模型里熟悉的一模一样 [π0.7 ref. 102]。推理时对这个场做少数几步积分，π0.7 用 5 步 [π0.7 §VII]。这种表示精度高——而精度恰好是执行机构的硬需求。\n离散化 token 则用基于 DCT 的方案压缩动作块，变成语言模型词表里的 token，用普通的 next-token 交叉熵训练 [π0-FAST]。这种表示是有损的，但好处是动作目标能用主干的母语来说话。\n为什么两条路同时走？因为这正是知识隔离要解的问题 [π0.7 §III]。\n知识隔离：一道梯度防火墙 先说失败模式——也是知识隔离被提出来要修的毛病 [KI, π0.7 §III]。你拿一个对世界知识丰富的预训练视觉-语言模型，接上一个连续动作头，在机器人数据上训练。动作头的高方差回归梯度一路回传，把你当初正是为之而来的网络知识给冲垮了。最后得到一个会动、但已经忘了滤锅长什么样的模型。\n知识隔离用两把锁解决它，而从业者经常把这两把锁搞混 [π0.7 §III]。\n第一把是目标函数：主干用离散 FAST token 的交叉熵来监督——稳定、条件良好、跟预训练时同类型的分类损失；动作专家另起炉灶，用流匹配训练 [π0.7 §III]。\n第二把是梯度：动作专家能注意主干的所有激活，但梯度不准流回主干 [π0.7 §III]。专家看得到一切，但改不了任何东西。 π0.6 用的就是这个方案——连续动作和 FAST 离散 token 端到端训练，同时一个 stop-gradient 把流匹配专家的影响挡在主干门外 [π*0.6 §V-A]。\n还有第三把锁，大多数解读文章都漏了：注意力掩码 [π0.7 App. B, Fig. 19]。\nFAST token 只在训练时存在，而且 FAST token 和流动作之间互不注意 [π0.7 App. B, Fig. 19]。这不是优化细节，是正确性要求。FAST token 本身就是量化后的标准答案，如果动作专家能看到它们，它就会学着从上下文里直接解码答案，而不是从观测里推断——等到部署时这些 token 不存在了，模型直接崩盘。\n所以分工是这样的：掩码管每条分支看得见什么；stop-gradient 管每个目标函数改得了什么。知识隔离之所以成立，靠的是这两把锁配合，单拎哪个都不够 [π0.7 §III]。\n还有个顺手拿到的好处，第 8 部分会用到：动作 token 注意前缀但前缀不注意动作 token，所以前缀只需要编码一次，全部 5 个去噪步之间复用缓存 [π0.7 §VII]。一个掩码设计，正确性和推理速度一箭双雕。\n延迟为什么是头等大事 在 LLM 领域，延迟是体验问题；在 VLA 领域，延迟是正确性问题——物理世界不等人 [π0.7 §VI-B]。\nπ0.7 的处理方式不是消灭延迟，而是把策略训得能预期延迟的存在。训练时用实时分块（RTC）模拟 0–12 个时间步的延迟，对应 50 Hz 下 240 ms 的最大推理延迟 [π0.7 §VI-B]。策略从一开始就被训练成能吸收它将来会遇到的那种延迟。实测延迟远在预算之内：最小配置下 3 路相机、5 个去噪步时 38 ms，开了 MEM 视觉编码器并把子目标图像放进上下文后，最坏情况升到 127 ms，全跑在单张 NVIDIA H100 上 [π0.7 App. D]。\n记住这个对比。240 ms 的预算 vs 38 ms 的地板——中间那段余量就是系统里所有可选特性的购买力：历史帧、子目标图像、引导；而 127 ms 的最坏情况说明这些可选项到底吃掉了多少余量 [π0.7 §VI-B, App. D]。\n第 1 部分超参数表 参数 取值 出处 相机路数 最多 4（前视、两个腕部、可选后视） [π0.7 §VI-B] 每路历史帧 最多 6 帧，步长 1 秒 [π0.7 §VI-B] 子目标图像 最多 3 张（省略后视） [π0.7 §VI-B] 图像分辨率 448×448 [π0.7 §VI-B] 动作块长度 $H$ 50 步 [π0.7 §VI-B] 执行步长 $\\tilde{H}$ 15 或 25 [π0.7 §VII] 去噪步数 5 [π0.7 §VII] 控制频率 50 Hz；UR5e 为 20 Hz [π0.7 §VIII] RTC 模拟延迟 0–12 步 = 50 Hz 下 240 ms [π0.7 §VI-B] 推理延迟 最小 38 ms，最坏 127 ms，单张 H100 [π0.7 App. D] 第 2 部分 —— 规模化路径：从 π0 到 π0.7 本部分的输入输出： 输入——第 1 部分的 VLA 契约；输出——搞清楚每一代加了什么能力、付出了什么代价，以及 π0.7 为什么必须把它们全收进来。\nπ0.7 不是一个灵光一现的想法，它是一条谱系里的第九项。这条谱系有个显著特征：每一代都在保留前一代全部能力的前提下再加一项新能力；而 π0.7 自身的贡献，就是让单个模型同时握住所有这些能力的那套条件化方案 [π0.7 §I, §VI-A]。\n各代加了什么 π0 立下了范式：在预训练视觉-语言模型上接一个流匹配动作专家，把网络级的视觉知识变成连续灵巧控制 [π0.7 ref. 10]。之后所有工作都在打磨这个架构，没人换过它。\nπ0-FAST 引入了基于 DCT 的动作 token 化，让高频动作数据上的自回归训练跑得通 [π0.7 ref. 104]。它留给 π0.7 的遗产不在推理路径上，而在训练路径上：知识隔离里用来监督主干的，就是 FAST token [π0.7 §III]。\nHi Robot 加了层级——高层策略产出语义子任务，低层策略负责执行——这是让开放式长时程指令跟随变得可处理的关键 [π0.7 bibliography]。π0.7 保留了这个结构：高层策略与主模型同架构，把观测、任务描述和过往子任务映射为下一条子任务指令 [π0.7 §V-A, Fig. 2]。\nπ0.5 加了异构数据协同训练与显式的语义子任务预测，实现了对真正没去过的家庭的开放世界泛化 [π0.7 ref. 14]。\n知识隔离（KI） 贡献了第 1 部分分析过的那道 stop-gradient 防火墙——让 VLM 适配动作的同时不摧毁已有知识 [π0.7 ref. 103]。\n实时分块（RTC） 解决了相邻动作块之间的接缝问题，让机器人连续执行不必停下来等下一块算完 [π0.7 ref. 107]。π0.7 用的是训练期变体，跟测试期 RTC 不同，推理时零额外开销 [π0.7 ref. 108, App. D]。\nMEM 贡献了记忆，π0.7 几乎整套照搬——值得单开一节 [π0.7 ref. 37]。\nπ*0.6 贡献了「从真实部署经验中做强化学习」，是本文论点最重要的祖先——同样单开一节 [π0.7 ref. 50]。\nπ*0.6 到底干了什么 把 π*0.6 简化成「他们跑了 RL」，你就会错过 π0.7 真正依赖的那个机制 [π*0.6 §IV]。\n方法叫 RECAP——RL with Experience and Corrections via Advantage-conditioned Policies [π*0.6 abstract, §IV]。拆开看有三步：先跑策略采数据、标注 episode 结果，中间可以插入人类的纠正性干预；然后拿迄今收集的全部数据训一个价值函数；最后用价值函数导出的最优性指示符去条件化地训练策略 [π*0.6 §IV-C, Alg. 1]。\n价值函数是一个多任务的分布式评论家，跟策略同架构但主干更小，用 670M 的 VLM，同样从 Gemma 3 初始化 [π*0.6 §V-C, Fig. 3]。它把回报离散成 $B = 201$ 个分箱，用蒙特卡洛回报上的交叉熵训练 [π*0.6 §IV-A]。奖励刻意设计得极其简陋，好让它通用于所有任务：成功时终止步给 0，失败给一个大的负常数，其余时刻给 −1；再按任务最长 episode 长度归一化到 $(-1, 0)$ [π*0.6 §V-C, Eq. 5]。\n接下来是真正关键的一步。RECAP 没有用策略梯度更新——对流匹配策略来说策略梯度很别扭，因为它给不出可处理的对数似然——而是把策略条件化在一个二值优势指示符上，这个指示符以纯文本形式插入：「Advantage: positive」或「Advantage: negative」[π*0.6 §V-B]。它插在语言输入之后、动作之前，所以只影响动作部分的对数似然 [π*0.6 §V-B]。阈值 $\\varepsilon_{\\ell}$ 取该任务下评论家预测值的 30% 分位数；人类纠正一律强制为 positive，假设是专家干预总比不干预好 [π*0.6 §V-D, §IV-B]。又因为训练时会随机丢掉这个指示符，推理时自然就能上无分类器引导 [π*0.6 §V-B]。\n有两个工程细节的价值超出了论文本身。第一，每轮迭代都从预训练检查点微调，而不是在上一轮的结果上接着练，以避免多轮漂移 [π*0.6 §V-D]。第二，专家模型从预训练模型微调而来，最终的通才模型则是从头训的 [π*0.6 §IV-C]。回报是：RECAP 在最难的一批任务上吞吐量翻了一倍以上，失败率大致砍半，足以支撑连续 13 小时做意式咖啡、在陌生家庭连续 2 小时叠新衣物而不需要人工干预 [π*0.6 abstract, §I]。\n回头看优势条件化到底是什么：就是把行为克隆策略条件化在一个「这段演示有多好」的文本标签上。π0.7 拿走了这个想法，把标签从一个二值标量推广成了一整束多模态上下文 [π0.7 §V-C]。\nπ*0.6 还顺带记下了它的前任。π0.6 没有论文，只有一张模型卡 [π0.7 ref. 42]；但 π*0.6 披露了它派生自 π0.5、基础 VLM 用 Gemma 3 4B、动作专家扩到 860M、预训练集加入了更多机器人平台的数据，并以 50 Hz 输出关节角与夹爪指令 [π*0.6 §V-A]。外部团队想了解 π0.6，翻这里就够了。\nMEM 加了什么 MEM 全称 Multi-Scale Embodied Memory（多尺度具身记忆）。它之所以存在，是因为把策略直接条件化在一长串原始观测上，算力根本撑不住 [MEM §I]。朴素地把帧塞进主干，推理延迟会炸穿实时红线——在单张 H100、4 路相机的 π0.6 VLA 上，这条红线实测为 300 ms [MEM Fig. 3]。\nMEM 按时间尺度把记忆分成两层 [MEM abstract, §III-A]。长时程记忆是一段语言摘要，由高层策略维护：根据上一次的摘要加上当前观测，预测出更新后的摘要 [MEM §III-B]。训练数据来自现成的 LLM——它把过往子任务及其成败信息汇总成摘要，并被明确要求「能删的删、能压的压」[MEM §III-B]。压缩本身是关键：如果只是朴素地拼起所有历史子任务指令，效果反而差很多，因为推理时策略反复重试同一个失败子任务产生的序列，在接近最优的训练演示里压根不会出现 [MEM §IV-A, Fig. 6]。\n短时程记忆是一个改造 ViT 注意力模式得到的视频编码器：每帧内部做双向空间注意力，另外每隔 4 层加一次跨帧的因果时间注意力 [MEM §III-C, Fig. 4]。这个分解把开销从 $O(n^2 K^2)$ 降到 $O(Kn^2 + nK^2)$ [MEM §III-C]。有两个性质让它几乎白送：一是只有当前时刻的表示往后传，编码器输出的 token 数和无记忆的单帧 VLA 完全一样 [MEM §III-C]；二是相比标准单图 ViT 不引入任何新的可学习参数，记忆能力全靠注意力模式加一个固定的正弦时间位置编码 [MEM §III-C]。当 $K = 1$ 时初始化跟源 VLM 完全一致，因为该位置编码在 $t = 0$ 处取值为 $0$ [MEM §III-C]。\nMEM 预训练用 6 帧观测——5 帧历史加当前一帧——步长 1 秒，后训练还能扩到 18 帧、54 秒 [MEM §III-D]。对照 π0.7 的输入契约：每路相机最多 6 帧历史，步长 1 秒 [π0.7 §VI-B]。π0.7 连状态处理都一并继承了：用线性投影把本体感知嵌入主干维度，替代了 π0.6 的文本 token 方案 [MEM §III-D, π0.7 §VI-B]。\n提炼出的那条哲学 九代积累下来有个值得明说的模式，因为它才是对任何想做这类项目的人真正的启示：能力是累积的，不是被替换的。好几代前引入的 FAST token 化，今天仍然是主干的训练信号 [π0.7 §III]；Hi Robot 的层级结构，今天仍然是子任务接口 [π0.7 §V-A]；MEM 的编码器是一个被集成的部件，而不是一次推倒重来 [π0.7 §IV]。\n而 π0.7 自身的贡献，就是让单个通才同时握住所有这些能力的条件化方案——其中明确包含吸收 RL 专家的行为：π*0.6 在 RL 训练期间采集的数据被当作额外训练样本使用，论文称之为「一种\u0026rsquo;蒸馏\u0026rsquo;过程」[π0.7 §VI-A]。通才继承了专家的能力，而自己不需要跑 RL。\n第 3 部分 —— π0.7 的核心想法：可指挥的上下文条件化 本部分的输入输出： 输入——谱系脉络；输出——定义 π0.7 的那一次重新表述，逐字段拆开，附上每一个 dropout 比率。\n条件化在「怎么做」，而不只是「做什么」 标准指令跟随，策略只被条件化在做什么上：一条任务字符串。π0.7 的做法是把上下文 $C_t$ 从一条干巴巴的指令，撑开成一束同时描述这条 episode 是怎么来的的多模态信息 [π0.7 §III, §IV]。\n整个想法看一个字符串就全明白了 [π0.7 §V-E]：\n\u0026lt;Multi-view observation\u0026gt;\u0026lt;Multi-view subgoals\u0026gt; Task: peel vegetables. Subtask: pick up the peeler. Speed: 8000. Quality: 5. Mistake: false. Control Mode: joint.\u0026lt;Proprioception\u0026gt; 字段逐个拆 子任务指令 $\\tilde{\\ell}_t$——和总任务 $\\ell_t$ 并列的中间层语义子任务，承袭自 π0.5。推理时可以来自学到的高层策略，也可以来自旁边「教」机器人的人，或者干脆不给 [π0.7 §V-A]。\n子目标图像 $g_t$——期望的近期未来状态的多视角图像。基座视角承载环境和物体层面的目标，腕部视角承载手臂和夹爪层面的目标 [π0.7 §V-B]。这是一种视觉指令，而且实验证明，跨本体迁移上提升最大的通道恰恰就是它。\nEpisode 元数据 $m$——三个由人打的标签。总体速度是 episode 的时间步长度，按 500 步分箱，于是一条 1750–2250 步的 episode 会被标为「2000 steps」[π0.7 §V-C]。总体质量是 1 到 5 的整数，5 最好 [π0.7 §V-C]。失误是按动作片段给的布尔量，由人粗粒度标注 [π0.7 §V-C]。\n控制模式 $c \\in \\{\\mathrm{joint},\\, \\mathrm{ee}\\}$——动作空间是关节位置还是末端执行器位姿 [π0.7 §V-D]。\n元数据就是核心论点的具体载体。「Speed: 8000」描述的不是任务，而是这批动作所出自的那条 episode。一条慢吞吞、手忙脚乱的演示不再是该过滤的噪声，而是一个标注好了的「慢且笨拙」样本；正因为有它的对照，模型对「快」和「高质量」的感知才更加锐利 [π0.7 §IX-E]。\ndropout 让字段变成可选 上下文这么丰富，部署时就有个麻烦：你不一定有子目标图像，不一定有子任务字符串，元数据也不一定靠谱。π0.7 的解法是——训练时按特定比率随机丢掉每个字段，逼模型在缺了它的情况下照样能干活 [π0.7 §V-E]。\n完整的 dropout 调度表，全出自同一节 [π0.7 §V-E]：\n子目标图像只出现在每 batch 25% 的样本中 [π0.7 §V-E] 在带子目标的样本里，子任务指令有 30% 概率被丢 [π0.7 §V-E] Episode 元数据整体有 15% 概率被丢 [π0.7 §V-E] 元数据各分量——速度、质量、失误——再各自以 5% 概率被单独丢 [π0.7 §V-E] 控制模式完全不 dropout [π0.7 §V-E] 其中两个比率值得细看：一个论文给了明确理由，另一个则意味深长地沉默了 [π0.7 §V-E]。\n25% 这个子目标比率不是正则化的经验数字。有了子目标图像，任务会退化成接近逆动力学——模型直接看到目标状态然后往那儿插值就行了——训练因此快得多 [π0.7 §V-E]。放任不管的话，模型会一直走这条容易的通道，把难的那条训练不足。把子目标限在四分之一的样本里，就是为了让「从观测到动作」这条通路始终保持承重。这条原则很值得偷：某个输入通道让任务变得太容易的时候，给它限量。\n控制模式完全不 dropout 则是个镜像式的决定 [π0.7 §V-E]。其他字段都是建议性的——关于「怎么做」的提示。控制模式不是，它是动作空间本身的硬事实：关节位置和末端位姿是两套完全不同的输出语义，一个搞不清自己在输出什么的模型不叫「可指挥」，叫「坏了」。可选的字段才做 dropout；语义契约不做。\n运行时怎么「指挥」 模型已经学到了行为模式上的条件分布，部署就变成了「向它索要你想要的那个模式」[π0.7 §VII]。\n运行时的参数设定很激进：速度提示按任务设为该任务 episode 长度的第 15 百分位——相当于要求一次比绝大多数训练演示都更快的执行；质量恒定为 5；失误恒定为 false [π0.7 §VII]。拿中等偏下的数据训练，然后推理时要求它拿出最好的表现。\n又因为 dropout 造就了一个「有元数据用元数据、没元数据也能跑」的模型，无分类器引导（CFG）直接就能上。π0.7 对 episode 元数据施加 CFG，权重 $\\beta \\in \\{1.3,\\, 1.7,\\, 2.2\\}$ [π0.7 §VII]。这个机制你在扩散模型里已经很熟了：从无条件预测的方向往外推，把结果更用力地拉向条件所指的模式。只不过这里的「条件」不是一段描述内容的文本提示，而是关于行为质量的描述。$\\beta$ 调大，策略对「快、干净、不出错」就更坚决。\n以上就是全部核心想法 [π0.7 §IV]。后面各部分讲的，都是在真实规模上把它落地所需要的工程。\n第 3 部分超参数表 参数 取值 出处 总体速度 episode 时间步长度，500 步分箱（1750–2250 → 「2000 steps」） [π0.7 §V-C] 总体质量 1–5 的整数，5 最好 [π0.7 §V-C] 失误 布尔量，按动作片段，人工标注 [π0.7 §V-C] 控制模式 joint 或 ee [π0.7 §V-D] 带子目标图像的样本比例 每 batch 25% [π0.7 §V-E] 其中子任务被丢弃 30% [π0.7 §V-E] 元数据整体丢弃 15% [π0.7 §V-E] 元数据各分量额外丢弃 5% [π0.7 §V-E] 控制模式 dropout 无 [π0.7 §V-E] 运行时速度提示 任务 episode 长度的第 15 百分位 [π0.7 §VII] 运行时质量提示 恒为 5 [π0.7 §VII] 运行时失误提示 恒为 false [π0.7 §VII] 元数据 CFG 权重 $\\beta$ 1.3、1.7 或 2.2 [π0.7 §VII] 第 4 部分 —— 子系统：机队与遥操作 输入输出： 输入——人类意图，由操作员驱动机器人表达；输出——在真实硬件上录下来的轨迹，即同步的图像与关节位置。\n复现真正开始的地方就在这里，钱也主要花在这里。这一层不存在，模型就无从训起。论文专门用了一整节来讲它跑在什么硬件上 [π0.7 §VIII]。\n平台 π0.7 覆盖四类平台 [π0.7 §VIII, Fig. 4]：\n双臂移动操作机——两条 6 自由度手臂、1–2 自由度升降轴、全向底盘 [π0.7 Fig. 4] 静态双臂「BiPi」——两条轻量 6 自由度手臂配 1 自由度夹爪 [π0.7 §VIII, Fig. 4] 双臂 UR5e——工业臂配 Robotiq 夹爪 [π0.7 §VIII, Fig. 4] 单臂 6 自由度系统 [π0.7 §VIII, Fig. 4] 夹爪全线平行两指 [π0.7 §VIII]。各平台统一采用 6 自由度手臂不是巧合：正因如此，一套共享的关节空间动作表示才能在不同平台之间连贯起来，撑得起迁移 [π0.7 §VIII, Fig. 4]。\n控制与传感 控制频率除 UR5e 的 20 Hz 外，其余一律 50 Hz [π0.7 §VIII]。传感是一路前视相机加每条手臂一路腕部相机，移动机器人再加一路后视 [π0.7 §VIII]。这恰好对应输入契约里的「最多 4 路相机」：前视、两个腕部、可选后视 [π0.7 §VI-B]。\n执行端刻意保持简单。模型的动作输出通过一个 PD 控制器下发；末端执行器模式下由数值逆运动学把目标末端位姿转成目标关节位置 [π0.7 §VIII]。没有学出来的底层控制器，没有力矩级策略，底下也没垫一层模型预测控制。策略输出位置目标，底下交给经典控制搞定。\n这一点值得停下来想想，因为它跟很多人的直觉相反：复杂度全部集中在高层策略，栈的底部是教科书内容 [π0.7 §VIII]。**推断：**这样做让整条不依赖仿真的流水线保持可控，也让同一策略能在共享同一接口的不同本体之间移植；但论文没有明确论证这一点。\nUR5e 为什么是那块硬骨头 UR5e 是跨本体的压力测试，论文对原因说得很具体：它显著更长、形态不同、重得多、关节惯量大，所以需要完全不同的操作策略和桌面摆位 [π0.7 §VIII, App. F]。团队压根没在双臂 UR5e 上采过任何叠衣数据，而且发现它总体更难遥操作，也不太适合精细抓取 [π0.7 §IX-C]。\n最后这个事实把整个跨本体结果的意义重新定义了。迁移到 UR5e 不只是打了个基准分——它是从一个「遥操作很痛苦」的平台上获取数据的途径。模型能迁移到新本体，就打开了在那个本体上完全自主采集数据、不需要人来遥操的可能性 [π0.7 App. F]。\n而且这次迁移产出了真正的涌现行为，不是照搬。在源机器人上，操作员习惯倾斜末端接近布料、先把织物压在桌面再提起；在 UR5e 上，π0.7 转而采用更契合该臂运动学的垂直抓取——这个策略在训练数据里并不存在，却更适合目标本体 [π0.7 Fig. 13]。再配合世界模型生成的子目标图像，效果进一步提升，结果图中标为 π0.7 (GC) [π0.7 §IX-C, Fig. 12]。\n第 4 部分超参数表 参数 取值 出处 控制频率 50 Hz；UR5e 为 20 Hz [π0.7 §VIII] 手臂自由度 各平台均为 6 [π0.7 §VIII, Fig. 4] 移动操作机 2 × 6 自由度臂、1–2 自由度升降、全向底盘 [π0.7 Fig. 4] 静态双臂（BiPi） 2 × 6 自由度臂、1 自由度夹爪 [π0.7 §VIII, Fig. 4] 夹爪 平行两指；UR5e 用 Robotiq [π0.7 §VIII, Fig. 4] 相机 前视 + 每臂一路腕部；移动平台加后视 [π0.7 §VIII] 底层控制器 PD [π0.7 §VIII] 末端执行器模式 数值逆运动学 → 关节目标 [π0.7 §VIII] 机队规模 未公开 [π0.7 §VIII] 遥操作装置 未公开 [π0.7 §VIII] 第 5 部分 —— 子系统：数据引擎 输入输出： 输入——机队、人类标注者、公开网络；输出——一份带标注、带混合权重的训练语料，其中每条 episode 都附有「它是怎么来的」这一描述。\n八类数据来源 π0.7 在八类数据上训练 [π0.7 §VI-A]：\n遥操作演示，覆盖静态与移动、单臂与双臂平台，场景包括实验室式、类家庭和真实家庭 [π0.7 §VI-A] 自主数据，来自大量策略评测过程 [π0.7 §VI-A] 人类干预，即策略回放中的专家纠正 [π0.7 §VI-A] π*0.6 的 RL 轨迹，作为额外样本 [π0.7 §VI-A] 开源机器人数据集 [π0.7 §VI-A] 第一人称人类视频 [π0.7 §VI-A] 非机器人网络数据——物体定位、属性预测、VQA、纯文本 [π0.7 §VI-A] 视频-语言任务，包括对自有机器人视频和网络视频的字幕生成 [π0.7 §VI-A] 注意这份清单的结构：只有前四类动了机队，其余全是杠杆——网络和视频数据维持主干的语义知识，机器人数据负责教执行 [π0.7 §VI-A]。\n刻意的背离：把「烂数据」留下来 常规做法是精选。π0.7 反着来，大量使用次优的机器人数据——失败的 episode、带明显失误的成功 episode、旧版模型评测时采的数据 [π0.7 §VI-A]。\n之所以敢这么干，全靠元数据兜底。一条标着「质量 2、失误 true」的 episode 不是被污染的训练信号，而是行为空间中某个区域的正确标注样本——模型应该表示出这个区域，然后在推理时被引导着绕开它 [π0.7 §V-C, §VII]。过滤和条件化是对同一个问题的两种处理方式，π0.7 的规模化结果就是「条件化赢了」的证据 [π0.7 §IX-E, Fig. 18]。\n那一步「蒸馏」 数据一节里最有分量的一句话：π*0.6 在 RL 训练期间采集的数据被当作额外训练样本使用，论文称之为「一种\u0026rsquo;蒸馏\u0026rsquo;过程」[π0.7 §VI-A]。\n把这条链路捋一遍。π*0.6 在真实机器人上跑了真实的 RL，靠价值函数和优势条件化把专家策略推到了超越人类演示的水平 [π*0.6 §IV, §I]。这些轨迹——连同它们相较遥操作的改进——变成了 π0.7 的普通条件化训练样本。通才就这样获得了专家级行为，而自己一轮 RL 都没跑，纯粹是在带质量元数据的 RL 轨迹上做监督训练 [π0.7 §VI-A]。\n做过 LLM 后训练的读者应该立刻对上号了：这就是从一个 RL 调过的教师向监督学生做蒸馏，只不过多了个转折——「奖励」没有被烘焙进权重，而是作为条件变量活到了学生身上 [π*0.6 §V-B, π0.7 §V-C]。\n标注 上下文里的那些字段得有来源，大多来自人 [π0.7 §V-A, §V-C]。\n子任务切分给出语义子任务字符串 [π0.7 §V-A]；质量是 1–5 评分 [π0.7 §V-C]；失误标签是按动作片段的布尔量，原文说「由人类对我们的数据做粗粒度标注而来」[π0.7 §V-C]；速度是唯一机械导出的字段——按 500 步分箱的 episode 长度 [π0.7 §V-C]。\n「粗粒度」三个字在这里很重要。这不是高精度标注工程，而是在一个巨大语料上做的一遍快速扫描，整个系统被设计成能容忍它。**未公开：**标注规范、标注者一致性、每条 episode 的标注成本，以及分歧怎么裁 [π0.7 §V-C]。\n但标注质量确实有一处硬依赖被记录在案。世界模型训练中，标签质量——尤其是时间切分的质量——对子目标质量影响很大 [π0.7 App. C]。片段边界决定了「达成的子目标」是什么，边界一模糊，世界模型生成的目标就是错的。\n评测卫生 有一条脚注承载了极大分量：在任何以泛化为目标的评测任务中采到的自主数据，都被排除在训练之外 [π0.7 §VI-A fn. 1]。\n没有这条排除，飞轮就会不知不觉拿测试集训练 [π0.7 §VI-A fn. 1]。系统部署一个策略，录下它在评测中的行为，再把数据喂回训练——这就是经典的「一边污染留出任务、一边相信自己测的是泛化」。这种纪律不会出现在任何结果表里，却完全决定了那些结果有没有意义。\n数据怎么组织 本小节整体为推断。 π0.7 对内部存储格式只字未提 [π0.7 §VI-A]。但从上下文字段可以反推 schema，开源生态恰好提供了一个值得讲的具体样例，也跟上下文字段暗示的结构对得上 [π0.7 §V-C]。\n开源那一侧按访问模式分成两条路，与上下文字段要求的 schema 对应 [π0.7 §VI-B]。LeRobot 把 episode 存成 Parquet 表加 MP4 视频，配一个 meta/tasks 索引，支持 map 式随机访问——微调阶段的正确选择，因为那时数据集装得下，可以做打乱。RLDS/TFDS 则按分片流式读取，配大容量 shuffle buffer 和跨数据集的加权交织——预训练阶段的正确选择，因为那时混合语料大到建不了索引。原则可以推广：格式服从访问模式，访问模式服从规模。\n比文件格式更重要的是记录 schema，而它由上下文束直接决定：episode 级的质量、速度、控制模式；片段级的子任务文本与失误标记；帧级的最多 4 路相机图像与本体感知 [π0.7 §V-C, §VI-B]。任何复现都必须把这些字段当一等公民来承载，因为训练就是条件化在它们上面的。\n规模化的回报 以上全部存在的理由，就是为了得到这个结果 [π0.7 §IX-E, Fig. 18]。\n有了 episode 元数据，哪怕平均数据质量在下降，性能照样随数据量持续上升；没有元数据，性能反而随低质量数据的加入而下滑 [π0.7 §IX-E, Fig. 18]。规模化曲线的正负号，取决于你有没有告诉模型它在看什么。\n第二个消融进一步锐化了「多样性」在操作层面的含义：去掉任务多样性最高的那 20% 机器人数据，造成的伤害明显大于随机去掉 20% [π0.7 §IX-E, Fig. 18]。数据的价值并不按小时均匀分布。不常见任务构成的长尾承载了不成比例的分量——这对采集预算的分配是个明确信号：优先铺广度，别堆深度。\n第 5 部分超参数表 参数 取值 出处 数据来源类别数 8 [π0.7 §VI-A] 质量标注 1–5 整数 [π0.7 §V-C] 失误标注 按动作片段的布尔量，粗粒度 [π0.7 §V-C] 速度导出方式 episode 长度，500 步分箱 [π0.7 §V-C] 评测卫生 泛化类评测的自主数据被排除 [π0.7 §VI-A fn. 1] 多样性消融 去掉最多样的 20% 比随机去 20% 伤害更大 [π0.7 §IX-E, Fig. 18] π 系列预训练语料规模 数万小时 [π*0.6 §IV-C] 数据集小时数 / episode 数 未公开 [π0.7 §VI-A] 各来源混合权重 未公开 [π0.7 §VI-A] 标注规范与一致性 未公开 [π0.7 §V-C] 存储格式 推断，取自开源对应物 [π0.7 §VI-A] 第 6 部分 —— 子系统：模型架构 输入输出： 输入——最多 4 路相机 × 最多 6 帧历史（$448\\times448$）、最多 3 张子目标图像、本体感知及其历史、文本上下文；输出——50 个动作 token，构成一个动作块 [π0.7 §VI-B]。\n参数预算 π0.7 的控制通路合计约 5B 参数 [π0.7 §IV, Fig. 2]。拆开看：一个 4B 的 VLM 主干，从 Gemma3 4B 初始化，里面已经包了一个 400M 的 SigLIP 类视觉编码器；再加一个 MEM 式视频历史编码器；再加一个 860M 的流匹配动作专家 [π0.7 §IV, §VI-B, Fig. 2]。\n对习惯了 LLM 尺度的人来说，有两点值得注意。第一，这个模型很小——总共 5B，单张 H100 就能部署 [π0.7 App. D]。瓶颈是延迟而非能力：更大的主干塞不进控制回路。第二，860M 的动作专家占了差不多五分之一，比重不小。动作生成不是挂在语言模型上的一个薄头，而是有自己目标函数、自己梯度隔离的一个正经子网络 [π0.7 §III]。\n控制通路旁边站着世界模型，从 BAGEL 初始化——一个 14B 的 mixture-of-transformers，采用 SuSIE 式初始化 [π0.7 §V-B, App. D]。内部把 ViT token 交给一个 7B 的 LLM 主干，VAE token 交给另一个 7B 的生成主干 [π0.7 App. C]。它比它辅助的那个策略重了近三倍，而且不在控制回路里运行。\n高层策略与主模型同架构，同样基于 Gemma3 4B，把观测、任务描述和过往子任务指令映射为下一条子任务 [π0.7 §V-A, App. D]。\n历史编码器 π0.7 的记忆能力来自历史编码器，整套继承自 MEM [π0.7 §IV]。\n它同时做时间与空间压缩，最关键的性质是：不管输入多少帧历史，输出的 token 数是固定的——历史被压到跟单帧一样的 token 数 [π0.7 §IV, §VI-B]。这才是历史「用得起」的原因：对主干来说，多加 6 帧记忆的序列长度代价是零。\n具体机制照 MEM 所述——改造后的 ViT 注意力模式：每帧内部双向空间注意力，每隔 4 层加一次跨帧因果时间注意力，只把当前时刻的表示往后传，相比标准单图 ViT 不引入任何新的可学习参数，只多一个固定的正弦时间位置编码 [MEM §III-C]。π0.7 的设定是每路相机最多 6 帧、步长 1 秒，整段历史以 $p = 0.3$ 丢弃，后视图像同样以 $p = 0.3$ 丢弃 [π0.7 §VI-B]。\n状态嵌入：一个小改动，理由很清楚 π0.6 把本体感知状态表示成离散化文本 token [π*0.6 §V-A]。π0.7 换成了 MEM 的做法，用线性投影把本体感知嵌入主干维度，每帧历史状态各占一个 token，帧被丢弃时对应状态 token 一并掩掉 [π0.7 §VI-B]。\n改的理由是序列长度。一旦引入状态历史，文本 token 方案会迅速膨胀出大量状态 token，而线性投影严格一帧一个 [MEM §III-D]。这是一条通用规则的干净例证：对单帧够用的表示，拉到序列上可能就扛不住了。 加入记忆之后每帧的编码开销要乘帧数，「无损但啰嗦」的编码方式就划不来了。\n动作专家 动作专家是一个 860M 的 Transformer，以流匹配训练，用自适应 RMSNorm 注入流的时间步 [π0.7 §VI-B]。它承载 50 个动作 token，这些 token 彼此双向注意，并注意主干的激活 [π0.7 §VI-B]。\n动作 token 之间用双向注意力是正确的选择 [π0.7 §VI-B]：动作块是联合生成的，不是自回归生成的，块内各位置之间没有因果顺序可言。因果性是物理世界时间轴的性质，不是采样过程的性质。\n注意力的精确形态 总体模式是块因果 [π0.7 §VI-B]。观测 token 和子目标图像 token 各自内部双向注意；目标 token 可以额外注意观测；其后的文本 token 用因果注意力 [π0.7 §VI-B]。当图像目标不存在时，模式与 π0.5 相同，所有带记忆能力的图像视角的嵌入之间全局双向；当目标存在时，它们在文本提示之后构成一个额外的块因果双向块 [π0.7 App. B, Fig. 19]。\n加上第 1 部分的那条承重约束：FAST token 只在训练时存在，且 FAST token 和流动作互不注意 [π0.7 App. B, Fig. 19]。\n推理侧还有一处巧妙设计。做无分类器引导时，正例和负例被打包进同一条序列，构成一棵「注意力树」，两条分支互不注意 [π0.7 App. B]。通常 CFG 意味着两次前向；这里变成了一次前向加一个掩码。世界模型用了同样的技巧，只是掩码更复杂——3 个 CFG 组而不是 2 个 [π0.7 App. B]。\n世界模型 世界模型的任务是生成子目标图像：给定当前观测和目标子任务，产出「近期未来应该长什么样」[π0.7 §V-B]。\n目标是对真值子目标做条件流匹配 [π0.7 §V-B]：\n$$\\max_{\\psi}\\; \\mathbb{E}\\left[\\, \\mathcal{L}_{\\mathrm{CFM}}\\!\\left( g^{*}_{t},\\; g_{\\psi}(o_t,\\, \\tilde{\\ell}_t,\\, m) \\right) \\right]$$其中真值子目标 $g^{*}_{t} = o_{t_{\\mathrm{end}}}$ 取自子任务标签质量特别高的片段末尾 [π0.7 §V-B]。每个训练样本包含一条子任务指令、3 路相机输入和 3 张目标图像，目标时刻取该片段的最后一帧 [π0.7 App. C]。\n沿用 BAGEL 的做法，相机输入同时走 ViT（负责语义理解）和 VAE（负责细粒度图像细节）两条路 [π0.7 App. C]。两条路用不同分辨率——ViT 输入 $448\\times336$，VAE 输入（含目标图像）$512\\times384$——因为二者 patch 大小不同，分别是 14 和 16 [π0.7 App. C]。这是只有落到实现层才会冒出来的约束的好例子：分辨率是 patch 大小的下游产物，混用两个 tokenizer 就得调和它们的网格。\n第 6 部分超参数表 参数 取值 出处 控制通路总参数 约 5B [π0.7 §IV, Fig. 2] VLM 主干 4B，来自 Gemma3 4B [π0.7 §IV, Fig. 2] 视觉编码器 400M SigLIP 类，含在 4B 之内 [π0.7 §IV, §VI-B] 动作专家 860M，流匹配 [π0.7 §IV, §VI-B] 时间步注入 自适应 RMSNorm [π0.7 §VI-B] 动作 token 50 个，双向，注意主干激活 [π0.7 §VI-B] 历史编码器 MEM 式，任意帧数输出固定 token 数 [π0.7 §IV, §VI-B] 状态嵌入 线性投影，每帧历史状态 1 个 token [π0.7 §VI-B] 注意力 块因果；FAST ⊥ 流动作 [π0.7 §VI-B, App. B, Fig. 19] CFG 实现 注意力树，单序列两分支 [π0.7 App. B] 世界模型 BAGEL 14B，SuSIE 式初始化 [π0.7 §V-B, App. D] 世界模型子主干 7B 理解 + 7B 生成 [π0.7 App. C] 世界模型分辨率 ViT 448×336；VAE 512×384（patch 14 / 16） [π0.7 App. C] 高层策略 同架构，Gemma3 4B [π0.7 §V-A, App. D] 各本体的动作维度 未公开 [π0.7 §VI-B] 第 7 部分 —— 子系统：训练流水线 输入输出： 输入——带标注的语料，加上初始化权重（Gemma3 4B、SigLIP 400M、BAGEL 14B）；输出——训练好的 π0.7、世界模型和高层策略 [π0.7 §V, §VI]。\n两个耦合的目标函数 训练在两组参数上优化两个目标函数，由一个 stop-gradient 耦合起来 [π0.7 §III]。\n主干吃 FAST token 交叉熵，动作专家吃流匹配；专家看得到主干激活，但梯度不回流 [π0.7 §III]。本部分剩下的内容，讲的都是「上下文里放什么」以及「多久把它抽掉一次」。\n全部 dropout 与采样比率 这块内容复现时靠猜是猜不出来的，所以完整列一遍 [π0.7 §V-E, §VI-B, §VI-C]。\n上下文 dropout [π0.7 §V-E]：\n子目标图像：出现在每 batch 25% 的样本中 [π0.7 §V-E] 子任务指令：在带子目标的样本中以 30% 概率丢 [π0.7 §V-E] Episode 元数据：整体以 15% 概率丢 [π0.7 §V-E] 元数据各分量：再各自以 5% 概率额外丢 [π0.7 §V-E] 控制模式：不丢 [π0.7 §V-E] 观测 dropout [π0.7 §VI-B]：\n整段历史：以 $p = 0.3$ 丢弃 [π0.7 §VI-B] 后视相机：以 $p = 0.3$ 丢弃 [π0.7 §VI-B] 子目标采样 [π0.7 §VI-C]：\n真实子目标：$p = 0.25$ 取片段末尾（与世界模型的预测目标对齐）；$p = 0.75$ 在未来 0–4 秒内均匀采 [π0.7 §VI-C] 生成子目标：从世界模型采大量子目标，用来构造额外训练样本，缓解真实图像与生成图像之间的训练/测试不匹配 [π0.7 §VI-C] 最后这一条值得强调 [π0.7 §VI-C]。部署时子目标来自世界模型，不是某一帧真实的未来；如果只拿真实帧训练，恰恰会在这个特性起作用的地方制造分布偏移。用「将来负责供给它的那个模型」来生成训练子目标，就把这个环闭上了。跟 RTC 是同一种纪律：在你将来部署的条件下训练。\n子目标为什么只出现在四分之一的样本里 这里再强调一次，因为它是论文里最有教益的一个超参数：有了子目标图像，任务会退化成接近逆动力学，训练因此快得多 [π0.7 §V-E]。\n如果永远给子目标，模型就会练成一个逆动力学模型——看到目标图，往那儿插值就完事了——而永远不会发展出「仅凭观测和语言推断意图」这项更难的能力。25% 的上限是对这条捷径的刻意限流 [π0.7 §V-E]。\n为延迟而训练 训练期实时分块模拟 0–12 个时间步的延迟，对应 50 Hz 下 240 ms 的最大推理延迟 [π0.7 §VI-B]。跟测试期 RTC 不同，训练期变体不带来任何额外推理开销 [π0.7 App. D, ref. 108]。\n世界模型的训练 世界模型从 BAGEL 初始化，基本沿用同一套训练方案 [π0.7 App. C]。\n语料是机器人数据的一个子集，加上带高质量切分语言标签的第一人称人类视频，再混入若干开源图像编辑数据集和开源视频数据集，目的是保住模型的语义知识 [π0.7 App. C]。这种混合跟策略侧的网络协同训练是一个逻辑：生成模型必须保持通用视觉能力，不能坍缩到机器人分布上。\n已记录在案的敏感性：标签质量，尤其是时间切分质量，对子目标质量影响很大 [π0.7 App. C]。因为子目标的监督信号被定义为片段末尾，所以片段边界本身就是监督信号。\n另有一个值得点名的好处：世界模型部分地在非机器人数据上训练，网络里的语义和物理概念可以间接流入 π0.7——通过生成的子目标图像 [π0.7 §V-B]。子目标通道是网络知识抵达策略的第二条路径，它绕过了主干。\n训练没告诉你的 以上全部是公开的。以下不是，复现时必须自行拿主意 [π0.7 §VI]：\n总 token / 步数预算，以及训练算力 [π0.7 §VI] 优化器、学习率调度、warmup、权重衰减 [π0.7 §VI] Batch size 与序列打包策略 [π0.7 §VI] 训练硬件与实际耗时 [π0.7 §VI] 数据集的小时数或 episode 数，以及各来源混合权重 [π0.7 §VI-A] 世界模型语料的规模与构成（只有定性描述）[π0.7 App. C] 高层策略的训练数据与超参数 [π0.7 §V-A] 清单不短，也正是本部分诚实的结论：上下文配方被完整公开了；优化配方没有 [π0.7 §VI]。\n第 7 部分超参数表 参数 取值 出处 主干目标函数 FAST token 交叉熵 [π0.7 §III] 动作专家目标函数 流匹配 [π0.7 §III] 耦合方式 stop-gradient；专家只读不改 [π0.7 §III] 带子目标图像的样本 25% [π0.7 §V-E] 其中子任务被丢弃 30% [π0.7 §V-E] 元数据整体丢弃 15% [π0.7 §V-E] 元数据各分量额外丢弃 5% [π0.7 §V-E] 控制模式 dropout 无 [π0.7 §V-E] 历史丢弃 $p = 0.3$ [π0.7 §VI-B] 后视丢弃 $p = 0.3$ [π0.7 §VI-B] 真实子目标采样 $p = 0.25$ 片段末尾；$p = 0.75$ 未来 0–4 秒均匀 [π0.7 §VI-C] 生成子目标 从世界模型大量采样 [π0.7 §VI-C] RTC 模拟延迟 0–12 步 = 50 Hz 下 240 ms [π0.7 §VI-B] 世界模型目标 对片段末帧的条件流匹配 [π0.7 §V-B] 优化器、调度、batch size 未公开 [π0.7 §VI] 步数、算力、耗时 未公开 [π0.7 §VI] 第 8 部分 —— 子系统：服务运行时 输入输出： 输入——最多 4 路相机的实时观测流加本体感知；输出——以 20 或 50 Hz 不间断下发的关节指令 [π0.7 §VII, §VIII]。\n逐行走一遍 Algorithm 1 部署循环由四步构成 [π0.7 §VII, Alg. 1]：\n采子目标，来自世界模型：$g^{*} \\sim p_{\\psi}(\\cdot \\mid o_t,\\, \\tilde{\\ell},\\, m)$ [π0.7 §VII, Alg. 1] 组装上下文 $C = \\{\\ell,\\, \\tilde{\\ell},\\, g^{*},\\, m,\\, c\\}$——总任务、子任务、子目标图像、元数据、控制模式 [π0.7 §VII, Alg. 1] 采动作块 $a_{t:t+H} \\sim \\pi_{\\theta}(\\cdot \\mid o_{t-T:t},\\, C)$，5 个去噪步 [π0.7 §VII, Alg. 1] 重规划：执行 $\\tilde{H}$ 步后重新推理；子任务 $\\tilde{\\ell}$ 变了或 $\\Delta$ 计时器到点时，重采子目标 [π0.7 §VII, Alg. 1] 运行时常量：5 个去噪步；50 步块中执行 15 或 25 步；子目标在语义意图变化或每 $\\Delta = 4$ 秒（先到为准）刷新一次；对 episode 元数据施加 CFG 权重 $\\beta \\in \\{1.3,\\, 1.7,\\, 2.2\\}$ [π0.7 §VII]。4 秒这个间隔是为了跟 SuSIE 对齐 [π0.7 App. C]。\n异步才是真正承重的设计 子目标生成和子任务生成跑在独立线程里，VLA 推理始终用各自最新可用的结果 [π0.7 §VII, Alg. 1]。\n理由看算术就明白了。生成一张子目标图像要 1.25 秒——一个 14B 模型在接近 10,000 token 的序列上跑 25 步去噪，而且这还是用了 4 路张量并行（4×H100）、大矩阵乘法全部量化到 8 bit、主干注意力换上改版 SageAttention 之后的成绩 [π0.7 App. D]。与此同时，机器人在 50 Hz 下每 20 毫秒就得吃一个新动作。同步设计意味着每刷新一次子目标，机器人就得呆在那儿一秒多。\n于是 π0.7 采用论文所说的「朴素异步策略」：世界模型算下一个子目标的同时，策略继续按当前子目标行动 [π0.7 App. D]。过时的子目标被当作连续性的代价接受了下来——当子目标描述的是意图而不是精确设定点时，一个 4 秒前的子目标完全够用 [π0.7 §V-B]。\n预备知识 —— 异步为什么重要。 不用异步的话，机器人在两个动作块之间会明显停顿：伸手、僵住、伸手、僵住。除了看着像坏了之外，在动作中途停下会改变物理状态——一个在重力下完成到一半的抓取并不是一个稳定平衡态，你未必能从那个状态接着往下做。连续执行是功能需求，不是锦上添花。\n端到端延迟预算 下面这几个数字把第 7 部分的训练假设闭合了 [π0.7 App. D]：\n38 ms——最小配置，3 路相机、5 个去噪步、训练期 RTC [π0.7 App. D] 127 ms——最坏情况，开了 MEM 视觉编码器并把子目标图像放入上下文 [π0.7 App. D] 240 ms——策略被训练成能容忍的上限，来自 RTC 在 50 Hz 下模拟的 0–12 步延迟 [π0.7 §VI-B] π0.7 和高层策略共用单张 NVIDIA H100；世界模型另占 4 张 [π0.7 App. D]。\n把三个数字放一块看，工程纪律一目了然 [π0.7 §VI-B, App. D]：现实中的最坏情况大约只用了已训练容忍度的一半。记忆、子目标这些可选特性之所以用得起，恰恰是因为基线延迟先被压下去了。\n第 8 部分超参数表 参数 取值 出处 去噪步数 5 [π0.7 §VII] 执行步长 $\\tilde{H}$ 50 步中的 15 或 25 [π0.7 §VII] 子目标刷新 $\\Delta$ 4 秒，或意图改变时 [π0.7 §VII, App. C] CFG 权重 $\\beta$ 元数据上取 1.3、1.7 或 2.2 [π0.7 §VII] 速度提示 任务 episode 长度第 15 百分位 [π0.7 §VII] 质量提示 恒为 5 [π0.7 §VII] 失误提示 恒为 false [π0.7 §VII] VLA 推理硬件 单张 NVIDIA H100 [π0.7 App. D] VLA 延迟 最小 38 ms / 最坏 127 ms [π0.7 App. D] 世界模型硬件 4×H100，4 路张量并行 [π0.7 App. D] 世界模型量化 大矩阵乘法全部 8 bit [π0.7 App. D] 世界模型注意力 改版 SageAttention [π0.7 App. D] 子目标生成开销 25 个去噪步，1.25 秒 [π0.7 App. D] 世界模型序列长度 接近 10,000 token [π0.7 App. D] 完整服务栈 未公开 [π0.7 App. D] 第 9 部分 —— 子系统：评测装置 输入输出： 输入——一个训练好的策略；输出——你真敢信的能力结论。\n对 LLM 研究者来说，这是整套系统里最陌生的环节：这里没有留出集可以打分——下面每一个数字都是拿真机小时换来的 [π0.7 §IX-E]。\n三个指标 π0.7 报告成功率、以百分比表示的任务进度，以及以「次/小时」表示的归一化吞吐量 [π0.7 Fig. 6]。\n吞吐量是可能让你意外的那一个——它更像生产指标，不像研究指标。一个可靠但慢的策略，价值不如一个成功率略低但快得多的策略，因为部署时真正关心的量是单位机器人时间完成的任务数。特别值得注意的是，在多样化叠衣和装箱两项任务上，π0.7 的吞吐量超过了经过 RL 训练的专家模型 [π0.7 Fig. 6]——通才在专家的主场胜出，这是第 5 部分那个「蒸馏」论断最有力的佐证。\n任务进度需要评分细则，附录 G 给每个任务出了一份 [π0.7 App. G]。这些是人工设计的部分给分量表：Take Out Trash 满分 12，Peel Fruits and Vegetables 满分 9，Make Peanut Butter Sandwich 满分 9，Turn a T-Shirt Inside Out 满分 7，Shirt Folding 满分 6 [π0.7 App. G]。其中 Shirt Folding 每完成一次符合对齐容差的折叠得 1 分，再加一个 0–3 的折叠质量分，满分 6 分算成功 [π0.7 App. G]。\n由此有两个推论。第一，「任务进度」不是学出来的、也不是自动算出来的——就是人对着视频按清单打分。第二，细则是逐任务定制的，跨任务比较进度分数只有归一化之后才有意义 [π0.7 App. G]。\n评测协议 指令跟随在 14 个场景上测，每个场景 3–6 条开放式指令，环境是 4 个没见过的厨房和 2 个没见过的卧室 [π0.7 §IX-B, Fig. 9]。\n跨本体迁移通过「在一台机器人上训、在另一台上测」来做，硬目标是双臂 UR5e [π0.7 §IX-C]。附录里的一项对比发现，关节空间和末端执行器控制在各任务上并没有显示出 EE 的明显优势，所以主线跨本体实验为清晰起见统一用关节空间 [π0.7 App. E, Fig. 20]。\n消融承载着核心论点。去掉元数据的 π0.7 和去掉评测数据的 π0.7 都会变差，尤其体现在吞吐量上 [π0.7 Fig. 7]。而图 18 的规模化与多样性结果，才是中心论断的许可证 [π0.7 §IX-E, Fig. 18]。\n人类基线 论文里最有意思的一项评测，是跟人的正面比较 [π0.7 App. F]。\n10 名处于经验前 2 百分位、在各平台平均约 375 小时遥操作经验的操作员，被要求在双臂 UR5e 上叠衬衫 [π0.7 App. F, Fig. 21]。关键是，他们之前都没有在 UR5e 上叠过衬衫——跟策略所处的「零样本」设定完全对等 [π0.7 App. F]。每人 3 次试验，共 30 次，第一次之前不给任何练习或热身，初始构型、时限和评判标准跟策略评测一模一样 [π0.7 App. F]。\n结果：人类操作员平均任务进度 90.9%、成功率 80.6%；π0.7 任务进度 85.6%、成功率 80% [π0.7 §IX-C, App. F, Fig. 22]。\n下结论之前请仔细看清楚。这不是「机器人追平人类」这么大的判断，而是一个更精确也更窄的结论：在一项灵巧任务上，在一个策略和操作员都没用它做过该任务的机器人本体上，通才策略的得分跟冷启动上手的专家遥操作员相当 [π0.7 App. F]。基线是零样本的人，不是练熟了的人。它真正的说服力在于比较的方向——这个策略正在跟生产它自己训练数据的那套机制同台竞技。\n物理评测为什么这么难 每次试验都消耗真实的机器人时间，样本量小、方差大。场景无法精确复位，各次试验并不是从固定分布里做的独立抽样。还有作者自己交代的那条局限：在这个数据规模下，实际上很难明确判定哪些任务真正算「没见过」[π0.7 §IX-E]。\n最后这条值得尊重而不是怀疑。当语料是横跨大量任务和环境的数万小时时 [π*0.6 §IV-C]，「没见过」就变成了一个关于整个训练分布的断言，而没有人能完整核验它。第 5 部分那条评测排除脚注，才是让这个断言勉强站得住的前提 [π0.7 §VI-A fn. 1]。\n第 9 部分数值表 项目 取值 出处 指标 成功率；任务进度 %；归一化吞吐量 [π0.7 Fig. 6] 指令跟随协议 14 个场景，每个 3–6 条指令 [π0.7 §IX-B, Fig. 9] 未见环境 4 个厨房、2 个卧室 [π0.7 §IX-B] 人类实验 10 名操作员，经验前 2 百分位，约 375 小时 [π0.7 App. F, Fig. 21] 人类实验流程 每人 3 次，共 30 次，无热身 [π0.7 App. F] 人类 vs π0.7（UR5e 叠衬衫） 90.9% / 80.6% vs 85.6% / 80% [π0.7 §IX-C, Fig. 22] 评分细则满分（示例） Take Out Trash 12、Peel 9、Sandwich 9、Shirt Folding 6 [π0.7 App. G] 叠衬衫质量分 0–3，满分 6 记为成功 [π0.7 App. G] 动作空间结论 EE 无明显优势，统一用关节空间 [π0.7 App. E, Fig. 20] 多样性消融 最多样 20% 的影响大于随机 20% [π0.7 §IX-E, Fig. 18] 泛化落差 分布内 \u0026gt;90%；未见组合 60–80% [π0.7 §X] 单次试验原始数据 未公开 [π0.7 §IX] 第 10 部分 —— 复现蓝图 输入输出： 输入——以上全部；输出——一个构建顺序、一份必须自己拿主意的清单，以及对这件事真实成本的估算。\n构建顺序 依赖关系是刚性的，而且方向跟大多数 ML 团队想开工的地方正好相反 [π0.7 §VI, §VIII]。\n第 1 阶段，机队与遥操作。 机器人、相机、PD 控制、逆运动学，以及操作员用来驱动它们的装置 [π0.7 §VIII]。这一层不存在，下游什么都没有。\n第 2 阶段，数据引擎与标注。 跨环境采集，加上产出子任务切分、质量分、失误标记和速度分箱的标注流水线 [π0.7 §V-A, §V-C, §VI-A]。\n第 3 阶段，基础模型初始化。 Gemma3 4B、SigLIP 400M、BAGEL 14B [π0.7 §IV, §V-B]。这一阶段就是下载权重，是整张清单里最便宜的一步。\n第 4 阶段，训练。 KI 耦合的两个目标函数、完整的上下文 dropout 调度、RTC 延迟模拟 [π0.7 §III, §V-E, §VI-B]。\n第 5 阶段，服务。 异步线程、去噪、分块执行、GPU 供给 [π0.7 §VII, App. D]。\n第 6 阶段，评测。 四个维度、三个指标、逐任务评分细则，以及跑试验的操作员 [π0.7 §IX, App. G]。\n然后飞轮闭合：第 6 阶段的回放与干预数据回流到第 2 阶段成为训练数据——但必须扣掉所有来自泛化类评测任务的部分 [π0.7 §VI-A, §VI-A fn. 1]。\n组件选型 逐模块列出 π0.7 用了什么、外部团队能拿到什么。这是系统搭建中的选型，不是代码移植 [π0.7 §IV, §V-B]：\n模块 π0.7 的选择 可获得性 VLM 主干 Gemma3 4B 开放权重 [π0.7 ref. 106] 视觉编码器 SigLIP 类 400M，来自 Gemma3 开放权重 [π0.7 §IV] 历史编码器 MEM 式视频编码器 方法已发表，无权重 [π0.7 ref. 37] 动作专家 860M 流匹配 Transformer 需从头训练 [π0.7 §VI-B] 动作 tokenizer FAST 已发表且开源 [π0.7 ref. 104] 世界模型 BAGEL 14B 开放权重 [π0.7 ref. 105] 子目标初始化 SuSIE 式 已发表 [π0.7 ref. 93] 延迟处理 训练期 RTC 已发表 [π0.7 ref. 108] 注意力算子 改版 SageAttention 已发表 [π0.7 ref. 112] 这张表最扎眼的地方在于可获得的部分有多多。每一个初始化起点都是公开检查点或已发表方法。你拿不到的是数据和组织 [π0.7 §VI-A, App. A]。\n组织层面的现实 论文的贡献者名单分为 7 类：数据采集与运营；标注与补充数据；策略训练与研究；策略基础设施；机器人硬件；机器人基础设施；写作与插图 [π0.7 App. A]。按人头数，数据采集与运营下有 24 人，机器人硬件下有 22 人，机器人基础设施下有 10 人 [π0.7 App. A]。\n看清楚这个分布。最大的一组是「数据采集与运营」，第二大是「机器人硬件」。 一个按 ML 项目思路做预算的复现计划——GPU 和研究员——在量级上就估错了。组织本身是这套系统的一个组件 [π0.7 App. A]。\n缺口清单 下面是复现时必须在没有指引的情况下自行拿主意的全部内容 [π0.7 §VI, §VI-A, §V-A, §V-C, App. C]：\n缺口 状态 出处 数据集的小时数 / episode 数 / 轨迹数 未公开 [π0.7 §VI-A] 各来源混合权重 未公开 [π0.7 §VI-A] 优化器、学习率调度、batch size 未公开 [π0.7 §VI] 总步数、算力、耗时 未公开 [π0.7 §VI] 标注规范与标注者一致性 未公开 [π0.7 §V-C] 世界模型语料的规模与构成 未公开 [π0.7 App. C] 高层策略的训练数据与超参数 未公开 [π0.7 §V-A] 机队中机器人的数量 未公开 [π0.7 §VIII] 遥操作接口与硬件 未公开 [π0.7 §VIII] 各本体的动作维度 未公开 [π0.7 §VI-B] 单次试验的原始评测数据 未公开 [π0.7 §IX] 完整服务栈 未公开 [π0.7 App. D] 数据存储格式 推断，参照 LeRobot / RLDS [π0.7 §VI-A] π0.6 的架构细节 部分可恢复 [π*0.6 §V-A] 其中两条值得展开 [π0.7 ref. 42]。\nπ0.6 只有模型卡，没有论文 [π0.7 ref. 42]。所以它的直接前任没有可引的规格说明——除了 π*0.6 顺带记下的那些：派生自 π0.5、Gemma 3 4B 基座、860M 动作专家、KI 训练、50 Hz 输出关节角与夹爪指令 [π*0.6 §V-A]。翻后继论文来还原前任，这个习惯值得养成。\nπ0.7 没有公开权重，也没有公开代码。 openpi 仓库只放出了 π0 和 π0.5 [openpi repository]。你能做的只是从论文出发的重新实现，而不是 fork。\n这件事的真实成本 把各部分暗示但没明说的话讲白了：公开细节最密集的地方，恰恰是复现最便宜的地方——架构和超参数，一次下载加一个配置文件搞定 [π0.7 §IV, §VI-B]；最语焉不详的地方，恰恰是复现最贵的地方——语料、标注运营和机队 [π0.7 §VI-A, §VIII]。\n这不是在批评论文——它在数字公开上已经异常慷慨。这是这个领域的结构性现实：护城河在数据引擎，而数据引擎不是一种可发表的产物 [π0.7 §VI-A]。\n第 11 部分 —— 原则与开放问题 输入输出： 输入——完整的系统；输出——可带走的思想，以及诚实的边界。\n五条值得偷走的原则 用来源信息做条件，别过滤数据。 面对质量参差的数据，本能反应是扔掉差的一半。π0.7 把它们留下并打上标签，规模化曲线因此翻了方向 [π0.7 §IX-E, Fig. 18]。凡是你手头有大量、异质、好坏不均的数据的场景，这条都用得上。\n让质量成为变量，而非门槛。 一旦质量从准入条件变成输入字段，低质量数据就从有害变成有信息量，质量本身也变成了推理时可以索要的东西 [π0.7 §V-C, §VII]。\n让上下文在运行时挑选行为模式。 速度、质量、无失误都在部署时设定——第 15 百分位的速度、质量 5、失误 false——还能用 CFG 把 $\\beta$ 一路推到 2.2 来加大力度 [π0.7 §VII]。一个训好的模型，多种行为模式，不重训就能切换。\n把专家蒸馏进通才。 与其养一队任务专用策略，不如在划算的地方跑 RL，再把产出的轨迹作为条件化样本折回通才的训练集 [π0.7 §VI-A, π*0.6 §IV]。结果通才在叠衣和装箱的吞吐量上反超了那些专家 [π0.7 Fig. 6]。\n增加能力而不丢弃能力。 九代之后，FAST token 化、Hi Robot 的层级、KI 的防火墙、RTC 的延迟处理、MEM 的记忆，全都还活在最终系统里 [π0.7 §III, §V-A, §VI-B]。\n还有一条其实是「掩码 vs stop-gradient」那个区分的推论：把「一个部件看得见什么」跟「它改得了什么」分开 [π0.7 §III, App. B]。两套机制，两种失效模式；搞混了，就是知识隔离实现出错的常见方式。\n开放问题 论文对自己的位置很坦白。分布内成功率超过 90%，未见任务或未见的「任务–机器人」组合停在 60–80% [π0.7 §X]。这道落差就是当前的前沿。\n论文提出的方向是把可指挥性本身用于测试任务上的高效学习——通过详细的语言指导，或者通过自主 RL [π0.7 §X]。注意这个圈闭合得多漂亮：原本为吸收异质训练数据而造的条件化机制，反过来成了向一台已部署机器人教新东西的接口。\n底下还压着三个更难的问题。这些是我的判断而非论文的，请当作推断，虽然每一条都建立在公开事实之上 [π0.7 §IX-E, §V-C, App. D]：\n评测能力追不上模型能力。 每个结论都要拿机器人小时来换，样本量始终很小，而作者自己都没法完全判定什么算真正没见过 [π0.7 §IX-E]。随着模型越来越强，区分 85% 和 90% 所需的试验量会超过任何人愿意跑的规模。\n元数据质量是一处隐藏依赖。 整个论点建立在论文自己描述为「粗粒度」的一批标签之上 [π0.7 §V-C]。外界不知道这套方法在条件化开始退化之前还剩多少余量，因为一致性数据没有公开 [π0.7 §V-C]。\n世界模型很贵，而且不在关键路径上。 它要占 4 张 H100、每个子目标 1.25 秒，去辅助一个自己在单卡上 38 ms 就能跑完的策略 [π0.7 App. D]。在跨本体迁移上它确实挣回了这笔开销 [π0.7 §IX-C, Fig. 12]，但这个体量比例本身就在呼唤一个更便宜的子目标生成方案，或一种更紧凑的集成方式。\n这一切留给你什么 如果只从 π0.7 带走一件东西，带走那次重新表述，不是那个架构。架构不过是对已发表组件的一次高水平组装 [π0.7 §IV]。那次重新表述——把「这条 episode 是怎么来的」写进上下文窗口，从而把你最差的数据从包袱变成信号——才是让规模化曲线翻转方向的东西 [π0.7 §IX-E, Fig. 18]。\n参考文献 π 系列及其依赖，全部对照 π0.7 自己的参考文献列表核验 [π0.7 bibliography]：\n工作 标题 arXiv π0 π0: A Vision-Language-Action Flow Model for General Robot Control 2410.24164 [π0.7 ref. 10] π0-FAST FAST: Efficient Action Tokenization for Vision-Language-Action Models 2501.09747 [π0.7 ref. 104] Hi Robot Hi Robot: Open-Ended Instruction Following with Hierarchical VLA Models 2502.19417 [π0.7 bibliography] π0.5 π0.5: A VLA with Open-World Generalization 2504.16054 [π0.7 ref. 14] KI Knowledge Insulating Vision-Language-Action Models: Train Fast, Run Fast, Generalize Better 2505.23705 [π0.7 ref. 103] RTC Real-Time Execution of Action Chunking Flow Policies 2506.07339 [π0.7 ref. 107] π*0.6 π*0.6: a VLA That Learns From Experience 2511.14759 [π0.7 ref. 50] MEM MEM: Multi-Scale Embodied Memory for Vision Language Action Models 2603.03596 [π0.7 ref. 37] π0.7 π0.7: a Steerable Generalist Robotic Foundation Model with Emergent Capabilities 2604.15483 [π0.7 title page] 外部组件 [π0.7 bibliography]：\n工作 作用 arXiv Gemma 3 VLM 主干初始化 技术报告 [π0.7 ref. 106] BAGEL 世界模型初始化 2505.14683 [π0.7 ref. 105] SuSIE 子目标生成方法 2310.10639 [π0.7 ref. 93] 训练期 RTC π0.7 采用的延迟处理 2512.05964 [π0.7 ref. 108] SageAttention 世界模型服务的 8 bit 注意力 2410.02367 [π0.7 ref. 112] Flow matching 动作专家的目标函数 2210.02747 [π0.7 ref. 102] 无分类器引导 推理时的元数据引导 2207.12598 [π0.7 ref. 109] π0.6 没有 arXiv 条目——它是一张模型卡 [π0.7 ref. 42]。其架构可从 π*0.6 §V-A 部分还原。\n本文所有数值均由脚本对照事实台账机械校验；正文中每一个数字都可追溯到被引的来源，论文未公开的内容一律在第 10 部分点名 [π0.7 §VI]。\n","permalink":"https://mzf666.github.io/vla/zh/posts/pi07-generalist-physical-ai/","summary":"一篇可复现级别的 π0.7 深度拆解——每一个公开超参数、每个子系统的输入输出，以及一份诚实的「论文没告诉你什么」清单。","title":"如何构建通用物理 AI：π0.7 从入门到精通"}]