大模型驱动的 VLN:语言规划、视觉理解与动作生成
大模型参与视觉语言导航,可以选择图上的下一节点,也可以生成供导航器执行的语言计划,或根据视频直接预测带距离和角度的动作。本文以 NavGPT、MiC 和 NaVid 为主线,分析这三类接口的信息流、训练方式与能力边界,重点解释视觉信息如何进入语言模型、历史如何压缩,以及动作生成如何获得监督。
上一篇讨论了拓扑记忆、双尺度决策与混合地图:策略需要把语言、当前观测和历史空间组织成可决策的表示。引入大模型以后,这个问题仍然存在,只是表示与决策的接口发生了变化。
以“走出卧室,到洗衣房找到洗衣机”为例,语言模型可能知道洗衣机通常出现在哪里,却没有直接看到当前建筑的布局;视觉模型可能识别出门口,却未必记住刚刚经过了哪个房间;即使模型生成“右转 30 度”,机器人也需要把这段文本转成运动,并通过新观测确认执行结果。
本文讨论 2023—2024 年的三项代表性研究。NavGPT、MiC 和 NaVid 分别突出文本决策、计划辅助和视频动作生成。这一顺序用于比较接口变化,并不表示三者使用相同任务、相同输入或相同训练预算。
一、大模型接入导航的三种接口
设任务指令为 ,当前视觉观测为 ,历史为 。导航策略最终都需要得到环境可接受的动作 :
区别在于这个条件分布由谁实现,以及中间是否经过自然语言。下面用 表示观测编码器, 表示语言或多模态模型, 表示另行训练的导航策略, 表示动作解析。
| 方法 | 进入大模型的信息 | 大模型输出 | 谁决定可执行动作 | 任务训练条件 |
|---|---|---|---|---|
| NavGPT | 场景文字、物体与距离、历史摘要、指令和候选节点 | 推理文本、下一视点或停止 | LLM 在导航图的候选集合中选择 | 主语言模型不做 VLN 任务微调;视觉与语言基础模型已有预训练 |
| MiC | 目标、房间/物体语义及提示示例 | 静态目标先验、动态语言计划 | 训练过的导航器读取扩展指令并决策 | 冻结语言规划器,配合经过导航训练的模型 |
| NaVid | 指令、历史 RGB 视频及当前 RGB 观测的视觉 token | 前进/转向及参数,或停止 | 多模态模型生成,解析后交给执行器 | 使用导航样本和通用图文/视频数据训练 |
这三类接口可简写为:
这里的公式是对系统分工的概括,省略了提示模板和具体编码模块。它们说明了一个关键区别:生成语言计划、选择离散视点和输出参数化运动指令,约束的是不同层次的能力。
例如,计划“去洗衣房”主要约束目标语义;选择相邻视点需要把方向与候选节点对应起来;生成“前进 50 厘米”进一步需要判断可行距离。随着动作接口变细,模型对空间尺度、观测时效性和执行反馈的要求也会提高。
二、NavGPT:视觉文本化与候选动作推理
2.1 从全景观测到结构化提示
NavGPT 使用文本 LLM 进行导航,因此首先要把图像转换成模型能够接收的文字。原论文 §3 与附录中的视觉管线包括场景描述、物体信息以及方向和距离信息。
其观测采用 8 个水平方向与 3 个俯仰角,共 24 个视图。视觉语言模型为视图生成描述,再将同一水平方向的不同俯仰描述合并。物体检测补充场景中有哪些对象;模拟器提供的深度用于估计检测框中心对应的距离,并筛选附近物体。由此,输入不只是“这里有一个房间”,还包含朝向、物体和近似空间关系。

图 1:Gengze Zhou、Yicong Hong、Qi Wu,NavGPT,原论文 Fig. 1。摘取完整图区,模块及比例保持原样。论文来源 · 查看原尺寸。
图从上向下阅读:Instruction 提供任务,Observation 经视觉基础模型转换为文字,History 保存已走过的过程;三者与系统规则一起进入 Prompt Manager。下半部分的 LLM 输出下一动作或停止。动作执行后的新观测重新进入上半部分,形成决策循环。
用 表示当前场景文本, 表示当前允许到达的候选视点, 表示历史摘要,可以把一次决策写为:
是提示规则, 是生成的推理文本。历史缓冲区记录观测、推理和动作,摘要模块压缩较早的观测描述。候选集合 则把语言生成约束到导航图允许的移动范围:模型需要选择真实存在的视点标识,而不能凭空创造一个可达位置。
因此,这里的“动作推理”依赖环境已经提供的导航图与候选视点。它没有直接解决连续空间中的避障和运动控制。
2.2 文字接口的优势与信息瓶颈
文本接口使目标、方向、地标和历史进度能够进入同一提示。模型可以表达“已经经过厨房,下一步应寻找餐桌”,也可以在历史摘要中保留曾经走错的分支。这种中间记录便于检查信息在哪里丢失。
问题在于,场景描述是对图像的压缩。例如,两张图都被描述为“走廊右侧有门”,但一张图有两个相似门口,另一张图只有一个。如果指令要求进入“第二个门”,被省略的数量和次序就会影响决策。
当其他输入相同时,如果文本化模块满足:
后续文本模型就无法仅凭这份描述区分两个观测,即使它们需要不同动作。更长的推理文本也无法恢复输入中已经消失的证据。这是接口的信息瓶颈,与语言表达是否流畅无关。
同样,历史摘要如果只留下“经过客厅”,却删除了进出方向和失败尝试,就可能在回退时造成歧义。NavGPT 的推理文本可以作为分析记录,但文本本身并不能证明模型的决策过程在因果上忠实于这段解释。
2.3 物体与距离信息的消融证据
NavGPT 的视觉消融采用 GPT-3.5,在 72 个场景各取一条轨迹、每条轨迹三条指令,共 216 个样本上评测;这些场景包含训练场景和未见场景。它与论文主表中 GPT-4 的完整 R2R 验证结果具有不同协议。
| 文字化观测内容 | SR / % | SPL / % |
|---|---|---|
| 场景描述 | 11.11 | 6.92 |
| 场景描述 + 物体 | 15.97 | 11.71 |
| 场景描述 + 物体 + 距离 | 16.67 | 13.00 |
数据来源:NavGPT,Table 3 与 §4.3,作者报告。SR 为成功率,SPL 同时考虑成功与路径效率。
加入物体信息后,SR 增加 4.86 个百分点;进一步加入距离后,SR 增加 0.70 个百分点,SPL 增加 1.29 个百分点。这个实验支持“结构化空间信息对这套文本导航管线有帮助”,并不意味着仅靠文字就完整保留了几何结构。
NavGPT 的启示在于:提示工程需要同时设计信息内容、历史保留规则和动作约束。只增加对语言模型的指令,无法替代观测管线本身。
三、MiC:目标先验与场景触发的动态计划
3.1 语言规划器与导航器的分工
MiC 的研究对象是 REVERIE:根据高层指令到达目标附近,并识别所指物体。图中的“清空一楼洗衣机”用于描述目标,评测并不要求机器人实际执行清空操作。MiC 原论文把语言模型放在规划层,执行层仍使用经过训练的导航器。

图 2:Yanyuan Qiao 等,March in Chat,ICCV 2023,原论文 Fig. 2。摘取完整图区。论文来源 · 查看原尺寸。
沿图中底部时间轴从左向右阅读,可以看到三个模块:
- GOSP,目标导向的静态规划:从原指令提取目标物体,并补充它通常位于哪类房间的常识。
- ROASP,房间与物体感知模块:根据当前视觉观测预测房间类别和显著物体,形成语言描述。
- SODP,场景导向的动态规划:结合当前场景和提示示例生成行动建议,在场景变化时更新。
上方 Agent 沿途执行,下方 LLM 在若干时刻提供语言计划。MiC 的实验使用冻结的 GPT-2 作为语言规划器,底层导航模型采用 HM3D-DUET。这里的冻结与上下文学习描述的是规划模块;整套导航系统仍有任务训练。
3.2 场景识别与事件触发重规划
ROASP 利用 CLIP 对视觉与房间类别文本进行匹配。设当前有 个视图,房间类别集合为 , 表示第 个视图与房间类别 的匹配分数。其类别归一化与多视图汇总可写为:
物体描述同样来自图文匹配,并选取分数较高的物体标签。这里得到的是场景语义,不是带精确三维坐标的物体地图。
MiC 在初始时刻,以及预测房间类别变化时生成动态计划。以触发变量表示:
这一规则使语言规划发生在较慢的场景变化尺度上,导航器则继续处理每一步的视点选择。例如,预测房间序列是“卧室、卧室、走廊、走廊、洗衣房”,则在初始位置以及两次房间类别变化时生成计划,共三次。
这种事件触发机制减少了重复规划,但效果依赖房间分类稳定性。如果门口的预测在“卧室”和“走廊”之间反复切换,就可能触发多次计划;如果进入新房间后类别仍预测错误,也可能漏掉更新。它将规划频率与感知质量直接关联起来。
3.3 提示示例、累计计划与导航动作
SODP 的提示示例来自 FGR2R 训练数据。论文使用 Sentence-BERT 编码任务描述,通过语义相似度检索细粒度指令示例,再把示例组织到提示中,帮助语言模型生成更具体的建议。
这些示例提供的是“如何把高层目标表达为若干步骤”的范式,并不等于当前测试环境中的真实可行路径。以“洗衣机通常在洗衣房”为例,它是搜索先验;洗衣房在当前楼层的具体位置仍需要导航器探索。
令静态计划为 ,第 次触发产生的动态计划为 。导航器使用的扩展指令可以概括为:
是截至时刻 已触发的动态计划数,分号表示文本拼接。这样的分工保留了导航器原有的视觉定位、候选动作评分和历史处理能力,语言模型通过更新条件信息影响决策。
3.4 静态先验与动态计划的消融比较
| REVERIE val unseen 消融设置 | SR / % | SPL / % | RGS / % | RGSPL / % |
|---|---|---|---|---|
| 仅高层指令 HLI | 52.71 | 40.49 | 34.93 | 26.82 |
| HLI + GOSP | 55.28 | 42.46 | 37.13 | 28.24 |
| HLI + SODP | 56.26 | 42.94 | 36.80 | 27.81 |
| HLI + GOSP + SODP | 56.97 | 43.60 | 37.52 | 28.72 |
数据来源:MiC,Table 2,作者报告。RGS 还要求正确识别目标物体,RGSPL 进一步计入路径效率。本表比较该消融中的同一基线,不能将其与论文主结果表的另一基线行混用。
完整方案相对于 HLI,SR 提升 4.26 个百分点,RGS 提升 2.59 个百分点。单看两个模块,SODP 的导航 SR 更高,而 GOSP 的物体识别相关指标更高;二者结合后的结果最高。
这与模块分工相符:动态计划随着场景更新,静态计划持续提示目标及其典型位置。不过,这些数值只说明该实验中模块组合的效果,没有证明语言建议在每个样本中都正确,也不能推导出两个模块的收益可以直接相加。
四、NaVid:指令相关视觉与时序记忆压缩
4.1 从场景文字转向视频 token
NavGPT 将视觉压缩成文字,MiC 将场景语义转换成计划。NaVid 则把历史 RGB 观测与当前图像编码为视觉 token,让多模态模型直接预测动作。原论文 §III基于 LLaMA-VID,组合视觉编码、指令查询和 Vicuna-7B。

图 3:Jiazhao Zhang 等,NaVid,RSS 2024,原论文 Fig. 2。摘取完整图区,保留上下两部分。论文来源 · CC BY 4.0 · 查看原尺寸。
先看上半部分 Observation Encoder:同一帧图像经过两条分支,一条结合指令提取相关语义,另一条以网格池化保留空间内容。再看下半部分:历史帧压缩得更强,当前帧保留更多 token;这些视觉序列连同指令进入语言模型,输出前进距离、转向角度或停止。
这里的“视觉记忆”是模型上下文中的历史视觉序列,并不是显式的占据栅格或带度量坐标的地图。
4.2 指令查询 token 与空间网格 token
设一帧的视觉特征为 ,其中 是图像 patch 数, 是特征维度。NaVid 的这一视觉表示包含 个 patch。图中的指令符号 对应本文的 。
查询生成器根据图像和指令产生 个查询:
按论文 Eq. (2),先以查询关注图像区域,再池化和投影:
softmax 沿图像 patch 维度归一化,因而每个查询对 个 patch 形成一组权重。 的形状为 ,池化将查询维聚合,投影 将结果映射到语言模型的嵌入空间,最终得到一个指令查询 token。
另一条分支不以指令作为筛选条件:
按空间网格聚合特征, 对齐语言模型维度。两条分支作用不同: 强調“这张图与当前任务有关的内容”, 保留更广的场景与空间线索。仅保留前者,可能过早丢掉后来才需要的信息;仅保留后者,则需要后续模型从大量视觉内容中自行定位指令相关部分。
4.3 历史粗粒度、当前细粒度
NaVid 为历史帧保留 4 个网格 token,为当前帧保留 64 个网格 token;每帧另有 1 个指令查询 token。模型还使用历史、当前观测和导航指令的标识 token 来区分输入角色。
若 表示包含当前帧在内的总帧数,则视觉内容 token 数为:
例如,100 帧需要 560 个视觉内容 token,300 帧需要 1560 个;以上均不包含指令文本和边界标识。这比逐帧保留 256 个 patch 的表示紧凑,但其上下文仍随历史长度线性增长,并不是固定大小的记忆。
采用不对称压缩的直觉是:当前帧决定眼前的门口、转弯和障碍关系,需要更多空间细节;较早历史主要帮助判断到过哪里、地标顺序如何,可以更粗。但早期细节一旦压缩,后续也无法任意恢复。
论文的压缩消融体现了精度与计算成本的取舍:
| 网格 token 压缩设置 | SR / % | SPL / % | 平均推理时间 / 秒 |
|---|---|---|---|
| 1 | 23.9 | 20.5 | 0.87 |
| 4 | 37.4 | 35.9 | 1.22 |
| 16 | 38.0 | 36.1 | 2.72 |
数据来源:NaVid,Table VIII,R2R-CE val unseen,作者的 token 压缩实验;时间对应论文测试配置。主模型采用上述历史 4、当前 64 的设置。
从 4 增加到 16,SR 提升 0.6 个百分点,平均推理时间增加 1.50 秒。对连续执行系统而言,更多视觉细节有可能带来收益,也会延长决策等待;应联合观察任务成功和决策耗时。
4.4 观测表示的消融与比较条件
NaVid 还比较了其他观测表示,结果见 Table IV:
| 输入表示 | 具体构造 | SR / % | SPL / % |
|---|---|---|---|
| Text-based | 各帧生成场景描述,并分组汇总为文字历史,当前帧也采用文字 | 0.0 | 0.0 |
| Map-text | 当前俯视地图图像 + 上述文字历史 | 9.13 | 8.97 |
| Ego-view-text | 当前第一视角图像 + 上述文字历史 | 23.5 | 20.8 |
| Video-based | 历史与当前视觉 token | 37.4 | 35.9 |
数据来源:NaVid,Table IV,R2R-CE val unseen,作者报告。各表示对应的训练输入与共同训练问答类型也作了适配。
其中 Text-based 指场景描述历史;Map-text 中的地图是图像输入。这个实验支持作者的视频管线在所测配置中更有效,但并非只替换一个历史编码模块、其他条件完全固定的严格单因素比较,也不能把某个配置的零成功率推广到所有文本导航方法。
五、动作生成的监督信号与数据分布
5.1 将参数化动作序列化为文本
NaVid 的动作输出包含类别和参数,例如前进距离、左/右转角度,以及停止。它连接了语言模型的自回归生成接口与导航动作接口。
令一次决策的上下文为 ,目标动作的文本 token 序列为 。从序列建模角度,条件概率可分解为:
相应的监督交叉熵为:
星号表示训练目标。这是对动作文本监督的通用表述:生成动作类型和数值都被视为预测 token。训练时使用正确的前缀 ,推理时使用已经生成的前缀,因此前面的错误也可能影响后续参数。
需要区分两种“使用专家信息”:文本解码时提供正确 token 前缀,约束的是一次输出内部的序列;环境中沿专家轨迹移动,决定的是下一次观测来自什么状态。前者并不会自动解决后者的状态分布偏移。
5.2 专家状态、策略状态与反向指令监督
NaVid 的导航数据由不同粒度的样本构成:
| 数据组成 | 规模 | 样本单位与训练作用 |
|---|---|---|
| 专家轨迹动作样本 | 约 320k | 步级观测—动作样本,学习沿参考路径决策 |
| 非 oracle 轨迹动作样本 | 约 180k | 从策略实际访问的轨迹状态采集,扩大观测分布 |
| 指令推理样本 | 约 10k | 轨迹级视频到指令的样本,强化完整路径与语言的对应 |
| 通用共同训练数据 | 约 763k | 网络图文/视频相关样本,用于维持通用多模态能力 |
数据来源:NaVid,§III 的数据构造与训练设置。前三类共约 510k 个导航训练样本,包含步级与轨迹级样本,不能称为 510k 条独立导航轨迹。
专家数据提供清晰的任务路径,却很少出现策略自己走偏后的观测。非 oracle 数据采用受 DAgger 启发的采集思路,扩大到当前策略实际访问的状态,因此它针对的是训练与执行时的状态分布差异。
指令推理则反转输入输出方向:给出视频轨迹,要求描述对应指令。这样一段轨迹除了提供多个局部动作目标,还提供完整路径的语言目标,有助于约束模型对地标和时序的理解。它与“把模型生成的思维链视为正确推理监督”是不同的训练任务。
论文在训练时冻结观测编码器,更新语言模型及文本编码器。共同训练使导航任务与通用多模态任务共享模型参数;这套训练安排应与前述 NavGPT 的提示调用、MiC 的冻结规划器分别理解。
5.3 数据、任务标识与性能的关系
| NaVid 消融设置 | SR / % | SPL / % |
|---|---|---|
| 去除通用共同训练 | 24.7 | 23.6 |
| 去除指令推理任务 | 31.1 | 29.1 |
| 去除非 oracle 数据 | 34.2 | 32.0 |
| 去除导航任务标识 | 35.9 | 33.5 |
| 去除历史/当前观测标识 | 35.7 | 33.4 |
| 完整模型 | 37.4 | 35.9 |
数据来源:NaVid,Table VII,R2R-CE val unseen,作者报告。每行是在完整方案上去除相应组成的实验。
去除共同训练、指令推理和非 oracle 数据后,SR 分别降低 12.7、6.3 和 3.2 个百分点。前两项表明训练目标与数据组合会影响导航表现,第三项与覆盖策略状态的动机一致。这些下降量来自不同消融,不能相加作为总贡献,也不能据此认为继续增加同类数据必然线性提高性能。
标识 token 的消融则提示:同样的视觉内容,在上下文中属于“历史”还是“当前”,以及当前要求执行什么任务,都会影响模型如何使用它。多模态训练不仅需要对齐特征维度,还需要明确输入的时序和任务角色。
六、评测边界与机器人执行接口
6.1 任务协议与跨方法比较
| 比较维度 | NavGPT | MiC | NaVid |
|---|---|---|---|
| 本文关注的主要任务 | R2R 路线跟随 | REVERIE 导航与目标指认 | R2R-CE 连续环境导航 |
| 移动接口 | 导航图候选视点 | 导航器选择图上动作 | 前进距离、转向角度、停止 |
| 主要历史形式 | 文字描述及摘要 | 导航器历史与累计语言计划 | 压缩后的视频 token |
| 大模型使用方式 | 提示式决策 | 冻结规划器辅助训练过的导航器 | 多模态任务训练后生成动作 |
| 需要特别检查的条件 | 视觉文本、深度和候选图的来源 | 目标先验、场景触发和底层训练数据 | 输入模态、轨迹数据及执行控制 |
NaVid 主实验在 R2R-CE val unseen 上报告 SR 37.4%、SPL 35.9%;NavGPT 的 GPT-4 主结果在 R2R val unseen 上报告 SR 34%、SPL 29%。两个结果对应不同环境与动作协议,不能相减得到视频模型相对于文本模型的“净提升”。MiC 又增加了目标物体指认要求,应同时查看 RGS 与 RGSPL。
更合理的比较顺序是先固定任务、划分、观测和动作接口,再讨论模型;无法统一协议时,重点比较信息流、训练条件和各自的消融证据。指标含义可回看任务与评测篇。
6.2 合法动作、成功执行与任务成功
一次模型输出至少要经过三个层次:
| 层次 | 需要判断的内容 | 示例 |
|---|---|---|
| 可解析性 | 输出是否符合动作语法与参数格式 | 能否解析成“右转 30 度” |
| 执行有效性 | 当前状态下能否执行,实际运动是否符合指令 | 转向是否完成,运动是否被障碍打断 |
| 任务正确性 | 行动序列是否满足原指令和终止条件 | 是否到达指定房间并在正确目标附近停止 |
NaVid 报告在 R2R-CE val unseen 中动作格式解析有效率为 100%,但同一任务的成功率远低于 100%。这说明语言模型可以稳定遵守动作输出格式,格式正确本身并不等于路径或停止决策正确。
“RGB-only”也需要限定层次:NaVid 的策略输入使用 RGB 图像和指令,不输入显式地图、深度或里程计;其真实机器人实验的底层执行仍使用里程计等支持,附录说明了 LiDAR 里程计参与位置与朝向估计。策略输入模态与整机运行所需的传感器,是两张不同的接口清单。
6.3 从模型决策到执行反馈
作为系统设计的抽象,一次在线循环可以写为:
这里 是执行层可用的当前状态, 是接受、拒绝或中断等反馈。上述写法用于区分职责,并不表示三篇论文都实现了同一套校验模块。
例如,生成“前进 100 厘米”之后,执行器因障碍只移动了 40 厘米。如果历史仍记录为“已前进 100 厘米”,模型下一次推理就会建立在错误进度上。可靠的闭环需要把实际执行结果写入后续状态,并使用新观测修正计划。
时间同样属于接口。一次循环的耗时可分解为观测编码、模型生成、输出处理与动作执行;长历史和较细视觉 token 会增加模型侧负担。若机器人在计算期间继续移动,当前图像与执行时刻的状态还会出现时间差。因此,论文中的推理耗时需要结合硬件、历史长度及机器人是否等待动作完成一起解释。
三项研究呈现出互补的路径:NavGPT 让语义决策过程显式进入文本接口;MiC 用场景触发的语言计划协助已有导航策略;NaVid 把历史视觉保留在多模态上下文中,并学习参数化动作。它们共同指向的核心问题是:哪些信息应该保留在视觉中,哪些知识适合通过语言表达,以及生成的动作如何在环境反馈中得到校正。
下一篇讨论机器人视觉语言导航,进一步分析观测适配、可通行性和运动执行的关系。
参考资料
- Gengze Zhou, Yicong Hong, Qi Wu. NavGPT: Explicit Reasoning in Vision-and-Language Navigation with Large Language Models. 2023 预印本,v3。
- Yanyuan Qiao et al. March in Chat: Interactive Prompting for Remote Embodied Referring Expression. ICCV 2023。
- Jiazhao Zhang et al. NaVid: Video-based VLM Plans the Next Step for Vision-and-Language Navigation. RSS 2024,引用 v7。
本文数值均为所引论文的作者报告。论文插图版权归原作者或相应权利人,不纳入本站原创内容的许可声明。