什么是 Chain-of-Thought Prompting?它一定能提升推理能力吗?
简化版
Chain-of-Thought(思维链,CoT)通过示例或指令引导模型生成中间推理步骤再给答案,常能改善数学、多步、符号推理任务。但它不是万能的:效果依赖模型规模(小模型加 CoT 反而更差)、任务类型(简单抽取用不上)和提示方式。关键警惕——推理过程写得流畅不代表结论正确,也不保证这些文字忠实反映模型内部的真实计算。
详细版
常见形式:
- Few-shot CoT:示例同时展示「问题 + 中间步骤 + 答案」;
- Zero-shot CoT:一句「让我们一步步思考」触发分步;
- Self-Consistency:采样多条推理路径,对最终答案投票;
- 分解式提示:先拆子问题,再逐步处理。
CoT 适合需要多步组合的任务,不适合简单抽取、固定分类;多输出推理还增加 token、延迟和敏感信息泄露风险。生产系统应验证最终答案和关键中间结果,不把自然语言推理当成证明。
完整版教学
一、CoT 解决什么问题(一个算例)
直接要求「问题 → 答案」,复杂任务的多个约束容易被跳步遗漏。中间步骤给了模型「演算空间」,逐步表示变量、子目标、依赖:
问题:小明有 23 个苹果,吃了 5 个,又买了 3 袋每袋 6 个,现在有几个?
✗ 直接答:41 (容易算错,无法检查哪步错)
✓ CoT:
先算吃掉后:23 − 5 = 18
再算买入:3 × 6 = 18
合计:18 + 18 = 36
答案:36
经典研究(Wei 2022)发现:给足够大的模型带推理过程的 few-shot 示例,能显著改善算术、常识、符号推理。但这收益不是所有模型、所有任务都稳定——小模型加 CoT 常更差(见涌现能力)。
二、Few-shot CoT vs Zero-shot CoT
| 方式 | 做法 | 优点 | 缺点 |
|---|---|---|---|
| Few-shot CoT | 给带推理的示例 | 规定推理风格/粒度,适配专业任务 | 示例错误直接误导 |
| Zero-shot CoT | 一句「一步步思考」 | 成本低、通用 | 缺领域解题模式 |
对专业任务,给经过审核的解题框架、公式、检查步骤,远比只写一句「请一步一步思考」可靠。
三、Self-Consistency 为什么可能有效
单次贪心解码可能一头扎进错误路径。Self-Consistency 的思路是「三个臭皮匠」:
用较高温度采样 N 条不同的推理路径(如 N=10)
路径1 → 答案 A
路径2 → 答案 A
路径3 → 答案 B
...
对最终答案投票 → 出现最多的(A)作为结果
相当于让多条路径互相校验、降低单次偶然错误。但代价明显:调用成本翻 N 倍;且多数路径可能一起受同一个错误知识影响(一起错);开放问题没有可比较的离散答案时也没法投票。
四、可见推理 ≠ 真实机制(最重要的认知)
这是 CoT 最容易被误解的地方。模型的 CoT 文字未必是它内部真实的计算轨迹:
- 它可能先倾向某个答案,再生成看似合理的解释(事后合理化);
- 也可能答案对但理由错,或理由对但答案错。
记忆钩子:CoT 是一种推理提示策略,不是事实校验机制——它能把正确步骤展开,也能把错误展开得更像真的。 所以高风险场景要用可验证计算、程序执行、形式规则、证据引用,而不是只「审阅思考过程」。
五、什么时候不该要求长推理
CoT 不是越多越好,这些场景要避免:
- 简单抽取/格式转换:长推理只加噪声;
- 输出直接展示给用户:冗长步骤伤体验(可让模型内部推理、只输出结论);
- 上下文含敏感信息:推理可能复述泄露;
- 可由计算器/SQL/代码确定完成:交给工具更准;
- 延迟和 token 成本严格:CoT 成倍增加输出。
可以让模型「先规划、只输出简洁依据 + 最终答案」,把验证交给外部工具。
六、常见误区与追问
- 误区:CoT 一定提升推理。 依赖模型规模/任务,小模型加 CoT 反而更差,简单任务用不上。
- 误区:推理流畅=答案正确。 卷面工整不等于对,模型能把错误展开得很像真的。
- 误区:CoT 反映模型真实思路。 可能是事后合理化,不是可审计的内部轨迹。
- 追问:Self-Consistency 原理和代价? 多路径采样 + 投票互相校验;代价是成本翻 N 倍、可能集体犯同一错。
- 追问:为什么小模型加 CoT 更差? 它连每步都写不对,展开反而累积错误(CoT 是涌现能力)。
- 追问:高风险任务怎么保证推理对? 用工具/代码/形式规则验证关键计算,别把 CoT 当证明。
- 追问:怎么评估 CoT 是否有用? 固定问题集对比「直接答/Few-shot CoT/分解/工具」的最终正确率、步骤可验证率、成本、延迟,别只挑成功案例。
七、加强记忆
CoT 像要求写解题过程:复杂题常因此少漏步骤,但卷面工整 ≠ 答案正确。三条钉死:收益依赖规模和任务(小模型/简单任务无效甚至更差)、可见推理不等于真实机制(可能事后合理化)、高风险要用工具验证关键计算而非审阅思考。变体记 4 个——Few-shot CoT(给带推理示例)、Zero-shot CoT(一句一步步想)、Self-Consistency(多路径投票,成本×N)、分解式(先拆子问题)。用评估确认收益,用工具验证计算,别把流畅推理当证明。