来源:Web3天空之城
天空之城|城主
祝贺梁文锋和DeepSeek团队, 期待DeepSeek R2早日推出
标题: DeepSeek-R1:通过强化学习激励大语言模型的推理能力
Daya Guo, Dejian Yang, Haowei Zhang, Junxiao Song, Peiyi Wang, Qihao Zhu, Runxin Xu, Ruoyu Zhang, Shirong Ma, Xiao Bi, Xiaokang Zhang, Xingkai Yu, Yu Wu, Z. F. Wu, Zhibin Gou, Zhihong Shao, Zhuoshu Li, Ziyi Gao, Aixin Liu, Bing Xue, Bingxuan Wang, Bochao Wu, Bei Feng, Chengda Lu, …Zhen Zhang
《自然》第645卷, 第633–638页 (2025) 引用本文
摘要
通用推理是人工智能(AI)领域一个长期存在的艰巨挑战。近期的突破, 如大型语言模型(LLMs)和思维链(CoT)提示等, 已在基础推理任务上取得了显著成功。然而, 这种成功严重依赖于大量的人工标注范例, 并且模型的能力对于更复杂的问题仍然不足。本文中, 我们展示了通过纯强化学习(RL)可以激励LLMs的推理能力, 从而无需人工标记的推理轨迹。我们提出的强化学习框架促进了高级推理模式的涌现式发展, 例如自我反思、验证和动态策略调整。因此, 训练后的模型在数学、编程竞赛和STEM领域等可验证任务上取得了卓越的性能, 超越了通过传统监督学习在人类范例上训练的同类模型。此外, 这些大规模模型所展现出的涌现式推理模式可以被系统地用于指导和增强较小模型的推理能力。
正文
推理能力是人类智能的基石, 它支撑着从数学问题解决到逻辑推演和编程等复杂的认知任务。人工智能近期的进展表明, 当LLMs扩展到足够大的规模时, 可以展现出包括推理能力在内的涌现行为。然而, 在预训练中实现此类能力通常需要巨大的计算资源。与此同时, 另一条互补的研究路线表明, 通过思维链(CoT)提示可以有效增强LLMs的能力。这项技术通过提供精心设计的少样本示例或使用极简提示(如“让我们一步一步地思考”), 使模型能够生成中间推理步骤, 从而显著提升其在复杂任务上的性能。同样, 当模型在后训练阶段学习高质量、多步骤的推理轨迹时, 也观察到了性能的进一步提升。尽管这些方法卓有成效, 但它们也存在显著的局限性。它们对人工标注的推理轨迹的依赖减缓了可扩展性, 并引入了认知偏见。此外, 通过限制模型复制人类的思维过程, 其性能本质上受限于人类提供的范例, 这阻碍了对更优越、非类人推理路径的探索。
为了解决这些问题, 我们旨在探索LLMs在强化学习框架下通过自我演进发展推理能力的潜力, 并最大限度地减少对人类标记工作的依赖。具体来说, 我们基于DeepSeek-V3 Base, 并使用组相对策略优化(Group Relative Policy Optimization, GRPO)作为我们的强化学习框架。奖励信号仅基于最终预测与标准答案的正确性, 而不对推理过程本身施加约束。值得注意的是, 我们绕过了强化学习训练前传统的监督微调(SFT)阶段。这一设计选择源于我们的假设, 即人类定义的推理模式可能会限制模型的探索, 而无限制的强化学习训练能更好地激励LLMs中新推理能力的涌现。通过下一节详述的这一过程, 我们的模型(称为DeepSeek-R1-Zero)自然地发展出了多样化且复杂的推理行为。为了解决推理问题, 该模型倾向于生成更长的响应, 在每个响应中都包含了验证、反思和对替代方法的探索。尽管我们没有明确教导模型如何推理, 但它通过强化学习成功地学会了更优的推理策略。
尽管DeepSeek-R1-Zero展现出卓越的推理能力, 但它也面临一些挑战, 如可读性差和语言混用问题, 有时会在单个思维链响应中混合使用英语和中文。此外, DeepSeek-R1-Zero的基于规则的强化学习训练阶段狭隘地专注于推理任务, 导致其在写作和开放域问答等更广泛领域的性能受限。为应对这些挑战, 我们引入了DeepSeek-R1, 这是一个通过整合了拒绝采样、强化学习和监督微调的多阶段学习框架训练出的模型, 详见“DeepSeek-R1”部分。这一训练流程使DeepSeek-R1能够继承其前身DeepSeek-R1-Zero的推理能力, 同时通过进一步的非推理数据使模型行为与人类偏好对齐。
为了让更广泛的用户能以更低的能源成本使用强大的人工智能, 我们蒸馏了几个较小的模型并将其公之于众。这些蒸馏后的模型展现出强大的推理能力, 其性能超越了它们原始的指令微调版本。我们相信, 这些指令微调版本也将为研究社区做出巨大贡献, 为理解长思维链推理模型的内在机制和推动更强大推理模型的开发提供宝贵资源。我们按照“代码可用性”部分的描述, 公开了DeepSeek-R1-Zero、DeepSeek-R1、数据样本和蒸馏模型。
DeepSeek-R1-Zero
为实现DeepSeek-R1-Zero的大规模强化学习, 我们采用了一个高效的强化学习流程。具体来说, 我们使用GRPO作为我们的强化学习算法, 具体描述见方法部分的“GRPO”。此外, 我们使用基于规则的奖励系统来计算准确性和格式奖励, 详细方法论在方法部分的“奖励设计”中概述。此外, 我们的高性能强化学习基础设施在补充信息的2.1节中有所描述, 确保了可扩展且高效的训练。
具体而言, 我们将强化学习技术应用于DeepSeek-V3 Base来训练DeepSeek-R1-Zero。在训练过程中, 我们设计了一个简单的模板, 要求DeepSeek-R1-Zero首先产出推理过程, 然后给出最终答案。提示模板如下:
“用户与助手之间的一段对话。用户提出一个问题, 助手解决它。助手首先在脑海中思考推理过程, 然后向用户提供答案。推理过程和答案分别被包含在...和...标签内, 即 此处为推理过程 此处为答案 。用户:[提示]。助手:”, 其中[提示]在训练时会被具体的推理问题替换。我们有意将约束限制在这种结构格式上, 避免任何内容上的偏见, 以确保能准确观察到模型在强化学习过程中的自然演进。
图1a展示了DeepSeek-R1-Zero在整个强化学习训练过程中在美国数学邀请赛(AIME)2024基准测试上的性能轨迹, 其中AIME 2024上的平均pass@1得分显著提升, 从最初的15.6%跃升至77.9%。此外, 通过使用自洽性解码, 模型的性能可以进一步提高, 准确率达到86.7%。这一性能远超所有人类参赛者在AIME竞赛中的平均表现。除了数学竞赛, 如补充图8所示, DeepSeek-R1-Zero在编程竞赛以及研究生水平的生物、物理和化学问题上也取得了卓越的性能。这些结果突显了强化学习在增强LLMs推理能力方面的有效性。
图 1:DeepSeek-R1-Zero在整个训练过程中的准确率和输出长度。
DeepSeek-R1-Zero在训练期间的AIME准确率。AIME以一个数学问题为输入, 一个数字为输出, 如扩展数据表1所示。pass@1和cons@16的描述见补充信息4.1节。基线是人类参与者在AIME竞赛中取得的平均分。b, DeepSeek-R1-Zero在强化学习过程中对训练集的平均响应长度。DeepSeek-R1-Zero自然地学会了用更多的思考时间来解决推理任务。请注意, 一个训练步骤指一次策略更新操作。
除了训练过程中推理能力的逐步增强, DeepSeek-R1-Zero还随着强化学习训练展现出自我演进行为。如图1b所示, DeepSeek-R1-Zero的思考时间在整个训练过程中稳步增加, 这完全是由内在适应而非外部修改驱动的。利用长思维链, 模型逐步完善其推理过程, 生成成百上千个词元来探索和改进其解决问题的策略。
思考时间的增加有助于复杂行为的自主发展。具体来说, DeepSeek-R1-Zero越来越多地展现出高级推理策略, 如扩展数据图1a中所示的反思性推理和对替代解决方案的系统性探索, 这极大地提升了其在数学和编程等可验证任务上的性能。值得注意的是, 在训练期间, DeepSeek-R1-Zero展现出一个“顿悟时刻”(如表1所示), 其特征是在反思过程中“wait”(等等)一词的使用突然增加(如扩展数据图1b所示)。这个时刻标志着推理模式的明显转变, 并清晰地展示了DeepSeek-R1-Zero的自我演进过程。
表1:DeepSeek-R1-Zero中间版本一个有趣的“顿悟时刻”
问题:如果 a > 1, 那么实数解的总和 (\sqrt{{\boldsymbol{a}}{\boldsymbol{-}}\sqrt{{\boldsymbol{a}}{\boldsymbol{+}}{\boldsymbol{x}}}}{\boldsymbol{=}}{\boldsymbol{x}}) 等于多少? |
---|
回应:为了解这个方程 (\sqrt{a-\sqrt{a+x}}=x), 让我们从两边平方开始… (a−a+x)2=x2⇒a−a+x=x2。(a−a+x)2=x2⇒a−a+x=x2。 重新整理以分离出内部的平方根项: (a−x2)2=a+x⇒a2−2ax2+(x2)2=a+x⇒x4−2ax2−x+(a2−a)=0(a−x2)2=a+x⇒a2−2ax2+(x2)2=a+x⇒x4−2ax2−x+(a2−a)=0 …等等, 等等。等等。这是一个我可以标记出来的顿悟时刻。让我们一步一步地重新评估, 以确定是否可以得出正确的和…我们从这个方程开始:(\sqrt{a-\sqrt{a+x}}=x)首先, 让我们两边平方: a−a+x=x2⇒a+x=a−x2a−a+x=x2⇒a+x=a−x2 接下来, 我可以再次对两边进行平方, 处理这个方程:…… |
模型学会了用一种拟人化的语气进行反思。这对我们来说也是一个顿悟时刻, 让我们见证了强化学习的力量与魅力。 |
DeepSeek-R1-Zero的自我演进突显了强化学习的力量与魅力:我们并非明确教导模型如何解决问题, 而是仅为其提供正确的激励, 它便能自主地发展出高级的问题解决策略。这提醒我们强化学习在解锁LLMs更高层次能力方面的潜力, 为未来更自主、更具适应性的模型铺平了道路。 |
DeepSeek-R1
尽管DeepSeek-R1-Zero展现出强大的推理能力, 但它也存在一些问题。DeepSeek-R1-Zero面临着可读性差和语言混用等挑战, 因为DeepSeek-V3 Base是在多种语言(尤其是英语和中文)上训练的。为了解决这些问题, 我们开发了DeepSeek-R1, 其流程如图2所示。在初始阶段, 我们收集了数千条展现对话式、与人类对齐的思维过程的冷启动数据, 详见补充信息2.3.2节。然后, 使用方法部分“第一阶段强化学习的训练细节”中的超参数和补充信息2.3.1节中的数据细节进行强化学习训练, 以改善模型在对话式思维过程和语言一致性方面的性能。随后, 我们再次应用拒绝采样和监督微调。这一阶段将推理和非推理数据集都纳入SFT过程, 详见补充信息2.3.3节, 使模型不仅能在推理任务上表现出色, 还能展现出高级的写作能力。为了使模型进一步与人类偏好对齐, 我们实施了第二阶段的强化学习, 旨在增强模型的有用性和无害性, 同时进一步完善其推理能力。奖励模型在方法部分“奖励设计”中描述, 强化学习的超参数在方法部分“第二阶段强化学习的训练细节”中提供。总训练成本列于补充信息2.4.4节。
图 2:DeepSeek-R1的多阶段流程。
关于DeepSeek-V3 Base和DeepSeek-V3的详细背景信息见补充信息1.1节。模型DeepSeek-R1 Dev1、Dev2和Dev3代表此流程中的中间检查点。
我们在MMLU、MMLU-Redux、MMLU-Pro、DROP、C-Eval、IFEval、FRAMES、GPQA Diamond、SimpleQA、C-SimpleQA、CLUEWSC、AlpacaEval 2.0 (ref. 22)、Arena-Hard、SWE-bench Verified、Aider-Polyglot、LiveCodeBench (2024-08–2025-01)、Codeforces、中国高中数学奥林匹克(CNMO 2024)和AIME 2024 (ref. 29)等基准上评估了我们的模型。这些基准的细节在补充表15-29中提供。
表2总结了DeepSeek-R1在图2所述的几个发展阶段的性能。DeepSeek-R1-Zero与DeepSeek-R1 Dev1的比较显示, 在指令遵循方面有显著提升, 这体现在IF-Eval和Arena-Hard基准测试上更高的分数。然而, 由于冷启动数据集规模有限, Dev1的推理性能相较于DeepSeek-R1-Zero出现了部分下降, 尤其是在AIME基准上。相比之下, DeepSeek-R1 Dev2在需要高级推理能力的基准上表现出显著的性能提升, 包括那些专注于代码生成、数学问题解决和STEM相关任务的基准。而针对通用任务的基准, 如AlpacaEval 2.0, 则表现出轻微的改善。这些结果表明, 面向推理的强化学习能显著增强推理能力, 而对面向用户偏好的基准影响有限。
表2:DeepSeek-R1各阶段的实验结果
模型 |
DeepSeek-R1-Zero |
DeepSeek-R1 Dev1 |
DeepSeek-R1 Dev2 |
DeepSeek-R1 Dev3 |
DeepSeek-R1 |
通用能力 | |||||
MMLU (%) |
88.7 |
89.2 |
89.1 |
89.5 | 89.5 |
MMLU-Redux (%) |
88.5 |
88.8 |
88.7 |
89.3 |
89.2 |
MMLU-Pro (%) |
64.6 |
65.1 |
65.0 |
65.6 |
65.5 |
DROP (F1) |
88.1 |
88.3 |
88.2 |
88.2 |
88.2 |
C-Eval (验证集, %) |
90.7 |
91.0 |
90.9 |
91.1 | 91.1 |
IFEval (%) |
77.2 |
85.8 |
85.1 |
86.1 |
85.9 |
FRAMES (%) |
65.2 |
65.8 |
65.5 |
66.1 |
66.0 |
GPQA Diamond (%) |
39.5 |
39.8 |
39.7 |
40.1 |
40.2 |
SimpleQA (%) |
78.4 |
78.8 |
78.7 |
79.2 |
79.1 |
C-SimpleQA (%) |
83.1 |
83.5 |
83.4 |
83.8 |
83.7 |
CLUEWSC (%) |
86.8 |
87.1 |
87.0 |
87.3 |
87.2 |
AlpacaEval 2.0 (LC 胜率, %) |
24.3 |
25.1 |
25.3 |
26.2 |
51.2 |
Arena-Hard (胜率, %) |
26.1 |
28.5 |
28.9 |
30.1 |
47.1 |
编程能力 | |||||
SWE-bench Verified (pass@1, %) |
16.7 |
16.8 |
17.1 |
17.3 |
17.2 |
Aider-Polyglot (通过率, %) |
75.1 |
75.2 |
75.5 |
76.8 |
76.6 |
LiveCodeBench (pass@1, %) |
41.2 |
41.3 |
42.5 |
42.1 |
42.3 |
Codeforces (pass@1) |
36.8 |
36.7 |
39.5 |
39.1 |
39.3 |
数学能力 | |||||
CNMO 2024 (pass@1) |
45.1 |
44.8 |
48.1 |
47.9 |
48.0 |
AIME 2024 (pass@1) |
77.9 |
75.3 |
79.2 |
78.8 |
79.0 |
注:
在DeepSeek-R1的不同版本中, 最高分以粗体突出显示。 Dev, 开发版本。 LC, 长度控制。
MMLU (大规模多任务语言理解) - 综合性的知识评估, 涵盖57个不同学科。
MMLU-Redux (MMLU修订版) - MMLU的修正版本, 旨在提高评测的准确性。
MMLU-Pro (MMLU专业版) - MMLU的更具挑战性的版本, 包含更难的多选题。
DROP (F1) (段落离散推理) - 一项阅读理解基准, 要求模型在段落中进行推理和计算。
C-Eval (中文评估套件) - 针对中文的综合性知识评估基准。
IFEval (指令遵循评估) - 评估模型遵循复杂和约束性指令的能力。
FRAMES (事实性评估) - 评估模型回答问题时的事实准确性, 检测其是否产生幻觉。
GPQA Diamond (研究生水平难题) - 包含难以通过搜索引擎直接找到答案的研究生水平专业问题。
SimpleQA (简单问答) - 一个基于事实的简单问答数据集。7
C-SimpleQA (中文简单问答) - SimpleQA的中文版本, 评估中文事实性问答能力。
CLUEWSC (中文常识推理-代词消歧) - 评估模型在中文语境下的常识推理和代词指代消歧能力。
AlpacaEval 2.0 - 一个自动评估基准, 衡量模型遵循通用指令的质量。
Arena-Hard (竞技场-困难模式) - 基于真实世界困难用户查询的基准, 通过人类偏好来评估模型性能。
编程能力
SWE-bench Verified (软件工程基准) - 评估模型解决真实世界代码库中软件工程问题(如修复bug)的能力。
Aider-Polyglot (多语言编程任务) - 评估模型在多种编程语言中完成实际编码任务的性能。
LiveCodeBench (实时编程竞赛) - 一个基于真实编程竞赛问题的基准, 评估模型的实时解题能力。
Codeforces (编程竞赛平台) - 使用来自知名编程竞赛网站Codeforces的问题来评估算法和编码能力。
数学能力
CNMO 2024 (中国高中数学奥林匹克) - 评估模型解决中国高中数学奥林匹克竞赛级别难题的能力。
AIME 2024 (美国数学邀请赛) - 评估模型解决美国数学邀请赛(AIME)级别高难度数学问题的能力。
DeepSeek-R1 Dev3将推理和非推理数据集都整合到SFT流程中, 从而提升了模型在推理和通用语言生成任务上的熟练度。与Dev2相比, DeepSeek-R1 Dev3在AlpacaEval 2.0和Aider-Polyglot上取得了显著的性能提升, 这归功于大规模非推理语料库和代码工程数据集的引入。最后, 在DeepSeek-R1 Dev3上使用混合了以推理为中心和通用目的的数据进行全面的强化学习训练, 得到了最终的DeepSeek-R1。由于在前期阶段已进行了大量的针对性推理强化学习, 因此在代码和数学基准上的提升幅度不大。最终版DeepSeek-R1的主要进步体现在通用指令遵循和用户偏好基准上, 其中AlpacaEval 2.0提升了25%, Arena-Hard提升了17%。
我们还在补充信息4.2节中将DeepSeek-R1与其他模型进行了比较。模型安全性评估在补充信息4.3节中提供。补充信息第5节提供了全面的评估分析, 包括与DeepSeek-V3的比较、在全新测试集上的性能评估、按类别划分的数学能力分析以及对测试时扩展行为的探究。补充信息第6节表明, 强大的推理能力可以迁移到较小的模型中。
伦理与安全声明
随着DeepSeek-R1推理能力的提升, 我们深刻认识到其潜在的伦理风险。例如, R1可能会遭受越狱攻击, 导致生成危险内容, 如制造炸药的计划;而增强的推理能力使得模型能够提供操作可行性与可执行性更强的计划。此外, 一个公开的模型也容易被进一步微调, 从而可能破坏其固有的安全保护措施。
在补充信息4.3节中, 我们从多个角度呈现了一份全面的安全报告, 包括在开源和内部安全评估基准上的表现, 以及在多种语言和对抗越狱攻击时的安全水平。这些全面的安全分析得出结论, DeepSeek-R1模型的内在安全水平与其他顶尖模型相比, 总体处于中等水平(与GPT-4o (2024-05-13)相当)。此外, 当与风险控制系统结合使用时, 模型的安全水平能提升至优越标准。
结论、局限性与未来工作
我们介绍了DeepSeek-R1-Zero和DeepSeek-R1, 它们依靠大规模强化学习来激励模型的推理行为。我们的结果表明, 预训练的检查点本身就蕴含着处理复杂推理任务的巨大潜力。我们相信, 解锁这一潜力的关键不在于大规模的人工标注, 而在于提供困难的推理问题、一个可靠的验证器以及充足的强化学习计算资源。自我验证和反思等复杂的推理行为似乎在强化学习过程中有机地涌现出来。
尽管DeepSeek-R1在推理基准上取得了前沿成果, 但它仍然面临一些能力上的局限性, 概述如下。
结构化输出与工具使用目前, 与现有模型相比, DeepSeek-R1的结构化输出能力仍有待提高。此外, DeepSeek-R1无法利用搜索引擎和计算器等工具来提升输出性能。然而, 由于为结构化输出和工具使用构建强化学习环境并不困难, 我们相信这个问题将在下一版本中得到解决。
令牌效率与传统测试时计算扩展方法(如多数投票或蒙特卡洛树搜索(MCTS))不同, DeepSeek-R1在推理时会根据手头问题的复杂性动态分配计算资源。具体来说, 它用较少的令牌解决简单任务, 但为复杂任务生成更多令牌。尽管如此, 在令牌效率方面仍有进一步优化的空间, 因为在响应较简单问题时, 仍然观察到过度推理——表现为过度思考——的实例。
语言混用DeepSeek-R1目前针对中文和英文进行了优化, 这可能导致在处理其他语言的查询时出现语言混用问题。例如, 即使查询的语言不是英语或中文, DeepSeek-R1也可能使用英语进行推理和响应。我们计划在未来的更新中解决这一局限性。这个局限性可能与基础检查点DeepSeek-V3 Base有关, 该模型主要使用中文和英文, 因此在这两种语言的推理上能取得更好的效果。
提示工程在评估DeepSeek-R1时, 我们观察到它对提示很敏感。少样本提示总是会降低其性能。因此, 我们建议用户直接描述问题, 并在零样本设置下指定输出格式以获得最佳结果。
软件工程任务由于评估时间长, 影响了强化学习过程的效率, 大规模强化学习尚未广泛应用于软件工程任务。因此, DeepSeek-R1在软件工程基准上并未展现出比DeepSeek-V3巨大的提升。未来版本将通过对软件工程数据实施拒绝采样或在强化学习过程中引入异步评估来提高效率, 以解决此问题。
除了具体的能力局限性, 纯强化学习方法本身也存在固有的挑战:
奖励破解纯强化学习的成功依赖于可靠的奖励信号。在本研究中, 我们通过一个基于规则的推理领域奖励模型来确保奖励的可靠性。然而, 对于某些任务(如写作), 此类可靠的奖励模型难以构建。如果奖励信号由模型而非预定义规则分配, 那么随着训练的进行, 它变得更容易被利用, 这意味着策略模型可能会找到捷径来破解奖励模型。因此, 对于那些无法通过可靠奖励模型进行有效评估的复杂任务, 扩展纯强化学习方法仍然是一个开放的挑战。
在这项工作中, 对于无法获得可靠信号的任务, DeepSeek-R1使用人工标注来创建监督数据, 并且仅进行数百步的强化学习。我们希望未来能获得一个强大的奖励模型来解决此类问题。
随着像DeepSeek-R1这样的纯强化学习方法的出现, 未来在解决任何可被验证器有效评估的任务方面都蕴藏着巨大的潜力, 无论这些任务对人类而言有多复杂。配备了此类先进强化学习技术的机器有望在这些领域超越人类的能力, 其驱动力在于它们能通过试错迭代优化性能。然而, 对于那些构建可靠奖励模型本身就很困难的任务, 挑战依然存在。在这种情况下, 缺乏强大的反馈机制可能会减缓进展, 这表明未来的研究应侧重于开发创新方法来为这些复杂的、不易验证的问题定义和完善奖励结构。
此外, 在推理过程中利用工具具有显著的前景。无论是使用编译器或搜索引擎等工具来检索或计算必要信息, 还是使用生物或化学试剂等外部工具来在现实世界中验证最终结果, 这种工具增强推理的整合都可能极大地扩展机器驱动解决方案的范围和准确性。
方法
GRPOGRPO是我们用来训练DeepSeek-R1-Zero和DeepSeek-R1的强化学习算法。它最初被提出是为了简化训练过程并减少近端策略优化(PPO)的资源消耗, PPO在LLMs的强化学习阶段被广泛使用。GRPO的流程如扩展数据图2所示。
对于每个问题q, GRPO从旧策略中采样一组输出, 然后通过最大化以下目标来优化策略模型:
(1)
(2)
其中,是参考策略,和是超参数,是优势, 使用对应于每组输出的一组奖励计算得出:
(3)
我们在补充信息1.3节中对GRPO和PPO进行了比较。
奖励设计奖励是训练信号的来源, 决定了强化学习优化的方向。对于DeepSeek-R1-Zero, 我们使用基于规则的奖励为数学、编程和逻辑推理领域的数据提供精确的反馈。对于DeepSeek-R1, 我们扩展了这种方法, 结合了用于推理导向数据的基于规则的奖励和用于通用数据的基于模型的奖励, 从而增强了学习过程在不同领域的适应性。
基于规则的奖励我们的基于规则的奖励系统主要包括两种类型的奖励:准确性奖励和格式奖励。
准确性奖励评估响应是否正确。例如, 在具有确定性结果的数学问题中, 模型被要求以指定格式(例如, 在一个方框内)提供最终答案, 从而可以进行可靠的基于规则的正确性验证。类似地, 对于代码竞赛的提示, 可以使用编译器根据一套预定义的测试用例来评估模型的响应, 从而生成关于正确性的客观反馈。
格式奖励通过强制执行特定的格式要求来补充准确性奖励模型。特别地, 模型被激励将其推理过程封装在指定的标签内, 即和。这确保了模型的思维过程被明确地描绘出来, 增强了可解释性并便于后续分析。
(4)
准确性奖励和格式奖励以相同的权重组合。值得注意的是, 我们避免将神经奖励模型——无论是基于结果还是基于过程的——应用于推理任务。这个决定是基于我们的观察, 即神经奖励模型在大规模强化学习期间容易受到奖励破解的影响。此外, 重新训练此类模型需要大量的计算资源, 并给训练流程增加了进一步的复杂性, 从而使整个优化过程变得复杂。
基于模型的奖励对于通用数据, 我们借助奖励模型来捕捉复杂和细微场景中的人类偏好。我们基于DeepSeek-V3的流程, 并使用类似的偏好对和训练提示分布。在有用性方面, 我们只关注最终的摘要, 确保评估强调响应对用户的用途和相关性, 同时最大限度地减少对底层推理过程的干扰。在无害性方面, 我们评估模型的整个响应, 包括推理过程和摘要, 以识别和减轻在生成过程中可能出现的任何潜在风险、偏见或有害内容。
有用性奖励模型为了进行有用性奖励模型训练, 我们首先使用Arena-Hard提示格式(列于补充信息2.2节)提示DeepSeek-V3来生成偏好对, 其中每对包含一个用户查询和两个候选响应。对于每个偏好对, 我们查询DeepSeek-V3四次, 随机将响应分配为响应A或响应B以减轻位置偏差。最终的偏好得分通过平均四次独立判断来确定, 仅保留那些得分差异(Δ)超过1的配对, 以确保有意义的区分。此外, 为了最小化与长度相关的偏差, 我们确保整个数据集中被选择和被拒绝的响应具有相当的长度。我们总共策划了66,000个数据对用于训练奖励模型。该数据集中使用的提示都是非推理问题, 来源于公开可用的开源数据集或已明确同意分享其数据以用于模型改进的用户。我们的奖励模型架构与DeepSeek-R1的架构一致, 增加了一个旨在预测标量偏好分数的奖励头。
(5)
有用性奖励模型的训练批量大小为256, 学习率为, 并在训练数据集上训练一个epoch。训练期间的最大序列长度设置为8,192个词元, 而在奖励模型推理期间没有施加明确限制。
安全性奖励模型为了评估和提高模型安全性, 我们策划了一个包含106,000个提示的数据集, 其中模型生成的响应根据预定义的安全指南被标注为“安全”或“不安全”。与有用性奖励模型中使用的成对损失不同, 安全性奖励模型使用逐点方法进行训练, 以区分安全和不安全的响应。训练超参数与有用性奖励模型相同。
(6)
对于通用查询, 每个实例被分类为属于安全性数据集或有用性数据集。分配给每个查询的通用奖励对应于相关数据集中定义的相应奖励。
训练细节DeepSeek-R1-Zero的训练细节为了训练DeepSeek-R1-Zero, 我们将学习率设置为, KL散度(Kullback–Leibler)系数设置为0.001, rollout的采样温度设置为1。对于每个问题, 我们在第8.2k步之前采样16个最大长度为32,768个词元的输出, 之后则为65,536个词元。因此, DeepSeek-R1-Zero的性能和响应长度在第8.2k步时都出现了显著的跃升, 训练总共持续了10,400步, 相当于1.6个训练epoch。每个训练步骤包含32个独立问题, 导致每步的训练批量大小为512。每400步, 我们用最新的策略模型替换参考模型。为了加速训练, 每个rollout生成8,192个输出, 这些输出被随机分成16个小批量, 并且只训练一个内部epoch。
第一阶段强化学习的训练细节在强化学习的第一阶段, 我们将学习率设置为, KL系数设置为0.001, GRPO裁剪比率设置为10, rollout的采样温度设置为1。对于每个问题, 我们采样16个最大长度为32,768的输出。每个训练步骤包含32个独立问题, 导致每步的训练批量大小为512。每400步, 我们用最新的策略模型替换参考模型。为了加速训练, 每个rollout生成8,192个输出, 这些输出被随机分成16个小批量, 并且只训练一个内部epoch。然而, 为了缓解语言混用问题, 我们在强化学习训练期间引入了语言一致性奖励, 该奖励计算为思维链中目标语言单词的比例。
(7)
尽管补充信息2.6节中的消融实验表明, 这种对齐会导致模型性能轻微下降, 但该奖励与人类偏好对齐, 使其更具可读性。我们通过将其直接加到最终奖励中, 将语言一致性奖励应用于推理和非推理数据。
请注意, 裁剪比率在训练中起着至关重要的作用。较低的值可能导致大量词元的梯度被截断, 从而降低模型性能, 而较高的值可能导致训练期间的不稳定。本阶段使用的强化学习数据的详细信息在补充信息2.3节中提供。
第二阶段强化学习的训练细节具体来说, 我们使用奖励信号和多样化的提示分布相结合的方式来训练模型。对于推理数据, 我们遵循DeepSeek-R1-Zero中概述的方法, 该方法使用基于规则的奖励来指导数学、编程和逻辑推理领域的学习。在训练过程中, 我们观察到思维链经常表现出语言混用, 特别是当强化学习提示涉及多种语言时。对于通用数据, 我们使用奖励模型来指导训练。最终, 奖励信号与多样化数据分布的整合使我们能够开发出一个不仅在推理方面表现出色, 而且优先考虑有用性和无害性的模型。给定一批数据, 奖励可以表述为
(8)
其中
(9)
(10)
强化学习的第二阶段保留了第一阶段的大部分参数, 主要区别在于将温度降低到0.7, 因为我们发现此阶段较高的温度会导致生成内容不连贯。该阶段共包含1,700个训练步骤, 其中通用指令数据和基于偏好的奖励仅在最后的400步中被引入。我们发现, 使用基于模型的偏好奖励信号进行更多训练步骤可能导致奖励破解, 这在补充信息2.5节中有记录。
(后续的Data availability至Additional information等部分为元信息、参考文献和附录图表说明, 格式和内容保持原文形式, 仅对说明性文字进行翻译。)
数据可用性
我们在 https://github.com/deepseek-ai/DeepSeek-R1 (https://doi.org/10.5281/zenodo.15753193) 提供了我们用于拒绝采样和强化学习提示的数据样本。我们完整数据生成方法的综合统计数据和细节在补充信息2.3节中呈现。
代码可用性
DeepSeek-R1-Zero和DeepSeek-R1的训练权重在MIT许可下可在 https://github.com/deepseek-ai/DeepSeek-R1 (https://doi.org/10.5281/zenodo.15753193) 获取。推理脚本发布于 https://github.com/deepseek-ai/DeepSeek-V3 (https://doi.org/10.5281/zenodo.15753347)。神经网络是使用PyTorch开发的, 分布式框架基于我们的内部框架HAI-LLM (https://www.high-flyer.cn/en/blog/hai-llm)。推理框架基于vLLM。数据分析使用了Python v.3.8 (https://www.python.org/)、NumPy v.1.23.1 (https://github.com/numpy/numpy)、Matplotlib v.3.5.2 (https://github.com/matplotlib/matplotlib) 和 TensorBoard v.2.9.1 (https://github.com/tensorflow/tensorboard)。
参考文献
-
1. Brown, T. B. et al. Language models are few-shot learners. [语言模型是小样本学习者]. In Advances in Neural Information Processing Systems 33 (eds Larochelle, H. et al.) (ACM, 2020).
-
2. OpenAI et al. GPT4 technical report. [GPT-4技术报告]. Preprint athttps://doi.org/10.48550/arXiv.2303.08774(2024).
-
3. Wei, J. et al. Chain-of-thought prompting elicits reasoning in large language models. [思维链提示引发大型语言模型的推理能力]. In Advances in Neural Information Processing Systems 35 (eds Koyejo, S. et al.) 24824–24837 (ACM, 2022).
-
4. Wei, J. et al. Emergent abilities of large language models. [大型语言模型的涌现能力]. In Transactions on Machine Learning Research (eds Kamath, G. et al.) (2022).
-
5. Kaplan, J. et al. Scaling laws for neural language models. [神经语言模型的扩展法则]. Preprint athttps://doi.org/10.48550/arXiv.2001.08361(2020).
-
6. Kojima, T., Gu, S. S., Reid, M., Matsuo, Y. & Iwasawa, Y. Large language models are zero-shot reasoners. [大型语言模型是零样本推理者]. In Advances in Neural Information Processing Systems 35 (eds Oh, A. H. et al.) 22199–22213 (ACM, 2022).
-
7. Chung, H. W. et al. Scaling instruction-finetuned language models. [扩展指令微调语言模型]. J. Mach. Learn. Res.25, 1–53 (2024).
-
8. DeepSeek-AI et al. DeepSeek-V3 technical report. [DeepSeek-V3技术报告]. Preprint athttps://doi.org/10.48550/arXiv.2412.19437(2025).
-
9. Shao, Z. et al. DeepSeekMath: pushing the limits of mathematical reasoning in open language models. [DeepSeekMath:推动开放语言模型中数学推理的极限]. Preprint athttps://doi.org/10.48550/arXiv.2402.03300(2024).
-
10. Wang, X. et al. Self-consistency improves chain of thought reasoning in language models. [自洽性提升语言模型中的思维链推理]. In 11th International Conference on Learning Representations (ICLR, 2023).
-
11. Hendrycks, D. et al. Measuring massive multitask language understanding. [衡量大规模多任务语言理解能力]. In 9th International Conference on Learning Representations (ICLR, 2021).
-
12. Gema, A. P. et al. Are we done with MMLU? [MMLU评测已经到头了吗?]. In Proc. 2025 Conference of the Nations of the Americas Chapter of the Association for Computational Linguistics: Human Language Technologies (eds Chiruzzo, L. et al.) Vol. 1 (Long Papers), 5069–5096 (ACL, 2025).
-
13. Wang, Y. et al. MMLU-Pro: a more robust and challenging multi-task language understanding benchmark. [MMLU-Pro:一个更鲁棒且更具挑战性的多任务语言理解基准]. In Advances in Neural Information Processing Systems 37 (eds Globersons, A. et al.) 95266–95290 (ACM, 2024).
-
14. Dua, D. et al. DROP: a reading comprehension benchmark requiring discrete reasoning over paragraphs. [DROP:一个需要对段落进行离散推理的阅读理解基准]. In Proc. 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies Vol. 1 (Long and Short Papers) (eds Burstein, J. et al.) 2368–2378 (ACL, 2019).
-
15. Huang, Y. et al. C-EVAL: a multi-level multi-discipline Chinese evaluation suite for foundation models. [C-EVAL:一个面向基础模型的多层次、多学科中文评估套件]. In Advances in Neural Information Processing Systems 36 (eds Oh, A. et al.) 62991–63010 (ACM, 2023).
-
16. Zhou, J. et al. Instruction-following evaluation for large language models. [面向大型语言模型的指令遵循能力评估]. Preprint athttps://doi.org/10.48550/arXiv.2311.07911(2023).
-
17. Krishna, S. et al. Fact, fetch, and reason: a unified evaluation of retrieval-augmented generation. [事实、检索与推理:检索增强生成的统一评估]. In Proc. 2025 Conference of the Nations of the Americas Chapter of the Association for Computational Linguistics: Human Language Technologies Vol. 1 (Long Papers) 4745–4759 (ACL, 2025).
-
18. Rein, D. et al. GPQA: a graduate-level Google-proof Q&A benchmark. [GPQA:一个研究生水平、防搜索引擎的问答基准]. Preprint athttps://doi.org/10.48550/arXiv.2311.12022(2023).
-
19. OpenAI. Introducing SimpleQA; [介绍SimpleQA].https://openai.com/index/introducing-simpleqa/(2024).
-
20. He, Y. et al. Chinese SimpleQA: a Chinese factuality evaluation for large language models. [中文SimpleQA:一个面向大型语言模型的中文事实性评估]. In Proc. 63rd Annual Meeting of the Association for Computational Linguistics Vol. 1 (Long Papers), 19182–19208 (ACL, 2025).
-
21. Xu, L. et al. CLUE: a Chinese Language Understanding Evaluation benchmark. [CLUE:中文语言理解评估基准]. In Proc. 28th International Conference on Computational Linguistics (eds Scott, D. et al.) 4762–4772 (International Committee on Computational Linguistics, 2020).
-
22. Dubois, Y., Galambosi, B., Liang, P. & Hashimoto, T. B. Length-controlled AlpacaEval: a simple way to debias automatic evaluators. [长度受控的AlpacaEval:一种为自动评估器去偏的简单方法]. Preprint athttps://doi.org/10.48550/arXiv.2404.04475(2025).
-
23. Li, T. et al. From crowdsourced data to high-quality benchmarks: Arena-Hard and BenchBuilder pipeline. [从众包数据到高质量基准:Arena-Hard与BenchBuilder流程]. Preprint athttps://doi.org/10.48550/arXiv.2406.11939(2024).
-
24. OpenAI. Introducing SWE-bench verified; [介绍SWE-bench verified].https://openai.com/index/introducing-swe-bench-verified/(2024).
-
25. Aider. Aider LLM leaderboards; [Aider LLM排行榜].https://aider.chat/docs/leaderboards/(2024).
-
26. Jain, N. et al. LiveCodeBench: holistic and contamination free evaluation of large language models for code. [LiveCodeBench:对大型语言模型代码能力进行全面的、无污染的评估]. In 13th International Conference on Learning Representations (ICLR, 2024).
-
27. Mirzayanov, M. Codeforces; [Codeforces编程竞赛平台].https://codeforces.com/(2025).
-
28. Chinese Mathematical Society (CMS). Chinese National High School Mathematics Olympiad; [中国高中数学奥林匹克].https://www.cms.org.cn/Home/comp/comp/cid/12.html(2024).
-
29. Mathematical Association of America. American Invitational Mathematics Examination; [美国数学邀请赛].https://maa.org/maa-invitational-competitions(2024).
-
30. OpenAI. Hello GPT-4o; [你好,GPT-4o].https://openai.com/index/hello-gpt-4o/(2024).
-
31. Schulman, J., Wolski, F., Dhariwal, P., Radford, A. & Klimov, O. Proximal policy optimization algorithms. [近端策略优化算法]. Preprint athttps://doi.org/10.48550/arXiv.1707.06347(2017).
-
32. Ouyang, L. et al. Training language models to follow instructions with human feedback. [通过人类反馈训练语言模型遵循指令]. In Advances in Neural Information Processing Systems 35 (eds Koyejo, S. et al.) 27730–27744 (ACM, 2022).
-
33. Nano et al. deepseek-ai/DeepSeek-R1: v1.0.0. [deepseek-ai/DeepSeek-R1:v1.0.0版]. Zenodohttps://doi.org/10.5281/zenodo.15753192(2025).
-
34. Yu, X. et al. deepseek-ai/DeepSeek-V3: v1.0.0. [deepseek-ai/DeepSeek-V3:v1.0.0版]. Zenodohttps://doi.org/10.5281/zenodo.15753346(2025).
-
35. Paszke, A. et al. PyTorch: an imperative style, high-performance deep learning library. [PyTorch:一个命令式风格、高性能的深度学习库]. In Advances in Neural Information Processing Systems 32 (eds Wallach, H. M. et al.) 8026–8037 (ACM, 2019).
-
36. Kwon, W. et al. Efficient memory management for large language model serving with PagedAttention. [使用PagedAttention为大型语言模型服务实现高效内存管理]. In Proc. ACM SIGOPS 29th Symposium on Operating Systems Principles 611–626 (ACM, 2023).
致谢
本研究由DeepSeek-AI支持。
作者信息
Fuli Luo
目前地址:独立研究员,中国北京
Jinhao Tu
目前地址:建平中学,中国上海
Kai Hu
目前地址:中国科学技术大学,中国合肥
Kexin Huang, Wenqin Yu, Xinyuan Li, Yue Gong & Yujia He
目前地址:北京大学,中国北京
Zijun Liu
目前地址:清华大学,中国北京
Ziyang Song
目前地址:Citadel Securities,中国香港特别行政区
DeepSeek-AI 团队,中国杭州
Daya Guo, Dejian Yang, Haowei Zhang, Junxiao Song, Peiyi Wang, Qihao Zhu, Runxin Xu, Ruoyu Zhang, Shirong Ma, Xiao Bi, Xiaokang Zhang, Xingkai Yu, Yu Wu, Z. F. Wu, Zhibin Gou, Zhihong Shao, Zhuoshu Li, Ziyi Gao, Aixin Liu, Bing Xue, Bingxuan Wang, Bochao Wu, Bei Feng, Chengda Lu, Chenggang Zhao, Chengqi Deng, Chong Ruan, Damai Dai, Deli Chen, Dongjie Ji, Erhang Li, Fangyun Lin, Fucong Dai, Fuli Luo, Guangbo Hao, Guanting Chen, Guowei Li, H. Zhang, Hanwei Xu, Honghui Ding, Huazuo Gao, Hui Qu, Hui Li, Jianzhong Guo, Jiashi Li, Jingchang Chen, Jingyang Yuan, Jinhao Tu, Junjie Qiu, Junlong Li, J. L. Cai, Jiaqi Ni, Jian Liang, Jin Chen, Kai Dong, Kai Hu, Kaichao You, Kaige Gao, Kang Guan, Kexin Huang, Kuai Yu, Lean Wang, Lecong Zhang, Liang Zhao, Litong Wang, Liyue Zhang, Lei Xu, Leyi Xia, Mingchuan Zhang, Minghua Zhang, Minghui Tang, Mingxu Zhou, Meng Li, Miaojun Wang, Mingming Li, Ning Tian, Panpan Huang, Peng Zhang, Qiancheng Wang, Qinyu Chen, Qiushi Du, Ruiqi Ge, Ruisong Zhang, Ruizhe Pan, Runji Wang, R. J. Chen, R. L. Jin, Ruyi Chen, Shanghao Lu, Shangyan Zhou, Shanhuang Chen, Shengfeng Ye, Shiyu Wang, Shuiping Yu, Shunfeng Zhou, Shuting Pan, S. S. Li, Shuang Zhou, Shaoqing Wu, Tao Yun, Tian Pei, Tianyu Sun, T. Wang, Wangding Zeng, Wen Liu, Wenfeng Liang, Wenjun Gao, Wenqin Yu, Wentao Zhang, W. L. Xiao, Wei An, Xiaodong Liu, Xiaohan Wang, Xiaokang Chen, Xiaotao Nie, Xin Cheng, Xin Liu, Xin Xie, Xingchao Liu, Xinyu Yang, Xinyuan Li, Xuecheng Su, Xuheng Lin, X. Q. Li, Xiangyue Jin, Xiaojin Shen, Xiaosha Chen, Xiaowen Sun, Xiaoxiang Wang, Xinnan Song, Xinyi Zhou, Xianzu Wang, Xinxia Shan, Y. K. Li, Y. Q. Wang, Y. X. Wei, Yang Zhang, Yanhong Xu, Yao Li, Yao Zhao, Yaofeng Sun, Yaohui Wang, Yi Yu, Yichao Zhang, Yifan Shi, Yiliang Xiong, Ying He, Yishi Piao, Yisong Wang, Yixuan Tan, Yiyang Ma, Yiyuan Liu, Yongqiang Guo, Yuan Ou, Yuduan Wang, Yue Gong, Yuheng Zou, Yujia He, Yunfan Xiong, Yuxiang Luo, Yuxiang You, Yuxuan Liu, Yuyang Zhou, Y. X. Zhu, Yanping Huang, Yaohui Li, Yi Zheng, Yuchen Zhu, Yunxian Ma, Ying Tang, Yukun Zha, Yuting Yan, Z. Z. Ren, Zehui Ren, Zhangli Sha, Zhe Fu, Zhean Xu, Zhenda Xie, Zhengyan Zhang, Zhewen Hao, Zhicheng Ma, Zhigang Yan, Zhiyu Wu, Zihui Gu, Zijia Zhu, Zijun Liu, Zilin Li, Ziwei Xie, Ziyang Song, Zizheng Pan, Zhen Huang, Zhipeng Xu, Zhongyu Zhang, Zhen Zhang
贡献
所有作者都对本出版物做出了贡献, 分别参与了数据收集与整理、实验设计和构建LLM训练框架。作者们还参与了实验设置的实施与测试、强化学习过程的优化以及结果分析。科学发现经所有贡献者讨论并批准。本文由合作团队指定的一个作者小组撰写, 并经过了内部集体审阅过程。所有作者都审阅并批准了手稿的最终版本。核心贡献者:D.G., D.Y., H.Z., J.S., R.Z., R.X., Q.Z., S.M., P.W., X.B., X.Z., X.Y., Y.W., Z.F.W., Z.G., Z.S., Z.L., Z.G. 这些被指定为核心贡献者的作者对这项工作做出了同等贡献, 并按字母顺序列出。其余作者也对本研究做出了有意义的贡献, 他们的名字同样按字母顺序列出。
通讯作者
联系Wenfeng Liang。
伦理声明
竞争利益作者声明没有竞争利益, 并且不会就本手稿内容申请专利。
同行评审
中文完整版: 梁文锋Nature论文的同行评审和团队回应- 上
中文完整版: 梁文锋Nature论文的同行评审和团队回应- 下
同行评审信息《自然》感谢Edward Beeching、Yarin Gal、José Hernández-Orallo、Daphne Ippolito、Subbarao Kambhampati、Lewis Tunstall、Yiming Zhang和Lexin Zhou对本工作同行评审的贡献。同行评审报告可供查阅。
附加信息
出版商说明施普林格·自然对出版地图和机构附属关系中的管辖权要求保持中立。
扩展数据图表
扩展数据图1:模型输出中与推理相关的语言特征随训练步骤的演变。
a, 在整个训练过程中, 模型生成输出中代表性反思性术语的频率。反思性术语——包括‘wait’(等等)、‘mistake’(错误)、‘however’(然而)、‘but’(但是)、‘retry’(重试)、‘error’(误差)、‘verify’(验证)、‘wrong’(错误)、‘evaluate’(评估)和‘check’(检查)——由三名人类专家小组识别和整理。每位专家独立提出一组表示反思性推理的词语, 随后通过共识合并成一个最终词汇表。 b, 在训练过程中, 术语‘wait’(等等)在模型输出中的频率。该术语在初始训练阶段几乎不存在, 在4,000至7,000步之间零星出现, 并在8,000步后频率显著增加。这些趋势表明, 随着训练的进行, 出现了时间推理或自我监控行为。
扩展数据图2:所提出的用于基于强化学习训练的GRPO图示。
在所提出的框架中, 一个LLM被用作策略模型, 以根据给定的查询q生成响应{o1, o2,…, oG}。组内的每个响应都由一个奖励模型——无论是学习的(基于模型)还是手动指定的(基于规则)——进行评估, 以分配一个标量奖励信号。随后, GRPO根据每个组成员被分配的奖励计算其相对优势。GRPO不依赖于显式的值函数(如PPO中那样), 而是直接从组内奖励分布中估计优势。然后更新策略参数以最大化预期奖励, 同时最小化与参考策略的偏离, 通常通过KL散度来量化。通过消除对单独值网络的需求, GRPO为传统的行动者-评论家方法(如PPO)提供了一个简化而有效的替代方案。
提示 (PROMPT)
设 (b \geq 2) 为一个整数。如果一个正整数 (n) 在 (b) 进制下表示时恰好有两位数,并且这两位数之和等于 (\sqrt{n}),则称 (n) 是b-优美数 (b-eautiful)。例如,81 是13-优美数,因为 81 = 63(_\text{13}) 并且 6 + 3 = (\sqrt{81})。
找出满足以下条件的最小整数 (b \geq 2):存在超过十个b-优美数。
请逐步推理,并将最终答案放在\boxed{}中。
评估 (Evaluation)
解析\boxed{}中的最终答案,并使用基于规则的评分器来判断其是否与标准答案相等。根据需要对数值进行四舍五入,并使用 ‘SymPy’ 库来解析表达式。
补充信息
补充信息补充章节 1-11,包括补充表 1-29 和补充图 1-16 —— 详情请见目录。
同行评审文件 (Peer Review file) 见附录
权利与许可
开放获取 (Open Access)本文根据知识共享署名 4.0 国际许可协议 (Creative Commons Attribution 4.0 International License) 进行许可,该协议允许以任何媒介或格式使用、分享、改编、分发和复制本作品,只要您对原作者和来源进行适当的署名,提供指向知识共享许可协议的链接,并注明是否对内容进行了修改。本文中的图像或其他第三方材料均包含在文章的知识共享许可协议之内,除非在该材料的版权说明中另有声明。如果材料未包含在文章的知识共享许可协议中,并且您的预期用途不受法律法规允许或超出了许可的使用范围,您将需要直接从版权所有者那里获得许可。要查看此许可协议的副本,请访问http://creativecommons.org/licenses/by/4.0/。