一句话定位不训练任何导航模型用「编码 Agent 式」多轮会话当大脑每个任务 / 每次重试都开新对话但把地图、任务账本、交接记录、房屋笔记放在对话外面的文件里再加独立裁判核验「真的完成了吗」——让机器人连续干一串任务时越干越熟。同名论文别混还有一篇NavHarness: Adaptive Goals for VLN哈工大深圳arXiv:2609.39915Goal/Verify/Memory/Visuomotor 四 Agent单任务 R2R/RxR。本文是Qi Wu 组的「终身导航」版arXiv:2609.34276关注跨任务、跨会话的经验传递。两者都有「核验」但本篇核心是会话边界上带什么过去。关键词框架NavHarness · Agent Harness · Lifelong VLN记忆与交接任务账本 · 结构化交接 · 记忆巩固 / House Notes · Agent Memory闸门与恢复停前核验 · 停后认证 · 恢复范围基准与指标GOAT-Bench · IR2R-CE · s-SR · e-SR · SR1. 背景概念Harness马具 / 脚手架大模型外面那层「规矩 工具 记忆 流程控制」。模型负责想harness 负责什么时候让它想、给它看什么、它能动什么、它说完成算不算。Session会话一次多轮对话。上下文窗口有限对话越长越会塞满旧图像和过时目标。Lifelong / 序列导航不是一题一清零而是「上一个任务的终点 下一个任务的起点」同一套房子连续接 5–10 个找东西请求。ORB-SLAM3一种经典视觉 SLAM同时定位与建图本文用 RGB-D 模式估位姿不读仿真真值位姿。占据栅格occupancy grid俯视的小格子图每格是未知 / 可走 / 障碍。本文 0.10 m 一格。技术线零样本「大模型直接控步」MIP多轮多模态推理 简单观察/移动工具→ 加上跨会话记忆处理。不训练导航策略。2. 论文在干什么问题生活类比保姆换班。前一个保姆找了半天钥匙没找到就下班了新保姆来了如果什么都不交接只能从头翻一遍如果交接一句「卧室找过了」也不够——到底是「去过卧室」还是「卧室每个抽屉都翻过、确定没有」三个痛点单一长对话越拖越差上下文里堆满旧目标和旧图片干扰当前任务实验单长会话 54.9% 每任务独立会话 58.9%。完全清零又浪费每次新会话从零探索重复走路、重复搜。记录会错「没找到」不等于「确认不在」导航自称完成可能是错的错的记录会污染后面所有任务。设定GOAT-Bench多模态目标文字 / 类别 / 图片一集 5–10 个子任务与 IR2R-CE连续 R2R 指令串动作只有前进 0.25 m、左右转 15°、STOP仅前向 RGB-D。3. 核心创新点会话边界是一等公民每个任务、每次恢复都开新对话但地图 / 账本 / 交接 / 房屋笔记都在对话外的文件里靠read_file按需读进来不是整段塞 system prompt。对话管理压缩、截断留给后端harness 只管「什么时候换对话、换的时候带什么」。结构化交接优于等长摘要恢复前旧会话写一份 JSON 交接搜过的地方 / 有证据排除的地方附证据观测/ 最后可靠地标 / 没试过的选项 / 不确定点 / 建议恢复范围。消融同长度普通摘要差 8.3 分塞别的任务的交接反而更差。主张claim与裁决verdict分离导航会话说「完成了」只是主张独立裁判会话无工具、看不到导航对话和自评看 4 张停点视图 采样历史帧 地图给出 complete / incomplete / unknown。停前只否决一次unknown 不拦停后认证决定账本里写「certified / not done / unresolved / claimed」。分层记忆 写权限工作记忆地图、命名地点及照片、地点图、任务记录与长期记忆4 个 house notes 文件谁能写哪个文件是硬规则——导航会话只能写自己的交接账本和裁决只有编排器写house notes 只有巩固会话写。跑完再巩固一个只有文件工具的巩固会话读账本 交接重写房屋概览 / 房间笔记 / 导航技巧要求区分「已认证结果」和「机器人自己的解读」。4. 方法细节4.1 名词层级层级含义Run同一房子里 K 个任务的一次部署Task追一个目标可能有多次 attempt共享一份预算Attempt一次连续搜索对应一个会话Session多轮多模态对话推理核心Hop会话里最多 H25 轮模型调用的一段编排器在 hop 之间处理关闭 / 恢复请求4.2 工具表模型只能通过这些动作工具作用耗物理步数observe前向 RGB 剩余步数否step最多 12 个离散动作批量执行报告碰撞 / 预算是get_goal重读目标图片目标可再看否get_map俯视占据图 标记否mark在当前位置放 / 移命名标记绑定 ≤4 张按朝向分桶的照片 位姿估计否preview_pathA* 预览到某点的路线长度不动否list/read/write_file读写记忆文件读 ≤20k 字符写 ≤6k否request_recovery提议恢复范围 理由 置信度harness 决定否close_task拍停点 4 视图请求带核验的关闭不直接发 STOP否4.3 空间记忆ORB-SLAM3 RGB-D 估位姿每个 0.25 m / 15° 动作拆成 5 个 0.05 m / 3° 子动作喂跟踪器防止转弯丢跟踪。占据图深度 0.3–4.5 m 反投影按离地高度分类0.15–1.4 m 为障碍−0.5–0.15 m 为地面射线清空可走格障碍不会被可走覆盖按楼层分层高度变化 1 m 开新层。跟踪丢失不返回位姿、不写地图恢复后重锚到最后可信位姿。闭环修正不回写已写格子作者自认局限。地点 名字是主张 位姿是估计 照片是观测三者分开存。连续标记且跨楼层的两点连成候选连接边。写入文字的坐标会被清洗掉避免地图重锚后文本里留下过期坐标。4.4 恢复与范围升级触发会话主动请求或回合数到阈值最早 12 轮。守门有进展新探索面积 ≥ 1.5 m² 或新观测且没丢跟踪、没楼层不符 → 拒绝恢复继续。范围梯子attempt → place → room → floor → house。丢跟踪至少升到 place楼层不符至少升到 floor重复恢复自动升一级。所有范围都保留地图、标记、账本、档案变的只是「要重新怀疑哪些信念」。place 及以上拍 4 周视图单独「唤醒会话」拿当前视图对比已存地点照片给新会话一段「你大概在哪」的简报。4.5 核验证据目标 停点 4 视图 历史帧共 ≤12 帧 地图 机械记录步数、标记名等。停前第一次请求时若裁决明确且与自称相反 → 把反证退回同一会话继续搜只否决一次防止无限拖。停后写入账本状态不改本任务得分但决定后续任务继承的是「已认证」还是「仅自称」。5. 整体框架Mermaid对话外记忆新开会话 必读文件清单step 离散动作RGB-D/碰撞/预算request_recovery批准: 写恢复交接→开新会话close_task 主张裁决 一次否决STOP 写账本/裁决只写read_file / get_map / mark新目标编排器导航会话 LLM占据图/标记/地点照片账本 ledger任务交接 / 恢复交接房屋笔记 4 文件环境 ORB-SLAM3裁判会话巩固会话 跑完后裁判导航会话编排器裁判导航会话编排器alt[请求恢复且无进展][请求关闭]loop[每个 hop ≤25 轮]开新会话(目标, 上一交接, 账本, 房屋笔记)读文件/看图/查地图/走步请求恢复或关闭只读写文件的最后一 hop: 写恢复交接新会话读交接, 预算不重置停点4视图历史帧地图complete/incomplete/unknown若与自称冲突: 退回反证(仅一次)STOP, 写裁决与账本条目6. 实验与结论主结果全部用 SLAM 估计位姿非仿真真值基准 / 模型独立会话 s-SRNavHarness s-SRe-SRGOAT / GPT-6 Astra65.183.7SPL 62.313.6 →36.9GOAT / Opus 558.981.55.8 → 28.6GOAT / GPT-4o43.578.36.4 → 26.9GOAT / Qwen3.8-27B41.471.73.1 → 14.4IR2R-CE / GPT-6 Astra68.485.9SPL 76.19.3 → 27.8此前 GOAT 最强 HIMM 72.8且用真值位姿IR2R-CE 此前 SeqWalker 36。消融Opus 5GOAT 全量 2669 子任务相对完整 81.5改动Δ s-SR说明单一长会话−26.6比每任务独立会话还差独立会话 停前核验−19.1光有核验不够关键在跨任务记忆无跨任务记忆−14.7地图和记录都清每任务清地图留记录−12.6步数 32%隐藏任务记录留地图−9.7步数 25%无恢复−10.4恢复 空交接−8.6光重开对话没用恢复 等长普通摘要−8.3结构比长度重要恢复 别的任务的交接−13.0错的交接比没有更糟无停前核验−5.4无停后认证−2.5但账本准确率 90.7% vs 全信 82.6%停点只拍 1 张−2.9跨房子连续部署36 个房子 × 10 个 tourOpus 5开启巩固 s-SR 72.8 → 80.5SPL 36.5 → 44.3。案例用笔记把「楼梯扶手上方」解读成冰箱房的梳妆台之前失败任务记下的「门后没查的墙」被后来的会话捡回来。局限作者自述 读后全在仿真、静态场景无真机。每任务平均38–45 轮模型调用延迟大作者建议让更快的局部策略接管控制、大模型只管目标 / 记忆 / 边界。Qwen3.5-4B / 9B 当推理核心基本跑不动多轮多模态导航附录 E.7。裁判也会错误收 5.2%、误拒 4.1%错的「已完成」会被写进房屋笔记。闭环修正不回写占据图地图帧从不对齐真值漂移会留着。要点总结对话可以丢证据不能丢每任务新开对话 文件化记忆比一条长对话或完全清零都好。「搜过」≠「排除」排除必须附观测证据这条比「怎么压缩」更重要。主张 ≠ 裁决执行者说完成 → 独立裁判核 → 账本里分别存否决有上限。写权限是硬规则内容质量是软指令谁能写哪个文件靠代码强制。恢复不重置预算、不删记忆只扩大「要重新怀疑的信念」范围。文字记忆里不存坐标地图会重锚。开放问题裁判和执行同一模型族偏差相关换不同模型裁判的收益附录表 13具体多少账本线性增长、read_file无 offset几百个任务后怎么检索如果局部控制交给训练好的策略作者的未来方向核验时机变成「控制权交回时」和 NavGPT-3 的运动权限设计怎么合小模型4B做不了推理核心但能不能只当「写交接 / 当裁判」