Skip to content

思维链推理(Chain-of-Thought)入门

📅 主题:让模型“先思考,再作答”的提示与工程实践

一、什么是思维链推理

思维链推理(Chain-of-Thought, CoT) 指的是:
在回答复杂问题时,引导模型先给出中间推理步骤,再给出最终答案。

直观理解:

  • 普通回答:直接给结论
  • CoT 回答:问题拆解 → 逐步推理 → 最终结论

它特别适用于:

  • 多步骤数学题
  • 逻辑推理
  • 规则判断
  • 需要解释过程的问答任务

二、为什么 CoT 有效

复杂任务失败的常见原因是“跳步推理”:模型直接猜结论,忽略关键中间约束。
CoT 的价值在于把推理显式化:

  1. 降低一步到位猜测的概率
  2. 让模型在每一步对齐问题条件
  3. 提升复杂任务的稳定性与可解释性

可以把 CoT 理解为“给模型一个可执行的思考轨道”。


三、常见 CoT 方式

3.1 Zero-shot CoT

不提供示例,只在提示里要求模型分步思考,例如:

  • “请一步一步分析后再给出答案”
  • “先列出推理过程,再输出结论”

优点:简单、低成本。
局限:在复杂领域任务上不一定稳定。

3.2 Few-shot CoT

提供若干“问题 + 推理步骤 + 答案”示例,让模型模仿该推理风格。

优点:格式和推理路径更可控。
局限:占用更多上下文 token,需要高质量示例。

3.3 Structured CoT(结构化思维链)

把推理过程固定成结构,例如:

  1. 问题拆解
  2. 约束提取
  3. 方案比较
  4. 结论输出

这类方式在工程里更容易做自动评估与解析。


四、CoT 与 ReAct、ToT 的关系

这些方法常被一起讨论,但目标不同:

  • CoT:强调“推理过程显式化”
  • ReAct:推理 + 行动交替(思考后调用工具,再观察结果)
  • ToT(Tree of Thoughts):并行探索多条思路并择优

可以理解为:

  • CoT 是基础形态
  • ReAct / ToT 是更强的“推理 + 决策”扩展

五、工程实践中的关键点

5.1 何时用 CoT

建议用于:

  • 需要多步骤推理的问题
  • 错误代价高、需要可解释过程的场景
  • 需要结果自检或过程审计的任务

不建议用于:

  • 纯事实查询(会增加延迟和 token 成本)
  • 简单分类/抽取(步骤可能冗余)

5.2 结果输出与过程输出分离

很多业务只希望返回结论,不希望前端展示长推理。常见做法:

  • 模型内部生成推理
  • 最终只输出结构化结论(例如 JSON 字段)
  • 推理过程仅用于日志或评估

5.3 结合检索与工具

在 RAG/Agent 场景里,CoT 常与外部能力结合:

  1. 先检索证据
  2. 基于证据分步推理
  3. 需要时调用工具验证
  4. 输出结论并给出引用

这样可减少“看起来合理但无依据”的推理。


六、CoT 常见问题与规避

问题 1:推理过程很长但答案仍错

原因:模型可能生成“看似合理”的伪推理。
应对:引入外部验证(规则校验、计算工具、引用检查)。

问题 2:推理成本高、响应慢

原因:CoT 增加输出 token。
应对:只在复杂任务启用;简单任务走快速路径。

问题 3:过程暴露不必要信息

原因:完整思维链直接返回给用户。
应对:前后端分离:用户只看结论,过程仅内部使用。

问题 4:风格不稳定

原因:提示过于模糊。
应对:用结构化模板或 few-shot 示例固定输出格式。


七、评估 CoT 效果的方法

不要只看“回答更长了”,建议同时看:

  1. 正确率提升:复杂题集上的准确率变化
  2. 稳定性:同类问题多次调用的一致性
  3. 可验证性:中间步骤是否可被规则/工具验证
  4. 成本与时延:token 增量是否可接受

工程上常见做法是 A/B:

  • A:普通回答
  • B:启用 CoT

再比较准确率、延迟、成本,决定是否默认开启。


八、与上下文工程、Agent 的配合

  • 上下文工程:决定 CoT 的提示模板和上下文排布(把证据放在问题附近,减少无关干扰)
  • RAG:为 CoT 提供可引用证据,防止“空想推理”
  • Agent:把 CoT 用在“计划、决策、复盘”环节,结合工具调用形成闭环

在生产环境中,CoT 通常不是单独存在,而是整个推理系统的一部分。


九、小结

  1. CoT 的核心是“先推理再结论”,对复杂任务更有效。
  2. Zero-shot CoT 上手快,Few-shot/结构化 CoT 更稳定。
  3. CoT 不是万能,需结合检索、工具与校验机制。
  4. 实际落地要平衡正确率、稳定性、延迟与成本。
  5. 把 CoT 视为“推理能力放大器”,而不是简单的“回答变长”。

当你把 CoT 放进可验证、可评估的流程里,它会从“提示技巧”升级为“工程能力”。

Released under the MIT License.