摘要
DeepSeek-R1-Zero 是一个通过大规模强化学习(RL)训练的模型,未经过监督微调(SFT)的初步步骤,展现了卓越的推理能力。通过 RL,DeepSeek-R1-Zero 自然形成了许多强大且有趣的推理行为。然而,它面临着可读性差和语言混合等挑战。
DeepSeek-R1,该模型在 RL 之前引入了多阶段训练和冷启动数据。
引言
后训练已成为完整训练流程的重要组成部分。研究表明,它能够提高推理任务的准确性,与社会价值观对齐,并适应用户偏好,同时相比预训练所需的计算资源相对较少。在推理能力方面,OpenAI 的 o1 系列模型首次引入了推理过程中的推理时间扩展,通过增加链式思维推理过程的长度,显著提高了数学、编码和科学推理等多种推理任务的表现。然而,如何有效地进行测试时扩展仍然是研究界的一个开放问题。此前的一些研究探讨了多种方法,包括基于过程的奖励模型(Lightman 等,2023;Uesato 等,2022;Wang 等,2023)、强化学习(Kumar 等,2024),以及如蒙特卡洛树搜索和束搜索等搜索算法(Feng 等,2024;Trinh 等,2024;Xin 等,2024)。然而,这些方法均未能达到与 OpenAI 的 o1 系列模型相当的通用推理性能。
在本文中,我们迈出了利用**纯强化学习(RL)**提高语言模型推理能力的第一步。我们的目标是探索 LLM 在没有任何监督数据的情况下,发展推理能力的潜力,集中关注其通过纯 RL 过程的自我演化。具体而言,我们以 DeepSeek-V3-Base 作为基础模型,采用 GRPO(Shao 等,2024)作为 RL 框架,以改善模型在推理方面的表现。在训练过程中,DeepSeek-R1-Zero 自然形成了诸多强大且有趣的推理行为。在经过数千次 RL 步骤后,DeepSeek-R1-Zero 在推理基准测试中表现突出。例如,AIME 2024 的 pass@1 分数从 15.6% 提高到 71.0%,通过多数投票,分数进一步提升至 86.7%,与 OpenAI-o1-0912 的表现相匹配。
然而,DeepSeek-R1-Zero 面临可读性差和语言混合等挑战。为了解决这些问题并进一步提升推理性能,我们推出了 DeepSeek-R1,该模型引入了一小部分冷启动数据和多阶段训练流程。具体来说,我们首先收集了数千条冷启动数据,以微调 DeepSeek-V3-Base 模型。随后,我们进行类似 DeepSeek-R1-Zero 的推理导向 RL。在 RL 过程接近收敛时,我们通过拒绝采样在 RL 检查点上创建新的 SFT 数据,并结合来自 DeepSeek-V3 在写作、事实问答和自我认知等领域的监督数据,重新训练 DeepSeek-V3-Base 模型。经过新数据的微调后,检查点再经过一次 RL 过程,考虑到所有场景的提示。经过这些步骤,我们获得了称为 DeepSeek-R1 的检查点,其性能与 OpenAI-o1-1217 相当。
我们进一步探讨从 DeepSeek-R1 蒸馏出更小的密集模型。以 Qwen2.5-32B(Qwen, 2024b)作为基础模型,从 DeepSeek-R1 进行直接蒸馏的性能优于对其进行 RL。此结果表明,大型基础模型发现的推理模式对于提升推理能力至关重要。我们开源了蒸馏后的 Qwen 和 Llama(Dubey 等,2024)系列。值得注意的是,我们蒸馏的 14B 模型在推理基准测试中大幅超越了最先进的开源 QwQ-32B-Preview(Qwen, 2024a),而蒸馏的 32B 和 70B 模型在密集模型中创下了新的推理基准记录。
贡献
后训练:在基础模型上进行大规模强化学习
我们直接在基础模型上应用强化学习(RL),而不依赖于监督微调(SFT)作为初步步骤。这种方法使模型能够探索链式思维(CoT)以解决复杂问题,从而发展出 DeepSeek-R1-Zero。DeepSeek-R1-Zero 展示了自我验证、反思和生成长链式思维的能力,标志着研究社区的重要里程碑。值得注意的是,这是首次开放研究验证大型语言模型(LLM)的推理能力可以仅通过 RL 激励,而无需 SFT。这一突破为该领域未来的进展铺平了道路。
我们介绍了开发 DeepSeek-R1 的流程。该流程包含两个 RL 阶段,旨在发现改进的推理模式并与人类偏好对齐,以及两个 SFT 阶段,作为模型推理和非推理能力的基础。我们相信,这一流程将通过创建更好的模型为行业带来益处。
蒸馏:小模型同样强大
我们展示了大型模型的推理模式可以被蒸馏到更小的模型中,从而实现比通过 RL 在小模型上发现的推理模式更好的性能。开源的 DeepSeek-R1 及其 API 将使研究社区受益,以便在未来蒸馏出更好的小模型。
使用由 DeepSeek-R1 生成的推理数据,我们微调了多个在研究社区广泛使用的密集模型。评估结果表明,蒸馏出的较小密集模型在基准测试中表现出色。DeepSeek-R1-Distill-Qwen-7B 在 AIME 2024 上达到了 55.5%,超越了 QwQ-32B-Preview。此外,DeepSeek-R1-Distill-Qwen-32B 在 AIME 2024 上得分为 72.6%,在 MATH-500 上得分为 94.3%,在 LiveCodeBench 上得分为 57.2%。这些结果显著超越了之前的开源模型,且与 o1-mini 相当。我们将基于 Qwen2.5 和 Llama3 系列的蒸馏模型(1.5B、7B、8B、14B、32B 和 70B)开源给社区。
评估结果摘要
推理任务:
DeepSeek-R1 在 AIME 2024 上达到了 79.8% 的 Pass@1 分数,稍微超过 OpenAI-o1-1217。在 MATH-500 中,它取得了令人印象深刻的 97.3% 分数,表现与 OpenAI-o1-1217 相当,并显著超越其他模型。
在编码相关任务中,DeepSeek-R1 在代码竞赛任务中表现出专家水平,Codeforces 的 Elo 评分达到了 2,029,超越了 96.3% 的人类参与者。在工程相关任务中,DeepSeek-R1 的表现略优于 DeepSeek-V3,这可能有助于开发者在现实世界中的任务。
知识:
在 MMLU、MMLU-Pro 和 GPQA Diamond 等基准测试中,DeepSeek-R1 取得了优异的成绩,显著超越了 DeepSeek-V3,分别得分 90.8%(MMLU)、84.0%(MMLU-Pro)和 71.5%(GPQA Diamond)。尽管在这些基准上的表现稍低于 OpenAI-o1-1217,但 DeepSeek-R1 超越了其他闭源模型,展现了其在教育任务中的竞争优势。在事实基准 SimpleQA 上,DeepSeek-R1 也超越了 DeepSeek-V3,展示了其处理基于事实查询的能力。在这一基准上,OpenAI-o1 的表现亦超过了 4o。
其他:
DeepSeek-R1 在创意写作、一般问答、编辑、摘要等多种任务中表现出色。在 AlpacaEval 2.0 上,它实现了 87.6% 的长度控制胜率,在 ArenaHard 上胜率为 92.3%,展示了其智能处理非考试导向查询的强大能力。此外,DeepSeek-R1 在需要长上下文理解的任务上表现杰出,显著超越了 DeepSeek-V3 的长上下文基准测试。
方法
概述
以往的研究大多依赖大量的监督数据来提升模型性能。在本研究中,我们证明,即使在没有使用监督微调(SFT)作为冷启动的情况下,通过大规模强化学习(RL)仍可以显著提高模型的推理能力。此外,引入少量的冷启动数据还能进一步提升性能。在接下来的部分中,我们将介绍:(1)DeepSeek-R1-Zero,它直接在基础模型上应用强化学习而无需任何监督微调数据;(2)DeepSeek-R1,它从经过数千个长链式推理(CoT)示例微调的检查点开始应用强化学习;(3)将DeepSeek-R1的推理能力蒸馏到小型密集模型中。
DeepSeek-R1-Zero:在基础模型上的强化学习
强化学习在推理任务中已展现出显著的有效性,这在我们先前的研究中得到了验证(Shao等,2024;Wang等,2023)。然而,这些研究严重依赖于监督数据,而这些数据的收集非常耗时。在本节中,我们探索了大型语言模型(LLMs)在没有任何监督数据的情况下发展推理能力的潜力,重点关注它们通过纯强化学习过程的自我进化。我们将首先简要概述我们的强化学习算法,随后展示一些令人振奋的结果,并希望这些能为研究社区提供有价值的见解。
强化学习算法
分组相对策略优化:为了节省强化学习的训练成本,我们采用了分组相对策略优化(Group Relative Policy Optimization, GRPO)(Shao等,2024)。该方法摒弃了通常与策略模型大小相同的评论家模型,而是通过分组得分来估计基线值。具体来说,对于每个问题 𝑞,GRPO 从旧策略 中采样一组输出
o
1
,
o
2
,
.
.
.
,
o
G
{o_1,o_2,...,o_G}
o1,o2,...,oG,然后通过最大化以下目标函数来优化策略模型
π
θ
\pi_{\theta}
πθ:
J
G
R
P
O
(
θ
)
=
E
[
q
∼
P
(
Q
)
,
{
o
i
}
i
=
1
G
∼
π
θ
old
(
O
∣
q
)
]
1
G
∑
i
=
1
G
(
min
(
π
θ
(
o
i
∣
q
)
π
θ
old
(
o
i
∣
q
)
A
i
,
clip
(
π
θ
(
o
i
∣
q
)
π
θ
o
l
d
(
o
i
∣
q
)
,
1
−
ε
,
1
+
ε
)
A
i
)
−
β
D
K
L
(
π
θ
∥
π
r
e
f
)
)
,
\begin{aligned} \mathcal{J}_{G R P O}(\theta) & =\mathbb{E}\left[q \sim P(Q),\left\{o_{i}\right\}_{i=1}^{G} \sim \pi_{\theta_{\text {old }}}(O \mid q)\right] \\ & \frac{1}{G} \sum_{i=1}^{G}\left(\min \left(\frac{\pi_{\theta}\left(o_{i} \mid q\right)}{\pi_{\theta_{\text {old }}}\left(o_{i} \mid q\right)} A_{i}, \operatorname{clip}\left(\frac{\pi_{\theta}\left(o_{i} \mid q\right)}{\pi_{\theta_{o l d}}\left(o_{i} \mid q\right)}, 1-\varepsilon, 1+\varepsilon\right) A_{i}\right)-\beta \mathbb{D}_{K L}\left(\pi_{\theta} \| \pi_{r e f}\right)\right), \end{aligned}
JGRPO(θ)=E[q∼P(Q),{oi}i=1G∼πθold (O∣q)]G1i=1∑G(min(πθold (oi∣q)πθ(oi∣q)Ai,clip(πθold(oi∣q)πθ(oi∣q),1−ε,1+ε)Ai)−βDKL(πθ∥πref)),
D
K
L
(
π
θ
∣
π
r
e
f
)
=
π
r
e
f
(
o
i
∣
q
)
π
θ
(
o
i
∣
q
)
−
log
π
r
e
f
(
o
i
∣
q
)
π
θ
(
o
i
∣
q
)
−
1
,
\mathbb{D}_{K L}\left(\pi_{\theta} \mid \pi_{r e f}\right)=\frac{\pi_{r e f}\left(o_{i} \mid q\right)}{\pi_{\theta}\left(o_{i} \mid q\right)}-\log \frac{\pi_{r e f}\left(o_{i} \mid q\right)}{\pi_{\theta}\left(o_{i} \mid q\right)}-1,
DKL(πθ∣πref)=πθ(oi∣q)πref(oi∣q)−logπθ(oi∣q)πref(oi∣q)−1,
其中,
D
K
L
\mathbb{D}_{KL}
DKL是 KL 散度,用于控制策略更新的步幅,
ε
\varepsilon
ε是裁剪参数,用于限制策略更新的范围,
β
\beta
β 是 KL 散度的权重系数。
A
i
A_i
Ai是优势函数,计算一组奖励
r
1
,
r
2
,
⋯
,
r
G
{r_1,r_2, \cdots, r_G}
r1,r2,⋯,rG更具每一轮的输出
A
i
=
r
i
−
mean
(
{
r
1
,
r
2
,
⋯
,
r
G
}
)
std
(
{
r
1
,
r
2
,
⋯
,
r
G
}
)
A_{i}=\frac{r_{i}-\operatorname{mean}\left(\left\{r_{1}, r_{2}, \cdots, r_{G}\right\}\right)}{\operatorname{std}\left(\left\{r_{1}, r_{2}, \cdots, r_{G}\right\}\right)}
Ai=std({r1,r2,⋯,rG})ri−mean({r1,r2,⋯,rG})
奖励建模
奖励是训练信号的来源,它决定了强化学习的优化方向。为了训练 DeepSeek-R1-Zero,我们采用了一种基于规则的奖励系统,主要包括两种类型的奖励:
准确性奖励:准确性奖励模型评估响应是否正确。例如,对于具有确定性结果的数学问题,模型需要以指定格式(如在框中)提供最终答案,从而能够通过规则可靠地验证其正确性。类似地,对于 LeetCode 问题,可以使用编译器根据预定义的测试用例生成反馈。
格式奖励:除了准确性奖励模型之外,我们还采用了一种格式奖励模型,强制要求模型将其思考过程放在 和 标签之间。
在开发 DeepSeek-R1-Zero 的过程中,我们并未使用基于神经网络的最终结果或过程奖励模型,因为我们发现神经网络奖励模型在大规模强化学习过程中可能会遭遇奖励欺骗问题,而重新训练奖励模型需要额外的训练资源,这会使整个训练流程变得复杂。
训练模板
为了训练 DeepSeek-R1-Zero,我们首先设计了一个简单的模板,指导基础模型遵循我们指定的指令。正如表 1 所示,该模板要求 DeepSeek-R1-Zero 首先生成一个推理过程,随后再给出最终答案。我们有意将约束限制在这种结构化格式上,避免引入任何内容相关的偏见——例如强制要求反思性推理或推广特定的问题解决策略——以确保我们能够在强化学习过程中准确观察模型的自然进展。
DeepSeek-R1-Zero 的性能、自我进化过程与“顿悟”时刻
DeepSeek-R1-Zero 的性能
图 2 描绘了 DeepSeek-R1-Zero 在 AIME 2024 基准测试中的性能表现随强化学习(RL)训练过程的变化轨迹。如图所示,随着 RL 训练的推进,DeepSeek-R1-Zero 展示出稳定且持续的性能提升。特别是在 AIME 2024 上的平均 pass@1 得分显著提高,从最初的 15.6% 跃升至令人印象深刻的 71.0%,达到了与 OpenAI-o1-0912 相媲美的性能水平。这一显著提升凸显了我们的 RL 算法在优化模型性能方面的有效性。
表 2 提供了 DeepSeek-R1-Zero 与 OpenAI 的 o1-0912 模型在多种推理相关基准测试中的对比分析。研究结果表明,RL 使 DeepSeek-R1-Zero 无需任何监督微调数据即能获得强大的推理能力。这是一项值得注意的成就,因为它强调了模型仅通过 RL 学习和泛化的有效性。此外,通过应用多数投票法,DeepSeek-R1-Zero 的性能还能进一步提升。例如,在 AIME 基准测试中使用多数投票法后,DeepSeek-R1-Zero 的性能从 71.0% 提升至 86.7%,从而超越了 OpenAI-o1-0912 的表现。DeepSeek-R1-Zero 无论是否使用多数投票法都能取得如此有竞争力的性能,这突显了其强大的基础能力及其在推理任务中进一步发展的潜力。
DeepSeek-R1-Zero 的自我进化过程
DeepSeek-R1-Zero 的自我进化过程是一个引人入胜的示例,展示了 RL 如何驱动模型自主提升其推理能力。通过直接从基础模型启动 RL,我们能够在不受监督微调阶段影响的情况下,密切观察模型的进展。这种方法清晰地展示了模型如何随着时间的推移而进化,尤其是在处理复杂推理任务的能力方面。
如图 3 所示,DeepSeek-R1-Zero 的“思考时间”在整个训练过程中表现出持续改进。这种改进并非来自外部调整,而是模型内部固有发展的结果。DeepSeek-R1-Zero 通过利用更长的测试时间计算,自然地获得了解决日益复杂推理任务的能力。这种计算范围从生成数百到数千个推理标记,使模型能够更深入地探索和完善其思考过程。
这种自我进化过程中最显著的一个方面是,随着测试时间计算的增加,模型会自发地表现出复杂的行为。例如,反思(模型重新审视和评估其先前的步骤)以及探索替代问题解决方法的行文,并非显式编程的结果,而是模型与强化学习环境交互的自然产物。这种自发性发展显著增强了 DeepSeek-R1-Zero 的推理能力,使其能够以更高的效率和准确性应对更具挑战性的任务。
DeepSeek-R1-Zero 的“顿悟”时刻
在 DeepSeek-R1-Zero 的训练过程中,观察到一个特别有趣的现象——“顿悟”时刻。如表 3 所示,这一时刻发生在模型的中间版本中。在这一阶段,DeepSeek-R1-Zero 学会通过重新评估其初始方法为问题分配更多的思考时间。这种行为不仅证明了模型推理能力的增长,也为强化学习如何产生意外且复杂的结果提供了一个引人入胜的例证。
这一时刻不仅是模型的“顿悟”,也是观察其行为的研究人员的“顿悟”。它突显了强化学习的力量与魅力:我们并非明确地教导模型如何解决问题,而是为其提供了正确的激励,使其自主发展出高级的问题解决策略。“顿悟”时刻有力地提醒了 RL 在解锁人工智能系统新智能水平方面的潜力,为未来开发更自主和适应性更强的模型铺平了道路。
DeepSeek-R1-Zero 的缺点
尽管 DeepSeek-R1-Zero 表现出强大的推理能力,并自主发展出意外且高效的推理行为,但它仍面临一些问题。例如,DeepSeek-R1-Zero 在处理可读性差和语言混合等挑战时表现不佳。为了使推理过程更易读并能够与开放社区分享,我们探索了 DeepSeek-R1,这是一种结合了对人类友好的冷启动数据与 RL 的方法。
DeepSeek-R1:带冷启动的强化学习
受 DeepSeek-R1-Zero 出色成果的启发,两个自然而然的问题随之而来:1)通过引入少量高质量数据作为冷启动,能否进一步提升推理性能或加速收敛?2)如何训练一个用户友好的模型,使其不仅能生成清晰连贯的链式推理(CoT),还能展现出强大的通用能力?为了解决这些问题,我们设计了一个训练 DeepSeek-R1 的流程。该流程包括以下四个阶段。
冷启动
与 DeepSeek-R1-Zero 不同,为了避免从基础模型开始的 RL 训练初期不稳定的冷启动阶段,我们为 DeepSeek-R1 构建并收集了少量长链式推理(CoT)数据来微调模型,作为初始的 RL 策略模型。为了收集这些数据,我们探索了多种方法:使用长 CoT 示例进行少样本提示、直接提示模型生成包含反思和验证的详细答案、收集 DeepSeek-R1-Zero 的可读格式输出,以及通过人工标注者进行后处理以优化结果。
在本研究中,我们收集了数千条冷启动数据来微调 DeepSeek-V3-Base,作为 RL 的起点。与 DeepSeek-R1-Zero 相比,冷启动数据的优势包括:
- 可读性:DeepSeek-R1-Zero 的一个关键局限是其内容通常不适合阅读。响应可能混合多种语言,或缺乏用于突出答案的Markdown 格式化。相比之下,在为 DeepSeek-R1创建冷启动数据时,我们设计了一种可读的模式,包括在每个响应末尾添加总结,并过滤掉不便于读者理解的内容。在我们的设计中,输出格式定义为
|special_token|<reasoning_process>|special_token|<summary>
,其中reasoning_process 是查询的 CoT,summary 用于总结推理结果。 - 潜力:通过利用人类先验知识精心设计冷启动数据的模式,我们观察到其性能优于
DeepSeek-R1-Zero。我们相信,迭代训练是推理模型更优的发展路径。
面向推理的强化学习
在对冷启动数据微调 DeepSeek-V3-Base 后,我们采用了与 DeepSeek-R1-Zero 相同的大规模强化学习训练流程。这一阶段的重点是增强模型的推理能力,尤其是在编码、数学、科学和逻辑推理等以明确问题与解决方案为特点的推理密集型任务中。在训练过程中,我们观察到链式推理(CoT)经常出现语言混合现象,特别是当 RL 提示涉及多种语言时。为了缓解语言混合问题,我们在 RL 训练中引入了语言一致性奖励,该奖励基于 CoT 中目标语言词汇的比例计算。尽管消融实验表明这种对齐会导致模型性能轻微下降,但这种奖励更符合人类偏好,使内容更具可读性。最终,我们将推理任务的准确性与语言一致性奖励直接相加,形成最终奖励。随后,我们在微调后的模型上应用 RL 训练,直到其推理任务达到收敛。
拒绝采样与监督微调
当面向推理的 RL 收敛后,我们利用生成的检查点收集监督微调(SFT)数据,用于下一轮训练。与初始冷启动数据主要关注推理不同,这一阶段纳入了其他领域的数据,以增强模型在写作、角色扮演和其他通用任务中的能力。具体来说,我们按以下方式生成数据并微调模型。
推理数据
我们精心挑选推理提示,并通过从上述 RL 训练的检查点执行拒绝采样生成推理轨迹。在上一阶段,我们仅包含可以使用基于规则奖励评估的数据。但在这一阶段,我们通过引入额外数据扩展了数据集,其中一些数据使用生成式奖励模型,将真实答案和模型预测输入 DeepSeek-V3 进行判断。此外,由于模型输出有时混乱且难以阅读,我们过滤掉了语言混合、长段落和代码块的链式推理。对于每个提示,我们采样多个响应,仅保留正确的答案。最终,我们收集了约 60 万条与推理相关的训练样本。
非推理数据
对于非推理数据,如写作、事实问答、自我认知和翻译,我们采用 DeepSeek-V3 的流程,并复用 DeepSeek-V3 的部分 SFT 数据集。对于某些非推理任务,我们通过提示调用 DeepSeek-V3 在回答问题前生成潜在的链式推理。但对于简单的查询(如“你好”),我们不会提供 CoT 响应。最终,我们收集了总计约 20 万条与推理无关的训练样本。
我们使用上述约 80 万条样本的精选数据集,对 DeepSeek-V3-Base 进行了两轮微调。
面向全场景的强化学习
为了进一步使模型与人类偏好对齐,我们实施了第二阶段的强化学习,旨在提高模型的有用性和无害性,同时优化其推理能力。具体来说,我们结合奖励信号和多样化的提示分布来训练模型。对于推理数据,我们遵循 DeepSeek-R1-Zero 中概述的方法,利用基于规则的奖励引导模型在数学、代码和逻辑推理领域的学习。对于通用数据,我们依赖奖励模型来捕捉复杂且细微场景中的人类偏好。我们基于 DeepSeek-V3 的流程,采用类似的偏好对和训练提示分布。
- 有用性:我们仅关注最终总结,确保评估重点放在响应对用户的实用性和相关性上,同时尽量减少对底层推理过程的干扰。
- 无害性:我们评估模型的整个响应,包括推理过程和总结,以识别并缓解生成过程中可能出现的任何潜在风险、偏见或有害内容。
最终,通过结合奖励信号和多样化数据分布,我们训练出了一个在推理方面表现出色,同时优先考虑有用性和无害性的模型。
蒸馏:为小型模型赋予推理能力
为了让更高效的小型模型具备类似 DeepSeek-R1 的推理能力,我们直接使用 DeepSeek-R1 收集的 80 万条样本(如 §2.3.3 所述)对开源模型(如 Qwen (Qwen, 2024b) 和 Llama (AI@Meta, 2024))进行微调。我们的研究结果表明,这种简单的蒸馏方法显著提升了小型模型的推理能力。我们使用的基础模型包括 Qwen2.5-Math-1.5B、Qwen2.5-Math-7B、Qwen2.5-14B、Qwen2.5-32B、Llama-3.1-8B 和 Llama-3.3-70B-Instruct。我们选择 Llama-3.3 是因为其推理能力略优于 Llama-3.1。
对于蒸馏模型,我们仅应用 SFT 并未包含 RL 阶段,尽管引入 RL 可以显著提升模型性能。我们的主要目标是展示蒸馏技术的有效性,而将 RL 阶段的探索留给更广泛的研究社区。
实验
基准测试
我们在以下基准测试上评估模型:
知识测试:MMLU (Hendrycks 等, 2020)、MMLU-Redux (Gema 等, 2024)、MMLU-Pro (Wang 等, 2024)、C-Eval (Huang 等, 2023)、CMMLU (Li 等, 2023)
推理与生成任务:IFEval (Zhou 等, 2023)、FRAMES (Krishna 等, 2024)、GPQA Diamond (Rein 等, 2023)、SimpleQA (OpenAI, 2024c)、C-SimpleQA (He 等, 2024)
代码与数学竞赛:SWE-Bench Verified (OpenAI, 2024d)、LiveCodeBench (Jain 等, 2024) (2024-08 – 2025-01)、Codeforces²、中国国家高中数学奥林匹克 (CNMO 2024)³、美国数学邀请赛 2024 (AIME 2024) (MAA, 2024)
此外,我们还在开放式生成任务中使用 LLM 作为评估工具进行评估。具体来说,我们遵循 AlpacaEval 2.0 (Dubois 等, 2024) 和 Arena-Hard (Li 等, 2024) 的原始配置,利用 GPT-4-Turbo-1106 作为成对比较的评估工具。为了避免长度偏差,我们仅将最终总结部分提供给评估。对于蒸馏模型,我们报告了在 AIME 2024、MATH-500、GPQA Diamond、Codeforces 和 LiveCodeBench 上的代表性结果。
评估提示
遵循 DeepSeek-V3 的设置,标准基准测试(如 MMLU、DROP、GPQA Diamond 和 SimpleQA)使用 simple-evals 框架中的提示进行评估。对于 MMLU-Redux,我们在零样本设置中采用了 Zero-Eval 提示格式 (Lin, 2024)。对于 MMLU-Pro、C-Eval 和 CLUE-WSC,由于原始提示是少样本的,我们将其略微修改为零样本设置,因为少样本的 CoT 可能会影响 DeepSeek-R1 的性能。其他数据集遵循其创建者提供的默认提示和原始评估协议。
对于代码和数学基准测试:
HumanEval-Mul 数据集涵盖八种主流编程语言(Python、Java、C++、C#、JavaScript、TypeScript、PHP 和 Bash)。
LiveCodeBench 使用 CoT 格式进行评估,数据收集于 2024 年 8 月至 2025 年 1 月。
Codeforces 数据集使用 10 场 Div.2 竞赛中的问题以及专家精心设计的测试用例进行评估,之后计算预期评分和参赛者百分比。
SWE-Bench 的验证结果通过 agentless 框架 (Xia 等, 2024) 获取。
AIDER 相关基准测试使用 “diff” 格式进行测量。
对于所有基准测试,DeepSeek-R1 的输出上限为每个测试最多 32,768 个 token。
基线模型
我们与多个强大的基线模型进行了全面对比评估,包括:
- DeepSeek-V3
- Claude-Sonnet-3.5-1022
- GPT-4o-0513
- OpenAI-o1-mini
- OpenAI-o1-1217
由于在中国大陆访问 OpenAI-o1-1217 API 较为困难,我们基于官方报告其性能。对于蒸馏模型,我们还对比了开源模型 QwQ-32B-Preview (Qwen, 2024a)。
评估设置
我们将模型的最大生成长度设置为 32,768 个 token。我们发现,使用贪心解码评估长输出推理模型会导致更高的重复率以及不同检查点之间的显著变异性。因此,我们默认采用 pass@𝑘 评估方法(Chen 等, 2021),并使用非零温度报告 pass@1。具体来说,我们使用采样温度为 0.6,
t
o
p
−
p
top-p
top−p值为 0.95,为每个问题生成 𝑘 个响应(通常为 4 到 64 个,取决于测试集大小)。然后,pass@1 计算如下:
p
a
s
s
@
1
=
1
k
∑
i
=
1
k
p
i
pass@1=\frac{1}{k}\sum_{i=1}^{k}p_i
pass@1=k1i=1∑kpi
其中,
p
i
p_i
pi表示第
i
i
i个响应的正确性。这种方法提供了更可靠的性能估计。对于 AIME 2024,我们还使用 64 个样本报告共识(多数投票)结果(Wang 等, 2022),记为 cons@64。
DeepSeek-R1 评估
在面向教育的知识基准测试(如 MMLU、MMLU-Pro 和 GPQA Diamond)中,DeepSeek-R1 表现出优于 DeepSeek-V3 的性能。这种改进主要归因于 STEM 相关问题准确性的提升,其中大规模强化学习带来了显著的增益。此外,DeepSeek-R1 在 FRAMES(一个长上下文依赖的问答任务)上也表现出色,展示了其强大的文档分析能力。这突显了推理模型在 AI 驱动的搜索和数据分析任务中的潜力。在事实基准测试 SimpleQA 上,DeepSeek-R1 优于 DeepSeek-V3,证明了其处理基于事实的查询的能力。类似趋势在 OpenAI-o1 超越 GPT-4o 的情况下也被观察到。然而,DeepSeek-R1 在中文 SimpleQA 基准测试中的表现不如 DeepSeek-V3,主要原因是其在进行安全 RL 后倾向于拒绝回答某些查询。如果不进行安全 RL,DeepSeek-R1 可以达到超过 70% 的准确率。
DeepSeek-R1 在 IF-Eval(一个评估模型遵循格式指令能力的基准测试)上也取得了令人印象深刻的结果。这些改进可以归因于在监督微调(SFT)和 RL 训练的最后阶段引入了指令遵循数据。此外,在 AlpacaEval 2.0 和 ArenaHard 上的表现也极为突出,表明 DeepSeek-R1 在写作任务和开放域问答任务中的优势。其显著优于 DeepSeek-V3 的表现突显了大规模 RL 的泛化效益,不仅提升了推理能力,还提高了跨领域的性能。此外,DeepSeek-R1 生成的总结长度非常简洁,在 ArenaHard 上平均为 689 个 token,在 AlpacaEval 2.0 上为 2,218 个字符。这表明 DeepSeek-R1 在基于 GPT 的评估中避免了引入长度偏差,进一步巩固了其在多任务中的鲁棒性。
在数学任务上,DeepSeek-R1 的表现与 OpenAI-o1-1217 相当,大幅领先其他模型。类似趋势在编码算法任务(如 LiveCodeBench 和 Codeforces)中也被观察到,推理导向的模型在这些基准测试中占据主导地位。在工程导向的编码任务上,OpenAI-o1-1217 在 Aider 上优于 DeepSeek-R1,但在 SWE Verified 上表现相当。我们相信,随着相关 RL 训练数据量的增加,DeepSeek-R1 的工程性能将在下一个版本中得到提升。
蒸馏模型评估
如表 5 所示,仅通过蒸馏 DeepSeek-R1 的输出,高效的 DeepSeek-R1-7B(即 DeepSeek-R1-Distill-Qwen-7B,以下类似缩写)便能够全面超越 GPT-4o-0513 等非推理模型。DeepSeek-R1-14B 在所有评估指标上都优于 QwQ-32B-Preview,而 DeepSeek-R1-32B 和 DeepSeek-R1-70B 在大多数基准测试中显著超越了 o1-mini。这些结果表明了蒸馏的强大潜力。此外,我们发现对这些蒸馏模型应用 RL 可以带来进一步的显著提升。我们相信这值得进一步探索,因此在这里仅展示简单 SFT 蒸馏模型的结果。
讨论
蒸馏 vs 强化学习
在第 3.2 节中,我们可以看到通过蒸馏 DeepSeek-R1,小型模型能够取得令人印象深刻的结果。然而,仍有一个问题有待解答:模型能否通过本文讨论的大规模 RL 训练(而无需蒸馏)达到与之相当的性能?
为了回答这个问题,我们在 Qwen-32B-Base 上使用数学、代码和 STEM 相关数据进行了大规模 RL 训练,训练超过 1 万步,最终得到 DeepSeek-R1-Zero-Qwen-32B。实验结果如表 6 所示,表明 32B 基础模型在经过大规模 RL 训练后,性能与 QwQ-32B-Preview 相当。然而,从 DeepSeek-R1 蒸馏得到的 DeepSeek-R1-Distill-Qwen-32B 在所有基准测试中都显著优于 DeepSeek-R1-Zero-Qwen-32B。
因此,我们可以得出两个结论:
将更强大的模型蒸馏到较小模型中能够取得优异的结果,而依赖本文中提到的大规模 RL 的小型模型则需要巨大的计算资源,甚至可能无法达到蒸馏的性能水平。
尽管蒸馏策略既经济又有效,但要突破智能的边界,可能仍需要更强大的基础模型和更大规模的强化学习。
失败的尝试
在开发 DeepSeek-R1 的早期阶段,我们也经历了一些失败和挫折。我们在此分享这些失败经验以提供见解,但这并不意味着这些方法无法开发出有效的推理模型。
过程奖励模型(PRM)
PRM 是一种合理的方法,可以引导模型采用更好的方式解决推理任务(Lightman 等, 2023; Uesato 等, 2022; Wang 等, 2023)。然而,在实践中,PRM 存在三个主要限制,可能阻碍其最终成功。在通用推理中明确定义细粒度的步骤具有挑战性。确定当前中间步骤是否正确是一项困难的任务。使用模型进行自动化标注可能无法产生令人满意的结果,而人工标注又不利于扩展。一旦引入基于模型的 PRM,不可避免地会导致奖励欺骗(Gao 等, 2022),而重新训练奖励模型需要额外的训练资源,并使整个训练流程变得复杂。综上所述,虽然 PRM 在重新排序模型生成的 top-N 响应或辅助引导搜索(Snell 等, 2024)方面表现出良好的能力,但在我们实验中的大规模强化学习过程中,其优势相较于引入的额外计算开销显得有限。
蒙特卡罗树搜索(MCTS)
受 AlphaGo(Silver 等, 2017b)和 AlphaZero(Silver 等, 2017a)的启发,我们探索了使用蒙特卡罗树搜索(MCTS)来增强测试时间计算的扩展性。这种方法将答案分解为更小的部分,使模型能够系统地探索解决方案空间。为了实现这一点,我们提示模型生成多个与搜索所需特定推理步骤相对应的标签。在训练中,我们首先使用收集的提示通过预训练的价值模型引导 MCTS 找到答案。随后,我们使用生成的问题-答案对来训练策略模型和价值模型,并迭代优化这一过程。
然而,这种方法在扩大训练规模时遇到了几个挑战:
与搜索空间相对明确的国际象棋不同,token 生成的搜索空间呈指数级扩大。为了应对这一问题,我们为每个节点设置了最大扩展限制,但这可能导致模型陷入局部最优。
价值模型直接影响生成质量,因为它指导了搜索过程的每一步。训练一个细粒度的价值模型本身就很困难,这使得模型难以通过迭代改进。
虽然 AlphaGo 的核心成功依赖于训练价值模型以逐步提升性能,但由于 token 生成的复杂性,这一原则在我们的实验中难以复制。
综上所述,尽管 MCTS 可以与预训练的价值模型配合在推理过程中提升性能,但通过自我搜索迭代提升模型性能仍然是一个重大挑战。
总结、局限与未来工作
在本研究中,我们分享了通过强化学习提升模型推理能力的探索历程。DeepSeek-R1-Zero 代表了一种不依赖冷启动数据的纯 RL 方法,在多种任务中表现出色。而 DeepSeek-R1 则更为强大,结合了冷启动数据和迭代 RL 微调。最终,DeepSeek-R1 在一系列任务中达到了与 OpenAI-o1-1217 相媲美的性能。
我们进一步探索了将推理能力蒸馏到小型密集模型中的方法。我们以 DeepSeek-R1 作为教师模型,生成了 80 万条训练样本,并对多个小型密集模型进行了微调。结果令人鼓舞:DeepSeek-R1-Distill-Qwen-1.5B 在数学基准测试中超越了 GPT-4o 和 Claude-3.5-Sonnet,在 AIME 上取得了 28.9% 的得分,在 MATH 上取得了 83.9% 的得分。其他密集模型也表现优异,显著优于基于相同基础检查点的其他指令微调模型。
在未来,我们计划在以下几个方面对 DeepSeek-R1 进行深入研究:
- 通用能力:目前,DeepSeek-R1 在函数调用、多轮对话、复杂角色扮演和 JSON 输出等任务中的能力仍不及DeepSeek-V3。未来,我们计划探索如何利用长链式推理(CoT)来增强这些领域的任务表现。
- 语言混合:DeepSeek-R1目前针对中文和英文进行了优化,因此在处理其他语言的查询时可能会出现语言混合问题。例如,即使用户查询的语言不是英文或中文,DeepSeek-R1仍可能使用英文进行推理和响应。我们旨在未来的更新中解决这一局限。
- 提示工程:在评估 DeepSeek-R1 时,我们观察到它对提示非常敏感。少样本提示(few-shot prompting)会一致性地降低其性能。因此,我们建议用户直接描述问题并使用零样本提示(zero-shot setting)指定输出格式,以获得最佳结果。
- 软件工程任务:由于评估时间较长,影响了 RL 过程的效率,大规模 RL 尚未广泛应用于软件工程任务中。因此,DeepSeek-R1在软件工程基准测试中并未表现出比 DeepSeek-V3 的显著提升。未来的版本将通过软件工程数据的拒绝采样或在 RL过程中引入异步评估来提高效率。
反思总结
-
**DeepSeek-R1-Zero 首次验证了无需监督微调(SFT)、仅通过大规模RL训练即可显著提升模型推理能力的可行性。模型在AIME 2024上pass@1提升356%(15.6%→71%),证明了RL直接作用于基础模型的潜力。打破传统“预训练+SFT+RL”的固定范式,为低监督数据场景下的模型优化提供新思路。RL+LLM可能会适用于很多场景,可以继续探索
-
DeepSeek-R1通过“RL冷启动→迭代RL→多领域SFT→全场景RL”四阶段流程,显著提升可读性与用户友好性。其格式奖励设计和语言一致性约束(如|special_token|分段),解决了RL生成内容的混乱问题,同时保证推理能力不衰减。迭代RL方法被证明有效**