思维链(CoT):让大模型一步步思考
思维链(Chain-of-Thought,CoT)提示是一种通过让模型在给出最终答案前,先输出一系列中间推理步骤,从而提升其多步推理能力的提示方法。它由 Wei 等人在 2022 年提出【已核验】,核心直觉是:复杂问题(尤其是数学、常识、符号推理)难以一步到位,把思考过程显式写出来,答案往往更准确。
核心思想:把推理过程显式化
传统提示直接要求「问题到答案」,模型容易在长链推理中丢失中间状态。CoT 在提示里加入推理链条,例如:
问题:小明有 5 个苹果,又买了 3 袋,每袋 4 个,他一共几个?
推理:原有 5 个,新买 3 乘 4 等于 12 个,合计 5 加 12 等于 17 个。
答案:17
显式中间步骤让模型把多步计算拆开,既降低每一步的难度,也便于人类检查错在哪一步。CoT 的增益随模型规模显著上升,在百亿参数以上的大模型上效果突出【已核验】。
两种主要写法
Few-shot-CoT(少样本思维链):在提示中提供若干「问题 + 推理链 + 答案」的范例,模型据此模仿出推理过程【已核验】。这是 Wei 等人原论文的主要形式,在 GSM8K 等数学基准上相对直接提示有大幅提升。
Zero-shot-CoT(零样本思维链):不提供范例,只在问题后追加一句「让我们一步步思考」(Let’s think step by step)之类的话,触发模型自行展开推理【已核验】。由 Kojima 等人在 2022 年提出,优点是零范例成本,但稳定性弱于少样本。
适用边界
CoT 并非万能。经验上:
- 推理类任务(算术、数学、常识、符号操作、多跳问答):增益明显
- 知识回忆类任务(事实问答、翻译):增益有限,冗长推理甚至引入错误
- 参数量较小的模型(约 10B 以下):收益不稳定
推理类任务增益明显【已核验】;知识回忆类任务增益有限,甚至可能因冗长推理引入错误【已核验】;对参数量较小的模型收益不稳定,是否构成「规模涌现」能力仍有学术争议【待核实】。
与 ToT、自一致性的关系
- 自一致性(Self-Consistency,Wang 等,2022)【已核验】:对同一问题采样多条独立推理链,再对最终答案投票。它是 CoT 的「解码增强」,不需要改提示,常与 CoT 搭配使用。
- 思维树(Tree of Thoughts,ToT,Yao 等,2023)【已核验】:把每一步推理组织成树状分支并搜索,扩展自 CoT,适合需要尝试与回溯的难题。
局限与失败模式
- 流畅但错误:模型可能写出看似合理、实则错误的推理链,答案随之出错【已核验】。
- 范例敏感:Few-shot-CoT 的范例质量与多样性直接影响效果,错误或不一致的范例会带偏模型。
- 成本与延迟:推理链更长,token 消耗与响应时间上升,且需从长文本中解析最终答案。
- 评测噪声:答案抽取(如从长文本中取末位数字)本身可能成为误差来源。
小结
思维链通过让模型显式写出中间推理步骤,显著提升了大模型在多步推理任务上的表现,是提示工程的标志性进展。Few-shot-CoT 提供范例、Zero-shot-CoT 仅靠一句触发语,二者各有取舍;自一致性与思维树则在 CoT 之上做解码增强与结构扩展。理解其适用边界与失败模式,才能在真实任务中用好这一技术。
实践上,建议先在目标任务上对比「直接提示」与「CoT 提示」的准确率,确认增益后再引入自一致性等增强;同时固定范例、控制解析逻辑,避免把提示层的收益与抽取层的噪声混为一谈。
参考与延伸阅读
- Wei J., Wang X., Schuurmans D., 等. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. NeurIPS 2022. arXiv:2201.11903【已核验】
- Kojima T., Gu S. S., Reid M., 等. Large Language Models are Zero-Shot Reasoners. NeurIPS 2022. arXiv:2205.11916【已核验】
- Wang X., Wei J., Schuurmans D., 等. Self-Consistency Improves Chain of Thought Reasoning. ICLR 2023. arXiv:2203.11171【已核验】
- Yao S., Yu D., Zhao J., 等. Tree of Thoughts: Deliberate Problem Solving with Large Language Models. NeurIPS 2023. arXiv:2305.10601【已核验】