CoT 深度:从 Zero-shot 到 Tree-of-Thought

梳理 Chain-of-Thought 的演进:Zero-shot / Few-shot、结构化 CoT、ToT / GoT、推理模型内化,以及反直觉坑与实战选型。

14 min read Part of AI Foundation · Ch. 13

CoT 深度:从 Zero-shot 到 Tree-of-Thought

flowchart LR
  A["CoT 深度:从 Zero-shot 到 Tree-of-Thought"]
  A --> B["分类:基础概念"]
  A --> C["关键词:AI"]
  A --> D["关键词:CoT"]
  A --> E["关键词:推理"]
  A --> F["关键词:Tree-of-Thought"]

模型不会因为你喊「加油」就变聪明,但会因为你喊「一步一步想」而假装变聪明——而很多时候,假装就够了。


这篇文章会讲什么

你已经会用「请分步推理」这类 Prompt,但 CoT(Chain-of-Thought,思维链)远不止一句咒语:它经历了从提示技巧训练范式的完整进化,还衍生出树搜索、图结构、过程奖励与蒸馏等一整条技术线。

读完本文,你能把 Zero-shot / Few-shot / 结构化 / ToT / GoT / 推理模型 放在同一张地图里,知道什么时候该用哪种、成本大概涨多少、以及 2026 年仍要警惕哪些反直觉坑。若你刚读完 Context Engineering,本篇正好回答:编排好上下文之后,推理过程本身该如何设计。


先说结论:CoT 是推理脚手架,不是“更长就更聪明”

关于 CoT,最常见的两个误解分别是:

  1. 只要让模型“想久一点”,答案就一定更好;
  2. 只要把推理过程打印出来,我们就更知道它为什么答对。

这两个判断都不稳。CoT 的真实价值是:

  • 需要多步拆解的问题上,给模型一个更稳定的中间推理路径;
  • 需要检查过程的问题上,把部分中间态外显出来,便于验证;
  • 训练阶段,把“过程正确”也纳入优化目标。

但它也有明确代价:

  • token 变多
  • 延迟变长
  • 简单任务上可能反而更啰嗦、更易幻觉
  • 外显的推理文本不一定忠实反映内部决策

所以更成熟的理解不是“CoT = 让模型多想想”,而是:

CoT = 在合适的问题上,为模型搭一段可控的推理脚手架。

脚手架搭对了,模型更稳;搭错了,只会让系统更慢、更贵、更自信地错。


1. CoT 进化史:从 prompt trick 到训练范式

先看定义:CoT 几年内从「写在提示里的脚手架」变成了「刻在权重里的默认行为」。

时间线速览

时期里程碑意味着什么
2022Wei et al. 提出 Chain-of-Thought prompting多步算术、常识推理可用示例推理链撬动
2023Zero-shot CoT:「Let’s think step by step」不写示例也能触发中间推理(Kojima 等)
2023–2024Tree-of-ThoughtGraph-of-Thought线性链条 → 分支搜索 / 图上的合并与回溯
2024–2025推理内化:o1、o3、DeepSeek-R1、PRM训练阶段学「先想再答」,甚至开源推理链
2026CoT 成为事实上的标配产品侧默认长思考;研究侧转向何时有害忠实度

认知升级:三个阶段

[ 阶段 A:提示工程 ]     Few-shot 示例里夹带推理步骤

[ 阶段 B:零样本触发 ]   一句指令激活「分步」行为

[ 阶段 C:训练内化 ]     RL / 蒸馏 / PRM 把「过程」写进模型能力

为什么是「进化」而不是换名字

早期 CoT 是外挂在 prompt 上的格式:模型本来就会生成 token,你只是诱导它把中间态写出来。到了推理模型阶段,目标函数开始显式偏好「能导向正确答案的过程」——过程从可读文本,扩展到内部状态与奖励信号。对外仍可能展示链式文本,也可能只展示摘要;但优化对象已经变了。

小结:从 trick 到范式,分界线在于:推理过程是否进入训练信号,而不在于最终用户是否看见每一步。


2. Zero-shot CoT vs Few-shot CoT

先看定义:Zero-shot 靠一句触发语省示例;Few-shot 用完整「题解」做示范——前者便宜、后者稳。

Zero-shot CoT

  • 做法:在问题后追加一句,例如 Let’s think step by step(英文任务)或明确的中文指令「请逐步推理」。
  • 特点:无需构造示例,token 成本最低,适合快速 A/B 与线上灰度。
  • 细节:同一指令放在问题前还是问题后、用英文还是中文,对不同模型可能有细微差异——值得用评测集做一次网格搜索,而不是抄一句就上线。

Few-shot CoT

  • 做法:在上下文里放若干 (问题 → 逐步推理 → 答案) 的完整演示。
  • 特点:对题型对齐要求高(示例与目标任务越像越好),但通常比零样本更稳,尤其在中小模型上。
  • 细节:示例里的推理风格会「传染」:若示例啰嗦,模型往往更啰嗦;若示例跳步,模型也可能学会跳步——示例即产品文档

对比表

维度Zero-shot CoTFew-shot CoT
效果大模型上常显著增益;小模型波动大示例质量好时通常更强、更可复现
成本极低(+一句)高(多段示例占用 context)
适用通用推理、快速试验、多语言混合固定题型(考试、表格推理、领域格式)
风险易「空泛分步」不落地示例错误会级联污染

经典数据:GSM8K 上的量级跃迁

小学数学文字题基准 GSM8K 常被用来展示 CoT 的威力:在代表性设置下,标准提示与加入 CoT(含 zero-shot 触发或 few-shot 链)之间的准确率差距,文献与复现中常出现约 18% → 58% 量级的提升(具体数字随模型规模、解码温度、是否用工具而波动)。请把这两个数字理解成**「从几乎不可用 → 可以认真谈产品」**的信号,而不是刻舟求剑的绝对值。


3. Structured CoT:给推理加「模板」

先看定义:把「随便想」改成「按栏目填表」,降低跑偏与跳步。

固定步骤格式

通用骨架可写成四段,便于模型自检与人工抽查:

1. 识别:题目在问什么?已知/未知?
2. 分析:可用公式、约束、边界条件?
3. 推导:按步计算,每步一句依据
4. 结论:答案 + 单位 + 是否验算

适合特定领域的定制 CoT 模板

领域模板的关键不是「更华丽」,而是把不可省略的审查点写死。下面三张表可直接改成 System Prompt 或用户侧表单的栏目说明。

场景结构化栏目(示例)
法律分析争点归纳 → 要件检视 → 判例/条文引用 → 风险与不确定性
代码 Review变更意图 → 正确性 → 性能与安全 → 风格与可测性 → 建议优先级
数据分析数据口径 → 假设 → 图表/统计量 → 因果边界 → 可行动结论

示例段落:法律分析 Structured CoT(缩略)

【争点】用户主张合同解除是否成立?
【要件】约定解除条件 / 法定解除事由是否满足?
【依据】条文与类案摘要(若有检索工具则注明来源)
【风险】事实未清之处、举证责任、程序风险
【结论】倾向性意见 + 需补充材料清单

小结:结构化 CoT 的本质是 把「可检查性」设计进输出格式——对合规、审计、教学场景尤其友好;代价是输出更长,需在 UI 上做折叠与分段展示,并在 Context Engineering 层面预留 token budget。


4. Tree-of-Thought (ToT):推理的分支搜索

先看定义:不再押一条直线,而是生成多条中间思路,评估再剪枝,像粗粒度的思维树搜索。

原理

  1. 分支:对同一子问题生成多条候选「下一步」。
  2. 评估:用模型自评、启发式或投票给每条边打分。
  3. 回溯/扩展:保留高分路径,继续展开或回到上层换路。
  4. 输出:在叶节点或满足停止条件时汇总最优答案。

与线性 CoT 的对比(ASCII)

线性 CoT(一条道走到黑):

Q ──► s1 ──► s2 ──► s3 ──► A

Tree-of-Thought(同一层可多选,可回头):

              ┌─► s2a ──► ...
        ┌─► s1┼─► s2b ──► ...
Q ──────┤       └─► (剪枝)
        └─► s1' ──► ...

适用:复杂规划、博弈、需要回溯的问题

适合不适合
复杂规划、谜题、博弈类多步决策简单事实问答、短文本分类
需要显式探索可解释分支延迟敏感、极低成本场景
「第一步选错后面全错」的任务已有闭式算法可替代时(应直接调用代码)

局限:成本是线性 CoT 的 N 倍

调用次数与候选数近似相乘,成本常为线性 CoT 的 N 倍(N = 分支因子 × 深度 × 评估次数)。工程上必须:

  • 限制分支宽度与最大深度;
  • 对重复子问题做缓存(memoization);
  • 评估用轻量打分(如小模型或规则)而非每次都上最强模型。

5. Graph-of-Thought (GoT):推理的图结构

先看定义:ToT 是「树」,GoT 是「图」——允许合并、聚合、循环,表达力更强,系统更复杂。

允许推理步骤间的合并、分裂、循环

树结构强制每个中间节点只有一个父节点;现实任务里常出现:

  • 合并:两条独立推理路径得到同一中间结论,应汇合而非复制两份。
  • 分裂:一个结论需要拆到多个并行子任务再汇总。
  • 循环:发现错误后回到某节点重写(refinement),而不是永远向下生长。

用 ASCII 表示「合并」与「迭代」:

   path A ──┐
            ├──► 合并节点 M ──► 下游
   path B ──┘

   草稿 C0 ──► 批评/打分 ──► 修订 C1 ──► …(允许回到 C0)

比 ToT 更灵活但更复杂

特性ToTGoT(典型设想)
拓扑树(单父节点)图(多对多、可汇合)
操作扩展、剪枝+ 合并不同路径的结论、精炼节点
典型收益分支探索多源信息融合、迭代精炼
典型代价高 API 成本更高编排与状态管理复杂度

研究状态和实用性

  • 研究侧:GoT 类工作证明「图上的推理步骤」对需要综合多子结论的任务有表达优势;论文与原型多,统一框架与最佳实践仍在演化。
  • 产品侧(2026):多数落地仍选 线性 CoT + 少量重试/投票ToT 的简化版;全功能 GoT 更像研究管线或高价值分析场景选项,需自研 orchestration、状态存储与可视化。

一句话收束:除非你的问题天然是「多源 DAG」或要强合并,否则优先把线性 CoT 做稳,再评估 ToT/GoT 是否值得吞成本。


6. CoT 在训练中的内化:Reasoning Models

先看定义:当「推理过程」进入损失函数与奖励,CoT 就从提示词变成了模型能力

o1 / o3:训练时学会「先想再答」

  • 直觉:在训练(含 RL 类信号)中鼓励长程、有依据的推导,推理时分配更多「思考预算」。
  • 用户体验:最终答案前常有一段不可见或简化的推理;产品强调可靠性与难题,而非纯 token 单价。
  • 与提示 CoT 的关系:提示 CoT 仍可用于格式约束轻量任务;难题更多依赖内化策略而非仅靠一句「step by step」。

DeepSeek-R1:开源推理链的代表路径

  • 意义:展示开源权重 + 可观测推理风格的路径,便于二次训练与本地化部署。
  • 工程注意:蒸馏与微调时要防止过拟合表面格式而没学到真实推理;评测应同时看最终准确率过程是否合理

Process Reward Models:按步骤打分

  • 做什么:对每一步(而非仅最终答案)打分,训练「过程好」的策略;经典讨论见 Let’s Verify Step by Step 等文献(见延伸阅读)。
  • 价值:减轻「答案蒙对、过程胡写」;与 Outcome RM 常组合使用。
  • :步骤边界如何切分、错误步骤是否局部可修正,都会影响 PRM 的信噪比。

CoT Distillation:大模型的 CoT 蒸馏给小模型

  • 做什么:用大模型生成的高质量推理链监督小模型,让小模型学会分步样式与中间技巧
  • 收益:小模型在特定任务上可接近「大模型 + 长 prompt」的体验。
  • 风险:容量不足时学会冗长套话而非可靠推理——需课程学习、难例筛选与工具兜底

一个 2026 年很重要的现实:不是所有模型都鼓励“完整外显思维链”

前沿模型越来越多地把详细推理留在内部思考里,对外只给简化解释、关键依据或结构化结论。这背后有三个现实原因:

  1. 安全与滥用:完整过程可能暴露不必要的策略细节;
  2. 忠实度问题:外显文字不一定等于真实内部推理;
  3. 产品体验:用户通常想要的是可靠结论,不是几百行“自言自语”。

所以在产品里,常见的更优做法不是强求“把每一步都打印出来”,而是:

  • 对用户展示简短理由摘要
  • 对系统内部保留验证用的结构化中间态
  • 对可计算问题直接调用工具或代码执行,而不是让模型硬写长篇 CoT。

7. CoT 的反直觉发现

先看定义:CoT 不是免费午餐——简单题、小模型、忠实度与边界研究都在泼冷水。

CoT 对简单任务可能有害(增加 hallucination)

  • 部分研究显示:在不需要多步的任务上强行走 CoT,可能增加 hallucination(编造中间事实)或拉长错误路径。
  • 实践:用路由策略——分类器或轻量规则判断「是否需要分步」,再决定是否启用 CoT;对确定性计算优先 code interpreter

小模型的 CoT 效果不稳定

  • 原因:参数不足以支撑可靠「自我监督式」中间符号操作;示例噪声伤害更大。
  • 实践:更短的结构化模板、更强约束的 JSON 输出、或直接用工具做确定性计算;避免盲目堆 few-shot 长链。

「Thinking」tokens 的 faithfulness 问题

  • 模型打印出来的推理未必等于真实内部计算;可能存在 事后合理化(confabulation)。
  • 含义:不要用 CoT 文本做安全关键证明;审计场景要交叉验证(代码执行、检索、规则引擎)。
  • 2026 仍开放:更严格的「过程—结论」一致性评测与干预方法在快速迭代。

2026 研究:CoT 的局限边界在哪里

研究热点包括:何时该禁用 CoT过程奖励与结果奖励的最优混合忠实度评测协议、以及多模态 CoT(图、表、代码混排)的可扩展性。行业侧则更关心:在固定延迟与成本下,哪类任务值得上 ToT/投票/PRM——本质是边际收益曲线问题,而非「越复杂越好」。

工具优先,还是 CoT 优先?

先看定义:只要问题能被确定性工具解决,通常先上工具;CoT 更适合“需要拆解但无法直接程序化”的部分。

问题类型更优先的手段原因
大数计算、单位换算、SQL 聚合工具 / 代码执行确定性强,语言推理易错
多步数学文字题CoT + 验算工具先拆解,再用工具兜底
法务/策略分析Structured CoT + 检索需要解释过程与依据
复杂规划ToT / 受限搜索第一条路径未必最优

工程上最常见的坏味道,是让模型先写一大段 CoT,最后再去调工具“确认一下”。顺序更稳的做法往往是:先判断问题能否程序化验证,再决定需要多深的语言推理


8. 实战指南:何时用哪种 CoT

先看定义:先问「任务是否需要多步 + 是否承担得起 token」,再选最便宜的够用方案。

决策表:任务类型 → 推荐 CoT 变体

任务类型首选备选备注
通用数学题、逻辑题Zero-shot CoT 或短结构化Few-shot(题型固定时)验算/工具兜底
固定格式业务(审批、法务初稿)Structured CoTFew-shot + 模板强可检查性
复杂规划、谜题、博弈ToT(限分支)多采样 + 投票严控宽度/深度
多源信息综合、迭代精炼GoT 或 分块线性 CoT + 汇总ToT全 GoT 成本高
低延迟简单问答不用 CoT直接答减少幻觉路径
可程序化验证的问题工具优先CoT 只做解释层不要拿语言模拟计算器
教小模型推理CoT 蒸馏 + 课程学习PRM 辅助防套话

成本-收益分析(心智模型)

收益 ≈ 任务「可分解度」 × 模型能力 − 冗长带来的错误面
成本 ≈ (prompt 长度 + 生成步数 + 分支数 × 评估) × 单价
策略预期成本预期收益峰值场景
Zero-shot CoT最低大模型、通用推理
Few-shot CoT中(示例长)题型固定、要可复现
Structured CoT中–高(输出长)合规、审计、交付物
ToT易走错第一步的规划题
GoT很高多源合并、迭代精炼

实操建议:从 Zero-shot → 结构化 → Few-shot 逐级加成本;仅当线性路径反复失败时,再引入 ToT 的窄搜索;GoT 留给真正需要合并多子图的问题。上线前用同一批 hold-out对比「无 CoT / 线性 / ToT」,用数据说话而不是信仰。


延伸阅读

  • Wei, J., et al. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903
  • Kojima, T., et al. Large Language Models are Zero-Shot Reasoners(「Let’s think step by step」). arXiv:2205.11916
  • Yao, L., et al. Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601
  • Besta, M., et al. Graph of Thoughts: Solving Elaborate Problems with Large Language Models. arXiv:2308.09687
  • Lightman, H., et al. Let’s Verify Step by Step(PRM / 过程奖励经典). arXiv:2305.20050

核心概念速查

概念一句话
Chain-of-Thought (CoT)让模型输出中间推理步骤以提升多步任务表现
Zero-shot CoT不加示例,仅用语句(如逐步思考)触发分步行为
Few-shot CoT用带推理链的示例教会题型与格式
Structured CoT用固定栏目/模板约束推理过程,便于检查与落地
Tree-of-Thought (ToT)多路径生成与评估,分支搜索式推理
Graph-of-Thought (GoT)推理步骤构成图,支持合并、循环等更 rich 拓扑
PRM对推理步骤打分的过程奖励模型
CoT Distillation用大模型推理链教小模型模仿推理样式与步骤
Faithfulness模型声称的推理是否真实反映其决策依据(常存疑)

写于 2026:CoT 已是默认能力,选型比「会不会写 Let’s think step by step」更重要——省 token、控分支、验忠实