PAPER DEEP DIVE
机器人使用智能体民主化:开放模型统一执行框架
uni-robot-agent 将模型、调度、共享工具、服务与后端拆成统一机器人使用框架,通过异步流水线、不可变观测、可追踪执行和结构化反馈,让不具备特权输入的开放权重模型直接操控机器人;Qwen3.8-Flash-Next 在 RoboDojo 上取得 31.39 分,超过已发表的 GPT-6 Astra–RoboProbe 28.97 分,并在 19 项真实任务上取得 49.50 分。
一句话总结
这项工作把机器人使用智能体拆成可替换的五层执行框架,用共享工具、异步调度、可追踪动作和结构化反馈,让开放权重模型在缺少特权输入的条件下也能稳定使用机器人。
研究背景与动机
机器人使用智能体与视觉—语言—动作模型代表了两种不同的技术路线。后者把视觉输入直接映射为动作策略,通常依赖大规模机器人示范;前者把通用基础模型放在一个工具执行框架中,让模型观察场景、调用感知与运动接口,再根据执行结果继续推理。论文关注的是后一条路线:基础模型已有的分解、搜索和纠错能力,能否在机器人任务中转化为可重复的执行能力。
现有前沿机器人智能体大多依赖闭源模型。闭源接口限制了模型参数、训练过程与本地部署,也带来了实验成本和数据闭环问题。研究者可以把模型当成黑盒来设计提示与工具,却很难用机器人交互数据继续训练它。论文认为,如果机器人使用能力可以建立在开放权重模型上,那么学术团队与工业开发者就能同时研究执行框架、数据采集和后续训练,而不必被单一模型供应商锁定。
但“换一个开源模型”并不是充分条件。机器人执行包含持续变化的世界状态:一条运动命令在发出后仍可能继续运行,相机中的物体位置会随着机械臂移动而改变,工具返回的数值误差与图像证据也可能相互矛盾。如果框架把观测、动作和反馈当成彼此独立的文本事件,模型就会在不一致的物理快照上规划,或者把一次超时误判为没有执行。
论文因此先追问框架层面的可控性,而不是直接微调一个机器人专用模型。作者希望在真实部署可获得的输入范围内,建立一套统一接口:同一套工具可以连接仿真器、真机和不同动作模型,同一套调度可以处理等待调用与后台调用,同一套反馈可以让模型判断动作是否完成、为什么停止,以及是否值得重试。
实验设计围绕两个问题展开。第一,开放权重模型在这个框架里能否超过已发表的闭源机器人智能体结果;第二,性能提升来自模型规模,还是来自共享工具、执行反馈和上下文管理等系统设计。论文还额外分析深度、标定参数与技能库是否构成隐性的特权信息,以免把基准泄漏误读为模型能力。
图 1:论文展示的统一执行框架与主要结果。左侧是模型通过共享工具连接机器人,右侧对比开放模型与闭源模型在 RoboDojo 上的得分。
预备知识:机器人使用与环境契约
机器人使用智能体的输入不是一张可以任意解释的静态图片,而是一个带时间关系的事件流。每次观测同时包含 RGB、相机标定、机器人状态、机器人描述和任务指令;每次动作则包含目标位姿、夹爪开度、执行预算与资源占用。论文把仿真器或真机统一成带版本号的环境服务,动作提交必须声明它基于哪个状态版本,避免在旧状态上执行新命令。
工具层不是简单的函数集合。一个工具需要把模型的意图翻译成多次底层环境步进,并在中途检查位姿误差、规划拒绝、越界运动与停滞。工具还必须告诉模型本次调用的结果属于哪一种:立即完成、已经排队、正在运行、失败、取消,还是由于通信中断而结果不确定。不同状态对应不同的后续策略,不能全部压缩成一句“调用失败”。
RoboDojo 提供 42 个仿真任务,覆盖泛化、记忆、精确操作、长时执行和开放词汇指令五类能力。论文使用每个任务三个随机种子与两种布局,共 252 个回合;主结果只提供 RGB、相机标定、机器人本体状态与描述、任务文本,不提供仿真真值深度、物体 CAD、隐藏场景标注、任务验证器反馈或外部网页。
方法详解
五层架构把模型与具体环境解耦
论文将系统分为智能体层、编排层、工具层、服务层和后端层。智能体层负责模型交互与上下文;编排层负责资源调度、异步任务和调用生命周期;工具层提供跨环境一致的机器人操作语义;服务层管理具体环境、感知与动作模型资源;后端层实现仿真器、真机和模型适配器。请求从上往下传递,结果沿相同接口返回。
这种分层的关键价值是替换边界明确。更换语言模型时不需要重写机器人工具;更换仿真器时只替换服务与后端适配器;增加一种相机或夹爪时也不必改变智能体的推理流程。论文把这种复用描述为共享工具语义,而不是要求所有环境共享同一套底层控制实现。
flowchart TB
A[Agent Runtime
model and context] -->|tool request| O[Orchestration
jobs and resource queues]
O --> T[Shared Tools
observe move grasp release]
T --> S[Services
episode and perception]
S --> B1[Simulator Backend]
S --> B2[Real Robot Backend]
S --> B3[Action Model Backend]
B1 -->|state images receipts| S
B2 -->|state images receipts| S
B3 -->|prediction and diagnostics| S
S -->|typed result| O
O -->|job handle or completed output| A
C[Context Policy
sliding image window] --> A
共享工具避免组合式重复实现
论文把工具定义为稳定的语义契约,例如观察当前场景、移动机械臂、控制夹爪、释放物体或结束回合;环境适配器负责把这些语义映射到不同原生接口。若不共享工具,工具数为 N、环境数为 M 时,每个组合都需要单独实现,系统会面对 N×M 的维护面。共享语义把变化收敛到工具语义与环境适配器两侧,使新增模型或设备不必复制整套动作逻辑。
工具输出不仅包含文本,还包含图像、成功标志、错误信息、作业句柄、状态版本、停止原因和诊断数据。统一输出结构使同一个智能体提示可以消费仿真器与真机的反馈,也让上层调度器能够在不知道底层设备细节的情况下判断任务是否仍在运行。
图 3:论文通过共享工具语义和环境适配器减少重复实现,使同一动作意图可以复用于不同后端。
异步调度与两阶段流水线
如果每条物理动作都阻塞模型,模型只能在动作结束后开始下一步推理;如果所有动作都不等待,相继动作又可能同时占用同一台机械臂。论文把等待模式和资源并发分开:立即调用会等待结果,后台调用只返回作业句柄;独占调用按资源键进入先进先出队列,独立资源则可以并行执行。
这种设计形成两阶段流水线。模型提交第一条动作后可以继续推理,为第二条动作准备参数;物理动作在执行时,模型请求也在推进。不能并行执行的动作仍保持顺序,避免同一个机械臂收到互相冲突的目标。论文报告,在五个真机任务上,流水线使回合时长相对串行执行缩短 4.8% 至 73.7%,物理动作时间与模型请求的重叠比例达到 84.5% 至 93.8%。
图 4:串行执行等待每条动作完成后才继续推理;流水线让模型请求与正在执行的物理动作重叠,同时用资源队列保持动作顺序。
观测快照让像素、标定和机器人状态属于同一时刻
机器人移动后,旧图片里的像素坐标仍对应旧相机位姿。如果工具用新相机标定解释旧图片,就会把两个物理时刻混在一起。论文为每次观测保存不可变快照,把图像、相机内外参、机器人状态、环境版本和观测序号绑定在一起;定位与运动工具只在该快照对应的坐标关系中计算。
这一约束看似只是数据管理,实际影响动作正确性。抓取点通常由像素定位得到,位姿计算又依赖相机到机器人基座的变换。只要图片与标定或机器人状态错位,误差就会在射线三角化、坐标变换和目标生成中累积。不可变快照把这种跨时刻污染变成接口无法表达的状态。
请求回执与不确定执行
物理动作不是幂等操作。模型没有收到回复时,动作可能根本没有开始,也可能已经在环境中完成;如果直接重试,机械臂就可能重复移动或再次夹取。论文记录请求身份、回合序号、执行状态和状态版本,对重复请求进行拒绝或返回已有结果。
通信中断后,如果执行状态无法确定,框架先阻止新的物理动作,并尝试从服务端核对记录。无法核对时,结果被明确标记为不确定,而不是伪装成普通失败。这个设计把“未知”提升为一等状态,使智能体可以在安全边界内选择结束、等待或请求人工处理。
运动与夹爪联合控制
传统接口常把末端移动与夹爪开合拆成两个工具。模型如果先发移动、再发夹合,就需要自己协调两个异步作业;如果先夹合、再移动,又可能在尚未接触物体时闭合夹爪。论文的 move 工具允许在同一条请求中给出目标位姿和可选夹爪开度,使机械臂与夹爪在受控范围内协同变化。
联合控制减少了工具调用数量,也避免一个动作在另一个动作尚未完成时启动。工具内部仍然把命令分解成多次底层步进,因此智能体看到的是一个有界语义操作,而环境服务收到的是一系列带状态版本的原始控制。
受监控运动与真实停止条件
论文不使用固定步数作为唯一终止条件。运动工具会在每一步之后计算实际位姿与目标的误差,并依据旋转半径限制角步长。设最大平移步长为 δ、末端到旋转中心的半径为 r,则最大角步长写为:
$$\theta_{\max}=\begin{cases}\min\{0.6,\,2\arcsin(\min\{1,\delta/(4r)\})\},&r>0,\\0.6,&r=0.\end{cases}$$这个公式把旋转造成的末端弧长也纳入位移预算。旋转之后,剩余平移空间为:
$$\delta_p=\max\{0,\delta-2r\sin(\Delta\theta/2)\}.$$因此,接近目标不是简单地把三维位置和四元数分别截断。工具先选择有界旋转,再使用剩余预算生成平移目标;这可以避免大角度转向过程中末端扫过过大的空间范围,也减少规划器突然拒绝整条命令的概率。
位姿误差由平移欧氏距离与四元数距离共同构成。对两个单位四元数 q1 与 q2,论文使用:
$$d_q(q_1,q_2)=2\arccos(\min\{1,|q_1^\top q_2|\}).$$四元数的双覆盖使 q 与 -q 表示同一姿态,因此绝对值必不可少。工具把平移误差与角误差合成进度分数:
$$v_t=e_t^p+0.1e_t^q,$$并在连续两次恶化超过阈值时报告发散:
$$v_t>v_{t-1}+0.01.$$停滞检测则比较最近四步中的改进量。若平移与角度都只在容差的十分之一以内变化,工具停止继续消耗步数:
$$e_{t-3}^p-\min_{j=t-2}^{t}e_j^p\leq0.1\epsilon_p,\qquad e_{t-3}^q-\min_{j=t-2}^{t}e_j^q\leq0.1\epsilon_q.$$停止原因会明确写成到达、规划拒绝、发散、停滞、不安全运动或环境原生结束。这样,模型看到的不是含糊的“移动失败”,而是可以据此改变抓取高度、换一个目标区域或结束当前策略的证据。
图像与数字共同构成反馈
末端位姿到达目标并不等于物体已经被抓住。夹爪可能在目标点闭合却没有夹到物体,放置动作也可能因碰撞使物体滚走。论文同时返回位姿误差、夹爪状态、停止原因和动作后的图像:数字说明控制是否完成,图像说明物体是否发生预期变化。
这种双通道反馈避免了两种极端。只给图像时,模型很难从画面判断毫米级残差;只给数字时,模型可能忽略物体滑落或抓取姿态不合理。结构化数值与视觉结果被绑定在同一个观测快照上,模型可以把“动作已经执行”与“任务是否进展”分开判断。
滑动图像窗口保留文本历史
长回合会积累大量图片,旧图片很快失去参考价值,但任务指令、工具调用和动作结果仍然重要。论文的图像窗口策略只移除较早工具输出中的图像节点,用带工具名与调用编号的文本占位符替代;用户提供的图像、工具调用、文本结果和相邻上下文继续保留。
图像按批次移除,而不是每来一张新图就改变整个前缀。这样可以在两次窗口收缩之间复用提示缓存,并保持观测位置稳定。若去掉旧图片后上下文仍超出预算,系统才按完整交互块压缩历史,且不会把工具调用与对应结果拆开。
图 5:论文的六组关键设计选择,分别对应物理一致性、动作精度和上下文管理,包括不可变快照、请求回执、联动控制、运动监控、多模态反馈与滑动窗口。
代码实现与论文语义对应
公开仓库中的 uni_robot_agent/execution/scheduler.py 实现了独占资源队列与并行工作池。ResourceScheduler.submit() 根据并发策略把任务放入资源队列或并行池;flush() 只取消仍处于排队状态的作业,不会终止已经运行的物理动作。这一边界与论文对“取消”和“未知执行”的区分一致。
# uni_robot_agent/execution/scheduler.py
def flush(self, resource_key: str) -> int:
with self._lock:
queue = self._queues.get(resource_key)
cancelled = 0
for job_id, _ in list(queue):
cancelled += int(self._registry.cancel_if_queued(job_id))
queue.clear()
return cancelled
uni_robot_agent/tools/gripper/pose.py 把论文中的旋转与平移预算写成 pose_waypoint();motion.py 的 PoseTracker.update() 则记录位置和方向误差,检查到达、发散与停滞。源码使用四元数绝对值计算角距离,并在更新进度时把平移误差和方向误差按 0.1 的权重组合。
# uni_robot_agent/tools/gripper/pose.py
def quaternion_distance(left, right):
dot = float(np.clip(abs(np.dot(quaternion(left), quaternion(right))), 0, 1))
return 2 * math.acos(dot)
# uni_robot_agent/tools/gripper/motion.py
score = position_error + .1 * orientation_error
self.worsening = self.worsening + 1 if score > self.prior_score + .01 else 0
if self.worsening >= 2:
return "diverging", { ... }
实验结果
RoboDojo:开放模型超过已发表的闭源基线
在 42 个 RoboDojo 任务、252 个主实验中,Qwen3.8-Flash-Next 配合本框架取得 25.00% 成功率与 31.39 分。它超过已发表的 GPT-6 Astra–RoboProbe 结果 22.48% 与 28.97 分,也超过论文列出的多组视觉—语言—动作模型和世界—动作模型。这个比较最重要的地方不是总分高出 2.42 分,而是开放权重模型在零样本、无特权输入和无闭源蒸馏条件下进入了同一竞争区间。
更强的 GPT-6 Astra 在同一框架下达到 46.67% 成功率与 51.90 分,说明框架并非只对某一个开放模型有效。Qwen 在 RoboProbe 与 RPent 两个基线下分别只有 1.90 分与 7.75 分,而切换到本框架后升至 31.39 分;GAP 混合基线为 21.01 分。这里反映的是接口、执行反馈与上下文管理对同一模型的显著影响。
| 配置 | 成功率 | 得分 | 说明 |
|---|---|---|---|
| GPT-6 Astra + RoboProbe | 22.48% | 28.97 | 论文引用的已发表结果 |
| Qwen3.8-Flash-Next + GAP Hybrid | 16.11% | 21.01 | 同一开放模型的另一执行框架 |
| Qwen3.8-Flash-Next + uni-robot-agent | 25.00% | 31.39 | 主结果,不使用深度 |
| DeepSeek-V4.1-Flash + uni-robot-agent | 21.39% | 27.11 | 另一开放权重模型 |
| GPT-6 Astra + uni-robot-agent | 46.67% | 51.90 | 闭源强模型使用同一框架 |
| GPT-6 Astra + 框架 + 深度 | 52.36% | 56.76 | 仅作深度参考消融 |
分能力看,Qwen 在记忆与开放词汇任务上明显高于多数端到端策略,论文也指出它在长时任务上弱于 Xiaomi-Robotics-1 与 OpenWAM-α。这说明机器人使用框架已经把通用模型的语义理解转化为一定执行能力,却没有消除对象状态记忆、连续接触和多阶段误差累积。Astra 在泛化维度取得 31.94% 成功率,高于 RoboProbe 的 30.50%;其本框架配置在表中列出的每个 RoboDojo 维度上都优于 Astra–RoboProbe,其中记忆与精确操作提升尤其显著。
真机 19 项任务:开放模型追平微调策略
真实环境包含 19 个桌面操作任务,按空间理解、物体泛化、指令遵循、组合泛化和未见任务五个维度各计 20 分。Qwen 在框架内取得总分 49.50,接近经过每个任务 10 小时示范微调的 π0.5 的 47.75,并高于零样本 Dream-1 的 35.50。GPT-6 Astra 在同一框架下达到 75.50。
这组结果的适用范围需要谨慎解释。框架智能体在真机实验中额外使用 D405 深度流,而 π0.5 与 Dream-1 的输入是 RGB。因此 49.50 与 47.75 的直接差值不能单独归因于模型或框架。论文仍提供了有价值的结构性发现:智能体方法在组合泛化上达到 13.00 分,对比 π0.5 的 6.00 与 Dream-1 的 10.00;物体泛化则只有 6.00 分,低于 π0.5 的 12.50。
| 方法 | 空间 | 物体泛化 | 指令 | 组合泛化 | 未见任务 | 总分 |
|---|---|---|---|---|---|---|
| π0.5(任务微调) | 11.25 | 12.50 | 14.00 | 6.00 | 4.00 | 47.75 |
| Dream-1(零样本) | 4.00 | 8.00 | 9.50 | 10.00 | 4.00 | 35.50 |
| GPT-6 Astra + 框架 | 17.00 | 12.50 | 18.00 | 20.00 | 8.00 | 75.50 |
| Qwen3.8-Flash-Next + 框架 | 9.00 | 6.00 | 13.50 | 13.00 | 8.00 | 49.50 |
Real Eval 的评分方式是每个能力维度满分 20,总分满分 100。它与成功率不同,允许完成子步骤获得部分分。表中 49.50 与 47.75 接近,不代表两类系统在每个任务上成功率相同;它说明智能体路线在长序列任务的部分完成度上已有竞争力,也说明物体层面的细粒度泛化仍是弱点。
深度与技能库并非主要来源
论文把深度输入分成三档:RGB 加深度与相机参数、RGB 加相机参数、仅 RGB。Astra 从 55.83 降到 55.04,保留 98.6%;Qwen 从 35.89 降到 31.39,保留 87.5%。没有深度但保留标定时,模型仍可通过多视角对应点三角化恢复三维位置。完全没有相机参数时,Astra 降到 31.29,Qwen 降到 9.13,说明标定信息是关键的空间桥梁。
技能库消融同样显示,框架能力不依赖任务专用技能。关闭机器人技能库与技能写入后,Qwen 仍达到 30.31 分与 24.58% 成功率,保留 96.6% 的得分,成功率只下降 0.42 个百分点。这里的消融保留任务说明、环境描述和标准机器人工具,针对的是可复用技能是否携带了任务解法,而不是移除基础执行能力。
| 消融条件 | Astra 得分 | Qwen 得分 | 关键解释 |
|---|---|---|---|
| RGB + 深度 + 标定 | 55.83 | 35.89 | 深度参考上限 |
| RGB + 标定 | 55.04(98.6%) | 31.39(87.5%) | 多视角三角化可替代真值深度 |
| 仅 RGB | 31.29 | 9.13 | 缺少相机参数后空间定位显著受损 |
| Qwen 关闭技能库 | — | 30.31(96.6%) | 标准工具仍保留,仅移除技能指导 |
成本、令牌与执行速度
Qwen 的平均 API 成本为每回合 1.09 美元,Astra 为 21.29 美元,前者约为后者的二十分之一。达到 25 分所需资源差异更大:Astra 使用约 740 万令牌和 42.6 分钟,Qwen 使用 2350 万令牌和 95.5 分钟,DeepSeek 使用 4990 万令牌和 99.2 分钟。开放模型降低了按令牌计价的成本,却可能需要更多轮推理,因此“便宜”与“快”不能混为一谈。
流水线的收益则来自重叠而不是减少计算。在五个 Astra 真机任务中,每条任务各比较一次流水线与串行执行,相同种子和布局下所有任务的流水线回合都更短。swap_T 从 34.7 分钟降到 12.5 分钟,press_by_number 从 25.0 分钟降到 13.7 分钟。由于每个条件只测试一个回合,这组数字适合证明机制有效,不足以估计稳定的平均加速。
模型能力与失败模式
图 6:论文比较模型世代、家族与参数规模的 RoboDojo 表现。开放模型并非只有最大参数版本才具备机器人使用能力,训练分布与世代差异同样明显。
跨模型结果显示,机器人使用能力并非只在最新一代出现。GPT-5.6 Sol 已有 19.17% 成功率与 24.04 分,GPT-6.1 Sol 达到 37.50% 与 45.63 分。Qwen3.5 至 3.7 的多种更大模型失败率为零,而 Qwen3.8-27B 与 Qwen3.8-Flash-Next 分别达到 8.06% 与 25.00%。参数规模不是单一解释变量,训练分布和同代能力更接近实际差异来源。
论文从轨迹中归纳四类失败:一般视觉理解、细粒度空间对应、几何代码计算和具身推理。早期 Qwen 在视觉理解上出错的比例为 12.2% 至 23.8%;即便空间失败率最低的 GPT-6.1 Sol 仍有 31.5% 的对应点选择被拒绝;GLM-5.3 Flash 在抓取姿态上的错误率达到 26.2%。这些数字说明框架可以把问题暴露出来,但不会自动提供可靠的物理常识。
论文还把 RoboDojo 得分与 MMMU-Pro、ERQA、ScreenSpot-Pro 和 LiveCodeBench v6 做相关分析,四类基准都呈正相关,其中具身推理和一般视觉理解较强,二维屏幕定位与三维机器人空间定位的相关性较弱。该分析只覆盖六个模型,适合提出假设,不足以建立稳定的预测关系。
局限性与风险
第一,作者在结论中明确指出精确操作与可靠长时执行仍未解决。框架提高了工具调用的可解释性和恢复能力,但当任务需要毫米级接触、连续力控制或多个阶段的稳定状态记忆时,通用模型仍可能累积误差。Qwen 在长时维度低于部分世界—动作模型,也印证了这一点。
第二,Real Eval 采用按子任务给分的量表,而不是只看最终成功率。部分完成会提高总分,因此 49.50 与 47.75 的接近不能直接解释为两类系统拥有相同的一次成功率。阅读这组结果时,应同时看能力分项和每个任务的完成标准。
第三,真机比较的输入条件并不完全相同。框架智能体使用深度,两个基线只使用 RGB。论文如实披露了差异,但这也意味着真机总分差不能全部归因于执行框架。理想对照应让不同方法获得相同传感器集合,或分别报告有深度和无深度版本。
第四,跨模型实验大多使用一个种子和一个布局。主表的 Qwen、DeepSeek 与 Astra 有更大规模重复,但图 6 的模型家族分析主要是一次设置,深度消融中 Astra 也因成本限制只使用一个种子与一种布局。个别模型排序可能受场景布局和采样波动影响。
第五,能力相关性分析和具身推理分析的范围有限。前者只包含六个模型,后者主要观察抓取姿态是否合理,并通过 GPT-6 Astra 判断。抓取姿态不能代表双臂协调、接触顺序、工具选择等更广泛的具身推理,因此论文对这部分的结论应视为方向性证据。
第六,论文宣称的统一性主要覆盖其接入的仿真与真机后端。本次精读核对了公开仓库的调度、工具、观测、运动与契约实现,但没有执行完整实验复现。因此,源码对应关系可以验证框架设计,不能替代对本页所有论文数字的独立运行复现。
结论与展望
uni-robot-agent 的主要贡献不是发明一个新的端到端动作网络,而是把机器人使用中的系统边界明确下来:模型负责分解与判断,工具负责把意图转换为可监控的物理动作,服务负责状态与资源,后端负责具体设备。共享语义、异步调度、不可变观测、请求回执和结构化反馈共同降低了开放模型进入机器人执行回路的门槛。
结果说明,开放权重模型已经具备可用的机器人操作基础,尤其在获得相机标定、机器人描述和可靠工具反馈时,不必依赖真值深度或任务验证器。与此同时,视觉定位、几何计算、双臂协调与长时记忆仍是瓶颈。下一步更有价值的研究方向,可能不是只扩大模型,而是用统一框架收集带失败原因、动作回执和多模态反馈的机器人数据,再针对这些能力进行训练。
开放模型不必先成为专用机器人策略,它需要一个能把通用推理变成可观测、可纠错物理动作的执行环境。



