为什么 GPT-4 解"24 点"比登天还难,让它"在心里下三盘棋"就能 74% 一次过?——Tree of Thoughts 把"思考"从一条线变成了一棵树
- 关联论文:2305.10601
你有没有这种感觉:
你让 GPT-4 玩 24 点 —— 给定 4 个数字,用加减乘除算出 24。 它直接答:"4×4+4+4 = 24" ❌(用了三个 4,题目只给了一个 4) 你说"一步步想"——它写出推理链,但一条路走到底,中间错了也不知道回头。
这是 2023 年所有"思维链"(Chain-of-Thought)方法的共同局限: 它们只能"一条路走到底"——没有"回溯",没有"试错",没有"全局比较"。
arXiv 2305.10601——Tree of Thoughts (ToT)(2023,被引 4,690+ 次,2024 年 NeurIPS 收录)——做了一件改写 AI 推理范式的事:
把 LLM 的"推理"从一条直线升级成一棵搜索树。 在每一步,agent 生成多个候选想法 → 评估它们的可行性 → 剪掉死路 → 走最可能通的那条。 让 GPT-4 在 24 点游戏上从 4% 一次过涨到 74%——涨了 70 个点。
这件事让"AI 会思考"这件事第一次有了严肃的方法论——后续所有 reasoning agent(ReAct、Reflexion、Self-Consistency、DSPy、ToT+、Tree Search)的核心思想,全都站在 ToT 的肩膀上。
为什么这事值得每个用过 ChatGPT 的人看一眼
今天你觉得"AI 能多步推理、做规划、解难题"是理所当然的。但在 2023 年 5 月,这件事远不是理所当然:
- Chain-of-Thought 只支持"线性推理" —— 一步接一步,错了只能继续往下错,没法回溯。
- "Try multiple samples + majority vote"(Self-Consistency)解决了"宽度"问题,但没解决"深度"问题 —— 多采几条推理路径,但每条都是死磕到底,不会提前放弃。
- 搜索算法(DFS / BFS / A*)早已成熟,但 LLM 不擅长自己"探索 + 回溯" —— 把搜索算法塞给 LLM,需要结构化的"思考树"框架。
- 复杂任务需要"前瞻 + 评估" —— 下棋、写代码、做规划,每一步都要先想"这条路走下去能不能成",而不是闷头走到底。
- prompt 工程已到瓶颈 —— 简单的"let’s think step by step"对简单题管用,对24 点、数独、创造性写作这类需要试错的任务束手无策**。
ToT 想回答一个朴素的问题:
能否让 LLM 像人一样"在心里下三盘棋",先想几条路 → 比较 → 选最好的?
答案是:能,而且效果惊人。
一句话核心
Tree of Thoughts (ToT) 证明:把 LLM 的推理从"一条直线"升级成"一棵搜索树"——每一步生成多个候选思路、评估它们的可行性、剪掉死路、走最可能通的那条——就能让 GPT-4 在 24 点游戏上从 4% 涨到 74%(涨 70 个点),在 Game of 24、创意写作、迷你填字游戏上同时取得 SOTA。这把"思考"从"线性链"升级为"树搜索",让 LLM 第一次真正具备"试错 + 回溯 + 全局比较"的能力。
它到底怎么工作(说人话版)
ToT 的核心框架只有 4 个要素,每个都有清晰的 LLM 接口:
要素 1:Thought Decomposition —— 把问题切成"想法"
把整个任务显式分解成多个中间步骤。每一步叫一个"thought"(想法)。
不同任务,thought 的粒度不同:
| 任务 | 一个 thought 是什么 | 例子 |
|---|---|---|
| 24 点 | 一个等式的左半部分 | "4+4" → 剩 [4,4,8] |
| 创意写作 | 一段 32 字的连贯文本 | "今天天气晴朗..." |
| 迷你填字 | 一行填字答案 | "5 down: 力 → 力" |
要素 2:Thought Generator —— 每步生成 K 个候选想法
每个 thought 节点,让 LLM 生成 K 个不同的候选:
- 采样法(temperature > 0):让 LLM 自发生成 K 个不同想法
- Propose Prompt(temperature = 0 + 提示):用 prompt 强制 LLM 给出多种可能
K 通常 = 3-5。K 越大,搜索空间越大,但 LLM 调用次数也线性增长。
要素 3:State Evaluator —— 给每个候选打分
这一步是 ToT 区别于"暴力枚举"的关键。给每个候选打分,判断它"看起来能不能走通":
- Value Prompt:让同一个 LLM 给候选打分(0-10),"这个等式离 24 还有多远?"
- Vote Prompt:让 LLM 在多个候选里投票选最好的
- 精确评估:能算的就精确算(比如剩余数字还能凑出 24 吗)
关键洞察:即使评估器是 LLM 自评(不是 ground truth),只要它能给出"相对好坏"的信号,搜索就能工作。
要素 4:Search Algorithm —— 用 BFS / DFS 遍历树
根据任务特性选搜索算法:
| 算法 | 适用场景 | 论文里的例子 |
|---|---|---|
| BFS(广度优先) | 树浅、要找最优解 | Game of 24(深度 ≤ 3) |
| DFS(深度优先) | 树深、要快速找到解 | 创意写作(深度 ≥ 5) |
每一步:展开 K 个候选 → 评估 → 剪掉最差的 → 走剩下的。
三个核心洞察
洞察 1:ToT 是"LLM + 经典搜索算法"的首次严肃结合
ToT 之前,LLM 推理范式是:LLM 自己生成 → 自己判断对错(self-consistency 路线)。
ToT 第一次正式引入 "LLM 当生成器 + 经典搜索算法当控制器" 的范式:
经典搜索算法(BFS / DFS / A*)
↓ 控制
LLM(当 thought generator + state evaluator)
↓ 输出
最优解
这个范式的工程意义巨大:
- ✅ 搜索算法提供全局最优性保证(BFS、DFS 都是有数学保证的)
- ✅ LLM 提供"模糊生成 + 模糊评估"的能力
- ✅ 两者结合 = 既能创造性思考,又能系统化搜索
- ✅ 后续所有 reasoning agent 的基础架构(ReAct、Reflexion、DSPy、Tree of Thoughts+ 全部沿用)
洞察 2:"前瞻评估"是 ToT 涨点的核心,不是"分多步"
论文做了一个关键 ablation:
| 方法 | Game of 24 准确率 |
|---|---|
| 标准 IO Prompt | 7.3% |
| Chain-of-Thought(CoT) | 4.0%(反降!) |
| CoT + Self-Consistency(k=10) | 9.0% |
| ToT(无前瞻评估,纯搜索) | 22% |
| ToT(完整,带前瞻评估) | 74% ⚡ |
ToT(纯搜索,无前瞻) 比 CoT 高 3 倍,但比 ToT(完整)低 3.4 倍。
关键不是"分多步"或"广度搜索",而是每一步都问"这条路走下去能不能通"——前瞻评估才是涨点的核心。
给工程团队的启示: - 别只想着"让模型想更多步" —— 要让它每一步都评估"这条路径是否有前途" - state evaluator 的质量直接决定 ToT 的天花板 - 投票打分 > 精确数值(LLM 擅长相对判断,不擅长绝对数值)
洞察 3:不同任务需要不同的 thought 粒度
ToT 不是一个"放之四海而皆准"的 prompt 技巧,thought 的粒度必须根据任务定制:
| 任务类型 | thought 粒度 | K(每步候选) | 搜索深度 |
|---|---|---|---|
| 算术 / 逻辑 | 半步等式 / 部分推导 | K=5-10 | 深(BFS) |
| 创意写作 | 一段连贯文字 | K=3-5 | 深(DFS) |
| 填字 / 谜题 | 一行答案 | K=10+ | 中 |
| 规划 / 调度 | 一个子任务 | K=3-5 | 中 |
没有"统一粒度",只有"任务匹配粒度"——这是 ToT 落地的最大工程挑战。
工程落地清单(如果你今天做 reasoning agent,这是必经路径)
用户问题
↓
[Thought Decomposition] 按任务类型定义"一个 thought 是什么"
↓
[Thought Generator] LLM 生成 K 个候选(temperature=0.7-1.0)
↓
[State Evaluator] LLM 给每个候选打分 / 投票
↓
[Search Algorithm] BFS / DFS 遍历 + 剪枝
↓
[终止判断] 达到目标 / 超出最大深度
↓
[最优解] 返回分数最高的路径
5 个必须落地的细节:
- K 不要过大 —— K=3-5 通常够了,K=10 会让 LLM 调用次数指数级增长,生产环境要先做成本估算。
- Search depth 要有上限 —— 设 max_depth=5-10,否则递归会卡死,用 timeout 兜底。
- Evaluator 一定要做 calibration —— LLM 打分会有"中心倾向"(都打 7 分),需要 prompt 强制用 0-10 全量程 + 加几个 reference example。
- Thought decomposition 是关键调优点 —— 粒度太粗,搜索空间小、效果差;粒度太细,LLM 调用多、成本高;先粗后细,逐任务调优。
- BFS vs DFS 按任务选 —— 找最优解用 BFS(Game of 24);找"够好的解"用 DFS(创意写作);别硬套。
它给后续 3 年铺了什么路
1️⃣ LLM + 搜索算法成为 reasoning agent 的标准架构 —— ReAct、Reflexion、Self-Refine、Tree of Thoughts+、DSPy、AlphaCode 全部沿用"LLM 生成 + 算法控制"范式 📜 2️⃣ Tree Search 成为独立研究方向 —— ToT → Tree of Thoughts+ → RAP(Reasoning via Planning)→ LATS → Agentless,每个都把树搜索做得更深更广 🌳 3️⃣ "前瞻评估"成为 agent 设计的核心概念 —— 论文里的 state evaluator 思路,直接催生了 Process Reward Model(PRM)、Self-Eval、Critic 等一系列评估技术 🎯 4️⃣ 复杂推理任务从"prompt 技巧"升级为"算法问题" —— 24 点、创意写作、规划,不再是 prompt 工程师的事,而是算法工程师的事 🛠️ 5️⃣ GPT-4 成为 reasoning 实验的"标准基座" —— ToT 是第一个用 GPT-4 系统化做 reasoning 实验的论文,为后续所有 reasoning 论文定下了"用 GPT-4 测"的方法论 🤖
它今天还成立吗?(2026 年视角)
ToT 论文是 2023 年的,但它的核心思想至今仍是 reasoning agent 的基础:
- ✅ 范式成立: "LLM 生成 + 算法搜索" 仍是 reasoning agent 的标准架构
- ⚠️ 成本成为瓶颈: ToT 在 Game of 24 上要 60+ 次 LLM 调用,今天 GPT-4o 一次反思 ~$0.03,单次任务 ~$2——生产环境必须做 response caching + search pruning
- ⚠️ 替代方案: 今天很多场景用 Process Reward Model(PRM) 或 MCTS + value model 替代纯 LLM evaluator,评估更准、更便宜
- ⚠️ 多模态扩展: 今天 ToT 思想被扩展到 视觉推理、多模态规划、具身智能(机器人导航树搜索)
- ⚠️ Agent 化: 今天 ToT 不再是"单次 prompt",而是长期 agent 的规划模块——LangGraph、AutoGen 都内置了类似机制
核心思想没变,工程实现更精细——这正是好论文的特征。
三个标题变体
- 为什么 GPT-4 解"24 点"比登天还难,让它"在心里下三盘棋"就能 74% 一次过?——Tree of Thoughts 把"思考"从一条线变成了一棵树
- 不更新参数,只让 LLM "在心里下三盘棋",GPT-4 解 24 点从 4% 涨到 74% —— 被引近 5000 次的 Tree of Thoughts 论文
- AI 思考不止一条路:这篇 2023 年论文把推理从"链"升级为"树",直接涨 70 个点
小红书风格卡片文案(可直接发布)
🧠 GPT-4 解"24 点"难如登天,让它"在心里下三盘棋"就能 74% 一次过 🧠
你有没有这种感觉:
让 GPT-4 玩 24 点 —— 4 个数字凑出 24 它直接答:"4×4+4+4 = 24" ❌(用了三个 4) 你说"一步步想"——它写出推理链,但一条路走到底,错了也不知道回头 💥
这是 2023 年所有"思维链"(CoT)方法的共同局限: 它们只能"一条路走到底"——没有"回溯",没有"试错",没有"全局比较"。
arXiv 2305.10601——Tree of Thoughts (ToT)(被引 4,690+ 次,NeurIPS 2024)——做了一件改写 AI 推理范式的事:
把 LLM 的"推理"从一条直线升级成一棵搜索树 每一步:生成多个候选想法 → 评估可行性 → 剪掉死路 → 走最可能通的那条 GPT-4 在 24 点上从 4% 一次过涨到 74%——涨了 70 个点 🚀
这件事让"AI 会思考"第一次有了严肃方法论 —— 后续所有 reasoning agent 站在 ToT 肩膀上 🌍
🔥 核心数字:
- 4,690+ 被引 —— LLM reasoning 方向历史最高 🏆
- Game of 24:4% → 74% —— GPT-4 上涨 70 个点 📈
- BFS + DFS 双算法验证 —— 不同任务用不同搜索策略 🎯
- 0 行权重更新 —— 纯靠"树搜索 + LLM 评估"做到这一切 💥
🪜 ToT 的 4 个核心要素:
1️⃣ Thought Decomposition —— 把问题切成"想法"颗粒(24 点:半步等式;写作:32 字一段)🔪 2️⃣ Thought Generator —— 每步生成 K 个候选(temperature > 0,K 通常 = 3-5)🌱 3️⃣ State Evaluator —— LLM 给每个候选打分/投票,"这条路走下去能不能通?" 🤔 4️⃣ Search Algorithm —— BFS(找最优)/ DFS(找够好)遍历 + 剪枝 🌳
💡 为什么 ToT 比 CoT 强这么多:
- 🔴 CoT 是"线性推理" —— 一步错就步步错,没法回溯 📉
- 🟠 Self-Consistency 只解决"宽度" —— 多采几条路,但每条都死磕到底,没解决"深度" 🎲
- 🟢 ToT 解决"深度 + 宽度" —— 每步都评估"这条路是否有前途",错的路径提前剪掉 ✂️
- 🟢 关键不是"分多步",而是"前瞻评估" —— 论文 ablation:无评估的 ToT 只有 22%,有评估的 ToT 74% ⚡
- 🟡 任务粒度要匹配 —— 算术 / 写作 / 填字,每个任务 thought 粒度不同 📏
🌱 它给后续 3 年铺了什么路:
1️⃣ LLM + 搜索算法成为 reasoning agent 标准架构 —— ReAct / Reflexion / DSPy 全部沿用 📜 2️⃣ Tree Search 成为独立研究方向 —— ToT → RAP → LATS → Agentless,越做越深 🌳 3️⃣ "前瞻评估"成为核心概念 —— 催生 Process Reward Model、Self-Eval、Critic 系列 🎯 4️⃣ 复杂推理从"prompt 技巧"升级为"算法问题" —— 不再靠 prompt 工程师,靠算法工程师 🛠️ 5️⃣ GPT-4 成为 reasoning 实验的"标准基座" —— 后续所有 reasoning 论文都"用 GPT-4 测" 🤖
📎 论文 ID:2305.10601
💬 评论区聊聊:你团队用过 ToT 思路做 reasoning 吗?thought 粒度怎么定的?state evaluator 用 LLM 自评还是专门训练?BFS 还是 DFS?🤔