English
Yifan Kang · 2026 年 11 月 12 日

后 Astra 时代的机器人学

前沿编程 agent 现在领跑一个机器人操作基准。谈谈为什么会这样,以及这给机器人研究留下了什么。

我是在奥斯汀写这篇文章的,正赶上 CoRL 2026,这也是我第一次参加 CoRL。我还是本科生,做机器人研究的时间不长,所以这一周大部分时候都在听比我在这个领域待得久得多的人聊天。听到的东西里,很多都和 agent 有关。

11 月 9 日是主会第一天,Jim Fan 的主旨演讲里有一页讲 GPT-6 Astra,不到半小时,这一段的视频就在 X 上传开了。CoRL 今年还第一次征集 late-breaking results,两个主题之一就是 agentic robotics。

会议间隙聊天时,好几位研究者,其中也有资深的,看上去对 LLM 进入机器人领域的速度有些泄气。如果一个编程 agent 在操作任务上能打败 VLA,那么问一句过去几年的策略学习到底是为了什么、接下来还剩什么可做,并不过分。我正在决定接下来几年做什么,也一直在问自己同样的问题。

同一天,Anthropic 公布 Claude Fable 5.2 在 RoboDojo Sim 上得分 64.9%,Opus 5.5 是 39.4%,GPT-6 Astra 是 29.8%,Fable 5.1 是 27.6%。这些都是 Anthropic 自己在最高 effort 下跑的结果,公告里没说 64.9% 是成功率还是部分得分。不管是哪一种,一个没有机器人策略头的通用语言模型,现在已经排在我们这个领域为机器人控制造出来的大多数系统前面。

Anthropic 没有公布逐任务的结果,所以这篇文章大部分用的是我能找到的最接近的公开数据。Agent as Policy(AGP)把 GPT-6 Astra 放进一个编程 agent 框架里运行,公开了全部 2,100 个 RoboDojo episode,包括日志和视频。它的得分是 63.6,和 Fable 5.2 差不多。

RoboDojo Sim,42 个任务平均

Anthropic 内部评测(指标未说明)Agent 框架,部分得分学习型机器人策略,部分得分
图 1. 同一个 GPT-6 Astra,两个分数:单独跑 29.8,放进 AGP 框架 63.6。各来源的评测协议不同。

我对这件事有两个反应,而且我猜哪一个都不是主流看法:

反应 1这个结果并不太意外。
反应 2它对机器人研究仍然是很好的消息。

我看到的兴奋里,大多带着一种“这是凭空冒出来的”的感觉。但我觉得,从这个基准测的是什么、从机器人学本来就会做什么出发,这个结果几乎是顺理成章的。第二个反应和我上面说的那种情绪相反:做机器人学习的人把这个结果看成自己这条路的终点。操作这个方向此前已经换过好几次范式(图 2),而旧方法大多作为新系统的零件留了下来。逆运动学和运动规划熬过了向学习的转变,现在领跑 RoboDojo 的 agent 正把它们当工具调用。我预计学到的策略也会以同样的方式留下来。把第一个反应为什么成立想清楚,也能更清楚地看出还有哪些问题没解决。

机器人操作的范式,1961–2026

图 2. 点一张照片,打开那个时代的小演示。把鼠标放在圆点上或点一下,看细节。

§1看看这个基准到底考什么

RoboDojo 有 42 个仿真任务,分五类:泛化(Generalization)、精度(Precision)、长程(Long-Horizon)、记忆(Memory)和开放(Open),每个任务 50 个 episode。任务清单比排行榜更能说明问题。举几个例子:

在解等式任务里,机器人要读出数字、算出答案、决定哪块积木放哪里,然后找到这些积木并把它们挪过去。只有最后这一步真正和运动控制有关。

如今的 VLA 已经学到了很厉害的动作分布,能叠衣服,能打开没见过的抽屉。它们缺的是类似大脑的东西。VLA 把最近的观测和一条指令映射成下一段动作,这个循环里没有地方存计划、追踪隐藏状态,或者发现算错了。井字棋测的主要就是缺的这一块,所以它几乎说明不了策略的“手”好不好。

前沿 LLM 是从另一头接近这个基准的。推理、记忆和把任务拆成步骤,它本来就擅长;它需要的是把决定变成动作的办法。

图 3. GPT-6 Astra + AGP,头部相机视角。标签是 50 个 episode 的成功率。数据:AGP 数据集,CC-BY-4.0。

§2机器人学早就有“手”了(对某些任务来说)

上过经典操作课的人很早就会学到这一点,但如果你是从模仿学习进入这个领域的,就很容易错过。

只要知道东西在三维空间里的位置,很多操作问题其实已经解决了。给定物体位姿,可以采样抓取,解手臂的逆运动学,规划一条无碰撞路径,再用反馈控制器去跟踪。这些方法很老,大多是人手设计的,但它们对不同物体、不同手臂都能用,这正是它们通用的地方。

其中一些可以追溯到很久以前。1971 年,Shakey 就在用 STRIPS 规划动作。1980 年代末,Lozano-Pérez 的 Handey 系统能根据场景的几何模型规划抓取放置动作,包括抓取本身。RRT(LaValle,1998)让高维手臂的运动规划变得实用,任务与运动规划(Kaelbling 和 Lozano-Pérez,2011,以及其他很多工作)把符号规划和几何规划连了起来。图 4 里 agent 调用的东西,大多是这些工作的后代。

它们一直缺的是一个驱动者。每来一个新任务,都得有人手写状态机:先拿哪个物体、放到哪里、怎样算完成、抓滑了怎么办。这份工程成本,是这个领域转向端到端学习的一个重要原因。

agent 把这份成本的大部分接了过去。它看场景,写一段调用感知、逆运动学和规划器的程序,运行,再看一眼,出了问题就再试。VLA 得从数据里学会失败恢复,而 agent 只要检查自己的结果,就能得到一个基础版本。

Ken Goldberg 九月在一篇题为《Goosebumps》的文章里提出了类似的观点,他把 agentic robotics 称作“机器人学两种主流文化之间的第三条路”。我先学的是学习这一派,被提醒另一派在这里做了多少事,对我很有用。

从像素到动作的两条路

端到端 VLA
不在回路里 规划 记忆 检查与重试 动作块 → 机器人,然后是下一块 VLA “把等式解出来”
Agent + 经典工具
感知 逆运动学 运动规划器 控制器 前沿 LLM agent “把等式解出来” 新图像 → 检查 → 重试
图 4. 从下往上读。agent 的代码是图 5 的浓缩版。

看看 agent 在一个 episode 里实际做了什么,会很有帮助。AGP 公开了每个 episode 的完整事件日志。模型的内部推理是加密的,但它写下的消息和每一次工具调用都在。下面是解等式任务的第 0 号布局,它用 12 次工具调用完成了任务。

一个 episode,逐次调用

第 1 次调用,共 8 次机器人动作 0 / 157
消息测量执行(机器人在动)
  1. 1消息“缺的运算符是除号:8 ÷ 2 = 4。我会把除号竖着放到空的底座上,其他积木不动,然后两只手臂回到初始位置。”
  2. 2measure顶部相机像素 (400, 320) → 三维点 (0.177, 0.151, 0.008) m,占地 44 × 28 mm,朝向 −48.5°;对 (283, 204) 处的空底座做同样的测量
  3. 3run先后退,再执行 R ee g+0,0,.045 down130.79 plan:用规划器移到积木上方 → 到达,误差 0.1 mm
  4. 4run下降到接触,闭合,抬起 → 服务器确认:尝试了抓取,物体跟着走
  5. 5run重新测量底座,把积木搬到它上方
  6. 6消息“除号已经拿在空底座上方了。放下松手之前,我先检查一下它的位置。”
  7. 7measure ×3从顶部相机和腕部相机找到手里的积木 → 腕部深度匹配不确定(3.6 cm),于是它根据手指夹持的位置自己估了一个高度,7.8 cm
  8. 8run慢慢放下,张开,后退,两只手臂回到初始位置 → 成功
图 5. 解等式,第 0 号布局,有删节。拖动进度条或点一次调用。agent 写消息或测量时视频停住;机器人动作以半速播放。

agent 从来不输出关节指令。它用一句话决定要做什么,之后的一切都交给工具:把像素变成三维点,或者规划一条到某个位姿的路径。在松手之前,也就是唯一无法撤回的那一步,它又测了一遍,并绕开了一个它不信任的深度估计。整个数据集都是这样:2,100 个 episode 里大约有 21,000 次 measure 和 47,500 次 run 调用,大约每五次就有一次报告了需要 agent 处理的失败。在 260 个 episode 里,它还通过自己写的 JavaScript 发出了其中约 5,200 次调用;日志保留了这些调用,但没有保留脚本本身。

关于这套设置,有一点要记住:AGP 的提示词里每个任务还带了几条人写的提示,比如拿螺母之前夹爪该张多大。一些人类的任务知识仍然在回路里,只不过是用文字而不是代码写的。

§3为什么是现在?

这个架构也不新。前沿模型越来越强,机器人领域交给它的部分也越来越多(图 6):先是在单独训练好的技能之间做选择,然后是写调用感知和控制的程序,再到对着一个评分自己改进整个机器人系统,最近则是直接输出动作。SayCan、Code as Policies 和 VoxPoser 在 2022 和 2023 年就在简短的桌面任务上证明了这个思路可行,用的模型比今天弱得多。工具有几十年历史,架构也有四年了,那么变化只能出在模型这一侧。

agent 范式内部:LLM 被交给了什么

图 6. 点一张卡片,看这一阶段是怎么做的。把鼠标放在圆点上或点一下,看细节。

我会指出四件差不多同时变好的事。

我不知道这里面有多少来自通用的预训练。各家实验室没说用什么数据训练,An Unexpected Robot Policy 的作者也指出,对一个闭源权重的模型,无法排除它见过和基准相关的材料。无论如何,几种不同的能力得差不多同时到位,这也是这次跃升看起来如此突然的部分原因。

§4它在哪里失败

下面是 AGP 这 63.6 分按类别的拆分。成功指完整完成任务;部分得分是排行榜上报的那个数。

类别成功率部分得分
记忆91.0%92.2
开放62.3%65.8
泛化54.7%59.8
精度44.0%50.9
长程28.8%49.5
平均56.1%63.6

框架和模型差不多一样重要。同一个 GPT-6 Astra 在 Anthropic 的评测里是 29.8%,在 An Unexpected Robot Policy 里是 29.0(成功率 22.5%),后者由它自己选末端目标,规划器只负责执行。有了 measure 和多步 run,分数翻了一倍还多。所以下面这些失败,主要是工具做不到的地方。

每个 RoboDojo 任务,GPT-6 Astra + AGP

图 7. 每个点是一个任务。深色竖线和右侧数字是类别平均。

记忆类 91% 在意料之中。精度类 44% 更让人意外,因为对一个没有训练过操作策略的系统来说,这已经很高了。逐个任务的数字能说明原因。

成功率部分得分
图 8. 浅色条是部分得分。

这 44% 是把接近 90% 的任务和接近零的任务平均出来的。敲木琴键需要在自由空间里精确定位;agent 一旦找到琴键,直接移过去就行。插钥匙需要在接触中保持精度。位姿上的小误差会让它卡住,而修正这些误差需要 agent 没有的快速力反馈。销钉入孔问题至少从 1982 年 Whitney 关于柔顺装配的工作就开始研究了,当时通常的办法是用一个在接触时能稍微让一让的手腕。编程 agent 和规划器都没有内置这种东西。

任务定义让这个差别更具体。拧螺丝是 agent 唯一做得好的“手”类任务,结果它其实更接近敲木琴。仿真器里的“螺丝”是六角螺母,要在 1 mm 以内套到立柱上,而且不检查有没有拧,所以归根结底是精确放置。插钥匙则要求钥匙竖直、偏差在 7° 以内,推进锁里 2.5 cm,然后再转动。

敲木琴90%
插钥匙0%
图 9. 两个都是精度类任务。

这让我觉得,我一开始用的“大脑还是手”的划分有点太粗了。更有用的区分也许是:

最弱的长程类只有 28.8%,也以同样的方式分成两半(把图 8 切到“长程”)。如果一个任务长是因为需要思考,比如按类别分拣物体或者下棋,agent 做得不错。如果一个任务长是因为同一个精细放置要重复很多次,比如把鸡蛋放进蛋托,或者把零件套到叠叠乐的立柱上,任何一处失手就整个 episode 失败,agent 就会失败。在一个装鸡蛋托的 episode 里,它用掉了 700 次允许动作中的 682 次,仍然没做完。计划看起来没问题,错误出在不断累积的小操作失误上。

物体分类92%
整理桌面32%
图 10. 两个都是长程类任务。

以上全是仿真,真机上的证据要少得多。An Unexpected Robot Policy 的作者在 GPT-6 Astra 多次发出不安全的动作、其中一些损坏了硬件之后,停止了真机试验;按他们的理解,Astra 理解任务比安全地执行任务更可靠。Goldberg 的组把模型放在控制回路之外,效果更好。Astra 根据一段短视频为擦海绵任务搭了一个仿真,在里面调好了控制器,导出的代码在他们的真机上跑通了,不过有一次试验把金属杆碰倒了,因为它的质量没法从视频里推断出来。两种情况下,理解都比接触更容易迁移到硬件上。

§5够快吗?

接触是一个缺口,时间是另一个,也是我听到最多的反对意见。AGP 日志记录了 300.6 小时的墙钟时间,对应 14.3 小时的仿真机器人动作,平均每个 episode 约 8.6 分钟。这 300 小时里,有 208 小时花在工具调用之外,也就是模型推理和 agent 运行时;仿真、渲染和运动规划加起来是 93 小时。

2,100 个 episode 的时间花在哪里(GPT-6 Astra + AGP)

8.6 分钟每个 episode 的墙钟时间
21×墙钟时间 ÷ 仿真机器人时间
69%墙钟时间在工具调用之外
模型推理 + agent 运行时工具调用(仿真、渲染、规划)仿真机器人时间
图 11. 深色方块是机器人真正在动的时间。

按每个 episode 算,大约是 6 分钟的 agent 时间对 24.5 秒的机器人动作。agent 的工具调用次数中位数是 31,每次调用都要重读一遍越来越长的上下文(每个 episode 145 万输入 token,96% 命中缓存),再写出几百个 token,一个 episode 总共约 5,900 个输出 token。我看到三个能把时间降下来的地方。

三者相乘,每年是 3.4 到 15 倍。把 6 分钟降到 24.5 秒需要约 14 倍,落在 2027 年底到 2029 年初之间。这只算了 agent 那一份;每个 episode 在工具里花的 2.6 分钟需要各自提速。

每个 episode 的 agent 时间,外推

图 12. 今天的 5.9 分钟在三种年提速下的变化。圆点标出它追上机器人动作时间的时刻。

即便到了那时,仍有一些推理留在关键路径上,因为恢复就意味着要看结果、再决定怎么办。机器人学对此早有答案。Brooks 在 1986 年主张用不等规划器的快速反应层,之后的三层架构(Gat,1998)把一个慢的审议层放在技能调度层和快速控制器之上。agent 正好放在最上面这一层:技能执行时它并行思考,出岔子时再介入。

LLM 最终会不会也变成 System 1,也就是负责灵巧控制的快速层?我觉得不会。通用模型一旦跨过某一层的延迟门槛,就会接管那一层,我预计这会先发生在中间层,也就是 VLA 今天以每秒几次的频率做出的抓放决策。要以几百赫兹闭合接触回路,需要的提速比上面的 14 倍还要多上千倍,而同样的提速也会让小的机器人模型变快。何况缺的也不是速度。agent 在每个 RoboDojo 任务上都一样慢,但交换积木是 96%,插钥匙是 0%,因为知道钥匙该插到哪,不等于知道怎么凭手感把它插进去。这种知识来自接触数据,而网上的文字和视频里这类数据很少。所以 System 1 仍会是一个单独的、更小的模型,又回到了 §4 的结论。可能会变的是谁来造它:agent 可以搭仿真器、采集数据,再训练出它以后要调用的策略。

§6这是苦涩的教训吗?

Fable 5.2 发布当天,Anthropic 的 Alex Albert 发帖说:“robotics will fall to the bitter lesson too.” 我觉得他说得对,只是可能和机器人圈通常的理解不太一样。Sutton 的论点是,随算力扩展的通用方法,主要是搜索和学习,最终会胜过建立在人类手工知识上的方法。这是关于方法的论断,并没有专门说 LLM,也没有专门说端到端训练。

在机器人领域,它通常被读成支持端到端学习的论证:更多示教数据、更大的 VLA,最终也会学会推理。在这个基准上,这并没有发生。在开放类里,也就是包含解等式和语言条件任务的那一类,RoboDojo 排行榜上没有任何学习型策略超过 25 分,而排名前六的 agent 在 49 到 78 之间。起作用的是一个调用逆运动学和运动规划器的模型,正是端到端观点原本认为我们该抛弃的那些手工组件。

按 Sutton 的原意读,这个结果是吻合的。写程序、在测试时对程序做搜索,本身就是一种随算力扩展的通用方法,规划器只是它外面的工具。就算机器人学真的被苦涩的教训拿下,逆运动学可能也还在回路里。更有意思的问题是,算力最好花在哪里:策略训练、测试时推理、规划,还是部署中的学习。

§7为什么这是好消息

高层推理正在变成可以从 API 拿到的东西。这去掉了一类问题,而这些问题本来就不是靠收集遥操作数据能解决好的,比如算术、记忆、任务分解,以及知道充电器是干什么用的。

留给我们的,主要是操作的物理部分,再加上让这一切足够便宜、足够快、真正能用的问题。Moravec 在 1988 年指出,我们认为聪明的那些能力,比如算术和下棋,在计算上是容易的,而感知和运动技能才是难的。RoboDojo 看上去就是将近四十年后的同一个观察:agent 解出了等式,然后在插钥匙上卡住了。

还有一个更实际的乐观理由:agent 开始做机器人研究里慢的那部分了。Goldberg 文章里那个擦海绵仿真,Astra 根据一段短视频不到一小时就搭好了,海绵形变也包括在内。在今年 CoRL 的 late-breaking 论文之一 Flip Anything 里,一个编程 agent 通过自己的迭代,把仿真中翻转物体的成功率从 24.7% 提到了 95.0%。搭仿真器、调控制器、跑消融实验,占了机器人方向学生很大一部分时间,而这三件事都在变便宜。

学到的策略也不会因此变得无关紧要。RoboDojo agent 赛道上有两个参赛方案,包括排名第二的那个,把 agent 和学习模型配在一起:GO-3 Nano Preview 配了一个世界动作模型,PhysicalRSI 配了一个 VLA。整个排行榜上插钥匙的最高分 48.4,属于 PhysicalRSI。Goldberg 设想的技能库里也可以包含 VLA 策略。一个可靠的接触丰富型技能,正是 agent 想调用的那种工具,所以策略学习现在多了一种新用户。

§8还有哪些开放问题

把前面几节放在一起,我认为下面这些问题挡在今天的 agent 和通用机器人之间。更好的语言模型对其中一些有帮助,但没有一个会自己消失。

  1. 01灵巧与接触

    插入、手内操作、布料、颗粒物,以及扔这样的动态技能,都依赖相机看不到的力和状态。agent 知道应该发生什么,却没有能让它发生的工具。力觉和触觉感知、柔顺控制和学到的接触技能,正是它想调用的东西。

  2. 02速度与反应

    光是追上机器人动作的时间,agent 就要快约 14 倍,而接触控制需要毫秒级的反应。这需要一个慢的审议层架在快速策略之上,也需要办法把 agent 想明白的东西编译成不依赖它运行的小策略。

  3. 03部署中的改进

    一个在工作中变好的机器人,需要真实世界里的成功信号、失败后能重置的办法,以及安全的探索。长任务要求每一步几乎每次都成功,所以失败要能被发现、被恢复,而 agent 学到的东西要能带到下一个任务,而不是只留在一次会话里。

  4. 04仿真到真机与安全

    agent 现在能自己搭仿真器,但质量、摩擦和刚度很难从视频里推断出来;一个理解了任务的 agent 仍然可能发出损坏硬件的动作。安全约束必须放在 agent 下面,让错误的计划没法绕过它。

  5. 05跨本体迁移

    逆运动学、规划器和技能仍然是一台机器人一台机器人地写,灵巧手和人形机器人的工具链也很薄。agent 框架也许换一套工具就能搬到新机器人上,但底下学到的技能搬不过去。

  6. 06评测

    这篇文章里几乎所有证据都来自仿真,不同报告的分数没法直接比较,闭源模型也可能见过基准相关的材料。机器人学需要更便宜的真机评测,以及能把推理和物理技能分开测的基准。

我来奥斯汀时,问的和会议间隙聊过的那些人是同一个问题:还有没有留给我做的事。会议快结束了,我相当确定是有的。卡住的钥匙、滑掉的鸡蛋,在 Astra 之前就难,现在仍然难;而在这些任务上失败的 agent,现在可以帮忙搭建解决它们所需的仿真器和控制器。