[译文]理解推理大型语言模型
本文介绍了构建推理模型的四种主要方法,或者说是如何增强大型语言模型(LLM)的推理能力。希望这能为您提供宝贵的见解,并帮助您在这一领域迅速演变的文献和热议中找到方向。
![[译文]理解推理大型语言模型](/content/images/size/w2000/2025/02/0ed64ef6-be0e-4171-9f89-12d66606de44.webp)
本文介绍了构建推理模型的四种主要方法,或者说是如何增强大型语言模型(LLM)的推理能力。希望这能为您提供宝贵的见解,并帮助您在这一领域迅速演变的文献和热议中找到方向。

推理模型的开发正是这种专门化的一种。这意味着我们对大型语言模型进行精炼,使其在需要中间步骤来解决问题的复杂任务上表现出色,例如谜题、高级数学和编程挑战。然而,这种专门化并不能取代其他大型语言模型的应用,因为将一个大型语言模型转变为推理模型也会带来某些缺点,稍后我将进行讨论。
为了让大家对下文内容有一个简要的了解,本文将:
- 解释“推理模型”的含义;
- 讨论推理模型的优缺点;
- 概述 DeepSeek R1 的方法论;
- 描述构建和改进推理模型的四种主要方法;
- 分享 DeepSeek V3 和 R1 发布后对大型语言模型领域的看法;
- 提供在预算紧张的情况下开发推理模型的技巧。
希望本文能在今年 AI 迅速发展的过程中对您有所帮助!
我们如何定义“推理模型”?
如果您从事 AI(或机器学习)工作,您可能对那些含糊且备受争议的定义并不陌生。“推理模型”这一术语也不例外。最终,总会有人在论文中给出正式定义,紧接着又会在下一篇论文中重新定义。
在本文中,我将“推理”定义为回答需要通过中间步骤进行复杂、多步生成的问题的过程。例如,“法国的首都是什么?”这样的事实性问答并不涉及推理。相反,类似“如果一列火车以 60 英里/小时的速度行驶 3 小时,它能走多远?”的问题则需要一些简单的推理,比如需要识别距离、速度和时间之间的关系,才能得出答案。

如今,大多数现代大型语言模型都具备基本的推理能力,能够回答诸如“如果一列火车以 60 英里/小时的速度行驶 3 小时,它能走多远?”这类问题。因此,如今当我们提到推理模型时,通常指那些在更复杂的推理任务(例如解谜、回答谜语以及数学证明)上表现卓越的模型。
此外,现在大多数被称为推理模型的大型语言模型在其响应中都包含“思考”或“推理”过程。至于大型语言模型是否以及如何真正“思考”,那又是另一个话题。
推理模型中的中间步骤可以以两种方式呈现。第一种是显式地包含在回答中,如前图所示;第二种是一些推理大型语言模型(例如 OpenAI 的 o1)在生成回答时采用多次迭代,但中间步骤不对用户展示。

何时需要使用推理模型?
既然我们已经定义了推理模型,接下来就可以讨论更有趣的部分:如何为推理任务构建和改进大型语言模型。但在深入技术细节之前,首先需要考虑何时真正需要推理模型。
什么时候需要推理模型?
推理模型旨在擅长解决复杂任务,例如解谜、高级数学问题和具有挑战性的编程任务。然而,对于诸如摘要、翻译或基于知识的问答等简单任务而言,它们并非必要。事实上,对于所有任务都采用推理模型既低效又昂贵。例如,推理模型通常在使用成本上更高、生成内容更冗长,并且有时由于“过度思考”而更容易出错。同样,基本规则是:针对不同任务使用合适的工具(或大型语言模型类型)。
下面的图总结了推理模型的主要优势和局限性。

简要介绍 DeepSeek 训练流程
在讨论构建和改进推理模型的四种主要方法之前,我想先简要介绍一下 DeepSeek R1 的流程,如 DeepSeek R1 技术报告 中所述。这份报告既是一个有趣的案例研究,也是开发推理大型语言模型的蓝图。
请注意,DeepSeek 并没有发布单一的 R1 推理模型,而是推出了三种不同的变体:DeepSeek-R1-Zero、DeepSeek-R1 和 DeepSeek-R1-Distill。
基于技术报告中的描述,我在下图中总结了这些模型的开发流程。

接下来,我们对上图中的流程做一个简要说明,更多细节将在下一部分中讨论,即构建和改进推理模型的四种主要方法。
(1)DeepSeek-R1-Zero:
该模型基于 2024 年 12 月发布的 671B 预训练 DeepSeek-V3 基础模型。研究团队使用强化学习(RL)和两种奖励机制对其进行训练。这种方法被称为“冷启动”训练,因为它没有包含通常在强化学习(带有人类反馈的 RLHF)中使用的监督微调(SFT)步骤。
(2)DeepSeek-R1:
这是 DeepSeek 的旗舰推理模型,建立在 DeepSeek-R1-Zero 之上。团队在其基础上进一步引入了额外的监督微调阶段和强化学习训练,对“冷启动”的 R1-Zero 模型进行了改进。
(3)DeepSeek-R1-Distill:
利用之前阶段生成的 SFT 数据,DeepSeek 团队对 Qwen 和 Llama 模型进行了微调,以提升它们的推理能力。虽然这并非传统意义上的知识蒸馏,但该过程实际上是利用大型 DeepSeek-R1 671B 模型的输出对较小模型(如 Llama 8B 和 70B 以及 Qwen 1.5B–30B)进行训练。
构建和改进推理模型的四种主要方法
在本节中,我将概述当前用于增强大型语言模型推理能力和构建诸如 DeepSeek-R1、OpenAI 的 o1 与 o3 等专门推理模型的关键技术。
注意: 外界对于 o1 和 o3 的具体工作原理知之甚少。不过,据传它们可能采用了推理与训练技术的组合。
1) 推理时扩展(Inference-time scaling)
提升大型语言模型推理能力(或任何能力)的一个方法是推理时扩展。这个术语可以有多种含义,但在这里它指的是在推理过程中增加计算资源以改善输出质量。
一个粗略的类比是:人类在解决复杂问题时如果有更多的思考时间,往往能给出更好的答案。同样,我们可以应用某些技术,促使大型语言模型在生成答案时“多思考”。(尽管大型语言模型是否真的“思考”另当别论。)
一种直接的推理时扩展方法是巧妙的提示工程。一个经典的例子是链式思考(Chain-of-Thought, CoT)提示,在输入提示中加入诸如“分步思考”之类的短语。这鼓励模型生成中间推理步骤,而不是直接跳到最终答案,这通常(但不总是)能在更复杂的问题上产生更准确的结果。(需要注意,对于“法国的首都是什么?”这类简单的基于知识的问题,采用这种策略并不合适。)

上述 CoT 方法可以视为推理时扩展,因为它通过生成更多的输出 token 来使推理过程更昂贵。
另一种推理时扩展方法是使用投票和搜索策略。一个简单的例子是多数投票法,即让大型语言模型生成多个答案,然后通过多数投票选择正确答案。类似地,我们还可以使用束搜索(beam search)及其他搜索算法来生成更好的回答。
我强烈推荐阅读论文 Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters,该论文在我之前的《2024 年值得关注的 AI 研究论文(第二部分)》文章中有详细描述(https://magazine.sebastianraschka.com/p/ai-research-papers-2024-part-2),以了解更多关于这些不同策略的细节。

DeepSeek R1 技术报告指出,其模型并未使用推理时扩展。不过,这种技术通常是在大型语言模型的应用层实现,因此 DeepSeek 可能在其应用中使用了这一方法。
我怀疑 OpenAI 的 o1 和 o3 模型使用了推理时扩展,这也解释了为什么它们相比 GPT-4o 每个 token 的成本较高。除了推理时扩展外,o1 和 o3 很可能也采用了与 DeepSeek R1 类似的 RL 流程。关于强化学习,后面两个部分会有更多讨论。
2) 纯强化学习(Pure Reinforcement Learning, RL)
在 DeepSeek R1 论文中,我个人最欣赏的一点是他们发现推理能力可以作为纯强化学习的一个行为自发地出现。下面我们详细探讨这一点。
正如前文所述,DeepSeek 开发了三种 R1 模型。第一种 DeepSeek-R1-Zero 是基于 DeepSeek-V3 基础模型开发的,该模型是 DeepSeek 团队在 2024 年 12 月发布的标准预训练大型语言模型。与通常在 RL 流程中,在进行 RL 前需要先做监督微调(SFT)不同,DeepSeek-R1-Zero 完全采用强化学习进行训练,没有进行初始的 SFT 阶段,这也是下图中所强调的“冷启动”训练过程。

尽管这一 RL 流程与通常用于偏好微调大型语言模型的 RLHF 流程类似(我在文章 LLM Training: RLHF and Its Alternatives 中有更详细的讨论),但正如上文提到的,DeepSeek-R1-Zero 的关键区别在于他们跳过了用于指令调优的监督微调(SFT)阶段。因此,他们称之为“纯 RL”。(不过需要注意的是,在大型语言模型的背景下,RL 与传统强化学习有很大不同,这里暂不展开讨论。)
在奖励机制方面,他们没有使用基于人类偏好的奖励模型,而是采用了两种奖励:准确性奖励和格式奖励。
- 准确性奖励 利用 LeetCode 编译器来验证编程答案,并使用确定性系统来评估数学问题的回答。
- 格式奖励 则依赖于一个大型语言模型评审来确保回答符合预期格式,例如将推理步骤置于
<think>
标签内。
令人惊讶的是,这种方法足以让大型语言模型发展出基本的推理能力。研究人员观察到一个“顿悟”时刻,即模型开始在回答中生成推理痕迹,尽管它并未经过专门的推理训练,如下图所示。

虽然 R1-Zero 并不是性能最顶尖的推理模型,但它通过生成中间“思考”步骤证明了其具备推理能力。这证明了仅通过纯 RL 也可以开发出具备推理能力的模型,而 DeepSeek 团队正是第一个展示(或至少公开发表)这种方法的团队。
3) 监督微调与强化学习相结合(SFT + RL)
接下来,我们来看一下 DeepSeek-R1——DeepSeek 的旗舰推理模型的开发过程,它可以作为构建推理模型的蓝图。该模型在 DeepSeek-R1-Zero 的基础上,进一步通过增加监督微调(SFT)和强化学习(RL)阶段来提升推理性能。
实际上,在 RLHF 标准流程中,通常会先进行监督微调(SFT)再进行 RL。OpenAI 的 o1 很可能也是采用了类似的方法。

如上图所示,DeepSeek 团队首先利用 DeepSeek-R1-Zero 生成了他们所称的“冷启动” SFT 数据。“冷启动”这一术语指的是这些数据是由尚未经过任何监督微调(SFT)的 DeepSeek-R1-Zero 生成的。
接着,利用这批冷启动 SFT 数据,DeepSeek 对模型进行了指令调优(instruction fine-tuning),随后又进行了另一阶段的强化学习(RL)。在这一 RL 阶段,他们保留了 DeepSeek-R1-Zero RL 流程中使用的相同的准确性和格式奖励,但他们增加了一项一致性奖励以防止语言混杂,即防止模型在同一回答中混用多种语言。
之后,团队又进行了一轮 SFT 数据的收集。在这一阶段,他们使用最新的模型检查点生成了 600K 的链式思考(CoT) SFT 示例,同时利用 DeepSeek-V3 基础模型生成了另外 200K 个基于知识的 SFT 示例。
这 600K 加 200K 个 SFT 样本随后被用于另一轮 RL。在这一阶段,他们再次对数学和编程问题使用基于规则的准确性奖励,而对于其他类型的问题则使用人类偏好标签。
最终,经过额外的 SFT 和 RL 阶段后,DeepSeek-R1 相比 DeepSeek-R1-Zero 有了显著的性能提升,如下表所示。

4) 纯监督微调(SFT)与蒸馏(Distillation)
到目前为止,我们已经讨论了构建和改进推理模型的三种主要方法:
- 推理时扩展 —— 一种无需训练或修改底层模型即可提升推理能力的方法;
- 纯强化学习(RL) —— 如 DeepSeek-R1-Zero 所示,通过纯 RL 也能使推理能力自发出现;
- 监督微调加强化学习(SFT + RL) —— 这正是构建高性能推理模型的常用方法,也是 DeepSeek-R1 的开发路径。
那么,剩下的是什么呢?模型“蒸馏”。
令人惊讶的是,DeepSeek 同时也发布了通过一种被称为“蒸馏”的过程训练出来的小型模型。然而,在大型语言模型的语境下,蒸馏不一定遵循深度学习中传统的知识蒸馏方法。传统上(正如我在《机器学习 Q and AI》一书第6章中简要描述的那样),在知识蒸馏过程中,小型学生模型会在大型教师模型的 logits 和目标数据集上进行训练。
而在这里,蒸馏指的是对较小的语言模型(例如 Llama 8B 和 70B 以及 Qwen 2.5 模型(从 0.5B 到 32B))进行指令调优,使用的数据集正是由更大型的 DeepSeek-V3 以及 DeepSeek-R1 中间检查点生成的 SFT 数据。实际上,这一蒸馏过程中所使用的 SFT 数据与前文描述的用于训练 DeepSeek-R1 的数据完全相同。
为了更清楚地说明这一过程,下图突出了 DeepSeek R1 开发流程中的蒸馏部分。

为什么开发这些经过蒸馏的模型?我认为有两个关键原因:
- 较小的模型更高效。这意味着它们运行成本更低,而且能在低端硬件上运行,这对许多研究人员和爱好者来说尤其具有吸引力。
- 纯 SFT 的案例研究。这些经过蒸馏的模型为我们展示了,仅靠纯监督微调(SFT)在没有强化学习的情况下,模型能达到多高的性能。
下表将这些经过蒸馏的模型与其他流行模型以及 DeepSeek-R1-Zero 和 DeepSeek-R1 进行了性能比较。

基准测试比较图:经过蒸馏的模型与未经过蒸馏的模型对比。摘自 DeepSeek-R1 技术报告 (https://arxiv.org/abs/2501.12948)。%E3%80%82)
可以看出,尽管经过蒸馏的模型明显弱于 DeepSeek-R1,但与 DeepSeek-R1-Zero 相比,它们的表现却相当出色,且参数规模小了好几个数量级。同样有趣的是,这些模型与 o1 mini 的表现也不相上下(我怀疑 o1-mini 可能本质上也是 o1 的一个经过蒸馏的版本)。
为了全面起见,还值得提及另外一个有趣的比较。DeepSeek 团队测试了在较小模型中是否也能通过纯 RL 训练出现类似于 DeepSeek-R1-Zero 中所观察到的推理行为。为此,他们直接将 DeepSeek-R1-Zero 中的纯 RL 方法应用于 Qwen-32B 模型。
下表总结了这一实验的结果,其中 QwQ-32B-Preview 作为基于 Qwen 2.5 32B 开发的参考推理模型(据我了解,Qwen 团队从未披露其具体的训练细节)。这一比较为我们提供了额外的见解,即纯 RL 是否能够在远小于 DeepSeek-R1-Zero 的模型中诱发推理能力。

有意思的是,结果表明,对于较小模型来说,蒸馏远比纯 RL 更为有效。这与这样一个观点相吻合:仅靠 RL 可能不足以在这种规模的模型中诱发强大的推理能力,而在高质量推理数据上的监督微调(SFT)则是一种更有效的策略。
为了更全面起见,还可以做以下比较:
- 用 SFT + RL 训练 Qwen-32B,类似于 DeepSeek-R1 的开发流程。这有助于确定相对于纯 RL 和纯 SFT,当 RL 与 SFT 结合时能提高多少性能。
- 用纯 SFT 训练 DeepSeek-V3,类似于蒸馏模型的创建过程。这样可以直接比较 RL + SFT 相对于纯 SFT 的效果。
结论
在本节中,我们探讨了构建和改进推理模型的四种不同策略:
- 推理时扩展 不需要额外的训练,但会增加推理成本,随着用户数量或查询量的增加,其大规模部署会变得更昂贵。不过,对于已经较强的模型来说,这是提升性能的必然选择。我强烈怀疑 o1 就采用了推理时扩展,这也解释了为什么它在每个 token 的成本上比 DeepSeek-R1 更高。
- 纯 RL 在研究上非常有趣,因为它展示了推理作为一种自发行为的产生过程。然而,在实际模型开发中,结合 RL 与 SFT 的方法更为常用,因为它能产生更强的推理模型。我也强烈怀疑 o1 也是通过 RL + SFT 训练而成。更具体地说,我认为 o1 的基础模型可能比 DeepSeek-R1 要弱一些,但通过 RL + SFT 和推理时扩展得到了补偿。
- 正如上文所述,RL + SFT 是构建高性能推理模型的关键方法。DeepSeek-R1 是一个很好的蓝图,展示了如何实现这一点。
- 蒸馏 是一种很有吸引力的方法,特别适用于创建更小、更高效的模型。不过,其局限性在于蒸馏并不推动创新,也无法产生下一代推理模型。例如,蒸馏总是依赖于现有更强大的模型来生成监督微调(SFT)数据。
我预期未来会看到的一个有趣方向是将 RL + SFT(方法3)与推理时扩展(方法1)相结合。这很可能正是 OpenAI o1 的做法,尽管其可能基于一个比 DeepSeek-R1 更弱的基础模型,这也解释了为什么 DeepSeek-R1 在保持较低推理成本的同时表现出色。
关于 DeepSeek R1 的一些看法
近几周,很多人询问我对 DeepSeek-R1 模型的看法。简而言之,我认为它是一个了不起的成就。作为一名研究工程师,我特别欣赏那份详细的技术报告,从中可以学到很多方法论知识。
其中最吸引人的发现之一是,推理能力竟然可以作为纯 RL 的一种行为自发地出现。而且,令人印象深刻的是 DeepSeek 以开放源代码的 MIT 许可发布了他们的模型,其限制甚至比 Meta 的 Llama 模型还宽松。
它与 o1 相比如何?
DeepSeek-R1 是否优于 o1?我认为两者大致处于同一水平。不过,值得注意的是,DeepSeek-R1 在推理时更加高效。这表明 DeepSeek 可能在训练过程中投入更多,而 OpenAI 可能更多地依赖于推理时扩展来提升 o1 的表现。
但话说回来,直接比较 o1 和 DeepSeek-R1 仍然存在困难,因为 OpenAI 并未公开 o1 的许多细节。例如,我们不知道:
- o1 是否也是一种专家混合模型(MoE);
- o1 的规模有多大;
- o1 是否只是 GPT-4o 的略加改进版本,通过少量 RL + SFT 加上大量推理时扩展来实现?
在不了解这些细节的情况下,直接比较就像是将苹果和橙子进行比较。
DeepSeek-R1 的训练成本
另一个讨论点是 DeepSeek-R1 的开发成本。有些人提到其训练成本大约为 600 万美元,但他们很可能混淆了 DeepSeek-V3(去年 12 月发布的基础模型)和 DeepSeek-R1。
600 万美元的估算基于假设每 GPU 小时 2 美元,以及 DeepSeek-V3 最终训练运行所需的 GPU 小时数,这一数据最初在 2024 年 12 月时曾被讨论过。
不过,DeepSeek 团队从未披露过 R1 的确切 GPU 小时数或开发成本,因此任何成本估算都仅仅是猜测。
无论如何,DeepSeek-R1 终归是开放权重推理模型的一大里程碑,其在推理时的高效性使其成为 OpenAI o1 的一个有趣替代方案。
在有限预算下开发推理模型
即便是从像 DeepSeek-V3 这样的开放权重基础模型出发,开发一个达到 DeepSeek-R1 水平的推理模型也可能需要数十万乃至数百万美元。这对于预算有限的研究人员或工程师来说无疑是一大挑战。
好消息:蒸馏方法能大有作为
幸运的是,模型蒸馏提供了一种更具成本效益的替代方案。DeepSeek 团队在他们的 R1 蒸馏模型中证明了这一点,这些模型尽管远小于 DeepSeek-R1,却能达到令人惊讶的推理性能。不过,即便是这种方法也并非完全便宜,他们的蒸馏过程中使用了 80 万个 SFT 样本,这仍需要相当大的计算资源。
有趣的是,就在 DeepSeek-R1 发布前几天,我看到一篇关于 Sky-T1 的文章,这是一个由小团队使用仅 17K 个 SFT 样本训练一个开放权重 32B 模型的项目。总成本?仅 450 美元,比大多数 AI 会议的注册费还低。
这一例子表明,虽然大规模训练依然昂贵,但针对性的小规模微调工作依然能以极低的成本取得令人印象深刻的成果。

根据基准测试,Sky-T1 的表现大致与 o1 持平,这在其低廉的训练成本下显得尤为出色。
低成本下的纯 RL:TinyZero
在 Sky-T1 专注于模型蒸馏的同时,我还发现了纯 RL 领域的一些有趣工作。其中一个值得注意的例子是 TinyZero,这是一个拥有 3B 参数的模型,其训练方法复制了 DeepSeek-R1-Zero 的思路(顺便提一下,其训练成本不到 30 美元)。
令人惊讶的是,即使只有 3B 参数,TinyZero 也展现出一定的自我验证能力,这支持了通过纯 RL 即使在小模型中也能产生推理能力的观点。
TinyZero 的 项目仓库 提到研究报告仍在撰写中,我一定会密切关注其后续细节。

上述两个项目表明,即使在预算有限的情况下,也可以在推理模型领域取得令人感兴趣的进展。虽然这两种方法都是对 DeepSeek-R1 方法的复制——一个侧重于纯 RL(TinyZero),另一个侧重于纯 SFT(Sky-T1)——但进一步探索如何扩展这些思路仍将非常有趣。
超越传统 SFT:Journey Learning
我去年还看到一篇特别有趣的论文,描述了一种不同于传统蒸馏(纯 SFT)过程的改进方法。论文为 O1 Replication Journey: A Strategic Progress Report – Part 1(尽管标题如此,但论文并非在复现 o1,而是提出了一种改进纯 SFT 蒸馏过程的新方法)。
论文中的关键思想是“旅程学习”(journey learning),作为对“捷径学习”(shortcut learning)的替代。
- 捷径学习指的是传统指令微调中仅使用正确解决路径进行训练的方法;
- 而旅程学习则包括了错误解决路径,让模型能从错误中学习。
这种方法与 TinyZero 纯 RL 训练中观察到的自我验证能力有一定联系,但它完全依靠 SFT 来改进模型。通过让模型接触到错误的推理路径及其纠正,旅程学习可能会进一步强化模型的自我纠正能力,从而使推理模型更为可靠。

这可能成为未来工作的一个令人激动的方向,尤其适用于预算有限的推理模型开发场景,因为在这种情况下,基于 RL 的方法可能在计算上难以实现。
总之,关于推理模型的相关工作目前正如火如荼地进行中,我相信未来几个月还会有更多令人兴奋的成果!