DeepSeek-R1:通过强化学习激励大型语言模型(LLMs)的推理能力
摘要
我们推出了第一代推理模型:DeepSeek-R1-Zero和DeepSeek-R1。DeepSeek-R1-Zero是一个未经监督微调(SFT)作为初步步骤,而是通过大规模强化学习(RL)训练的模型,展现出卓越的推理能力。通过强化学习,DeepSeek-R1-Zero自然而然地涌现出众多强大且引人入胜的推理行为。然而,它面临着可读性差和语言混淆等挑战。为了解决这些问题并进一步提升推理性能,我们推出了DeepSeek-R1,该模型在强化学习之前融入了多阶段训练和冷启动数据。DeepSeek-R1在推理任务上的表现可与OpenAI-o1-1217相媲美。为了支持研究界,我们开源了DeepSeek-R1-Zero、DeepSeek-R1以及基于Qwen和Llama从DeepSeek-R1中提炼出的六个密集模型(1.5B、7B、8B、14B、32B、70B)。
1、引言
近年来,大型语言模型(LLMs)经历了快速的迭代和演进(Anthropic, 2024;Google, 2024;OpenAI, 2024a),逐步缩小了与通用人工智能(AGI)的差距。
最近,后训练已成为完整训练流程的重要组成部分。研究表明,与预训练相比,后训练在推理任务上的准确性更高,更符合社会价值观,更能适应用户偏好,同时所需的计算资源相对较少。在推理能力方面,OpenAI的o1系列模型(OpenAI, 2024b)首次通过增加思维链推理过程的长度来引入推理时间的缩放。这种方法在数学、编码和科学推理等各种推理任务中取得了显著改进。然而,有效测试时间缩放的问题仍然是研究界的一个悬而未决的问题。一些先前的工作探索了各种方法,包括基于过程的奖励模型(Lightman et al., 2023;Uesato et al., 2022;Wang et al., 2023)、强化学习(Kumar et al., 2024)以及搜索算法,如蒙特卡洛树搜索和束搜索(Feng et al., 2024;Trinh et al., 2024;Xin et al., 2024)。然而,这些方法中的任何一种都没有实现可与OpenAI的o1系列模型相媲美的通用推理性能。
在本文中,我们迈出了使用纯强化学习(RL)提高语言模型推理能力的第一步。我们的目标是探索LLMs在没有任何监督数据的情况下发展推理能力的潜力,重点关注它们通过纯强化学习过程实现自我进化的能力。具体来说,我们使用DeepSeek-V3-Base作为基础模型,并采用GRPO(Shao et al., 2024)作为强化学习框架来提高模型在推理方面的性能。在训练过程中,DeepSeek-R1-Zero自然而然地涌现出众多强大且有趣的推理行为。经过数千步强化学习后,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一样进行面向推理的强化学习。在强化学习过程即将收敛时,我们对强化学习检查点进行拒绝采样以创建新的监督微调(SFT)数据,并结合DeepSeek-V3在写作、事实问答和自我认知等领域的监督数据,然后重新训练DeepSeek-V3-Base模型。使用新数据进行微调后,检查点会再经历一次强化学习过程,同时考虑所有场景的提示。经过这些步骤后,我们获得了一个名为DeepSeek-R1的检查点,其性能与OpenAI-o1-1217相当。
我们进一步探索了从DeepSeek-R1中提炼出较小密集模型的方法。使用Qwen2.532B(Qwen, 2024b)作为基础模型,直接从DeepSeek-R1进行蒸馏的表现优于在其上应用强化学习。这表明较大基础模型发现的推理模式对于提高推理能力至关重要。我们开源了提炼出的Qwen和Llama(Dubey et al., 2024)系列。值得注意的是,我们提炼出的14B模型在推理基准测试上的表现远超最先进的开源模型QwQ-32B-Preview(Qwen, 2024a),而提炼出的32B和70B模型在密集模型中树立了新的推理基准测试记录。
1.1、贡献
训练后:在基础模型上进行大规模强化学习
- 我们直接将强化学习(RL)应用于基础模型,而不依赖监督微调(SFT)作为初步步骤。这种方法使模型能够探索用于解决复杂问题的思维链(CoT),从而开发出DeepSeek-R1-Zero。DeepSeek-R1-Zero展示了自我验证、反思和生成长思维链等能力,为研究界树立了一个重要里程碑。值得注意的是,这是首个公开研究,验证了大型语言模型(LLM)的推理能力可以仅通过强化学习来激励,而无需监督微调。这一突破为该领域的未来发展铺平了道路。
- 我们介绍了开发DeepSeek-R1的流程。该流程包含两个强化学习阶段,旨在发现改进的推理模式并与人类偏好保持一致,以及两个作为模型推理和非推理能力基础的监督微调阶段。我们相信,该流程将通过创建更好的模型为行业带来益处。
蒸馏:小型模型同样可以强大
- 我们证明了大型模型的推理模式可以被蒸馏到小型模型中,与小型模型通过强化学习发现的推理模式相比,性能更好。开源的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相媲美。我们向社区开源了基于Qwen 2.5和Llama3系列的1.5B、7B、8B、14B、32B和70B检查点。
1.2、评估结果总结
-
推理任务:(1) DeepSeek-R1在AIME 2024上取得了79.8%的Pass@1成绩,略高于OpenAI-o1-1217。在MATH-500上,它获得了令人印象深刻的97.3%成绩,与OpenAI-o1-1217持平,并显著优于其他模型。(2) 在与编码相关的任务上,DeepSeek-R1在代码竞赛任务中表现出专家水平,在Codeforces上获得2029 Elo评级,超过了比赛中96.3%的人类参与者。对于与工程相关的任务,DeepSeek-R1的表现略优于DeepSeek-V3,这有助于开发者在现实世界的任务中。
-
知识:在MMLU、MMLU-Pro和GPQA Diamond等基准测试中,DeepSeekR1取得了优异成绩,在MMLU上得分90.8%,在MMLU-Pro上得分84.0%,在GPQA Diamond上得分71.5%,显著优于DeepSeek-V3。虽然在这些基准测试上的表现略低于OpenAI-o1-1217,但DeepSeek-R1超越了其他闭源模型,展示了其在教育任务中的竞争优势。在事实基准SimpleQA上,DeepSeek-R1优于DeepSeek-V3,证明了其处理基于事实查询的能力。观察到类似趋势,OpenAI-o1在此基准上得分超过40。
-
其他:DeepSeek-R1在创意写作、一般问答、编辑、摘要等多种任务中也表现出色。它在AlpacaEval 2.0上实现了令人印象深刻的长度控制胜率87.6%,在ArenaHard上实现了胜率92.3%,展示了其智能处理非考试导向查询的强大能力。此外,DeepSeek-R1在长文本理解任务上表现出色,在长文本基准测试上显著优于DeepSeek-V3。
2、方法
2.1、概述
先前的工作严重依赖于大量监督数据来提高模型性能。在本研究中,我们证明了即使不使用监督微调作为冷启动,通过大规模强化学习(RL)也可以显著提高推理能力。此外,加入少量冷启动数据可以进一步提高性能。在以下部分中,我们介绍了:(1) DeepSeek-R1-Zero,它直接在没有任何监督微调数据的基础模型上应用强化学习,以及(2) DeepSeek-R1,它从使用数千个长思维链(CoT)示例进行微调的检查点开始应用强化学习。(3) 将DeepSeek-R1的推理能力蒸馏到小型密集模型中。
2.2. DeepSeek-R1-Zero:基础模型上的强化学习
强化学习在推理任务中已显示出显著的有效性,这在我们之前的工作(Shao等人,2024;Wang等人,2023)中得到了证实。然而,这些工作严重依赖于监督数据,而收集这些数据非常耗时。在本节中,我们将探讨大型语言模型(LLMs)在没有任何监督数据的情况下发展推理能力的潜力,重点关注它们通过纯强化学习过程实现自我进化的能力。我们首先简要概述我们的强化学习(RL)算法,然后展示一些令人兴奋的结果,并希望这为社区提供有价值的见解。
2.2.1、强化学习算法
群体相对策略优化(Group Relative Policy Optimization, GRPO)为了节省强化学习的训练成本,我们采用了群体相对策略优化(Shao等人,2024),该算法省略了通常与策略模型大小相同的评论家模型,而是从群体分数中估计基线。具体来说,对于每个问题 q q q,GRPO从旧策略 π θ o l d \pi_{\theta_{old}} πθold中采样一组输出 { o 1 , o 2 , ⋯ , o G } \left\{o_{1}, o_{2}, \cdots, o_{G}\right\} {o1,o2,⋯,oG},然后通过最大化以下目标来优化策略模型 π θ \pi_{\theta} πθ:
J G R P O ( θ ) = E [ q ∼ P ( Q ) , { o i } i = 1 G ∼ π θ o l d ( O ∣ q ) ] 1 G ∑ i = 1 G ( min ( π θ ( o i ∣ q ) π θ o l d ( 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 ) ) , 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 , \begin{array}{c} \mathcal{J}_{G R P O}(\theta)=\mathbb{E}\left[q \sim P(Q),\left\{o_{i}\right\}_{i=1}^{G} \sim \pi_{\theta_{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_{old}}\left(o_{i} \mid q\right)} A_{i}, \text{clip}\left(\frac{\pi_{\theta}\left(o_{i} \mid q\right)}{\pi_{\theta_{old}}\left(o_{i} \mid q\right)}, 1-\varepsilon, 1+\varepsilon\right) A_{i}\right)-\beta \mathbb{D}_{K L}\left(\pi_{\theta} \| \pi_{ref}\right)\right), \\ \mathbb{D}_{K L}\left(\pi_{\theta} \| \pi_{ref}\right)=\frac{\pi_{ref}\left(o_{i} \mid q\right)}{\pi_{\theta}\left(o_{i} \mid q\right)}-\log \frac{\pi_{ref}\left(o_{i} \mid q\right)}{\pi_{\theta}\left(o_{i} \mid q\right)}-1, \end{array} JGRPO(θ)=E[q∼P(Q),{oi}i=1G∼πθold(O∣q)]G1∑i=1G(min(πθold(oi∣q)πθ(oi∣q)Ai,clip(πθold(oi∣q)πθ(oi∣q),1−ε,1+ε)Ai)−βDKL(πθ∥πref)),DKL(πθ∥πref)=πθ(oi∣q)πref(oi∣q)−logπθ(oi∣q)πref(oi∣q)−1,
其中, ε \varepsilon ε和 β \beta β是超参数, A i A_{i} Ai是使用与每组输出对应的奖励组 { r 1 , r 2 , … , r G } \left\{r_{1}, r_{2}, \ldots, r_{G}\right\} {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}-\text{mean}\left(\left\{r_{1}, r_{2}, \cdots, r_{G}\right\}\right)}{\text{std}\left(\left\{r_{1}, r_{2}, \cdots, r_{G}\right\}\right)} Ai=std({r1,r2,⋯,rG})ri−mean({r1,r2,⋯,rG})
2.2.2、奖励建模
奖励是训练信号的来源,决定了强化学习的优化方向。为了训练DeepSeek-R1-Zero,我们采用了一个基于规则的奖励系统,该系统主要包括两种奖励:
- 准确性奖励:准确性奖励模型评估回答是否正确。例如,在确定结果的数学问题中,模型需要以指定格式(例如,在框内)提供最终答案,从而可以基于规则可靠地验证正确性。同样,对于LeetCode问题,可以使用编译器根据预定义的测试用例生成反馈。
- 格式奖励:除了准确性奖励模型外,我们还采用了格式奖励模型,强制模型在’‘和’'标签之间放置其思考过程。
在开发DeepSeek-R1-Zero时,我们没有应用结果或过程的神经奖励模型,因为我们发现神经奖励模型在大型强化学习过程中可能会遭受奖励黑客攻击,而且重新训练奖励模型需要额外的训练资源,并使整个训练流程复杂化。
2.2.3、训练模板
为了训练DeepSeek-R1-Zero,我们首先设计了一个直观的模板,该模板指导基础模型遵循我们指定的指令。如表1所示,该模板要求DeepSeek-R1-Zero首先产生推理过程,然后是最终答案。我们故意将约束限制在这个结构格式上,避免任何内容特定的偏见——例如,强制反思推理或推广特定的问题解决策略——以确保我们能够准确观察模型在强化学习过程中的自然进展。
2.2.4、DeepSeek-R1-Zero的性能、自我进化过程和顿悟时刻
DeepSeek-R1-Zero的性能 图2展示了DeepSeek-R1-Zero在强化学习训练过程中在AIME 2024基准测试上的性能轨迹。如图所示,随着强化学习训练的推进,DeepSeek-R1-Zero的性能显示出稳定且一致的提升。值得注意的是,AIME 2024的平均pass@1分数显著提高,从最初的
15.6
%
15.6 \%
15.6%跃升至令人印象深刻的
71.0
%
71.0 \%
71.0%,达到了与OpenAI-o1-0912相当的性能水平。这一显著提升凸显了我们的强化学习算法在长时间内优化模型性能的有效性。
表2对DeepSeek-R1-Zero与OpenAI的o1-0912模型在各种与推理相关的基准测试上进行了比较分析。结果表明,强化学习(RL)使DeepSeek-R1-Zero能够在无需任何监督微调数据的情况下获得强大的推理能力。这是一项值得注意的成就,因为它凸显了模型仅通过强化学习就能有效学习和泛化的能力。此外,通过应用多数投票,可以进一步提升DeepSeek-R1-Zero的性能。例如,当在AIME基准测试上采用多数投票时,DeepSeek-R1-Zero的性能从 71.0 % 71.0 \% 71.0%提升至 86.7 % 86.7 \% 86.7%,从而超过了OpenAI-o1-0912的性能。DeepSeek-R1-Zero无论是否采用多数投票都能取得如此具有竞争力的表现,这凸显了其强大的基础能力和在推理任务中取得进一步进展的潜力。
DeepSeek-R1-Zero的自我进化过程
DeepSeek-R1-Zero的自我进化过程是一个引人入胜的演示,展示了强化学习如何驱动模型自主提高其推理能力。通过直接从基础模型启动强化学习,我们可以不受监督微调阶段影响地密切监控模型的进展。这种方法提供了模型随时间演变的清晰视图,特别是在处理复杂推理任务的能力方面。
如图3所示,DeepSeek-R1-Zero的思考时间在整个训练过程中持续改进。这种改进不是外部调整的结果,而是模型内部的发展。DeepSeek-R1-Zero通过利用更长的测试时间计算,自然地获得了解决日益复杂的推理任务的能力。这种计算范围从生成数百到数千个推理标记,使模型能够更深入地探索和精炼其思维过程。
这一自我进化过程中最引人注目的方面之一是,随着测试时间计算的增加,复杂行为的出现。如反思(模型重新访问和重新评估其先前步骤)和探索解决问题的替代方法等行为自发产生。这些行为不是明确编程的,而是模型与强化学习环境相互作用的结果。这种自发发展显著增强了DeepSeek-R1-Zero的推理能力,使其能够更高效、更准确地解决更具挑战性的任务。
DeepSeek-R1-Zero的“顿悟时刻”
在DeepSeek-R1-Zero的训练过程中观察到的一个特别有趣的现象是“顿悟时刻”的发生。如表3所示,这一时刻发生在模型的中间版本中。在这一阶段,DeepSeek-R1-Zero学会了通过重新评估其初步方法来为问题分配更多的思考时间。这种行为不仅证明了模型推理能力的增强,也是强化学习能够产生意外且复杂结果的迷人例证。
这一时刻不仅对模型来说是“顿悟时刻”,对观察其行为的研究人员来说也是如此。它强调了强化学习的力量和美丽:我们不是明确教授模型如何解决问题,而是为其提供正确的激励,然后它自主开发出先进的问题解决策略。“顿悟时刻”有力地提醒了我们强化学习在解锁人工智能系统新智能水平方面的潜力,为未来更自主和自适应的模型铺平了道路。
DeepSeek-R1-Zero的缺点
尽管DeepSeek-R1-Zero表现出强大的推理能力,并自主发展出意外且强大的推理行为,但它也面临一些问题。例如,DeepSeek-R1-Zero在处理可读性差和语言混合等挑战时遇到困难。为了使推理过程更具可读性并与开放社区共享,我们探索了DeepSeek-R1,这是一种利用强化学习和用户友好的冷启动数据的方法。
2.3、DeepSeek-R1:具有冷启动的强化学习
受DeepSeek-R1-Zero鼓舞人心的结果的启发,产生了两个自然的问题:1)通过引入少量高质量数据作为冷启动,是否可以进一步提高推理性能或加速收敛?2)我们如何训练一个不仅产生清晰连贯的思维链(Chains of Thought,CoT),而且表现出强大通用能力的用户友好型模型?为了解决这些问题,我们设计了训练DeepSeek-R1的管道。该管道包括以下四个阶段:
2.3.1. 冷启动
与DeepSeek-R1-Zero不同,为了防止强化学习(RL)训练在基础模型上早期出现不稳定的冷启动阶段,对于DeepSeek-R1,我们构建并收集了一小部分长的思维链(CoT)数据来对模型进行微调,作为初始的RL行为者。为了收集这些数据,我们探索了几种方法:使用包含长思维链的少量提示作为示例,直接提示模型生成带有反思和验证的详细答案,以可读格式收集DeepSeek-R1Zero的输出,并通过人类标注者的后处理来精炼结果。
在本研究中,我们收集了数千条冷启动数据来微调DeepSeek-V3-Base,作为RL的起点。与DeepSeek-R1-Zero相比,冷启动数据的优势包括:
- 可读性:DeepSeek-R1-Zero的一个关键限制是其内容往往不适合阅读。回答可能会混合多种语言或缺少标记格式来突出显示给用户的答案。相比之下,在为DeepSeek-R1创建冷启动数据时,我们设计了一种可读的模式,包括在每个回答的末尾添加一个摘要,并过滤掉对读者不友好的回答。在这里,我们将输出格式定义为| s p e c i a l _ t o k e n special\_token special_token | <推理过程> | s p e c i a l _ t o k e n special\_token special_token | <摘要>,其中推理过程是查询的思维链,摘要用于总结推理结果。
- 潜力:通过结合人类先验知识精心设计冷启动数据的模式,我们观察到其性能优于DeepSeek-R1-Zero。我们认为迭代训练是推理模型的一种更好方式。
2.3.2、以推理为导向的强化学习
在冷启动数据上对DeepSeek-V3-Base进行微调后,我们应用了与DeepSeek-R1-Zero相同的大规模强化学习训练过程。这一阶段侧重于增强模型的推理能力,特别是在推理密集型任务中,如编程、数学、科学和逻辑推理,这些任务涉及定义明确且解决方案清晰的问题。在训练过程中,我们观察到思维链经常会出现语言混合现象,尤其是在RL提示涉及多种语言时。为了缓解语言混合问题,我们在RL训练期间引入了一个语言一致性奖励,该奖励计算为思维链中目标语言单词的比例。尽管消融实验表明,这种对齐会导致模型性能略有下降,但这种奖励与人类偏好一致,使其更具可读性。最后,我们将推理任务的准确性和语言一致性奖励直接相加,形成最终奖励。然后,我们对微调后的模型应用RL训练,直到其在推理任务上收敛。
2.3.3、拒绝采样和监督微调
当以推理为导向的RL收敛时,我们利用得到的检查点来收集下一轮监督微调(SFT)数据。与主要关注推理的初始冷启动数据不同,这一阶段纳入了来自其他领域的数据,以增强模型在写作、角色扮演和其他通用任务方面的能力。具体来说,我们按如下方式生成数据并对模型进行微调。
推理数据:我们整理推理提示,并从上述RL训练的检查点通过拒绝采样生成推理轨迹。在上一阶段,我们只包含了可以使用基于规则的奖励进行评估的数据。然而,在这一阶段,我们通过纳入额外数据来扩展数据集,其中一些数据使用生成式奖励模型,将真实答案和模型预测输入DeepSeek-V3进行判断。此外,由于模型输出有时混乱且难以阅读,我们已过滤掉混合语言、长段落和代码块的思维链。对于每个提示,我们采样多个回答,并仅保留正确的回答。总共,我们收集了约60万个与推理相关的训练样本。
非推理数据:对于非推理数据,如写作、事实问答、自我认知和翻译,我们采用DeepSeek-V3管道,并重用DeepSeek-V3的SFT数据集的部分内容。对于某些非推理任务,我们在回答问题之前,通过提示调用DeepSeek-V3生成潜在的思维链。然而,对于更简单的查询,如“hello”,我们不提供思维链作为回答。最终,我们总共收集了约20万个与推理无关的训练样本。
我们使用上述精心挑选的约80万个样本的数据集对DeepSeek-V3-Base进行两个周期的监督微调。
2.3.4、针对所有场景的强化学习
为了进一步使模型与人类偏好保持一致,我们实施了第二阶段强化学习,旨在提高模型的帮助性和无害性,同时改进其推理能力。具体来说,我们使用奖励信号组合和多样化的提示分布来训练模型。对于推理数据,我们遵循DeepSeek-R1-Zero中概述的方法,该方法利用基于规则的奖励来指导数学、代码和逻辑推理领域的学习过程。对于通用数据,我们求助于奖励模型来捕捉复杂和细微场景中的人类偏好。我们基于DeepSeek-V3管道,并采用类似的偏好对和训练提示分布。对于帮助性,我们专注于最终的摘要,确保评估强调回答对用户的实用性和相关性,同时尽量减少对底层推理过程的干扰。对于无害性,我们评估模型的整个回答,包括推理过程和摘要,以识别和缓解生成过程中可能出现的任何潜在风险、偏见或有害内容。最终,奖励信号和多样化数据分布的整合使我们能够训练出一个在推理方面表现出色,同时优先考虑帮助性和无害性的模型。
2.4、蒸馏:赋予小型模型推理能力
为了为更高效的小型模型配备如DeepSeek-R1般的推理能力,我们直接使用DeepSeek-R1筛选的800k样本对开源模型(如Qwen(Qwen, 2024b)和Llama(AI@Meta, 2024))进行了微调,具体细节见第2.3.3节。我们的研究结果表明,这种直接的蒸馏方法显著增强了小型模型的推理能力。我们在此使用的基准模型包括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阶段的探索留给更广泛的研究界。
3、实验
基准测试 我们在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)、Aider{ }^{1}、LiveCodeBench(Jain等,2024)(2024年8月至2025年1月)、Codeforces{ }^{2}、中国高中数学奥林匹克竞赛(CNMO 2024){ }^{3}和美国数学邀请赛2024(AIME 2024)(MAA,2024)等基准测试上评估了模型。除了标准基准测试外,我们还使用大型语言模型(LLMs)作为评判员,在开放式生成任务上评估了我们的模型。具体而言,我们遵循AlpacaEval 2.0(Dubois等,2024)和Arena-Hard(Li等,2024)的原始配置,它们利用GPT-4-Turbo-1106作为成对比较的评判员。在这里,我们只将最终摘要提交给评估,以避免长度偏差。对于蒸馏后的模型,我们报告了AIME 2024、MATH-500、GPQA Diamond、Codeforces和LiveCodeBench上的代表性结果。
评估提示 遵循DeepSeek-V3的设置,使用simpleevals框架中的提示评估MMLU、DROP、GPQA Diamond和SimpleQA等标准基准测试。对于MMLU-Redux,我们采用零样本设置下的Zero-Eval提示格式( \overline{\operatorname{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的验证结果是通过无代理框架(Xia等,2024)获得的。与AIDER相关的基准测试使用“diff”格式测量。DeepSeek-R1的输出针对每个基准测试被限制在最多32,768个标记。
基线 我们与几个强大的基线进行了全面评估,包括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个标记。我们发现,使用贪婪解码评估长输出推理模型会导致更高的重复率,并且不同检查点之间的差异性显著。因此,我们默认使用pass@k评估(Chen等,2021),并使用非零温度报告pass@1。具体而言,我们使用0.6的采样温度和0.95的top-p值,为每个问题生成k个响应(通常根据测试集大小在4到64之间)。然后,pass@1计算为:
pass@1 = 1 k ∑ i = 1 k p i , \text { pass@1 }=\frac{1}{k} \sum_{i=1}^{k} p_{i}, pass@1 =k1i=1∑kpi,
其中, p i p_{i} pi表示第i个响应的正确性。这种方法提供了更可靠的性能估计。对于AIME 2024,我们还报告了使用64个样本的一致性(多数投票)结果(Wang等,2022),表示为cons@64。
对于MMLU、MMLU-Pro和GPQA Diamond等教育导向的知识基准测试,DeepSeek-R1相比DeepSeek-V3展现出了卓越的性能。这一提升主要归因于在STEM相关问题上准确度的增强,这些问题通过大规模强化学习取得了显著进步。此外,DeepSeek-R1在FRAMES这一长上下文依赖的问答任务上表现突出,展示了其强大的文档分析能力。这凸显了推理模型在AI驱动的搜索和数据分析任务中的潜力。在事实基准测试SimpleQA上,DeepSeek-R1的表现优于DeepSeek-V3,证明了其处理基于事实查询的能力。类似地,OpenAI-o1在这一基准测试上也超越了GPT-4o。然而,在中文SimpleQA基准测试上,DeepSeek-R1的表现不如DeepSeek-V3,这主要是因为它在安全强化学习后倾向于拒绝回答某些查询。如果不进行安全强化学习,DeepSeek-R1的准确度可以超过70%。
DeepSeek-R1在IF-Eval这一旨在评估模型遵循格式指令能力的基准测试上也取得了令人瞩目的成绩。这些改进与监督微调(SFT)和强化学习训练最终阶段纳入遵循指令的数据有关。此外,在AlpacaEval2.0和ArenaHard上观察到的卓越表现,表明了DeepSeek-R1在写作任务和开放领域问答方面的优势。DeepSeek-R1相较于DeepSeek-V3的显著超越,凸显了大规模强化学习的泛化优势,这不仅提升了推理能力,还提高了在不同领域的性能。此外,DeepSeek-R1生成的摘要长度简洁,在ArenaHard上平均689个标记,在AlpacaEval 2.0上平均2218个字符。这表明DeepSeek-R1在基于GPT的评估中避免了引入长度偏差,进一步巩固了其在多项任务中的稳健性。
在数学任务上,DeepSeek-R1的表现与OpenAI-o1-1217相当,远超其他模型。在编程算法任务(如LiveCodeBench和Codeforces)上也观察到类似趋势,这些基准测试以推理为重点的模型占据主导地位。在工程导向的编程任务上,OpenAI-o1-1217在Aider上表现优于DeepSeek-R1,但在SWE Verified上表现相当。我们相信,随着相关强化学习训练数据的增加,DeepSeek-R1的工程性能将在下一版本中有所提升。
3.2、蒸馏模型评估(Distilled Model Evaluation)
如表5所示,仅通过蒸馏DeepSeek-R1的输出,就能使高效的DeepSeek-R1-7B(即DeepSeek-R1-Distill-Qwen-7B,下文简称同)在各方面超越非推理模型GPT-4o-0513。DeepSeek-R1-14B在所有评估指标上都超越了QwQ-32BPreview,而DeepSeek-R1-32B和DeepSeek-R1-70B在大多数基准测试上显著超越了o1-mini。这些结果展示了蒸馏的巨大潜力。此外,我们发现对这些蒸馏后的模型应用强化学习可以获得进一步的显著收益。我们认为这值得进一步探索,因此这里只展示了简单SFT蒸馏模型的结果。
4、讨论
4.1、蒸馏与强化学习
在3.2节中,我们可以看到,通过蒸馏DeepSeek-R1,小模型可以取得令人印象深刻的结果。然而,还有一个问题:模型是否可以通过本文讨论的大规模强化学习训练而无需蒸馏来达到相当的性能?
为了回答这个问题,我们使用数学、代码和STEM数据对Qwen-32B-Base进行了大规模强化学习训练,训练步数超过10K步,从而得到了DeepSeek-R1-Zero-Qwen-32B。如表6所示的实验结果表明,32B基准模型在经过大规模强化学习训练后,性能与QwQ-32B-Preview相当。然而,从DeepSeek-R1蒸馏得到的DeepSeek-R1-Distill-Qwen-32B在所有基准测试上的表现都明显优于DeepSeek-R1-Zero-Qwen-32B。
因此,我们可以得出两个结论:第一,将更强大的模型蒸馏为较小的模型可以取得优异的结果,而依赖本文提及的大规模强化学习的小模型则需要巨大的计算能力,甚至可能无法达到蒸馏的性能。第二,虽然蒸馏策略既经济又有效,但要超越智能的界限,可能仍然需要更强大的基准模型和更大规模的强化学习。
4.2、失败的尝试
在开发DeepSeek-R1的早期阶段,我们也遇到了失败和挫折。我们在此分享失败的经验,以提供见解,但这并不意味着这些方法无法开发出有效的推理模型。
过程奖励模型(PRM) PRM是一种引导模型采用更好的方法来解决推理任务的合理方法(Lightman等,2023;Uesato等,2022;Wang等,2023)。然而,在实际应用中,PRM存在三个主要局限性,可能会阻碍其最终成功。首先,在一般推理中明确定义一个细粒度的步骤是具有挑战性的。其次,判断当前中间步骤是否正确是一项艰巨的任务。使用模型进行自动标注可能无法取得令人满意的结果,而手动标注则不利于规模扩展。第三,一旦引入基于模型的PRM,就不可避免地会导致奖励黑客攻击(Gao等,2022),并且重新训练奖励模型需要额外的训练资源,并使整个训练流程复杂化。总之,虽然PRM表现出对模型生成的前N个回答进行重新排序或辅助引导搜索的良好能力(Snell等,2024),但与我们实验中的大规模强化学习过程引入的额外计算开销相比,其优势有限。
蒙特卡洛树搜索(MCTS) 受AlphaGo(Silver等,2017b)和AlphaZero(Silver等,2017a)的启发,我们探索了使用蒙特卡洛树搜索(MCTS)来增强测试时的计算可扩展性。这种方法涉及将答案分解为更小的部分,以便模型可以系统地探索解空间。为了促进这一点,我们提示模型生成与搜索所需的特定推理步骤相对应的多个标签。对于训练,我们首先使用收集的提示通过由预训练价值模型指导的MCTS来找到答案。然后,我们使用生成的问题-答案对来训练演员模型和价值模型,迭代地改进该过程。
然而,当扩大训练规模时,这种方法遇到了几个挑战。首先,与搜索空间相对明确的国际象棋不同,标记生成呈现出一个指数级更大的搜索空间。为了解决这个问题,我们为每个节点设置了最大扩展限制,但这可能导致模型陷入局部最优。其次,价值模型直接影响生成的质量,因为它指导搜索过程的每一步。训练一个细粒度的价值模型本身就是困难的,这使得模型难以迭代改进。虽然AlphaGo的核心成功依赖于训练价值模型来逐步提高其性能,但由于标记生成的复杂性,这一原则在我们的设置中难以复制。
总之,虽然MCTS可以与预训练的价值模型配对,在推理时提高性能,但通过自我搜索迭代提升模型性能仍然是一个重大挑战。
5、结论、局限性和未来工作
在这项工作中,我们分享了通过强化学习增强模型推理能力的历程。DeepSeek-R1-Zero代表了一种不依赖冷启动数据的纯强化学习方法,在各种任务中取得了强劲性能。DeepSeek-R1更加强大,它结合了冷启动数据和迭代强化学习微调。最终,DeepSeek-R1在一系列任务上的性能可与OpenAI-o1-1217相媲美。
我们还进一步探索了将推理能力蒸馏到小型密集模型的方法。我们使用DeepSeek-R1作为教师模型生成80万个训练样本,并对几个小型密集模型进行了微调。结果很有希望:在数学基准测试中,DeepSeek-R1-Distill-Qwen-1.5B在AIME上达到28.9%,在MATH上达到83.9%,超过了GPT-4o和Claude-3.5-Sonnet。其他密集模型也取得了令人印象深刻的结果,显著优于基于相同底层检查点的其他指令调整模型。
在未来,我们计划对DeepSeek-R1进行以下方向的研究。
- 通用能力:目前,DeepSeek-R1在函数调用、多轮对话、复杂角色扮演和JSON输出等任务上的能力不如DeepSeek-V3。展望未来,我们计划探索如何利用长CoT来增强这些领域的任务。
- 语言混合:DeepSeek-R1目前针对中文和英文进行了优化,这可能导致在处理其他语言的查询时出现语言混合问题。例如,即使查询不是英文或中文,DeepSeek-R1也可能会使用英文进行推理和回复。我们旨在在未来的更新中解决这一局限性。
- 提示工程:在评估DeepSeek-R1时,我们观察到它对提示很敏感。少样本提示会一致地降低其性能。因此,我们建议用户直接使用零样本设置来描述问题和指定输出格式,以获得最佳结果。
- 软件工程任务:由于评估时间长,影响了强化学习过程的效率,因此大规模强化学习在软件工程任务中尚未得到广泛应用。因此,DeepSeek-R1在软件工程基准测试上并未表现出相对于DeepSeek-V3的巨大改进。未来版本将通过在软件工程数据上实施拒绝采样或在强化学习过程中融入异步评估来提高效率,从而解决这一问题。