Skip to content
🔗 分享本题
查看我的学习进度 →

思维树动漫知识图:CoT 沿单一路径前进,ToT 对多个状态进行生成、评估、剪枝和回溯

记忆点:CoT 是一条推理链,ToT 是可搜索、可剪枝、可回溯的状态树。

💡 答案要点

Tree of Thoughts(思维树) = 探索式推理,可回溯的思维过程

CoT vs ToT:

维度Chain of ThoughtTree of Thoughts
结构线性链树形结构
探索单一路径多路径并行
回溯不支持支持回溯修正
适用简单推理复杂规划/决策

工作流程:

          问题

      ┌────┼────┐
     思路1 思路2 思路3 (生成多个初步想法)
      │    │     │
   评估 评估  评估 (模型自评每个想法的质量)
      │    ×     │ (淘汰低分想法)
   ┌──┼──┐    ┌─┼─┐
  步骤1 步骤2 步骤1 步骤2 (继续展开)
   ...

示例任务:24点游戏

给定数字: 4, 5, 6, 10
目标: 用+/-×÷凑成24

ToT推理过程:
Level 1: 生成可能的第一步
  - 想法1: 10 - 6 = 4  [评分: 7/10]
  - 想法2: 6 × 4 = 24 ✓ [评分: 10/10] ← 直接成功!
  - 想法3: 5 + 4 = 9   [评分: 5/10]

选择想法2: 6 × 4 = 24,还需用到5和10
Level 2:
  - (6 × 4) ÷ (10 - 5) = 24 / 5 ✗
  - 回溯,尝试想法1...

ToT关键机制:

  1. Thought Generation(想法生成)

    • 为每个状态生成k个候选下一步
    • 可以是采样或提议
  2. Thought Evaluation(想法评估)

    • 让模型对每个想法打分
    • "这个想法能解决问题的概率: 1-10分"
  3. Search Strategy(搜索策略)

    • BFS(广度优先): 探索所有分支
    • DFS(深度优先): 深入单一路径
    • Beam Search: 保留top-k路径

性能对比:

任务IO PromptCoTToT提升
24点游戏4%4%74%+70%
创意写作12%21%56%+44%
Mini Crossword14%25%78%+64%

实现框架:

python
class TreeOfThoughts:
    def __init__(self, model, k=3, max_depth=5):
        self.model = model
        self.k = k  # 每层保留top-k想法
        self.max_depth = max_depth

    def generate_thoughts(self, state):
        """生成k个候选想法"""
        prompt = f"当前状态: {state}\n请给出{self.k}个可能的下一步:"
        thoughts = self.model.generate(prompt, n=self.k)
        return thoughts

    def evaluate_thoughts(self, thoughts):
        """评估每个想法的质量"""
        scores = []
        for thought in thoughts:
            prompt = f"评估这个想法的质量(1-10分): {thought}"
            score = self.model.evaluate(prompt)
            scores.append(score)
        return scores

    def search(self, problem, strategy='BFS'):
        """搜索最优解"""
        # BFS/DFS/Beam Search实现
        pass

适用场景:

  • ✅ 需要规划的任务(博弈、路径规划)
  • ✅ 有明确评估标准的任务
  • ✅ 允许试错的创意任务

劣势:

  • ❌ API调用次数爆炸(可能数十上百次)
  • ❌ 实现复杂度高
  • ❌ 不适合简单任务

面试话术:

"ToT把CoT的单链推理升级成树形探索。就像下棋时要考虑多种走法并评估,而不是只沿着一条路走到黑。适合复杂规划任务,但成本高,我们只在特定场景用。"