斯坦福大学 The Movement Lab 与加州理工学院近日公开了一个名为 HomeBody 的研究项目,将 GPT Astra 接入宇树 G1 人形机器人,让机器人先自主探索陌生厨房,再根据人的指令完成找东西、拿药、扔垃圾和开抽屉等连续任务。与当前行业热门的端到端视觉-语言-动作模型(VLA)路线不同,HomeBody 刻意不让大模型直接输出关节动作,而是把大模型与机器人身体之间的接口重新设计成一套结构化的技能调用层。

这套系统的核心思路是:GPT Astra 每次判断后,通过结构化 tool call 选择一个技能,并提供该技能所需的参数。不同技能对应不同的命令空间——Pick 接收当前图像中归一化到 0–1000 的二维点并指定左手或右手;Navigate 接收地图坐标系中的二维目标点和朝向点;Place 使用机器人躯干坐标系中的三维释放位置、执行手及释放距离;抽屉操作则把视觉对准、挂住把手和向后行走封装成一个完整技能。大模型只在语义空间表达“要操作哪个目标”,技能接口再把这个意图逐层转化为机器人可执行的几何约束。Astra 不需要理解 G1 的每个自由度,也不需要知道逆运动学求解器如何工作。

这种设计与端到端 VLA 的关键区别在于中间层被拆成显式接口。抓取可由解析方法实现,导航可接传统规划器,新技能也可来自强化学习策略——只要输入输出遵循同一套协议,上层 VLM 并不需要知道底层用了哪种控制方法。由此,机器人扩展能力的难点从重新训练整条策略,转移到了接口本身能否表达任务所需的状态。

但问题随之而来:二维图像点可以告诉 Pick 抓什么,却无法告诉 Navigate 几分钟前看到的药瓶位于房间哪一侧。一旦任务跨越多个房间位置,VLM 就不能只依赖当前相机画面,需要把视觉语义与真实世界的米制坐标接起来。为此,G1 在执行任务前先探索环境,同步保存相机观测、D435i 双目数据、LiDAR 与 SLAM 信息、关节姿态以及 Astra 选择过的航点。随后 Astra 参与 Real2Sim 流程,把这些观测整理成 Isaac Sim 中的数字环境。系统运行时先通过 Super Odometry 得到 G1 在现实 SLAM 地图中的状态,再利用 ICP(Iterative Closest Point)把 SLAM 点云与 Isaac Sim 重建环境配准,使现实地图与数字环境共享一套空间关系。空间记忆由此被拆成两层:一层是语义记忆,保存某张关键帧里出现了什么;另一层是度量几何,保存拍摄该图时机器人位于哪里。官方对比显示,仅靠人工拍摄视频重建时房间尺寸需根据视觉外观估计;加入机器人自身采集的 SLAM 几何后,房间布局和尺度受到实测点云约束,数字环境才适合继续用于导航和空间推理。

当机器人真正走到抽屉前,问题从米级导航突然收缩到厘米级操作。Pick 技能的输入虽然只是一个二维点,但系统先用该点提示分割模块把目标从背景中切出,随后 Fast-FoundationStereo 根据 D435i 双目图像计算深度,再利用相机标定关系把 mask 内像素投影成三维几何,通过解析方法生成抓取姿态。运动规划器生成 spline reference,并使用 minimum-jerk timing 约束轨迹,沿轨迹逐点求逆运动学,同时检查整条 swept motion 的碰撞间隙。然而离线规划仍解决不了运动过程中的视觉漂移——人形机器人靠近桌子时身体移动、头部相机视角改变,最初投影的三维目标即使只偏几厘米也足以导致抓取失败。系统因此继续使用 SAM 2.1 跟踪目标,并结合 SAMURAI 的 memory selection 维持跨帧目标状态,再通过 visual servoing 持续修正接近方向。

这里形成了一个重要的闭环分层:小范围视觉误差由 servo loop 直接修正;机械手闭合却未建立接触时,Pick 技能可换一个 grasp candidate 或改变机器人站位后重新规划,且尝试有明确次数边界;只有局部恢复无法处理时,技能才把失败原因返回 Astra,让 VLM 决定重新定位、换目标或调整任务顺序。大模型因此没有进入每一次纠偏,它负责离散任务状态转移,本地模块负责连续状态稳定。两者时间尺度也完全不同:手臂和手部控制命令运行在 250 Hz,AMO 每 5 个控制 tick 更新一次,相当于 50 Hz,而 GPT Astra 的远端推理处在秒级。把三种尺度硬塞进同一个策略里,网络抖动和模型推理时间会直接影响身体控制;分开之后,大模型停顿主要发生在技能切换处。

抽屉操作把这种分层推到了全身控制。机械手挂住把手后,若只让手臂向后移动,很快会遇到工作空间和身体平衡限制。系统会让机器人向后走,同时维持上肢操作目标。这里使用的 AMO 是一套将 Sim2Real 强化学习与轨迹优化结合的全身控制框架,训练目标之一就是让 G1 在面对超出常规分布的上肢目标时,仍能通过下肢和躯干调整扩大可操作空间。至此整套技术链闭合:VLM 输出任务级目标,空间记忆把历史视觉变成地图位置,感知模块把二维目标恢复成三维几何,规划器生成可执行轨迹,视觉伺服吸收局部误差,全身控制器负责让动作在真实 G1 上保持稳定。

这套系统目前仍有明显的工程边界。Real2Sim 会增加部署准备和 API 成本,Astra 的远端推理会在技能之间产生停顿,本地感知和规划目前需要一台 RTX 4090 笔记本运行,更重的视觉模型会继续推高计算需求。长时间任务还受到机械臂工作空间、手部舵机发热以及硬件耐久度限制。更大的问题来自技能覆盖范围:Astra 可以重新安排 Pick、Place、Navigate 和 Open Drawer,却不能仅靠语言推理生成一种从未实现过的接触动力学——技能库没有擦桌子,就无法因为一句指令自动获得稳定的擦拭控制。

不过这种限制反过来也说明了架构方向。HomeBody 没有要求一个 VLA 同时学习空间记忆、任务分解、三维视觉、抓取、碰撞规避和全身动力学,而是把这些问题拆成各自适合的表示和控制频率,再通过显式接口连接。VLM 面对技能和状态,SLAM 面对几何空间,视觉模型面对像素与深度,运动规划器面对轨迹约束,AMO 面对整具身体的动力学。人形机器人因而开始出现一种更接近复杂软件系统的结构:高层模型负责离散决策,空间系统维护外部状态,技能提供标准化调用接口,高频控制层承担物理稳定性。HomeBody 目前展示的能力还有限,但它提出的问题已经很具体——接下来具身智能的竞争可能不只是谁能训练出更大的动作模型,还包括谁能设计出更合理的技能接口、更稳定的空间状态表示,以及更清晰的高低频控制边界。