🧠 图解记忆:别急着给答案——让AI一步步想,答案自然更准。
一句话定义
Chain-of-Thought (CoT) 是一种提示工程技巧:在 prompt 中明确要求模型"逐步推理"或"展示思考过程",而不是直接给出最终答案。
python
# ❌ 零样本直接问(容易出错)
prompt = "小明有5个苹果,吃了2个又买了3个,还剩几个?"
# ✅ CoT提示
prompt = """小明有5个苹果,吃了2个又买了3个,还剩几个?
让我们一步一步思考:"""三种主要形式
| 类型 | 示例 | 效果提升 |
|---|---|---|
| Zero-shot CoT | 只加一句"Let's think step by step" | +10~20% |
| Few-shot CoT | 提供带推理过程的示范例 | +20~40% |
| Auto-CoT | 自动生成示范的推理链 | +30~50%(自动化工具) |
为什么CoT有效?
- 激活推理路径:直接映射
问题→答案可能跳过逻辑中间态;CoT强制走问题→中间步骤→答案,利用了模型的因果推理能力 - 减少错误累积:多步推理可以分阶段验证;一步到位更容易出现"看起来合理但实际错误"的输出
- 可解释性增强:展示中间步骤便于调试和人工审核——这在生产环境中极为关键
适用场景(高频追问)
- ✅ 数学题/逻辑推理 — 收益最大(GSM8K数据集上CoT从18%提升到79%+)
- ✅ 复杂问答 — 多条件约束的问题
- ✅ 代码生成 — 先规划算法再写代码
- ❌ 简单事实查询 — 不需要CoT,反而浪费token
- ❌ 格式严格输出 — CoT会混入推理文本
局限性
- 幻觉传递:如果推理过程中的某一环错了,后续所有推导都错(error propagation)
- Token消耗翻倍:CoT输出的中间步骤可能占输出总量的50-80%
- 并非所有模型都能用好:小模型(<7B)用CoT可能产生明显的逻辑错误,需要更精细的调优
面试话术
"CoT的本质是引导模型把隐式推理变为显式推理。就像让学生做题不能只写答案,要写解题步骤一样。工业界应用时,我的经验是:复杂任务用CoT提30-50%准确率,但要注意token成本和幻觉传递风险。对于关键决策,我会结合Self-Consistency策略——让模型多跑几次CoT取多数投票结果。"