大型语言模型(LLMs)在文本生成、翻译和问答等任务上展现了惊人的能力。然而,当面对需要多步骤推理的问题时,它们有时会“一步到位”地给出错误答案。为了引导模型进行更深入、更可靠的思考,研究者们提出了一种简单而有效的提示(Prompting)技术——思维链(Chain-of-Thought, CoT)。
什么是思维链?
思维链的核心思想非常直观:在向模型提问时,不仅仅要求最终答案,还要在示例(Few-shot Prompting)或指令(Zero-shot Prompting)中,显式地展示或要求模型输出解决问题的中间推理步骤。就像我们人类解决复杂问题时,会一步一步地思考、演算、推导一样,CoT 鼓励模型模拟这个过程。
传统提示可能直接问:“问题 -> 答案”,而思维链提示则展示:“问题 -> 思考步骤 1 -> 思考步骤 2 -> … -> 最终答案”。
一个简单的例子
让我们看一个简单的数学应用题:
标准提示 (Standard Prompting):
Q: 咖啡店有5个苹果。如果他们用了2个苹果做松饼,又买了6个苹果,现在咖啡店有多少个苹果?
A: 9
思维链提示 (Chain-of-Thought Prompting):
Q: 咖啡店有5个苹果。如果他们用了2个苹果做松饼,又买了6个苹果,现在咖啡店有多少个苹果?
A: 咖啡店一开始有5个苹果。他们用了2个,所以剩下 5 - 2 = 3个苹果。然后他们又买了6个苹果,所以现在有 3 + 6 = 9个苹果。最终答案是 9。
通过在示例中加入推理步骤,模型在面对新的类似问题时,更有可能模仿这种“思考过程”,从而分解问题,逐步求解,而不是直接猜测答案。
思维链的力量
引入思维链带来了显著的好处:
- 提升推理能力: 特别是在算术、常识和符号推理等需要多步骤思考的任务上,CoT 能显著提高大型语言模型的准确性。模型被引导将复杂问题分解为更小、更易于管理的部分。
- 增强可解释性: 通过观察模型生成的中间步骤,我们可以更好地理解模型的“思考”过程,判断它是如何得出最终答案的,这有助于调试和信任模型的输出。如果中间步骤出现错误,也更容易定位问题所在。
- 激发涌现能力: 有趣的是,思维链的效果似乎在足够大的模型(通常参数量超过某个阈值)上才会显现,这被认为是大型模型“涌现能力”的一种体现。

不仅仅是示例:Zero-shot CoT
研究者们还发现,甚至不需要提供带有推理步骤的示例(Few-shot),只需在提示中加入一句简单的指令,比如“让我们一步一步地思考”(Let’s think step by step),也能在一定程度上激发模型的链式思考能力,这种方法被称为 Zero-shot CoT。
Q: [复杂的问题]
A: 让我们一步一步地思考。
[模型开始生成推理步骤...]
所以,最终答案是 [答案]。
