论文

OpenRUA:机器人使用智能体即零样本视觉运动策略

OpenRUA:机器人使用智能体即零样本视觉运动策略

编码智能体 正通过编写并执行机器人控制程序,将能力延伸至物理世界。人们或许会期望这些智能体直接使用工程师数十年来积累的成熟软件栈来访问传感器与控制运动。然而已有工作大多为机器人使用场景工程化地搭建复杂的定制 harness 来编排智能体,尤其是通过规定专门的工作流并提供定制接口。这引出一个问题:这种额外的 harness 工程真的有必要吗? 我们提出 OpenRUA,一种 零抽象 harness:它跳过定制的抽象层,只给现成的编码智能体提供对机器人原生软件接口 ROS 2 的终端访问。OpenRUA 采用极简的 workspace-as-harness 设计,仅提供 ROS 2 文档与基础工具,让编码智能体自行组织工作,而不编排任何智能体工作流。在该工作空间内,OpenRUA 将感知重构为 文件 I/O,将操作重构为 编码。 在由 Claude Opus 5 驱动的 Claude Code 下,OpenRUA 在 CaP-Bench 上取得 99.0% 的成功率,在 LIBERO-PRO 上取得 87.0%,表明现成的编码智能体可以通过机器人原生接口充当 零样本视觉运动策略,无需定制原语或任务特定训练。 极简设计下,进一步分析揭示了编码智能体引人注目的 涌现行为: - 感知方面:智能体在 96.80% 的回合中自发编写程序处理原始传感输入并推导度量测量值。 - 操作方面:智能体在 95.87% 的回合中自发构建运动控制客户端(如夹爪控制),并在 50.13% 的回合中构建闭环控制程序(如根据传感器反馈调整运动)。 代码已开源:https://github.com/terminalworld/OpenRUA。

论文精读

TL;DR OpenRUA 只给 coding agent 终端和 ROS 2 原生接口,让它自行编写感知与操控程序,在 CaP-Bench 和 LIBERO-PRO 上分别达到 99.0% 和 87.0% 成功率,证明零样本视觉运动策略无需定制化 harness。

问题

问题背景

编码智能体正在向物理世界延伸,通过编写并执行机器人控制程序来操作真实机器人。这类智能体若能直接利用成熟的机器人软件栈(如 ROS 2),将极大降低部署门槛并提升通用性。

现有方法局限

此前工作普遍依赖定制化 harness,为智能体预设了复杂的工作流与专用接口。例如,为每个任务手动设计 primitives、状态表示或感知模块,并将它们封装成特定 API 供智能体调用。此类抽象层带来三个具体技术缺陷:

  1. 泛化性差:新任务需要重新设计接口与 primitives,无法复用已有工程积累。
  2. 工程负担重:harness 本身成为新的开发瓶颈,且往往与特定机器人平台或仿真环境耦合。
  3. 抑制智能体自主能力:预设工作流限制了智能体自行组织感知-规划-控制循环的空间,其零样本推理能力被约束在人类规定的框架内。

为什么这个问题难 / 重要

机器人操作任务的状态空间高维、感知噪声大、动作执行具有不可逆性,智能体必须实时完成感知理解、任务规划、闭环控制的完整闭环。若强制智能体通过定制抽象层交互,不仅损失原生接口的丰富信息(如 ROS 2 topic 的原始点云、关节状态),还可能导致智能体无法利用通用软件开发经验(如文件 I/O、库调用)来应对开放环境。业界关注点在于:能否让一个未经机器人任务微调的通用编码智能体,仅凭终端访问原生 ROS 2 接口就完成操作,这直接关系到机器人智能体的规模化落地成本与可维护性。

行业类比

类似通用编程智能体直接使用标准命令行工具与文档编写代码,而非为每个项目定制 IDE 插件——借助原生工具链才能最大化智能体的既有能力与知识迁移。

核心洞察

  • OpenRUA 的核心洞察是:零抽象 harness + 原生 ROS 2 终端访问,足以让现成 coding agent 直接充当零样本视觉运动策略。与以往工作不同,此前系统要么为机器人 agent 精心设计定制工作流和专用接口(如 RT-2 的 action token 或 Code as Policies 的 skill 库),要么需要任务特定训练;OpenRUA 反其道而行,只提供 ROS 2 文档、基本工具和一个极简 workspace,完全不编排 agent 行为。在 CaP-Bench 上 99.0% 和 LIBERO-PRO 上 87.0% 的成功率表明,放弃 bespoke abstraction 反而释放了 coding agent 的通用代码生成与闭环调试能力,挑战了“机器人 agent 必须配备厚重 harness 或专用模型”的普遍假设。
  • OpenRUA 揭示的另一个关键角度是:将感知重新定义为文件 I/O、操控重新定义为编写控制代码,会激发大量 emergent behaviors。数据显示 agent 在 96.80% 的 episode 中自发编写程序处理原始传感器数据并提取度量,在 95.87% 的 episode 中构建运动控制客户端,在 50.13% 的 episode 中构建闭环控制程序。这些行为不是预设的,而是 agent 在只有终端和文档的条件下自行组织的。这证明 LLM 的编码与推理能力可以直接迁移到物理交互,无需额外的感知模块或控制原语库。与依赖预训练视觉运动策略或手工 skill 库的方法相比,OpenRUA 展示了一种更通用、更少工程投入的 zero-shot robot manipulation 路径。

方法

输入与总体思路

OpenRUA 将机器人操作视为 coding agent 的离线编程任务。输入仅包括:任务自然语言描述、机器人当前观察(RGB/深度图像与数值状态文件)、以及 ROS 2 官方文档和少量 starter tool 源码。没有专门的感知 API、动作原语或状态抽象。

关键模块:Workspace-as-Harness

  1. 零抽象终端访问:coding agent(如 Claude Code)直接通过终端使用 ROS 2 命令行与 Python 库,读写机器人原生话题 / 服务 / 参数,无任何定制 harness 或编排工作流。
  2. 感知重定义为文件 I/O:agent 自主编写程序读取图像 / 数值文件,处理原始传感器数据并提取度量信息(如从深度图反投影到物理坐标)。实验中 96.80% 的 episode 出现此类自发生成的感知程序。
  3. 操控重定义为 coding:agent 编写控制客户端(如 gripper / 关节控制器)并执行运动命令;在 50.13% 的 episode 中会自发构建闭环控制程序,根据传感器反馈调整下一动作,而非一次性开环执行。

输出

最终直接产生可执行的机器人控制代码序列,相当于零样本 visuomotor 策略。在 CaP-Bench 达到 99.0% 成功率,在 LIBERO-PRO 达到 87.0%。

与同类方法的差异点:OpenRUA 不需要 bespoke harness、预设 skill primitives 或 task-specific training,只靠通用 coding agent 自发利用原生 ROS 2 接口组织感知与操控,从而在零样本条件下匹配或超越专门设计的 agent harness。

实验

实验设计

OpenRUA 采用 zero-abstraction harness,仅向现成 coding agent 提供 ROS 2 终端访问、文档与基础工具,不编排任何 agentic 工作流。感知被重定义为文件 I/O,操控被重定义为编写代码。评估覆盖 CaP-Bench、LIBERO-PRO 及 RoboCasa365 分布泛化测试,以单次零样本执行计算成功率。

关键发现

OpenRUA 在 CaP-Bench 上达到 99.0% 成功率,LIBERO-PRO 上达到 87.0%。分析显示 coding agent 自发产生结构化行为:96.80% 的 episode 中编写程序处理原始传感器并提取度量;95.87% 的 episode 中构建运动控制客户端(如夹爪控制);50.13% 的 episode 中出现闭环控制程序(根据传感器反馈调整运动)。这证明现成 coding agent 可通过机器人原生接口直接充当零样本 visuomotor policy。

与基线对比

此前工作普遍设计 complex custom harness,规定专用工作流并提供 bespoke 接口。OpenRUA 移除这些抽象后不仅未崩坏,反而激发 agent 的自主工具构建能力,表明 harness engineering 并非必需。零抽象设计降低了工程开销,同时保留了 ROS 2 生态的成熟能力,为机器人操作智能体提供更简洁的落地范式。

行业影响

落地场景

  • 仓储物流机器人:电商仓库的分拣、上架、退货处理等任务中,机器人需快速适应海量 SKU 变化。OpenRUA 让编码 agent 直接通过 ROS 2 接口生成感知与控制程序,无需为每个新物品单独训练模型或编写脚本。
  • 工业质检与装配:面对小批量多品种生产,利用 agent 零样本生成视觉检测与力控装配代码,缩短产线换型时间。
  • 家庭服务机器人:用户通过自然语言指令让机器人执行新任务(如“把桌上的红杯子放到洗碗机”),agent 实时编写程序调用 ROS 2 服务,实现个性化操作。

商业价值

  • 降低部署成本:传统机器人编程需专业工程师,且深度模型训练需大量标注数据;OpenRUA 将成本转移到 LLM 推理,按需付费,边际成本低,尤其适合长尾任务。
  • 缩短交付周期:从任务描述到可执行代码分钟级完成,而传统方法可能需数周。例如在电商大促前快速调整机器人流程。
  • 提升泛化能力:实验显示 99.0% CaP-Bench 和 87.0% LIBERO-PRO 成功率,证明零样本策略可处理多种场景,减少对特定环境微调的依赖。

接口集成

  • OpenRUA 以 workspace-as-harness 极简设计:仅提供终端访问 ROS 2、文档和基础工具,无定制化抽象层,因此可无缝嵌入现有机器人软件栈。
  • 与 ROS 2 生态直接兼容:可复用已有节点、消息、服务,无需改造底层。
  • 集成建议:
    1. 在仿真环境(如 Gazebo)中运行 OpenRUA 进行快速原型验证,再迁移到真实机器人。
    2. 作为机器人 CI/CD 流水线的一部分,自动生成测试脚本或执行特定操作。
    3. 结合人机协作界面,让操作员用自然语言下发指令,agent 负责生成代码并执行。

具体落地 use case:

  • 电商退货分拣:某电商仓库需将退货商品按类别放入不同周转箱。机械臂配备 RGB-D 相机,操作员输入“将蓝色包装盒放入 B 箱”,OpenRUA 的 agent 读取点云、识别颜色和尺寸、编写抓取与放置程序,并通过 ROS 2 控制夹爪。当新商品出现时,无需重新训练,只需更新指令。
  • 自动驾驶传感器标定:自动驾驶测试车上的机械臂用于调整激光雷达或相机支架。agent 读取标定板图像,计算外参误差,生成运动控制指令微调支架位姿,全程自动完成,提高标定效率。

局限

  • **仿真与真实环境差距**:实验仅在仿真 benchmark(`CaP-Bench`、`LIBERO-PRO`)上验证,未在真实机器人部署。仿真中 ROS 2 接口、传感器噪声和物理交互均被简化,真实场景可能面临通信延迟、标定误差和非标准接口。agent 的零 shot 能力部分依赖预训练模型对 ROS 2 生态的熟悉,若真实硬件采用不同中间件或自定义协议,成功率可能显著下降。此外,仿真任务多采用固定相机和已知标定,而真实环境中的不确定性更难处理。
  • **对高性能编码智能体与 token 预算的依赖**:主结果基于 Claude Opus 5 + Claude Code,该模型推理成本较高,且每个 episode 需要大量 token(附录中有 token 预算统计),长时运行成本可观。论文虽进行了 scaling 分析,但其他模型(尤其开源模型)的表现可能明显减弱,限制了方法在资源受限场景的推广。同时,依赖商业 API 可能带来延迟、稳定性和数据隐私问题,不利于实时控制。
  • **任务复杂度与动态环境适应性有限**:基准任务以拾取放置、简单操作序列为主,缺少复杂多步装配、快速动态避障或长期自主运行。agent 自发编写的程序多为开环或简单反馈控制,在分布偏移、物体堆叠或遮挡情况下鲁棒性未知。实验虽包含 distribution shift 测试,但范围较小。此外,通过文件 I/O 和程序执行循环实现感知与控制,控制频率可能受限,难以满足高动态任务(如抓取运动物体)的实时性要求。
论文Zhaoyang Chu2026-10-01原文

相关内容