SpatialClaw:重新思考面向智能体空间推理的动作接口
论文信息
标题: SpatialClaw: Rethinking Action Interface for Agentic Spatial Reasoning
作者: Seokju Cho, Ryo Hachiuma, Abhishek Badki, et al.
发布日期: 2026-06-11
arXiv ID: 2606.13673v1
PDF 链接: 下载 PDF
空间推理的 “行动接口” 革命:SpatialClaw 如何用代码打开通往三维世界的钥匙
视觉语言模型(VLM)在图像描述、问答等任务上已取得惊人进展,但面对 “这辆车是否正朝相机驶来?”“哪个物体离桌子最近?” 这类我们人类能瞬间回答的空间推理问题,VLM 仍然力不从心。根源在于,单靠像素很难可靠地提取深度、相机姿态、时序对应等几何证据,并将其组合成严谨的推理链条。工具增强型智能体(agent)的出现,让 VLM 能调用专用感知模块来补充自身短板,例如检测器、分割器或深度估计器。然而,这些系统的天花板并不完全取决于工具本身的强弱,而更在于它们与工具之间的 行动接口(action interface) ——亦即智能体如何调用工具、观察中间结果,并基于观察修正判断。
这正是英伟达团队在 SpatialClaw 这项工作中所解构的核心命题。他们发现,当前主流的两种接口设计都存在难以逾越的局限:
- 单次代码执行(Single-pass code):智能体一次性写完整个 Python 程序并运行,虽然可以灵活调用工具,但必须在看到任何中间输出(如分割掩码、深度图)之前就锁定完整的分析策略,中途无法修正方向。
- 结构化工具调用(Structured tool-calls):智能体从一个预设工具列表中选择,填入类型化的参数,接收类型化的返回值(例如通过 JSON 或 XML)。这种接口干净规范,但难以在测试时自由组合外部科学库(如 NumPy、SciPy)来完成特定于问题的几何运算,比如用 KD 树找最近邻、用 RANSAC 拟合地平面等。
这两类接口的共同缺陷在于:它们把代码视为一次性程序或工具调度指令,而非一个可迭代、可观察、可组合的 编排空间。复杂的 3D/4D 空间推理需要跨帧、跨视角的连锁几何计算,每一步的中间视觉证据都可能改变后续的分析路径——而这恰好被现有接口的设计哲学所限制。
把代码变成活的脚手架:SpatialClaw 的核心设计
SpatialClaw 提出的解法直接而优雅:将代码本身作为行动接口,并搭建一个 持久化 Python 内核作为智能体的工作台。对于每个新问题,系统都会启动一个状态持久的内核,预加载输入帧、感知基元(如用于深度估计和三维重建的 Depth Anything 3,以及用于分割的 SAM3)和科学的计算库(NumPy、SciPy、Matplotlib)。VLM 背书的智能体不需要一次性给出所有操作,而是像数据分析师一样,一次写一个可执行代码单元,执行后观察文本输出、变量摘要以及通过 show() 注册的渲染图像,再决定下一步该做什么。
这一过程被组织为一个五阶段的 智能体循环:
- 规划阶段:一个独立的规划器(不直接看图像)根据问题和工具文档生成分析蓝图,提醒智能体需要获取哪些证据。
- 代码生成:主智能体根据问题、规划以及前一轮的视觉与文本反馈,输出一个带有 “目的”“推理”“下一步目标” 和 “代码” 的 Markdown 结构化响应。
- 代码执行与安全校验:代码先通过抽象语法树(AST)静态检查,拦截文件读写、网络访问等不安全操作,随后在持久内核中运行。
- 反馈组装:执行结果(标准输出、错误回溯、新创变量的类型与大小、通过
show()展示的图像)被压缩成高效上下文,注入下一轮对话。 - 答案提交:当智能体认为证据充分时,调用
ReturnAnswer()结束循环;若超过步数限制,系统也会自动降级推出最佳答案。
这一设计的精妙之处在于,感知工具的输出作为普通 Python 变量(如分割掩码数组、相机到世界的变换矩阵)驻留在内存中,随时可被后续代码复用、组合或纠错。智能体可以先粗估一个结果,用 show() 看一眼掩码是否正确,发现偏差后立即在下一步中修正——这种 “构造-观察-修正” 的节奏,恰恰是解决开放性空间推理问题的自然范式。
免训练、跨模型、全领域:实验揭示了什么
为了全面检验接口设计的价值,作者在 20 个空间推理基准上进行了大规模评估,涵盖单图像空间推理、多视图几何、通用空间推理、视频 4D 推理以及通用视频理解。测试的 VLM 主干网络囊括了 Qwen3.5/3.6 家族和 Gemma4 家族共六个型号(参数量从 27B 到 397B),且 所有实验使用同一套系统提示、同一组工具和同一超参数,未针对任一基准或模型做任何特殊调整。
整体而言,SpatialClaw 平均准确率达到 59.9%,较近期最强的空间智能体 SpaceTools 提升 +11.2 个百分点。更细致的分析揭示出以下几项关键结论:
- 增长集中在需要跨帧或跨视角连锁几何计算的类别。在相机运动、多视角推理和相对方向判别等任务上,SpatialClaw 较单次代码和结构化工具调用的优势高达 6~9 个百分点。这正是持久内核允许跨步骤组合算子和修正假设所释放的效能。
- 代码接口本身,即使摘掉所有封装好的工具函数,依然保持强劲。当研究人员移除了
tools.Mask、tools.Geometry等预置工具,仅保留最底层的感知基元和 NumPy/SciPy 后,性能几乎不降;更进一步,完全拿掉 SAM3 和深度估计工具,仅凭纯代码接口驱动的 VLM 仍比无工具基线高出 2.7 个百分点,单独验证了行动接口的独立贡献。 - 动作原语的自发专用化。从工具使用频次的热图可以清楚看到,智能体会自动根据问题类型挑选恰当的几何运算:距离类问题高频调用 KDTree 和范数,方向类问题则倚重点积和角度操作。这种自适应组合并非硬编码的规则,而是由问题语义自然触发,充分体现了代码界面的表达能力。
- 失败模式主要转移至感知瓶颈。在错误归因分析中,超过一半的优势案例源于 “代码组合”(将多次工具调用编排为连贯的数值流程),19.5% 得益于条件分支和循环等控制流逻辑;而几何推理错误和感知幻觉(如物体误识别或检测不全)则构成了当前最主要的失败来源。
值得注意的是,SpatialClaw 完全免训练,不向 VLM 添加任何参数。这意味着已有的大模型可以即时获得更强的空间推理能力,无需昂贵的数据收集或微调。
实践启示:如何在自己的任务中借鉴 “代码即接口”
对于从事量化交易、机器人感知或任何需要从图像或视频中抽取几何关系的技术人员,SpatialClaw 的三项设计理念极具迁移价值:
- 从 “一次性程序” 转向 “持久化会话”。无论是分析金融市场中的多维关系,还是处理多摄像头轨迹,搭建一个状态持续的计算环境(如 Jupyter 内核)允许系统根据中间结果动态调整策略,远比一次性脚本更能应对未知情况。
- 接口应服务于组合性,而非工具枚举。与其设计一个庞大的工具菜单和僵化的参数模型,不如提供一小撮高质量的感知基元以及一套功能齐全的数值与科学计算栈,让智能体自行编排。这对于量化策略研究中层出不穷的因子计算需求尤为关键——新因子的出现应该是一条新的代码语句,而不是一个新的 API。
- 把视觉中间结果作为一等公民。在空间推理中,一张带有目标框标记的图片胜过千言万语。让代理能够用
show()或类似机制直接观察分段、深度图或轨迹叠加,能极大降低幻觉,并赋能为 “观察” 驱动的策略修正。
展望:感知与推理的共生进化
SpatialClaw 证明了行动接口的重新设计能够大幅提升空间推理的性能上限,但其分析也清晰指出了下一步突破的方向:感知质量。当前的失败案例中,VLM 本身的视觉误判以及底层检测、分割模型的局部错误仍然是主要障碍。未来,将强化学习引入工具选择与错误恢复过程,或者让更强大的三维感知模型(如神经辐射场、高斯泼溅)直接融入内核,都有望将这一框架推向新的高度。
更宏观地看,SpatialClaw 提出了一个更根本的命题:在迈向通用人工智能的道路上,模型与工具的关系不应仅停留在 “调用-返回” 层面,而应当是一种 可观察、可干预、可编曲的协同创作。代码,作为人类与机器之间最精确、最富表现力的沟通介质之一,或许正是打开物理世界数字孪生的那一把钥匙。