代码即世界
代码即世界将与物理环境的交互组织为两个层级的代码。L1 提供观察和行动所需的基本操作;L2 则将这些操作组合成可执行的 Python 程序。程序化控制是更广泛的具身控制范式之一。
环境提供四种基本操作,分别用于读取任务、观察场景、执行动作和重置环境。这些操作构成智能体可使用的固定接口。重置仅限在 Playground 中使用,以便在同一场景中再次尝试。
在 RoboDojo 中,观测包含 RGB 图像和机器人状态,包括关节状态、末端执行器姿态及夹爪指令状态。动作指定关节或末端执行器目标,并附带夹爪指令;底层控制器负责处理逆运动学和插值。该接口不提供物体真实姿态、深度信息或相机标定数据。
深入剖析 Astra 的失败
为了解编程智能体在物理交互中面临的困难,我们在代码工作区中,以 xhigh 推理强度评估 GPT-6-Astra。评估采用 RoboDojo-sim 任务,涵盖 Generalization、Precision、Long-Horizon、Memory 和 Open,每项任务包含 5 个场景。Astra 会收到任务描述和机器人接口文档,但不会获得任务 wiki。每个回合均从全新的智能体、工作区和模拟器开始;在任务自身的动作额度内,最多允许 100 次获准的代码执行,且禁用重置。
Astra 的平均成功率为 8.50%。我们检查其提交的程序、相机观测和反馈,以找出看似合理的计划在物理执行中失效的环节。两个示例回合展现了发出有效指令与推进任务之间的不同差距。

在井字棋任务中,Astra 尝试抓起一个圆环并将其放到棋盘上。夹爪到达目标位置,但连续两次尝试后圆环仍留在桌面上(动作 216 和 283)。查看腕部相机画面并调整抓取方式后,Astra 首次在动作 367 时明显抓住圆环,此时已耗用 1,100 次动作预算的三分之一。此后回合超时,棋盘任务仍未完成。这一过程表明,构建局部操作程序可能会与完成任务争夺资源。它也说明,保留一个参数化程序,将接近、对齐、闭合和确认抓取成功整合起来,能让后续尝试以已验证有效的操作为基础。
通过执行框架演进实现自我改进
一个 Playground 场景承载着持续循环的代码编辑、执行与反馈。机器人状态和 Python 定义会在多次提交之间保留;重置功能则允许在同一场景中再次尝试。智能体会更新技能和经验教训,并在后续尝试中加以应用。成功的操作可以整理成参数化程序;失败的尝试也可能揭示有用条件或带来恢复策略。即使任务尚未完成,也可能获得有用发现;尚未验证的解释仍只是推测。

在 Playground 阶段结束时,只有技能和经验教训会作为只读材料带入 Test。右侧的同一任务中,每个未见过的场景均从全新的智能体、工作区、Python 命名空间和模拟器开始。智能体使用冻结的执行框架编写代码,并根据执行反馈调整代码。重置功能已禁用,Test 回合既不会更新执行框架,也不会共享新经验。这样便能将场景内的适应能力与在 Playground 阶段获得的知识贡献区分开来。
由于冻结材料包含明确的程序和指导,同一套材料也可以提供给另一种执行模型。跨模型复用无需额外的 Playground 探索、参数更新或学习得到的适配器。我们在相同执行模型和 Test 条件下比较自行生成与迁移而来的执行框架,以评估所获得的知识能否在不同模型间继续发挥作用。
实验
我们在 RoboDojo-Sim 上评估 EmbodiedEvo,以回答以下研究问题:
- 与基于 VLA 和 WAM 的方法相比,EmbodiedEvo 的表现如何?
- 哪些能力会随着执行框架演进而提升?哪些任务仍然困难?
- 获得的经验能否在不同模型和任务之间迁移?
实验设置
RoboDojo-Sim 是一个具有挑战性的基准,用于评估通用机器人操作策略。它包含 12 项 Generalization、8 项 Precision、8 项 Long-Horizon、6 项 Memory 和 8 项 Open 任务。每套执行框架(技能 + 经验教训)均基于一个 Playground 场景布局获得,且该布局与 Test 布局不同。
执行模型包括采用 xhigh 和 medium 推理强度的 GPT-6-Astra、采用 xhigh 推理强度的 GPT-5.6-sol,以及采用 xhigh 推理强度的 GPT-5.6-luna,简称 Astra、Sol 和 Luna。
讨论
代码将物理策略执行时所用的参数、检查和控制流程显式呈现出来,为依据反馈进行修改提供了具体目标:在负载掉落后,堆叠智能体会保留受限的运动范围,并在后续执行中检查物体是否仍被抓牢。参数化程序由此既能保留有用操作,也允许根据场景调整目标。经验教训则补充了这一表示方式,记录何时应应用或重新考虑这些操作。原始交互历史取得了相近的观测成功率,而技能和经验教训将 Test 阶段的总 token 用量减少了 11.3%。这表明,将交互整理成易于调用的程序和指导,是这种表示方式的一项实际优势;仅有代码并不能保证物理假设正确。
结论
我们提出了 EmbodiedEvo,这是一个让编程智能体将物理交互转化为可复用技能和经验教训、且无需更新模型参数的框架。在 RoboDojo-Sim 上,EmbodiedEvo 的平均分为 44.48,SR 为 37.82%。配对评估显示,在不同输入设置下均取得稳定提升。与原始交互历史相比,技能和经验教训在观测表现相当的情况下,将 Test 执行成本降低了 53.0%。这些结果表明,执行框架演进能够保留可执行操作及其适用条件,从而改善任务求解的起点。精确接触和可靠的长时程执行仍是拓展这一方法的重要方向。
能力变化
能力分析以执行记录为依据。所有案例均使用 Astra/xhigh;配对比较采用相同场景。证据材料保留了原始程序、反馈、文件读取记录和相机画面。这些精选案例用于说明机制,并不代表失败频率,也不能单独用于确定因果效应。
经验复用及其局限
我们比较了成功复用、跨模型迁移和一次性能回退。文中还提供了成功堆叠过程中留存的完整抓取函数,以及所用的两条经验教训。
冻结的经验记录为:“机械臂到达了目标,但未能 удерж住负载。” Test 阶段第 2 次执行逐字包含 ee_move.py 和 pick_from_above.py。第 9 次执行在通过视觉检查确认抓取保持后,将平移范围限制为 8 mm;第 15 次执行完成了堆叠。这证实了实际发生了复用,但不能据此单独确定该范围限制的因果贡献。
常见问题
EmbodiedEvo 中的技能和经验教训是什么? 技能是可复用的参数化程序,经验教训则记录应用或重新考虑这些程序的条件。
RoboDojo 接口提供哪些信息? 它提供 RGB 图像和机器人状态,包括关节状态、末端执行器姿态及夹爪指令状态。它不提供物体真实姿态、深度信息或相机标定数据。
EmbodiedEvo 如何区分学习和测试? 技能和经验教训在 Playground 阶段获得,并冻结为 Test 阶段使用的只读材料。Test 场景采用全新的智能体、工作区、Python 命名空间和模拟器,并禁用重置功能。
EmbodiedEvo 还有哪些局限? 精确接触和可靠的长时程执行仍是拓展这一方法的重要方向。
