跳到主要内容

LATS:语言智能体树搜索 —— 集推理、行动与规划于一体的框架

· 阅读需 7 分钟
Mike Thrift
Mike Thrift
Marketing Manager

我一直在思考继思维树(Tree of Thoughts)之后会是什么 —— 如果你可以对推理步骤进行搜索,为什么不同时对 行动 进行搜索呢?这正是 LATS(Language Agent Tree Search,语言智能体树搜索)所做的,也是我目前正在研读它的原因。由 Andy Zhou、Kai Yan、Michal Shlapentokh-Rothman、Haohan Wang 和 Yu-Xiong Wang 撰写的这篇论文(ICML 2024, arXiv:2310.04406)是迄今为止对单一智能体框架中推理、行动和规划最清晰的整合,其结果确实令人难以忽视。

论文解读

2026-05-10-lats-language-agent-tree-search-reasoning-acting-planning

LATS 解决的核心问题是先前智能体研究中的结构性缺失。ReAct 交替进行推理和行动,但在执行轨迹出错时缺乏回溯并尝试不同路径的机制。思维树支持在推理步骤上进行分支,但它仅基于语言模型的内部知识运行 —— 无法在搜索过程中调用工具或接收外部反馈。Reflexion 增加了语言层面的自我修正,但其线性重试循环意味着它在没有探索替代方案的情况下就致力于一条新轨迹。LATS 通过一个标准的蒙特卡洛树搜索(MCTS)骨干框架融合了这三个想法,使大语言模型(LLM)智能体能够探索多个分支、接收真实的物理环境反馈,并在路径失败时进行回溯。

其技术机制是一个六步 MCTS 循环:选择(Selection,通过 UCT 公式挑选下一个要探索的节点)、扩展(Expansion,从语言模型中采样 n 个候选动作)、评估(Evaluation,使用混合价值函数为每个节点评分)、模拟(Simulation,推进至终端状态)、反向传播(Backpropagation,更新祖先节点价值)以及反思(Reflection,失败时生成关于出错原因的文本总结并存入上下文)。其价值函数值得关注:V(s) = λ·LM(s) + (1−λ)·SC(s),其中 LM(s) 是语言模型在接收环境反馈 对轨迹质量的自我评估,而 SC(s) 是基于该动作在兄弟节点中被采样频率的自一致性得分。这并非训练出来的奖励模型 —— 价值函数完全由提示词(Prompt)驱动。

核心观点

  • 在 HumanEval 基准测试中,GPT-4 + LATS 实现了 92.7% 的 pass@1,而 GPT-4 + Reflexion 为 91.0%,GPT-3.5 + ReAct 仅为 56.9%。GPT-3.5 + LATS 的成绩跃升至 83.8%。
  • 在 HotPotQA 上,LATS (CoT + ReAct) 的精确匹配率达到 0.71,而 ReAct 基准仅为 0.32 —— 在多步推理准确率上实现了翻倍。
  • 在 WebShop(网络导航 + 购物)中,LATS 评分 75.9(成功率 38.0%),对比 Reflexion 的 64.2(35.0%)—— 在需要跨多个页面管理状态的任务中展现了显著差距。
  • 在 24 点游戏(纯推理谜题)中,LATS 的成功率达到 0.44,而同样使用 GPT-4 骨干的思维树(ToT)仅为 0.20。
  • 出人意料的是,LATS 找到解法所扩展的节点比 ToT 更少(HotPotQA 在 k=50 时平均节点数为 66.65 对 84.05),且使用的 Token 更少(173,290 对 210,215),尽管从理论上看它似乎开销更大。

哪些经得起推敲 —— 哪些不行

基准数据是真实的,框架在概念上也非常纯粹。UCT 公式提供了思维树中那种临时起意的广度优先(BFS)/深度优先(DFS)搜索所缺乏的、有原则的“探索-利用”权衡。将外部环境反馈整合进价值函数 —— 而非单纯的语言模型内省 —— 是正确的方向,结果也证明了这一点。

即便如此,论文中埋藏了一个关键假设,作者虽承认但未进行充分的压力测试:LATS 要求具备将环境恢复到早期状态的能力。没有快照机制就无法进行树状分支 —— 动作一旦执行,你就被锁定了。作者指出,对于语言模型任务,这通常可以通过“复制粘贴历史文本输入”来管理,但对于真实的行动环境(数据库、文件系统、具有副作用的 API),这是许多生产系统无法满足的硬性要求。WebShop 的结果虽然优于基准,但也表明在复杂环境中,自我反思倾向于变得泛化而非具体 —— 智能体可能会陷入重复表面不同但结构相同的错误的困境。论文注意到了这一点,但没有给出解决方案。

此外,目前还没有消融实验能隔离 MCTS 结构与价值函数设计各自的贡献。采用相同混合价值函数的更简单分支方法也可能消除大部分差距,作者并未对此进行直接测试。

为什么这对财务 AI 至关重要

Beancount 账本是 LATS 风格树搜索近乎理想的环境,原因在于:每个账本都由 Git 仓库支持。状态回退 —— 这一让 LATS 在许多现实场景中难以落地的硬性要求 —— 可以通过 git checkoutgit stash 轻易满足。一个写入智能体可以提出跨多个分支的候选分录,根据资产负债表约束(价值函数)对其进行评估,并仅提交得分最高的路径。失败的分支会得到一个语言反思:“由于账户类型分类错误,该分录违反了 资产 = 负债 + 权益 的恒等式。”

混合价值函数的设计也直接适用。对于账本智能体,LM(s) 可以根据语义拟合度为提议的分录评分(这看起来像正确的类别吗?),而 SC(s) 则跟踪智能体对过去类似交易分类的一致性 —— 这是一种植根于账本自身历史的天然自一致性检查。

状态回退假设是我对财务类比提出异议的唯一之处。真实的账本往往具有下游效应:登记一笔分录会触发发票,进而触发付款工作流。在这种情况下,LATS 的假设就失效了。专门针对 Beancount 而言,账本是受 Git 控制的纯文本文件,且变更在触发下游操作前是局部的,因此该假设成立 —— 但这是一个值得明确的架构约束。

延伸阅读

  • 无需环境模型的 MCTS 规划:"Reasoning with Language Model is Planning with World Model" (Hao et al., 2023, arXiv:2305.14992) —— LATS 直接在其基础上构建并超越的 RAP 框架。
  • 语言模型价值函数的泛化能力如何?"Let's Verify Step by Step" (Lightman et al., 2023, arXiv:2305.20050) —— 作为提示词价值函数替代方案的过程奖励模型。
  • 不可逆转情况下的安全多步规划:"Decision-Making with Language Models via Successive Prompting" (Creswell et al., 2023) —— 一种避开了状态回退要求的更简单的规划方法。