DeepSeek横空出世的时候,人们惊讶地发现,竟然可以看到AI的思考过程! 这一章我们学习大模型从“提示词工程”到“原生思考 (Thinking)”的进化,这将揭示为什么现在的模型可以做复杂的逻辑推理。
致命缺陷:没有回头路的快思考
上一章我们提到,大模型本质上是一个自回归语言模型(Autoregressive Language Model)。它的运作方式是:生成一个词 -> 拼接到输入里 -> 继续生成下一个词。
这也意味着它的一个生理缺陷:生成的词吐不回去,没有回头路。当你问他一个复杂的问题,它立刻输出了第一个词,接着输出第二个词。不断重复,每次生成的词都是基于前面生成的词的概率。如果第一个词和第二个词跑偏了,后面的所有词也都会朝着跑偏的方向继续下去。
这种不假思索的模式,在心理学巨著《思考,快与慢》里被称为System 1(快思考/直觉)。所以早期的大模型,经常会一本正经的胡说八道。
思维链(Chain of Thought, CoT)
如何解决这个问题呢?
Prompt工程的诞生
2022年初,Google的研究院Jason Wei 等人发现,如果在prompt里写两个例题,并且附带解题步骤,大模型就会仿照这个步骤解决新的问题。[2201.11903] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models 这篇论文第一次提出了 CoT (Chain of Thought) 的概念,也标志着“提示词工程 (Prompt Engineering)”的正式诞生。
一句咒语的魔法
2022年中,其他研究者发现一个更令人震惊的事实:甚至都不需要给例题。只要在prompt结尾加上一句
“Let’s think step by step”
模型的数学和逻辑推理能力直接翻倍,根据论文[2205.11916] Large Language Models are Zero-Shot Reasoners描述,在 MultiArith 数据集上准确率从 17.7% 飙升至 78.7%,在 GSM8K 上也从 10.4% 提升到了 40.7%
原生思考
既然这句话可以让大模型能力提升,那大家自然想到,为什么不把这个能力内化到模型训练中?
2024年底,国产之光Deepseek R1横空出世,它直接用强化学习把推理行为训练成了大模型的本能:训练的时候,以前是答案对了就算对;现在只有模型输出推理步骤,而且逻辑自洽,才会给高分。
经过这种训练后,模型学会了输出最终答案之前,先在内部生成长长的推理过程,也就是思维链。Deekseek不是第一个提出推理的,但却是第一个通过开源让”思维链“让大众直观看到的大模型。

核心原理:概率修正和时间换空间
为什么多了推理过程就能变聪明? 这就回到了第一章我们讲过的原理:输入决定输出。
没有CoT的时候:
- 输入: ”9.11和9.9谁大?“
- 模型直觉:在软件版本号训练数据里,9.11确实更大
- 输出:”9.11大“ (错误)
有Cot:
- 输入: ”9.11和9.9谁大?“
- 模型先输出思维链:
...0.11 等于 11/100,0.9 等于 90/100... 因为 90 > 11... - 关键点:模型的思考过程,变成了新的输入,计算下一个词的概率
- 输出:”所以9.9大“ (正确)
CoT 的工作原理,就是用输出的思维链去“修正”和“引导”后续的概率分布。这有点像算法里时间换空间的思想,用更长的推理时间,换来了在空间(参数量)不变的情况下,输出结果质量的提升:
$$智能 \approx 参数量 \times 思考时间$$
提示词工程
有了思维链,一些以前的Prompt咒语对于普通用户来说变得不那么重要了。不需要写step by step,也不需要“You are c++ expert”。这些废话在模型思考的过程中,反而会成为阻碍,降低输出的质量。
但是,提示词工程依旧是需要的。我们已经知道,模型的所有输出都依赖输入,如果输入的prompt有一些偏差,大模型思考的时候也会在错误的路上越走越远。
所以现在,prompt工程从以前的“咒语型”变成了“定义型”,你需要精准的告诉模型要做什么(what)和约束条件,输入的精准度决定了Reasoning的有效程度。
非思考模型:蒸馏(Distillation)
你可能会问,既然这种思考模型这么强,那DeepSeek V3 chat这种非推理模型,是不是质量就不行了?
答案是否定的。这涉及到另一个关键概念:知识蒸馏(Knowledge Distillation)。
DeepSeek团队的做法是:让R1模型不停的做题,产生海量的推理过程(叫做合成数据),然后拿这些数据去训练V3模型。结果就是V3模型自己不需要推导,但是,他直接背下来了R1的思考模式!
Chat 模型并非没有逻辑,而是它的逻辑被“固化”在了直觉里。在大部分不需要重度推理的场景(例如代码补全,日常对话),chat模型因为跳过了思考过程,速度更快,成本更低,效果也依然出色。
我们平时可以根据需要选择不同的模型:
Think模型:针对复杂的架构设计,数学推理。速度慢
Chat模型:用于代码补全,日常对话。速度快,便宜
支付宝打赏
微信打赏