Qwen3技术报告解读

↑ 点击蓝字 关注极市平台
作者丨包包算法笔记
来源丨包包算法笔记
编辑丨极市平台

极市导读

 

深入解读了Qwen3模型的技术细节,涵盖了其独特的三阶段预训练流程、长链思维冷启动、推理强化学习等关键环节,以及如何通过创新的思维模式融合和奖励机制设计,提升模型的推理能力和多任务适应性。 >>加入极市CV技术交流群,走在计算机视觉的最前沿

1.三阶段预训练,先30万亿4096长度的通用训练,再5T的4096推理训练带衰减学习率,最后长文本32767训练。

2.长cot冷启动:qwq32b造数据,qwen72B+人工洗数据。

3.推理RL:选用无leak的多样性的难度适中的数据跑GRPO。

4.思维链开启和关闭:通过一个specitoken来在数据里传导,prompt加/think和/no_think标志,然后训练。混合着也学会了自动的短cot模式,很神奇。

5.RM设计:涵盖20多种不同任务,每个任务都有定制的评分标准,规则+模型(有无参考答案)。

6.蒸馏到小模型:logits蒸馏非数据蒸馏,效果更好。

整体流程:

详细精炼版(去除评估部分)

预训练阶段

Qwen3模型通过三个阶段进行预训练:

(1) 一般阶段 (S1) :在第一个预训练阶段,所有Qwen3模型在超过30万亿个标记上进行训练,序列长度为4,096个标记。在此阶段,模型已在语言能力和一般世界知识上完成全面预训练,训练数据覆盖119种语言和方言。

(2) 推理阶段 (S2) :为了进一步提高推理能力,我们通过增加STEM、编码、推理和合成数据的比例来优化这一阶段的预训练语料库。模型在序列长度为4,096个标记的情况下,进一步预训练了约5T的高质量标记。我们还加快了这一阶段的学习率衰减。

(3) 长文本阶段 :在最终的预训练阶段,我们收集高质量的长文本语料库,以扩展Qwen3模型的上下文长度。所有模型在数千亿个标记上进行预训练,序列长度为32,768个标记。长文本语料库包括75%的文本长度在16,384到32,768个标记之间,25%的文本长度在4,096到16,384个标记之间。根据Qwen2.5(Yang等,2024b),我们使用ABF技术(Xiong等,2023)将RoPE的基础频率从10,000提高到1,000,000。同时,我们引入YARN(Peng等,2023)和双块注意力(DCA,An等,2024),以在推理过程中实现序列长度容量的四倍增加。

与Qwen2.5(Yang等,2024b)类似,我们基于上述三个预训练阶段开发了最佳超参数(例如,学习率调度和批量大小)预测的缩放法则。通过广泛的实验,我们系统地研究了模型架构、训练数据、训练阶段与最佳训练超参数之间的关系。最后,我们为每个密集模型或MoE模型设定了预测的最佳学习率和批量大小策略。

后训练阶段

1 长链思维冷启动

我们首先整理一个涵盖广泛类别的综合数据集,包括数学、代码、逻辑推理和一般STEM问题。数据集中的每个问题都配有经过验证的参考答案或基于代码的测试用例。该数据集作为长链思维(long-CoT)训练的“冷启动”阶段的基础。

数据集构建涉及严格的两阶段过滤过程:query过滤和answer过滤。在query过滤阶段,我们使用Qwen2.5-72B-Instruct识别并移除那些不易验证的query。这包括包含多个子问题的query或请求生成一般文本的query。此外,我们排除那些Qwen2.5-72B-Instruct能够在不使用链式推理的情况下正确回答的query。这有助于防止模型依赖表面的猜测,并确保仅包含需要更深入推理的复杂问题。此外,我们使用Qwen2.5-72B-Instruct对每个query的领域进行注释,以保持数据集中领域表示的平衡。

在保留验证query集后,我们为每个剩余query生成N个候选answer,使用QwQ-32B(Qwen团队,2025年)。当QwQ-32B持续无法生成正确的解决方案时,人工评估员会手动评估answer的准确性。对于通过率为正的query,进一步严格的过滤标准被应用,以去除以下answer:(1) 产生错误的最终答案,(2) 包含大量重复,(3) 明显表明猜测而没有足够的推理,(4) 思考与总结内容之间存在不一致,(5) 涉及不当的语言混合或风格转变,或(6) 被怀疑与潜在验证集项目过于相似。随后,经过精心挑选的精炼数据集子集用于推理模式的初始冷启动训练。此阶段的目标是向模型灌输基础推理模式,而不过分强调即时推理性能。这种方法确保模型的潜力不受限制,从而在随后的强化学习(RL)阶段提供更大的灵活性和改进。为了有效实现这一目标,最好在这一准备阶段尽量减少训练样本和训练步骤的数量。

2 推理强化学习

在推理强化学习阶段使用的 query-verifier对必须满足以下四个标准:(1) 在冷启动阶段未被使用。(2) 对于冷启动模型是可学习的。(3) 尽可能具有挑战性。(4) 涵盖广泛的子领域。我们最终收集了总共3,995个 query-verifier对,并采用GRPO(Shao等,2024)来更新模型参数。我们观察到,使用较大的批量大小和每个query较高的回合数,以及离线策略训练以提高样本效率,对训练过程是有益的。我们还解决了如何通过控制模型的熵来平衡探索与利用,以实现稳步增加或保持不变。

3 思维模式融合

思维模式融合阶段的目标是将“非思维”能力整合到先前开发的“思维”模型中。这种方法使开发者能够管理和控制推理行为,同时降低了为思维和非思维任务部署单独模型的成本和复杂性。为此,我们对推理强化学习模型进行持续的监督微调,并设计一个聊天模板以融合这两种模式。此外,我们发现能够熟练处理这两种模式的模型在不同的思维预算下表现始终良好。

SFT数据的构建:SFT数据集结合了“思考”和“非思考”数据。为了确保第二阶段模型的性能不受额外SFT的影响,“思考”数据是通过对第一阶段query进行拒绝采样生成的,使用的是第二阶段模型本身。“非思考”数据则经过精心策划,以涵盖多样化的任务,包括编码、数学、遵循指令、多语言任务、创意写作、问答和角色扮演。此外,我们使用自动生成的检查清单来评估“非思考”数据的answer质量。为了提高低资源语言任务的表现,我们特别增加了翻译任务的比例。

聊天模板设计:为了更好地整合这两种模式并使用户能够动态切换模型的思维过程,我们为Qwen3设计了聊天模板,如表9所示。具体而言,对于思维模式和非思维模式的样本,我们在用户query或系统消息中分别引入/think/no_think标志。这使得模型能够根据用户的输入选择相应的思维模式。对于非思维模式样本,我们在助手的answer中保留一个空的思维块。该设计确保了模型内部格式的一致性,并允许开发者通过在聊天模板中连接一个空的思维块来防止模型进行思考行为。默认情况下,模型在思维模式下运行;因此,我们添加了一些用户query不包含/think标志的思维模式训练样本。对于更复杂的多轮对话,我们随机在用户的query中插入多个/think/no_think标志,模型的answer遵循最后遇到的标志。

思维预算:思维模式融合的一个额外优势是,一旦模型学会在非思维和思维模式下answer,它自然会发展出处理中间情况的能力——基于不完整思维生成answer。这一能力为实施对模型思维过程的预算控制奠定了基础。具体而言,当模型的思维长度达到用户定义的阈值时,我们手动停止思维过程并插入停止思维指令:“考虑到用户的时间有限,我必须直接基于思维给出解决方案。”插入此指令后,模型继续生成基于其到该时刻为止的累积推理的最终answer。值得注意的是,这一能力并不是通过明确训练获得的,而是作为应用思维模式融合的结果自然出现的。

4 通用强化学习

通用强化学习阶段旨在广泛增强模型在多种场景下的能力和稳定性。为此,我们建立了一个复杂的奖励系统,涵盖20多种不同任务,每个任务都有定制的评分标准。这些任务特别针对以下核心能力的提升:

  • 指令遵循:该能力确保模型准确解读并遵循用户指令,包括与内容、格式、长度和结构化输出相关的要求,提供符合用户期望的answer。
  • 格式遵循:除了明确的指令外,我们期望模型遵循特定的格式约定。例如,它应适当地answer/think/no_think标志,通过在思考和非思考模式之间切换,并始终使用指定的标记(例如,<think></think>)来分隔最终输出中的思考和answer部分。
  • 偏好对齐:对于开放式query,偏好对齐侧重于提高模型的帮助性、参与度和风格,最终提供更自然和令人满意的用户体验。
  • 代理能力:这涉及训练模型通过指定接口正确调用工具。在强化学习的实施过程中,模型被允许进行完整的多轮交互周期,并获得真实环境执行反馈,从而提高其在长期决策任务中的表现和稳定性。
  • 专门场景的能力:在更专业的场景中,我们设计了针对特定上下文的任务。例如,在检索增强生成(RAG)任务中,我们引入奖励信号,引导模型生成准确且符合上下文的answer

SFT数据的构建:SFT数据集结合了“思考”和“非思考”数据。为了确保第二阶段模型的性能不受额外SFT的影响,“思考”数据是通过对第一阶段query进行拒绝采样生成的,使用的是第二阶段模型本身。“非思考”数据则经过精心策划,以涵盖多样化的任务,包括编码、数学、遵循指令、多语言任务、创意写作、问答和角色扮演。此外,我们使用自动生成的检查清单来评估“非思考”数据的answer质量。为了提高低资源语言任务的表现,我们特别增加了翻译任务的比例。

聊天模板设计:为了更好地整合这两种模式并使用户能够动态切换模型的思维过程,我们为Qwen3设计了聊天模板,如表9所示。具体而言,对于思维模式和非思维模式的样本,我们在用户query或系统消息中分别引入/think/no_think标志。这使得模型能够根据用户的输入选择相应的思维模式。对于非思维模式样本,我们在助手的answer中保留一个空的思维块。该设计确保了模型内部格式的一致性,并允许开发者通过在聊天模板中连接一个空的思维块来防止模型进行思考行为。默认情况下,模型在思维模式下运行;因此,我们添加了一些用户query不包含/think标志的思维模式训练样本。对于更复杂的多轮对话,我们随机在用户的query中插入多个/think/no_think标志,模型设计的answer遵循最后遇到的标志。

思维预算:思维模式融合的一个额外优势是,一旦模型学会在非思维和思维模式下answer,它自然会发展出处理中间情况的能力——基于不完整思维生成answer。这一能力为实施对模型思维过程的预算控制奠定了基础。具体而言,当模型的思维长度达到用户定义的阈值时,我们手动停止思维过程并插入停止思维指令:“考虑到用户的时间有限,我必须直接基于思维给出解决方案。”插入此指令后,模型继续生成基于其到该时刻为止的累积推理的最终answer。值得注意的是,这一能力并不是通过明确训练获得的,而是作为应用思维模式融合的结果自然出现的。

5.REWARD设计

为了为上述任务提供反馈,我们利用了三种不同类型的奖励:

(1) 基于规则的奖励:基于规则的奖励在推理强化学习阶段被广泛使用,并且对一般任务如遵循指令(Lambert等,2024)和格式遵循也很有用。设计良好的基于规则的奖励可以高精度地评估模型输出的正确性,防止奖励操控等问题。

(2) 有参考基于模型的奖励与参考答案:在这种方法中,我们为每个query提供一个参考答案,并提示Qwen2.5-72B-Instruct根据该参考答案对模型的answer进行评分。这种方法允许更灵活地处理多样化的任务,而无需严格的格式,从而避免了纯规则奖励可能出现的假阴性。

(3) 无参考答案的基于模型的奖励:利用人类偏好数据,我们训练一个奖励模型,为模型answer分配标量分数。这种不依赖于参考答案的方法可以处理更广泛的query,同时有效提升模型的参与度和帮助性。

6.强到弱的蒸馏

强到弱的蒸馏流程专门设计用于优化轻量级模型,包括5个密集模型(Qwen3-0.6B、1.7B、4B、8B和14B)和一个MoE模型(Qwen3-30B-A3B)。这种方法在有效传授强大的模式切换能力的同时,提升了模型性能。蒸馏过程分为两个主要阶段:

(1) 离线蒸馏:在这个初始阶段,我们结合了在/think/no_think模式下生成的教师模型的输出进行answer蒸馏。这有助于轻量级学生模型发展基本的推理能力和在不同思维模式之间切换的能力,为下一阶段的在线训练奠定坚实基础。

(2) 在线蒸馏:在这个阶段,学生模型生成在线序列进行微调。具体而言,采样提示,学生模型在/think/no_think模式下生成answer。然后,通过将其logits与教师模型(Qwen3-32B或Qwen3-235B-A22B)的logits对齐,微调学生模型以最小化KL散度。


(文:极市干货)

发表评论

×

下载每时AI手机APP

 

和大家一起交流AI最新资讯!

立即前往