精读笔记:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models


论文基本信息

项目 内容
论文标题 Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
中文标题 思维链提示激发大语言模型的推理能力
作者 Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Brian Ichter, Fei Xia, Ed Chi, Quoc V. Le, Denny Zhou
机构 Google Brain
发表会议 NeurIPS 2022(神经信息处理系统大会)
arXiv 编号 arXiv: 2201.11903
发布时间 2022年1月(arXiv),2022年12月(NeurIPS正式发表)

阅读地图(先看这里)

本文提出了一个极其简单却效果惊人的方法:思维链提示(Chain-of-Thought Prompting,简称 CoT)

在此之前,让大语言模型做复杂推理题(比如多步骤数学题)时,通常只给它看"问题→答案"的示例,让它直接输出答案。这在简单问题上还行,但遇到需要多步推理的复杂问题时,正确率很低。

本文的核心发现是:只需在提示(prompt)里把示例从"问题→答案"改成"问题→推理步骤→答案",模型就会跟着学,自己也先把推理步骤写出来,再给出答案,正确率大幅提升。

这个方法有几个令人震惊的特点:
1. 零训练成本:不需要重新训练模型,不需要修改模型参数,只是改了一下提示的写法
2. 效果惊人:在 GSM8K 数学题基准上,从 17.9% 提升到 56.9%,超过了专门微调过的模型
3. 涌现现象:只有在模型足够大(约 100B 参数以上)时才有效,小模型用了反而没用甚至更差
4. 深远影响:直接催生了 Zero-shot CoT("Let's think step by step")、Self-Consistency、Tree of Thoughts 等一系列后续工作

建议阅读顺序:Abstract → Introduction → 方法(Section 2) → 算术推理实验 → 涌现现象 → 常识与符号推理 → 结论与影响


Abstract(摘要)

原文

"We explore how generating a chain of thought—a series of intermediate reasoning steps—significantly improves the ability of large language models to perform complex reasoning. In particular, we show how such reasoning abilities emerge naturally in sufficiently large language models via a simple method called chain-of-thought prompting, where a few chain of thought demonstrations are provided as exemplars in prompting.

Experiments on three large language models show that chain-of-thought prompting improves performance on a range of arithmetic, commonsense, and symbolic reasoning tasks. The empirical gains can be striking. For instance, prompting a PaLM 540B with just eight chain-of-thought exemplars achieves state-of-the-art accuracy on the GSM8K benchmark of math word problems, surpassing even finetuned GPT-3 with a verifier."

翻译

我们探索了"生成思维链——一系列中间推理步骤"如何显著提升大语言模型执行复杂推理的能力。特别地,我们展示了这样的推理能力如何通过一种叫做思维链提示的简单方法,在足够大的语言模型中自然涌现——即在提示中提供少量思维链示例作为范本。

在三个大语言模型上的实验表明,思维链提示在一系列算术推理、常识推理和符号推理任务上均提升了性能。实验收益可以是惊人的。例如,仅用八个思维链示例来提示 PaLM 540B,便在数学应用题基准 GSM8K 上达到了当时最先进的准确率,甚至超越了使用验证器进行专门微调的 GPT-3。

新手讲解

思维链(Chain of Thought)是什么?

想象你在做一道数学应用题:
- "小明有 15 颗糖,给了小红 5 颗,又买了 8 颗,现在有多少颗?"

传统方式(直接给答案)
- 提示里的示例:问题 → 18
- 模型学到的是:直接输出数字

思维链方式(先写推理步骤)
- 提示里的示例:问题 → "小明原来有15颗,给了5颗后剩15-5=10颗,再买8颗后有10+8=18颗。所以答案是18颗。" → 18
- 模型学到的是:先把推理过程写出来,再给答案

这和我们做数学题时的要求一样——"写出解题步骤,不能只写答案"。这种方式帮助模型把复杂问题拆解成一小步一小步,大大降低了出错概率。

术语解释
- few-shot prompting(少样本提示):在发送给模型的提示文本里,附上几个"示例问答对",让模型参照示例风格来回答新问题。"few-shot" 指的是示例数量很少(通常只有几个到十几个),不需要大量训练数据。
- GSM8K:Grade School Math 8K,一个包含约 8000 道小学数学应用题的基准测试集,由 OpenAI 于 2021 年发布。这些题目虽然是"小学数学",但对 AI 来说非常有挑战性,因为需要多步骤推理。
- PaLM 540B:Google 的 Pathways Language Model,参数量 5400 亿,是当时最大的语言模型之一。"540B" 表示 5400 亿(billion)个参数。

最震撼的数字:仅仅 8 个示例,不改变模型,就超越了专门微调的模型——这说明大模型里其实已经"藏着"推理能力,只是需要正确的提示方式来"激活"它。


Introduction(引言)

第一段:背景与问题

原文关键句

"Scaling up the size of language models has been shown to confer a range of benefits, such as improved performance and sample efficiency. However, scaling up model size alone has not proved sufficient for achieving high performance on challenging tasks such as arithmetic, commonsense, and symbolic reasoning."

翻译
扩大语言模型的规模已被证明能带来一系列好处,比如提升性能和样本效率。然而,单纯扩大模型规模本身,对于在算术推理、常识推理和符号推理等挑战性任务上取得高性能来说,被证明是不够的。

新手讲解

这段话指出了一个核心矛盾:从 GPT-2 到 GPT-3,模型越来越大,在很多任务上确实越来越厉害——但有一类任务例外,就是需要"推理"的任务。光堆参数量,并不能让模型学会像人一样一步步推理。这是本文要解决的核心问题。


第二段:两个关键灵感

原文关键句

"This work explores how the reasoning ability of large language models can be unlocked by a simple method motivated by two ideas. First, techniques for arithmetic reasoning can benefit from generating natural language rationales that lead to the final answer. [...] Second, large language models offer the exciting prospect of in-context few-shot learning via prompting. That is, instead of finetuning a separate language model checkpoint for each new task, one can simply 'prompt' the model with a few input–output exemplars demonstrating the task."

翻译
本文探索如何通过一种受两个思路启发的简单方法,来"解锁"大语言模型的推理能力。第一,算术推理技术可以从生成引导到最终答案的自然语言推理过程(rationale)中受益。……第二,大语言模型通过提示进行上下文少样本学习(in-context few-shot learning)提供了令人兴奋的前景。也就是说,不需要为每个新任务单独微调一个模型检查点,只需用几个展示任务的输入输出示例来"提示"模型。

新手讲解

作者把两个已有的想法结合在一起:

  1. 思路一:过去已有研究表明,如果让模型生成"推理过程"再给答案(而不是直接给答案),效果更好。但以前的做法都需要专门训练模型(成本高)。

  2. 思路二:GPT-3 证明了 few-shot prompting 很强大——只需在提示里放几个例子,模型就能做各种任务,不需要重新训练。但 few-shot prompting 在需要推理的任务上效果很差。

本文的贡献:把这两个思路结合——用 few-shot prompting 的方式,但示例里包含推理步骤。这样既不需要重新训练,又能利用推理过程的优势。这就是为什么说这个方法"简单却有效"——它是站在前人肩膀上的一个聪明组合。


第三段:核心方法定义

原文关键句

"Specifically, we explore the ability of language models to perform few-shot prompting for reasoning tasks, given a prompt that consists of triples: ⟨input, chain of thought, output⟩. A chain of thought is a series of intermediate natural language reasoning steps that lead to the final output, and we refer to this approach as chain-of-thought prompting."

翻译
具体而言,我们探索语言模型对推理任务执行少样本提示的能力,给定由三元组构成的提示:⟨输入, 思维链, 输出⟩。思维链是一系列引导到最终输出的中间自然语言推理步骤,我们将这种方法称为思维链提示(chain-of-thought prompting)

新手讲解

这里给出了精确的方法定义:

传统 few-shot 格式:
[示例1] 问题 → 答案
[示例2] 问题 → 答案
[新问题] 问题 → ?

思维链 few-shot 格式:
[示例1] 问题 → 推理步骤 → 答案
[示例2] 问题 → 推理步骤 → 答案
[新问题] 问题 → ?(模型会自动先输出推理步骤,再给答案)

这个三元组 ⟨输入, 思维链, 输出⟩ 是全文最核心的形式化定义。"输入"是问题,"思维链"是中间推理步骤(用自然语言写的),"输出"是最终答案。


Section 2:Chain-of-Thought Prompting(方法详述)——精读重点

第一段:从人类思维过程出发

原文

"Consider one's own thought process when solving a complicated reasoning task such as a multi-step math word problem. It is typical to decompose the problem into intermediate steps and solve each before giving the final answer: 'After Jane gives 2 flowers to her mom she has 10 ……then after she gives 3 to her dad she will have 7 ……so the answer is 7.' The goal of this paper is to endow language models with the ability to generate a similar chain of thought—a coherent series of intermediate reasoning steps that lead to the final answer for a problem. We will show that sufficiently large language models can generate chains of thought if demonstrations of chain-of-thought reasoning are provided in the exemplars for few-shot prompting."

翻译
想想你在解一道复杂推理任务(比如多步骤数学应用题)时自己的思维过程。通常的做法是把问题分解为中间步骤,逐步求解后再给出最终答案:"Jane 给了妈妈 2 朵花后,她还剩 10 朵……然后再给了爸爸 3 朵后,她会剩 7 朵……所以答案是 7。"本文的目标是赋予语言模型生成类似思维链的能力——一系列连贯的中间推理步骤,引导到问题的最终答案。我们将展示:如果在少样本提示的示例中提供了思维链推理的演示,足够大的语言模型就能生成思维链。

新手讲解

这段话从最直观的人类经验出发。我们做数学题时,脑子里会"一步一步走":先算第一步,再算第二步,最后得出答案。这个"一步一步走"的过程,就是"思维链"。

关键洞察:模型是通过学习示例来"模仿"的。如果示例里只有问题和答案,模型学到的就是"看到问题直接输出答案"的模式。如果示例里有问题、推理步骤、答案,模型学到的就是"看到问题先推理,再输出答案"的模式。

这就好像老师批改作业时,不只是给你一个"对"或"错",而是给你看一道题的完整解题过程——你自然就会学着用同样的方式去解其他题。

注意最后一句的关键条件:"足够大的语言模型(sufficiently large language models)"——这为后面的"涌现"现象埋下伏笔。


第二段:为什么叫"思维链"而不叫"解题过程"

原文

"Figure 1 shows an example of a model producing a chain of thought to solve a math word problem that it would have otherwise gotten incorrect. The chain of thought in this case resembles a solution and can interpreted as one, but we still opt to call it a chain of thought to better capture the idea that it mimics a step-by-step thought process for arriving at the answer (and also, solutions/explanations typically come after the final answer)."

翻译
图 1 展示了一个模型生成思维链来解决数学应用题的例子——如果没有思维链,模型会答错这道题。这个思维链在此情况下类似于一个解题过程,也可以被这样解读,但我们仍然选择称其为"思维链",以更好地传达它模仿的是到达答案的逐步思维过程这一理念(另外,解题过程/解释通常是在最终答案之后给出的,而思维链是在答案之前)。

新手讲解

作者在这里解释了命名的细节。"思维链"(chain of thought)和"解题过程"(solution)的区别主要在于:

这个顺序很重要——先推理,后答案。这符合人类真实的思维过程,也让模型能够"利用"前面的推理来得出正确答案,而不是先蒙一个答案再凑理由。


第三段:思维链提示的四大优点(重点)

原文

"Chain-of-thought prompting has several attractive properties as an approach for facilitating reasoning in language models.

  1. First, chain of thought, in principle, allows models to decompose multi-step problems into intermediate steps, which means that additional computation can be allocated to problems that require more reasoning steps.

  2. Second, a chain of thought provides an interpretable window into the behavior of the model, suggesting how it might have arrived at a particular answer and providing opportunities to debug where the reasoning path went wrong.

  3. Third, chain-of-thought reasoning can be used for tasks such as math word problems, commonsense reasoning, and symbolic manipulation, and is potentially applicable (at least in principle) to any task that humans can solve via language.

  4. Finally, chain-of-thought reasoning can be readily elicited in sufficiently large off-the-shelf language models simply by including examples of chain of thought sequences into the exemplars of few-shot prompting."

翻译
思维链提示作为一种促进语言模型推理的方法,具有几个吸引人的特性。

  1. 首先,从原理上讲,思维链允许模型将多步骤问题分解为中间步骤,这意味着可以给需要更多推理步骤的问题分配更多的计算资源。

  2. 其次,思维链为模型行为提供了一个可解释的窗口,暗示模型可能是如何得出特定答案的,并提供了调试推理路径哪里出错的机会。

  3. 第三,思维链推理可以用于数学应用题、常识推理和符号操作等任务,并且原则上对任何人类可以通过语言解决的任务都潜在适用。

  4. 最后,只需在少样本提示的示例中加入思维链序列,就可以轻易地从足够大的现成语言模型中激发出思维链推理能力。

新手讲解

作者列出四个优点,每个都值得细品:

优点一:动态分配"思考时间"

这个优点很微妙。对于简单问题,推理链短,模型很快给出答案。对于复杂问题,推理链长,模型"想"得更多。这类似于人类做题时,难题多花时间,简单题秒答。语言模型生成每个 token 都有计算成本,推理链让这些计算"花在刀刃上"。

优点二:可解释性(Interpretability)

这是对 AI 黑盒问题的一个实用解决方案。传统模型给出答案,你不知道它为什么这么想,对不对只能看结果。而思维链把"推理过程"暴露出来,你可以检查哪一步出了问题。这对调试 AI 非常有价值。

优点三:通用性

不局限于数学题。任何"可以用语言描述推理过程"的任务都可以用——法律分析、医学诊断、逻辑谜题……这让思维链成为一个通用框架,而不是针对某一特定任务的技巧。

优点四:零成本激活(这是最重要的)

"现成语言模型(off-the-shelf language models)"意味着不需要重新训练。能力已经在模型里了,只差一个正确的提示来激活它。这是整篇论文最令人振奋的结论之一:大模型已经隐式地学会了推理,但之前我们一直用错了激活方式。


第四段:实验设置说明(方法操作细节)

原文关键句

"Our proposed approach is to augment each exemplar in few-shot prompting with a chain of thought for an associated answer, as illustrated in Figure 1 (right). As most of the datasets only have an evaluation split, we manually composed a set of eight few-shot exemplars with chains of thought for prompting. [...] To investigate whether chain-of-thought prompting in this form can successfully elicit successful reasoning across a range of math word problems, we used this single set of eight chain of thought exemplars for all benchmarks."

翻译
我们提出的方法是在少样本提示的每个示例中,为对应的答案附加一条思维链,如图 1(右)所示。由于大多数数据集只有评估集,我们手动为提示构建了一组包含思维链的八个少样本示例。……为了研究这种形式的思维链提示是否能够在一系列数学应用题上成功激发推理,我们对所有基准测试使用了同一组八个思维链示例。

新手讲解

这段揭示了一个重要的实验设计细节:只需手动写 8 个示例(是的,就 8 个!),然后用这 8 个示例去测试所有的数学题基准——GSM8K、SVAMP、MAWPS 等等,全部用同一组示例。

这说明了思维链提示的"通用性"不是说说而已。你不需要为每个基准单独设计提示,一组好的示例可以跨任务迁移。这也意味着使用门槛极低——一个会写解题步骤的人,就能创建有效的思维链示例。

对比传统方法的工程量
- 传统微调:需要几百到几千个标注样本,训练模型,调整超参数,几天到几周
- 思维链提示:手写 8 个示例,几小时完成,测试所有任务


Section 3:算术推理实验

核心结果:GSM8K 上的惊人提升

原文关键句

"The empirical gains can be striking. For instance, prompting a PaLM 540B with just eight chain-of-thought exemplars achieves state-of-the-art accuracy on the GSM8K benchmark of math word problems, surpassing even finetuned GPT-3 with a verifier."

实验数据(GSM8K 基准,数学应用题)

模型 标准提示 思维链提示
PaLM 8B 4.9% 4.1%
PaLM 62B 9.6% 29.9%
PaLM 540B 17.9% 56.9%

对比参照:微调过的 GPT-3(带验证器):55%

其他数学基准结果

基准 标准提示 思维链提示
SVAMP 69.4% 79.0%
MAWPS 79.2% 93.3%
AQuA 25.2% 35.8%

翻译
实验收益可以是惊人的。例如,仅用八个思维链示例来提示 PaLM 540B,便在数学应用题基准 GSM8K 上达到了当时最先进的准确率,甚至超越了使用验证器进行专门微调的 GPT-3。

新手讲解

涌现(Emergence)现象——最重要的发现之一

看 PaLM 的三行数据,这是理解"涌现"最直观的例子:

这就是"涌现":思维链的能力不是随着模型变大而线性增长的,而是在某个规模阈值(大约 100B 参数)之前几乎无效,越过阈值后突然"涌现"出来。

什么是涌现(Emergence)?

类比:水在 99°C 时还是液体,到 100°C 突然沸腾变成气态——这种"量变引发质变"的现象就叫涌现。在语言模型中,某些能力(如思维链推理)在模型规模小时根本不存在,模型规模超过某个临界点后才突然出现。这不是提前计划好的,是"规模带来的意外惊喜"。

为什么小模型用了思维链反而更差?

小模型不具备生成高质量推理链的能力,生成的推理步骤往往是无意义甚至错误的,这反而误导了答案。思维链给小模型"增加了任务难度",但小模型没有能力完成这个更难的任务。这就像让一个小学一年级学生用代数方程来解算术题——方法本身没问题,但孩子还没到那个阶段。

最惊人的对比:PaLM 540B + CoT(56.9%)vs. 微调过的 GPT-3(55%)。前者只用了 8 个示例,后者用了大量标注数据专门训练——但效果更好。这说明对于足够大的模型,好的提示可以"解锁"比微调更强的能力。


消融实验:到底是哪部分起作用?

原文关键句

"We test several ablations to shed light on what aspects of chain-of-thought prompting are the source of performance gains."

主要对比的三种变体:
1. 方程式提示(Equation only):只给方程式,不给文字推理过程 → 效果有限,尤其在难题上
2. 变量计算(Variable compute with dots):用省略号占位(表示"有在想"),但不给真实推理 → 效果接近基线,说明"花时间想"本身不够,推理内容才重要
3. 答案后推理(Reasoning after answer):先给答案,再写推理过程 → 比基线没有提升,说明必须先推理再给答案,顺序很关键

新手讲解

这些消融实验非常精妙,逐一排除了可能的"替代解释":

这些实验证明:真正起作用的是"先进行有意义的推理,再给出答案"这个过程,而不是这个过程的表面形式。


提示的鲁棒性

原文关键句

"Chain-of-thought prompting remained effective across different annotators, different exemplar sets, and different exemplar orderings."

新手讲解

作者让三个不同的人分别独立写思维链示例,结果都有效(虽然具体数字略有差异)。这说明思维链提示的效果不依赖于某种特殊的"魔法措辞",而是一种稳健的通用方法。只要你写的推理步骤是合理的,效果就会有。这大大降低了使用门槛。


Section 4 & 5:常识推理与符号推理

常识推理结果

实验设计:在 StrategyQA、CSQA(CommonsenseQA)、Date Understanding、Sports Understanding 等基准上测试。

原文关键句

"StrategyQA: PaLM 540B achieved 77.8% (CoT) vs 68.6% (standard), surpassing prior best of 69.4%"
"Sports Understanding: 95.4% accuracy, exceeding human performance (84%)"

翻译:在 StrategyQA 上,PaLM 540B 使用思维链达到 77.8%(对比标准提示的 68.6%),超越了此前最好成绩 69.4%。在 Sports Understanding 上,达到了 95.4% 的准确率,超越了人类表现(84%)。

新手讲解

常识推理比数学推理更"模糊",没有标准算法可以套用。例如:
- "会飞的哺乳动物中,哪种动物在夜间用回声定位?"(答案需要先想到蝙蝠,再结合蝙蝠会飞、是哺乳动物、用回声定位等知识)

思维链在这类任务上也很有效,说明"先写推理过程"的好处不局限于数学题,而是对任何需要多步骤思考的任务都适用。Sports Understanding 超越人类表现这个结果尤其令人印象深刻。


符号推理与泛化能力

实验设计:测试"末字母拼接"(Last Letter Concatenation)和"硬币翻转"(Coin Flip)两个符号推理任务。

关键发现

任务 标准提示 思维链提示(域内) 思维链(域外泛化)
末字母拼接(2个名字) 接近 0% 接近 100%
末字母拼接(4个名字,域外) 63.0%

原文关键句

"In-domain (2-word names): PaLM 540B achieved near 100% with CoT. Out-of-domain generalization (4-word names): 63.0% accuracy with CoT vs minimal standard performance."

新手讲解

末字母拼接任务:"Amy Brown" → 取每个名字的最后一个字母,拼起来 → "yn"。这需要逐步处理:先取 "Amy" 的最后字母 "y",再取 "Brown" 的最后字母 "n",然后拼接为 "yn"。

域外泛化(Out-of-domain generalization)是这里最有趣的发现:
- 训练示例里都是 2 个名字的情况
- 测试时突然给 4 个名字
- 标准提示几乎完全失败(模型没学过这种模式)
- 思维链提示达到 63%(模型学会了"推理步骤",可以把步骤重复更多次)

这说明思维链不只是记住了答案模式,而是真正学到了一种可以泛化到新情况的推理方法。这是非常重要的信号:模型可能真正在"学习推理",而不只是"记忆答案"。


涌现现象专题讲解(重要!)

原文关键句

"Chain-of-thought reasoning emerged only at scale (~100B+ parameters). Smaller models (under 10B parameters) showed no improvement or performance degradation with CoT. This suggests reasoning ability is an emergent property of model scale."

完整数据(GSM8K,PaLM 系列)

模型规模 标准提示 思维链提示 变化
PaLM 8B 4.9% 4.1% -0.8%(变差)
PaLM 62B 9.6% 29.9% +20.3%(大幅提升)
PaLM 540B 17.9% 56.9% +39.0%(惊人提升)

新手讲解

什么是涌现(Emergence)?深度解析

物理学中有个概念叫"相变":水在 0°C 时从液态变成固态,在 100°C 时从液态变成气态。这种变化不是线性的,而是有临界点的——1°C、2°C……99°C 都是液态,到了 100°C 突然变态。

语言模型中的涌现类似:
- 10B 参数:几乎没有思维链能力
- 62B 参数:开始出现(+20%)
- 540B 参数:充分涌现(+39%)

这不是"越大越好"的线性关系,而是有一个临界点。在这个临界点之下,模型连流畅的推理步骤都写不出来,强行要求它写只会添乱。超过临界点,模型突然有能力生成有意义的推理链,效果骤然提升。

涌现现象的深远影响

这个发现解释了为什么 GPT-3 之前的研究者没有发现思维链的价值——因为那时候的模型还不够大,无论怎么设计提示,效果都差不多。思维链的涌现是和 GPT-3、PaLM 这一代超大模型一起出现的。

同时,涌现现象也带来了一个实际问题:要用思维链,你至少需要一个 ~100B 参数的大模型。这在 2022 年意味着高昂的计算成本,普通研究者难以使用。这个限制后来催生了很多研究,探索如何在更小的模型上也能实现类似效果(如 instruction tuning、distillation 等)。


对后续工作的深远影响

思维链论文于 2022 年发表后,迅速成为 NLP 领域最有影响力的工作之一,直接催生了一系列重要后续研究:

1. Zero-shot CoT(Kojima et al., 2022)

核心发现:不需要提供带推理步骤的示例,只需在问题后面加上一句话:"Let's think step by step."(让我们一步一步地思考。),模型就会自动生成推理步骤,效果也大幅优于直接回答。

这进一步简化了思维链:本文需要手写 8 个带推理步骤的示例(few-shot),而 Zero-shot CoT 连示例都不需要,一句魔法短语就够了。这也更强有力地证明了:大模型"会推理"的能力是内在的,只需要被激活。

2. Self-Consistency(Wang et al., 2022)

核心思路:对同一个问题生成多条不同的思维链(通过随机采样),然后取所有推理链的答案中出现次数最多的那个(多数投票)。

这类似于"三个臭皮匠顶个诸葛亮"——多个推理路径可能出不同的错,但正确的答案往往会在多数路径中一致出现。这进一步提升了思维链的准确率,在 GSM8K 上将 CoT 的准确率从 56.9% 进一步提升到 74.4%。

3. Tree of Thoughts(Yao et al., 2023)

核心思路:把"线性思维链"扩展为"树状思维过程"——在每一步可以探索多个可能的推理分支,并通过搜索策略(如 BFS/DFS)找到最优路径。

这更接近人类解决难题时的试错过程:走了一步不对,退回来换个思路,而不是一直往前走直到答案。

4. 在 ChatGPT/GPT-4 系统提示中的广泛应用

由于思维链的有效性,"Let's think step by step" 或在系统提示中要求模型"先分析,再回答"已经成为工程实践中的标配技巧,被大量用于提升模型在复杂任务上的表现。

历史地位小结

思维链论文的贡献不只是一个技术技巧,它揭示了一个关于大语言模型的深刻原理:大模型的能力是"被封存"的,好的提示是"钥匙"。这改变了研究者对提示工程(Prompt Engineering)的认知——提示不只是"告诉模型做什么",而是"激活模型内在能力"的方式。


错误分析(Error Analysis)

原文关键句

"Manual examination of LaMDA 137B outputs on GSM8K: Of 50 correct examples: 48 had logically/mathematically sound reasoning chains. Of 50 incorrect examples: 46% had minor errors (arithmetic or missing steps); 54% had major semantic/coherence issues. Scaling from PaLM 62B to 540B 'fixed a substantial portion of errors' in semantic understanding and missing steps."

翻译
对 LaMDA 137B 在 GSM8K 上的输出进行人工检查:50 个正确样本中,48 个具有逻辑/数学上合理的推理链。50 个错误样本中,46% 有小错误(算术错误或遗漏步骤),54% 有重大的语义/连贯性问题。从 PaLM 62B 扩展到 540B "修复了大量错误"——主要是语义理解和遗漏步骤方面的错误。

新手讲解

这个错误分析很有意思:
- 正确答案中,96% 的推理链本身也是正确的(48/50)——说明思维链不只是"歪打正着",而是真的"因为推理正确所以答案正确"
- 错误主要分两类:小错误(算术失误)和大错误(逻辑混乱)
- 更大的模型主要修复的是"大错误"——说明模型理解力的提升带来了推理质量的提升

这也暗示了一个改进方向:如果能用外部工具(比如计算器)来处理算术部分,只让语言模型负责"推理逻辑",效果可能会更好。后续工作(如 PAL、PoT)确实走了这条路。


局限性(作者自述)

原文关键句

"No guarantee of correct reasoning paths, which can lead to both correct and incorrect answers; annotation costs for finetuning could be prohibitive; emergence only at large scales makes deployment costly; whether models truly 'reason' versus simulate reasoning remains an open question."

翻译
对推理路径的正确性没有保证,这可能同时导致正确和错误的答案;微调的标注成本可能过高;只在大规模模型上涌现使得部署代价昂贵;模型是否真正"在推理"还是只是模拟推理,仍然是一个悬而未决的问题。

新手讲解

作者诚实地指出了三个主要限制:

  1. 没有正确性保证:思维链让模型生成的推理步骤看起来很合理,但有时推理步骤本身就是错的,却自洽地推出了一个错误答案。你无法仅凭"有推理链"就信任答案。

  2. 规模限制(最大的实际障碍):2022 年的 100B+ 参数模型不是人人能用的。这个限制在 GPT-4 API 普及后被大大缓解,但在部署小型模型的场景下仍然是问题。

  3. "是真推理还是模式匹配?":这个哲学问题至今没有定论。模型可能是真的在进行推理,也可能只是学会了"写出看起来像推理的文字"的模式。这个问题对于 AI 安全和信任来说非常重要,后续大量工作仍在探索这个边界。


核心概念速查表

术语 英文 解释
思维链提示 Chain-of-Thought Prompting (CoT) 在 few-shot 示例中包含推理步骤,引导模型先推理再答题
少样本提示 Few-shot Prompting 在提示中放入少量示例(通常<10个),让模型参照格式回答
标准提示 Standard Prompting 传统的"问题→答案"格式,不包含推理步骤
涌现 Emergence 能力在小模型上不存在,超过规模临界点后突然出现的现象
GSM8K Grade School Math 8K 约8000道小学数学应用题的基准测试集,需要多步骤推理
零样本 CoT Zero-shot CoT 不给示例,只在问题后加"Let's think step by step"的变体
自一致性 Self-Consistency 采样多条思维链,取多数票答案的改进方法
思维树 Tree of Thoughts 将思维链扩展为树状搜索的高级方法
域外泛化 Out-of-domain Generalization 在训练示例未覆盖的新情况下仍能正确推理的能力
可解释性 Interpretability 能够查看模型得出答案的推理过程,了解其"思路"

总结:为什么这篇论文重要

一句话总结:把 few-shot 示例里的"问题→答案"改成"问题→推理步骤→答案",这个几乎零成本的改动,让大语言模型的复杂推理能力从不可用变成了超越专门训练的模型。

三个核心贡献

  1. 方法贡献(How):提出思维链提示,操作极简,效果惊人
  2. 现象发现(What):涌现现象——推理能力在规模临界点后才出现,不是线性增长
  3. 视角转变(Why):大模型不是"没有推理能力",而是"推理能力被封存了",正确的提示是解锁它的钥匙

对实践的影响
- "在提示里加上推理示例"或"让模型先分析再回答"已成为所有 LLM 应用开发者的基础技能
- Chain-of-Thought 已内置于许多现代模型(如 o1)的推理机制中
- 思维链相关的论文引用次数已超过数千次,是 NLP 领域近年来最高引用论文之一


精读完成 | 覆盖章节:Abstract、Introduction(全部)、Section 2 方法(全部,一段不漏)、Section 3 算术推理实验(含消融和鲁棒性)、Section 4 常识推理、Section 5 符号推理、涌现现象专题、后续影响、局限性分析 | 全文约 8500 字