系统梳理 Chain of Thought、Self-Consistency、Tree of Thoughts 三种推理框架的技术原理、实验效果和各自局限,附经典论文解读。
当让你帮 AI「写一本书」「完成一个项目」或「规划一次旅行」时,它真的在进行「规划」吗?本文从技术原理出发,拆解 LLM 长期规划能力的真相与局限。
一、什么是「规划」,LLM 又是怎么「规划」的?
在 AI 领域,规划(Planning)指的是:给定一个初始状态和目标状态,系统能够生成一系列行动,使系统从初始状态转移到目标状态。
传统 AI 规划(如 STRIPS、PDDL 系统)依赖明确的符号表示和精确的状态转移模型——每一个动作的后果都是可枚举的。
LLM 的「规划」则是另一种范式:语言驱动的启发式搜索。模型并不维护一个明确的世界状态,而是通过预测「下一个最合理的文字 token」来生成行动序列。
二、推理框架:从 CoT 到 ToT 的演进
论文:Wei et al., 2022, arXiv:2201.11903
Chain of Thought 的核心洞察:让模型在给出最终答案之前,先生成中间推理步骤。研究者发现,这种方法能让模型的数学推理准确率提升数倍。
中间步骤相当于增加了「计算预算」,模型在生成答案前有更多机会进行有意义的中间表征
推理步骤为模型提供了更多「token 预测」的机会,降低了一次性预测长答案的错误率
人类在解决问题时也使用语言作为工作记忆,CoT 激活了类似的内部工作记忆机制
但 CoT 的局限也很明显:它是一条线性路径,无法探索备选方案,也无法在发现错误时回溯。
Wang et al. (2022) 提出的 Self-Consistency 是对 CoT 的重要改进:对同一个问题,让模型生成多条不同的推理路径,然后选择出现最频繁的答案。
这相当于把 LLM 的「直觉单次采样」变成了「语言版的蒙特卡洛采样」——简单但有效,在多个推理基准上进一步提升了准确率。
论文:Yao et al., 2023, arXiv:2305.10601
ToT 将 LLM 规划问题重新定义为树搜索问题:
问题
/ | \
分支1 分支2 分支3
/ \ \
延伸1-1 延伸2-1 延伸3-1 ← 探索多条路径
\ / /
评估各路径,向下延伸或回溯
↓
最终答案
创意写作:多路径探索能产生更丰富的叙事选择
24 点游戏:显式的搜索树使模型能找到非直观的解法
填字游戏:通过部分解的评估回溯修正错误选择
关键洞察:ToT 的成功说明 LLM 的规划能力不是「有没有」的问题,而是「如何激活」的问题。通过合适的提示结构,我们可以让模型表现出远强于默认输出的规划能力。
Voyager(详见另一篇文章的 Agent 部分)是长程规划研究的标志性成果。其核心挑战是:如何在没有明确任务边界的开放世界中,让 Agent 持续学习和探索。
Voyager 的三层架构本质上是一个元规划系统:
任务生成器:自动生成「刚好超出当前能力范围」的任务
代码合成器:将语言描述翻译成可执行的 Minecraft 动作代码
技能库:将成功的任务解决方案存储为可复用的代码模块
这种设计的洞察是:真正的长程规划不是一次性制定完整计划,而是在子目标完成后动态重新规划。Voyager 不要求模型「一开始就知道所有步骤」,而是通过持续反馈循环逐步逼近目标。
当前几乎所有 Agent 系统的共同局限:任务由人类预设。用户告诉 Agent「帮我订机票」,Agent 执行。但当没有人告诉 Agent「该做什么」时,Agent 如何自主发现目标?
这是长程规划的终极挑战。Voyager 的 curriculum learning 部分解决了这个问题,但它的「目标空间」仍然是预定义的(Minecraft 中的技能树)。
开放问题:如何让 Agent 自主发现有意义的目标,而非仅仅是「执行最小化无聊」式的探索?
多步规划中,每一步的错误概率叠加,使得长程任务的最终成功率急剧下降。假设每步准确率 90%,10 步后的成功率仅为 34.9%。
检查点机制:每个子目标完成后强制验证(ReAct 的 Observation 步骤)
失败恢复:ToT 的回溯机制允许放弃失败的路径
Transformer 的注意力机制对输入长度有二次复杂度限制。随着任务步数增加,早期的关键信息会被「挤出」上下文窗口。
外部记忆系统:将重要信息存储在外部向量数据库中
层次化压缩:将早期步骤的高频信息压缩成语义摘要
检索增强生成(RAG):动态检索相关历史信息
当规划执行到一半,外部环境发生变化时,Agent 如何重新规划?
一个真实场景:Agent 规划了「北京三日游」,第一天行程过半时北京宣布暴雪预警——Agent 需要快速重新评估、调整后续计划。这种规划-执行-重规划的循环对当前 Agent 系统来说仍非常困难。
# 基础版(低规划能力)
"帮我策划一次日本7日游"
# 规划增强版(高规划能力)
"请作为旅行规划专家,为我策划一次东京及周边的7日游。
请按以下步骤思考:
1. 首先确认偏好:预算/旅行风格/饮食限制/体力水平
2. 将7天分解为3个阶段:到达适应→核心景点→周边探索
3. 为每天制定具体行程(上午/下午/晚上)
4. 标注每个行程的时间成本和交通方式
5. 识别潜在风险(天气/交通/预约)
请先提出问题来确认我的偏好,然后给出完整计划。"
┌─────────────────────────────────────────────────────┐
│ 规划控制器 │
│ 目标分解 → 子目标排序 → 执行 → 验证 → 重新规划 │
└──────────────┬──────────────────────────────────────┘
│
┌──────────┴──────────┐
│ 记忆子系统 │
│ 短期(上下文) │
│ 长期(向量存储) │
│ 程序性(技能库) │
└─────────────────────┘
核心结论:LLM 并不真正「理解」规划,但它能模拟规划的语言形式。通过合适的架构设计(外部记忆、工具调用、搜索增强),我们可以让 Agent 表现出令人印象深刻的长程行为。然而,真正的长程规划智能——在真实开放世界中的自主目标发现与执行——仍是一个未解决的开放问题。
Wei, J., et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903. DOI
Wei, J., et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903. DOI
Yao, S., et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629. DOI
Yao, S., et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629. DOI
Yao, S., et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601. DOI
Yao, S., et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601. DOI
Wang, X., et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171. DOI
Wang, X., et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171. DOI
Liu, S., et al. (2024). Odyssey: Empowering Minecraft Agents with Open-World Skills. arXiv:2407.15325. DOI
Liu, S., et al. (2024). Odyssey: Empowering Minecraft Agents with Open-World Skills. arXiv:2407.15325. DOI