跳转至

SpatialClaw: Rethinking Action Interface for Agentic Spatial Reasoning

会议: NeurIPS 2026
arXiv: 2606.13673
OpenReview: https://openreview.net/forum?id=tHCYfFr3sR
代码: https://github.com/NVlabs/SpatialClaw
领域: 多模态 VLM
关键词: 空间推理, 视觉语言模型, 智能体动作接口, Python代码执行, 具身与3D/4D感知

一句话总结

针对工具增强型空间智能体受限于单次代码生成或刚性 JSON 工具调用接口的瓶颈,SpatialClaw 提出基于持久化 Python 内核的代码动作接口框架,使 VLM 能够在多轮交互中灵活组合几何感知原语、检查中间视觉/数值证据并动态修正推理,在 20 项空间推理基准上取得显著突破。

研究背景与动机

空间推理是人类视觉感知的基石,涉及确定物体在三维空间中的三维位置、相机与物体的动态运动轨迹以及视角间的几何变换关系。然而对于现代前沿视觉语言模型而言,单纯依赖静态像素输入进行端到端的纯文本链式思考,极难稳定捕捉深度、相机内外参及跨时间帧对应关系等高精度几何特征。为了突破这种感知瓶颈,近期学术界普遍采用工具增强型智能体方案,将通用 VLM 与检测器、分割模型及深度/位姿估计专家模型结合。

然而,现有工具增强空间智能体的能力上限严重受制于其动作接口的设计模式。目前主流方法主要依赖两种接口形式:一种是单次代码生成模式,模型在执行前必须一次性编写完整脚本,在尚未观察到任何中间掩码、深度图或运行异常时便强行确定全部推理策略;另一种是预定义 JSON/XML 结构的工具调用接口,虽然调用清晰,但其受限于固定的 API 架构,无法在测试期利用 NumPy 或 SciPy 等通用科学计算库对中间感知结果进行高度自由的动态组合与定制几何变换。这两种范式在面对需要跨多视角、跨连续时间帧的复杂 3D/4D 动态空间推理任务时均表现得僵化脆弱。

本文的切入角度是:代码不应仅仅被视作一过性的可执行脚本或固定 API 的分发机制,而应当作为智能体与环境交互的编排空间与动作接口本身。核心 idea:构建免训练的 SpatialClaw 框架,以维持中间状态的持久化 Python 内核作为智能体的核心动作接口,让 VLM 能够在多阶段控制循环中逐步编写代码单元、即时审查可视与数值反馈,并利用底层科学计算库自适应组合深度重建与分割原语以持续修正空间推理。

方法详解

整体框架

SpatialClaw 采用免训练的模块化架构,在每个样本评测生命周期内实例化一个专用的持久化 Python 内核。内核预加载输入图像序列、时间元数据、专用感知原语(Depth Anything 3 与 SAM 3)以及通用科学计算库(NumPy、SciPy、Matplotlib)。系统通过外层五阶段闭环控制流引导 VLM 逐步求解问题:先由轻量规划器梳理分析方案,再由主智能体单步生成 Python 代码单元并在内核中执行,执行产生的标准输出、新变量特征摘要以及通过内省指令注册的中间渲染图被组装为结构化反馈并回填至上下文,驱动智能体逐步核验假说直至提交答案。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["输入图像与问题元数据"] --> B["阶段 I:规划器生成分析蓝图<br/>解耦规划与执行"]
    B --> C["阶段 II:主智能体生成代码单元<br/>编写单步 Python 分析操作"]
    C --> D["阶段 III:AST 安全沙箱静态校验<br/>拦截危险系统调用与非法语法"]
    D --> E["阶段 IV:持久化内核执行与反馈装配<br/>捕获变量/数值/show 渲染图"]
    E -->|证据不足或需校准| C
    E -->|收集到充分置信证据| F["阶段 V:结构化答案提交<br/>ReturnAnswer 输出"]

关键设计

1. 持久化内核工作区与跨步状态留存:支持渐进式假设检验与修正

以往单次代码执行模型一旦中间掩码切错或深度投影产生奇异值便全盘崩溃,而结构化工具调用无法保存中间计算张量。SpatialClaw 在运行时为每个任务维护独立的 IPython 会话,所有执行生成的掩码矩阵、相机内外参字典、3D 点云图与拟合平面均作为常规 Python 变量保存在命名空间中。智能体可在第 \(t\) 步进行粗粒度分割或深度估计,并在后续步骤直接复用该变量进行 KD 树邻近搜索、RANSAC 平面拟合或多帧轨迹投影,无需反复重新调用耗时的感知大模型。系统暴露统一的公共入口:InputImages 存储降采样后的参考帧;Metadata 维护帧率与时间戳;tools.Reconstruct 封装 Depth Anything 3 输出具有真实尺度与重力对齐坐标系的深度与点云;tools.SAM 3 提供基于文本、点或边界框提示的单帧与时序视频分割;show() 允许模型将中间可视证据直接渲染并插回下一步的视觉上下文窗口,使多模态反思与自错修正成为可能。

2. 规划与执行解耦的外层控制闭环:构建严格的代码推理自律机制

为了防止大模型在开放的 Python 动作空间中发生幻觉、盲目发散或陷入死循环,SpatialClaw 引入了阶段解耦的五步控制流程。在执行前,规划器在独立的 LLM 会话中运行,仅接收问题文本、元数据和工具文档(不输入图像),生成包含坐标系选择、几何信息需求、逐步计算链条与交叉核验备忘录的结构化蓝图,并作为背景知识注入主智能体上下文。主智能体在每一步推理必须严格按照 Purpose、Reasoning、Next Goal、Code 四个结构化字段输出。代码单元在进入内核前经由 AST 抽象语法树分析器拦截文件 I/O、网络请求和动态执行指令;若语法或运行时报错,系统提取紧凑 Traceback 并将错误作为观察反馈交还模型,使其具备单轮自愈能力。此外,系统设置严格的执行步数硬上限 \(N_{\text{max}}=30\),当连续报错或达到预算时激活兜底策略,结合纯 CoT 推理与正则提取确保输出鲁棒性。

3. 动态科学计算组合与逐帧类型契约:告别预设 API 并规避跨帧语义错位

传统工具代理若要计算“两物体间的度量距离”,必须依赖工程师硬编码的专用 API。而在 SpatialClaw 中,智能体面对新任务能够自主编写由底层科学计算库驱动的原生运算:例如利用 scipy.spatial.KDTree 计算点云最近邻、利用向量点积与反余弦计算视线偏角、利用 RANSAC 拟合地面法向量。为消除灵活代码带来的张量维度混淆与时空错位,系统实现了基于逐帧类型契约的容器封装:所有时间感知输出(如视频分割掩码和时序 3D 点云)均绑定绝对时间帧索引。当智能体尝试在代码中将第 \(i\) 帧的分割掩码直接点乘第 \(j\) 帧的点云数据时,内核底层会在组合点即时抛出帧索引不匹配异常,防止产生数值上合法但几何语义完全荒谬的隐蔽错误。

一个完整示例

以复杂跨视角几何推理问题“从侧面摄像机观察,红车是否停靠在树的后方?”为例: 1. 规划阶段:规划器生成方案,要求提取双视角图像、利用 SAM 3 获取红车与树木边界掩码、调用 Reconstruct 获取相机内外参与世界坐标点云,并在第一相机坐标系中投影深度以比较前后关系。 2. 第一步(感知抽取):主智能体编写代码调用 tools.SAM3.segment_image_by_text(InputImages[0], "red car") 与 tools.Reconstruct.Reconstruct(InputImages)。内核保留掩码 seg_car 与点云 recon。 3. 第二步(中间可视检查):智能体执行 show(seg_car.visualize(0)),在组装反馈中看到红车分割掩码高度贴合,确认目标无误。 4. 第三步(几何计算与修正):智能体发现两物体被前方路标遮挡,通过编写 scipy.spatial.KDTree 计算去除离群点后的三维质心距离,并在世界坐标系下对树和车的深度向量作投影,打印数值差为 \(+1.42\text{m}\)。 5. 第四步(提交结论):调用 ReturnAnswer("Yes") 完成闭环,规避了直接纯视觉猜测带来的空间透视错觉。

实验关键数据

主实验

论文在涵盖单图像空间推理、多视角空间推理、通用空间推理、视频空间与 4D 推理以及通用视频理解的 20 个基准测试集上展开全方位评测(步数上限 \(N_{\text{max}}=30\)),覆盖 Qwen3.5、Qwen3.6 及 Gemma4 两大家族共 6 款不同尺寸的 VLM 底座。下表展示在统一采用 Gemma4-31B 骨干时,SpatialClaw 与多种基线和现有空间智能体的对比结果:

基准类别 / 代表数据集 评测指标 No-tool (基线) pySpatial (单次代码) SpaceTools (结构化工具) SpatialClaw (本文)
单图空间推理 (ERQA) 准确率 (%) 58.3 50.8 52.0 61.3 (+3.0)
单图空间推理 (SPBench) 准确率+MRA (%) 55.1 53.5 45.1 68.4 (+13.3)
多视角推理 (MindCube) 准确率 (%) 57.5 67.1 52.9 72.8 (+15.3)
多视角推理 (MMSI) 准确率 (%) 37.9 33.2 33.1 51.3 (+13.4)
多视角推理 (SPAR-Bench) Acc+MRA+VCI (%) 55.2 51.7 53.9 63.3 (+8.1)
4D视频推理 (OSI-Bench) 准确率+MRA (%) 35.6 32.0 30.2 41.9 (+6.3)
4D视频推理 (VSTI-Bench) 准确率+MRA (%) 54.7 55.0 56.0 67.6 (+12.9)
4D视频推理 (DSI-Bench) 准确率 (%) 45.3 43.7 43.0 62.9 (+17.6)
通用空间推理 (ViewSpatial) 准确率 (%) 51.7 49.9 52.1 60.2 (+8.5)
20个基准宏观总平均 (Avg.) 综合得分 (%) 53.4 47.8 48.7 59.9 (+6.5)

在不同底座跨模型泛化评测中,SpatialClaw 均实现稳健提升:Qwen3.5-397B-A17B 上平均分达 60.4%(相对无工具底座 +3.1%p),Qwen3.6-27B 上达 62.7%(+7.7%p),Gemma4-26B-A4B 上达 54.3%(+6.3%p)。相对已有 SOTA 空间智能体 SpaceTools,平均提升幅度高达 +11.2%p。

消融实验

基于轻量底座 Gemma4-26B-A4B 在 15 个代表性基准(每基准抽样 500 题)上对动作接口及工具模块配置进行严格受控消融实验:

配置模式 核心设计差异说明 15个基准综合均分 (%) 相对完整版变化 (%p)
SpatialClaw (Full) 完整模型:持久化代码接口 + SAM3/DA3 + 实用工具库 56.9 -
(I) 移除所有封装工具 (No utility) 去除 tools.Geometry/Mask 等包装,仅留 SAM3/DA3 与原生 NumPy/SciPy 56.4 -0.5
(II) 移除感知专家工具 (No perception) 去除 SAM3 与 DA3,仅使用持久化 Python 接口与科学库 51.4 -5.5
No-tool Baseline 纯模型原生思维链(Thinking 模式,无任何外部接口) 48.7 -8.2

在动作接口形态的横向受控消融中(所有变体使用完全相同的感知工具库),单次完整代码生成(Single-Pass Code)得分仅为 55.2%,结构化 JSON 工具调用(Structured Tool-Call)为 56.7%,显著低于 SpatialClaw 的 59.9%。

关键发现

  • 代码动作接口本身贡献核心增益:配置 (II) 在彻底剔除外部深度与分割大模型的情况下,仅凭持久化 Python 代码接口与通用科学计算库,依然比纯思考无工具基线高出 +2.7%p,证明多轮代码自纠与数值计算能直接强化空间思维。
  • 动态科学计算能力完全能够替代预设 API:配置 (I) 剥离所有辅助性几何与掩码封装后,模型自主编写 NumPy 矩阵运算和 SciPy 空间算法,性能仅微跌 0.5%p(56.9% vs 56.4%),有力证明了模型的空间解题能力源自灵活的原语编排而非特定 API 提示词工程。
  • 动态 4D 与多视角收益最为显著:LLM-as-Judge 归因分析显示,SpatialClaw 击败结构化工具调用的案例中,超过 50% 归因于多步代码串联组合,19.5% 归因于分支控制流(如 if/for 条件迭代)。在视角运动与轨迹推理等长链路几何任务中优势最集中(DSI-Bench 提分高达 +17.6%p ~ +20.1%p)。

亮点与洞察

  • 将代码从“执行终点”重塑为“智能体交互介质”:打破了过去将代码仅视为一次性可执行脚本的思维定式,将持久化 Python 命名空间转化为保留感知张量与中间假设的统一黑板,允许智能体边探索、边计算、边看图反思。
  • 以不变应万变的免训练通用性:全系统完全不依赖任何针对特定数据集的提示微调、强化学习对齐或 LoRA 参数注入,单一统一提示词与通用代码环境即可横跨 6 款模型与 20 项基准稳定提分。
  • 细粒度几何契约防范隐式语义漂移:针对视频推理中多帧掩码与点云极易张量错位的痛点,通过逐帧时间契约与运行时断言阻断错误传播,是工具增强型智能体向工程化高可靠落地的关键设计。

局限与展望

  • 感知上游瓶颈尚未根本解决:作者分析指出,系统当前失败案例中绝大部分源于底层感知工具(SAM 3 分割漂移、Depth Anything 3 尺度估计偏差)或 VLM 原生幻觉,动作接口的收益在感知完全失效时面临天花板。
  • 交互推理延迟与算力开销较高:多轮循环中调用 3D 重建与大模型生成代码的时间开销显著高于单轮端到端前向,单样本最高达 30 步交互在实时具身应用中受限。
  • 未来方向:作者指出可探索基于强化学习(RL)进一步优化智能体的代码生成、几何工具选择以及异常回溯纠错策略,探索更紧凑高效的代码交互机制。

相关工作与启发

  • vs SpaceTools:SpaceTools 依赖双重交互强化学习微调特定 VLM 模型来调度固定 JSON 工具集,跨任务泛化较弱且难以临时编写复杂几何算法;SpatialClaw 免训练、基于开放代码动作接口,在 Gemma4-31B 上取得 +11.2%p 的绝对领先。
  • vs pySpatial / VADAR:pySpatial 等采用一次性生成完整 3D 视觉程序,无法在观察到中间掩码缺陷或深度估计失真后动态修改方案;SpatialClaw 基于持久化内核支持逐步检查与多轮修正。
  • vs CodeAct:CodeAct 奠定了将可执行代码作为通用文本智能体动作的基础;SpatialClaw 将这一范式深度拓展至多模态空间几何推理领域,针对多视角与 4D 视频感知设计了点云重建、逐帧类型契约与可视中间核验机制。

评分

  • 新颖性: ⭐⭐⭐⭐⭐(颠覆了空间智能体主流的单次代码与 JSON 接口范式,确立代码即动作空间与持久化状态核验机制)
  • 实验充分度: ⭐⭐⭐⭐⭐(横跨 20 项动静态 3D/4D 权威基准、覆盖 6 款前沿多模态大模型,消融实验与归因剖析详尽扎实)
  • 写作质量: ⭐⭐⭐⭐⭐(问题剖析一针见血,架构图与形式化定义清晰严密,论据详实自洽)
  • 价值: ⭐⭐⭐⭐⭐(为多模态模型提升三维几何与时空理解能力开辟了高效、免微调的新范式,对具身智能和通用空间感知极具启发)