🌳 Tree-of-Thought (ToT)
思维树推理

探索多条推理路径,择优而行 | Yao et al. 2023

Reasoning Multi-Path CoT Evolution

📖 定义

Tree-of-Thought (ToT)是Chain-of-Thought的泛化形式。不同于CoT沿单一路径线性推理,ToT同时探索多个推理分支,评估每个分支的价值,然后选择最有希望的方向继续深入。

来源:Yao et al., "Tree of Thoughts: Deliberate Problem Solving with Large Language Models", NeurIPS 2023

🌳 通俗比喻

CoT就像走迷宫只能往一条路走到底——走到死胡同才发现错了,只能从头再来。

ToT呢?像下棋。你不会只算一条线,而是:"如果走这步,对方可能怎么应?如果走那步呢?"同时考虑多种可能性,选胜率最高的那招。

就像王家卫电影里的台词:"每一步都是选择,而我选择了所有可能。"——ToT就是这么贪心,它要走完所有可能的分岔路口,再决定哪条路通向罗马。

⚙️ 树形结构示意

                           [问题]
                             │
              ┌──────────────┼──────────────┐
              ▼              ▼              ▼
         [思路A]        [思路B]        [思路C]
         评分:7          评分:9          评分:4
              │              │
         ┌────┴────┐    ┌────┴────┐
         ▼         ▼    ▼         ▼
      [A1]     [A2]  [B1]     [B2]
      评分:6   评分:8  评分:9   评分:7
                        │
                        ▼
                    [✓ 最优解]
                    

核心操作:

  • 生成:为当前节点生成多个可能的下一步思路
  • 评估:对每个思路进行评分(值函数)
  • 搜索:选择评分最高的分支继续探索(BFS/DFS)
  • 回溯:当前路径走不通时,返回上一层选择其他分支

🎯 OpenClaw实战应用

ToT适合需要创造性解决方案的问题,如数学证明、创意写作、代码设计等:

# OpenClaw Tree-of-Thought Skill 示例
name: tot_problem_solver
description: 使用思维树解决复杂问题

parameters:
  max_depth: 4
  beam_width: 3  # 每层保留top-3分支
  
steps:
  - name: generate_thoughts
    action: llm
    prompt: |
      对于问题:{{problem}}
      请生成{{beam_width}}种不同的解决思路。
      每个思路应该是独立的分析角度。
      
  - name: evaluate_thoughts
    action: llm
    prompt: |
      对以下解决思路评分(1-10):
      {{#each thoughts}}
      思路{{@index}}: {{this}}
      {{/each}}
      评分标准:可行性、完整性、创新性
      
  - name: expand_best_thoughts
    action: conditional
    condition: "{{depth}} < {{max_depth}}"
    on_true:
      - name: expand
        action: llm
        prompt: |
          针对评分最高的思路,继续深入展开...
          
  - name: final_answer
    action: llm
    prompt: |
      综合所有探索过的路径,给出最终解答。

📊 CoT vs ToT vs GoT 对比

Chain-of-Thought

  • 单路径线性推理
  • 低Token消耗
  • 适合确定性任务
  • 无回溯能力

Tree-of-Thought

  • 多分支并行探索
  • 中等Token消耗
  • 适合多解问题
  • 支持回溯

Graph-of-Thought

  • DAG结构推理
  • 高Token消耗
  • 适合复杂依赖
  • 子结果可复用

✅ 适用场景

  • 数学证明:尝试多条证明路径,寻找最简洁方案
  • 创意写作:探索多个故事走向,选择最精彩版本
  • 代码架构设计:比较多种设计方案,择优实现
  • 游戏策略:棋类、策略游戏的多步推演
  • 复杂决策:商业决策、风险评估的多情景分析

🔗 相关术语

📚 延伸阅读