思维树(ToT):让大模型探索多条推理路径

线性思维链(CoT)让模型一步步推导,但每一步都是「单行道」:一旦某步走错,后续推理全部失效。Tree of Thoughts(ToT,思维树)把推理建模成一棵搜索树,在每个节点生成多个候选「思维」,用模型自身评估优劣,再决定前进、扩展或回溯,从而显著提升复杂问题的解题率。该框架由 Shunyu Yao 等人于 2023 年提出,论文编号 arXiv:2305.10601,发表于 NeurIPS 2023。已核验

什么是思维树(ToT)

ToT 把问题求解拆成「思维(thought)」这一中间单元。一个思维是通往答案的一块有意义的推理片段,例如一段计划、一行算式或一个候选词。模型从根节点出发,反复执行三步:

  • 生成:在当前状态下产出若干候选思维。
  • 评估:对每个候选打分(如可行、可能、不可能),得到启发式信号。
  • 搜索:依据评分选择保留哪些分支,必要时回溯到更早的节点。
根问题
 ├─ 思维 A(评分:可行)
 │   ├─ 思维 A1(评分:可能)
 │   └─ 思维 A2(评分:不可能,剪枝)
 └─ 思维 B(评分:可行)
     └─ 思维 B1(评分:可行,继续扩展)

与思维链(CoT)的核心区别

CoT 是线性、单路径、无反馈的:模型从左到右生成一条推理链,无法回头。ToT 的关键差异在三点。

  • 多路径:同时维护多个候选推理分支,而非孤注一掷。
  • 自我评估:用模型自身的判断作为搜索的启发式,过滤死路。
  • 回溯能力:当某分支被判定走不通时,退回上层重新探索。

在论文的 Game of 24 任务中,GPT-4 使用 CoT 仅解出 4% 的题目,而 ToT 达到 74% 的成功率。已核验

核心机制:思维生成与自我评估

思维如何「切分」取决于任务形态。

  • 数学与博弈类:每个思维是一小步运算或一个状态描述。
  • 创意写作:每个思维是一段章节草稿或一条纲要分支。
  • 约束搜索:每个思维是若干已填格子或候选答案。

评估方式有两种常见做法。已核验

  • 值评估:让模型直接给出「该状态离解出还差多远」的评分。
  • 投票评估:对两个候选状态做两两比较,取更优者。

搜索策略:BFS 与 DFS

ToT 不绑定某一种搜索算法,论文主要演示了两种。已核验

  • 广度优先(BFS):每层保留评分最高的 b 个状态,适合分支较浅、需横向对比的任务,如 Game of 24。
  • 深度优先(DFS):沿一条路径深入到设定深度再回溯,适合需要长程规划、单链较深的任务,如 Mini Crosswords。
BFS:逐层筛选,每层保留 top-b 个状态
DFS:一条路走到底,遇死路则回溯上层

适用场景

ToT 的价值集中在「探索」与「搜索」密集的问题。

  • 规划类:需要多步决策且早期选择影响全局。
  • 博弈与谜题:如 Game of 24、迷你填字游戏。
  • 约束满足:在大量候选中筛选符合多条件的答案。
  • 开放生成:创意写作中比较多条叙事走向。

对答案唯一、推理链短的问题,ToT 的额外开销通常不划算。

局限与注意

  • 成本高:多次采样与评估显著放大 token 消耗与延迟。
  • 评估噪声:自我评估并非可靠裁判,错误评分会误导搜索。
  • 依赖任务拆解:把思维切得太碎或太粗都会损害效果。
  • 并非万能:对纯事实问答或单步任务,CoT 更直接高效。

小结

Tree of Thoughts 把链式推理升级为树状搜索:通过生成多候选、模型自评与回溯,让大模型在复杂规划与搜索任务上明显优于线性 CoT。它的代价是更高的算力与延迟,因此更适合探索性强、容错要求高的场景。理解 ToT 有助于你在提示工程中为「难问题」设计结构化的搜索流程。

参考与延伸阅读

  • Yao, S. 等. Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601, 2023(已核验)。
  • 官方实现与全部提示词:github.com/princeton-nlp/tree-of-thought-llm(待核实)。
  • 延伸阅读:Chain-of-Thought Prompting(Wei 等, arXiv:2201.11903)作为 ToT 的前身(待核实)。
本文累计阅读