魔搭ModelScope社区 05月08日 15:58
Qwen3 X ModelScope工具链: 飞速训练 + 全面评测
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

魔搭社区推出SWIFT+EvalScope工具链,为Qwen3系列模型提供全链路支持,解决开发者在模型二次训练、评测和部署中的实际需求。SWIFT支持CPT、SFT、Megatron MoE、RLVR等多种训练方式,显著提升训练速度,尤其在Qwen3-MoE Megatron结构训练上,速度提升高达20%~1000%。EvalScope则提供统一平台,整合多种模型在各类benchmark上的评测流程,实现自动化评测、可视化性能分析和自定义评测,助力开发者全面了解模型性能。

🚀 **SWIFT训练框架**: SWIFT提供多种训练方式(CPT、SFT、Megatron MoE、RLVR等),支持Qwen3系列模型的快速训练,尤其针对Qwen3-MoE Megatron结构,显著提升训练速度。

📊 **EvalScope评测工具**: EvalScope提供统一平台,整合多种模型在各类benchmark上的评测流程,支持自动化评测、可视化性能分析和自定义评测,帮助开发者全面了解模型性能。

💡 **RLVR支持**: SWIFT支持RLVR算法,包括GRPO,简化了工程实现,加速了模型思维能力的训练,尤其适用于有需求的中小开发者场景,并已应用于Qwen3模型。

🧠 **采样与蒸馏**: 针对直接SFT可能产生的知识遗忘问题,SWIFT支持采样和蒸馏,通过rollout数据提高训练质量,保留模型知识,并提供相关示例供参考。

2025-04-30 16:22 浙江

Qwen3与ModelScope工具链结合,提供飞速训练和全面评测支持,涵盖CPT、SFT、Megatron MoE、RLVR等多种训练方式,显著提升训练速度,优化模型性能。

01

前言



Qwen于近日发布了Qwen3系列模型,包含了各个不同规格的Dense模型和MoE模型。开源版本中,Dense模型基本沿用了之前的模型结构,差别之处在于对于Q和K两个tensor增加了RMSNorm;MoE模型去掉了公共Expert,其他结构基本与前一致。在模型大小上,涵盖了从0.6B到32B(Dense)和235B(MoE)不同的尺寸。在推理能力上,增加了对于thinking能力的选择,使得模型应对不同场景更加自如和游刃有余。

对于私有化,或有垂直行业需求的开发者,一般需要对模型进行二次训练(微调,对齐等),在训练后进行评测和部署。从训练角度来说,需求一般是:

    具有大量未标注行业数据,需要重新进行CPT。一般使用Base模型进行。

    具有大量问答数据对,需要进行SFT,根据数据量选用Base模型或Instruct模型进行。

    需要模型具备独特的回复能力,额外做一次RLHF。

    需要对模型特定领域推理能力(或思维链)增强,一般会用到蒸馏、采样微调或GRPO


在实际场景中,经常会涉及多种训练的结合。例如,CPT之后一定会进行SFT,或者RLVR(例如GRPO with verifiable rewards)。在硬件需求上,从单卡到多机不等,这带来了训练选型上的困难。此外,在定制训练模型后,如何对于训练后的模型的效果进行全方位的准确评测,也是模型应用落地中的重要一环,如何实现简单易用的评测无缝连接,也是一个较大的挑战,尤其是当涉及到多领域甚至多模态组合场景上,包括寻找评测数据、跟踪评测进度等,都是需要解决的问题。


针对模型开发者的这些实际需求,魔搭社区开发和整理了以SWIFT(训练)+ EvalScope(评测)复合能力,来支持Qwen3系列模型全链路试用起来的方案。特别地,我们完善地为Qwen3-MoE Megatron结构训练提供了支持,较好解决了开源的MoE模型在定制过程中,二次训练成本较高,训练过程复杂等痛点。相较transformers结构训练,我们看到了20%~1000%的训练速度提升。更重要的是,在SWIFT框架中,Megatron结构的训练和transformers结构的训练,保持了大多数参数的一致性,开发者可以灵活切换这两种训练方式,而不引进额外任何成本。


场景

命令行(Qwen/Qwen3-8B)

CPT

swift pt --model Qwen/Qwen3-8B --dataset xxx

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/pretrain/train.sh

SFT

swift sft --model Qwen/Qwen3-8B --dataset xxx

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/tuners/lora/train.sh

Megatron MoE

megatron sft --model Qwen/Qwen3-8B --dataset xxx

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/megatron/moe.sh

DPO

swift rlhf --rlhf_type dpo --model Qwen/Qwen3-8B --dataset xxx

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/rlhf/dpo.sh

GRPO

swift rlhf --rlhf_type grpo --model Qwen/Qwen3-8B --dataset xxx

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/grpo/train_72b_4gpu.sh

Rejected sampling

example

链接:https://github.com/modelscope/ms-swift/blob/main/examples/train/rft/rft.py

Deployment

swift deploy --model Qwen/Qwen3-8B --infer_backend vllm

链接:https://github.com/modelscope/ms-swift/blob/main/examples/deploy/server/demo.sh

Eval

swift eval --model Qwen/Qwen3-8B --datasets xxx

链接:https://evalscope.readthedocs.io/zh-cn/latest/get_started/basic_usage.html#id1


Megatron支持

在多卡场景中,一般以torch的DDP框架为蓝本,增加额外的并行分组来实现LLM训练。例如,目前主流训练卡显存一般为24G、40G、80G不等,部分卡型可以达到96G或者128G,但是这对承载一个32B模型训练是不够的,更不用说更大尺寸的模型。因此在DDP之外,一般增加模型切分机制,使每张卡上仅承载一部分的模型分片,并进行all-gather来收集参数,reduce-scatter来收集梯度,这也是DeepSpeed ZeROFSDP的基本原理。但是,对于32B以上尺寸的模型,或者MoE模型,transformers代码实现+DeepSpeed的大量卡间通讯和串行MoE都导致了训练效率不足。

    for expert_idx in range(self.num_experts):    expert_layer = self.experts[expert_idx]    idx, top_x = torch.where(expert_mask[expert_idx])    current_state = hidden_states[None, top_x].reshape(-1, hidden_dim)    current_hidden_states = expert_layer(current_state) * routing_weights[top_x, idx, None]    final_hidden_states.index_add_(0, top_x, current_hidden_states.to(hidden_states.dtype))

    现行MoE串行化代码


    Megatron来自于NVIDIA的Megatron-LM库。该库一般承担超大规模的训练,而相比之下,transformers库更适应于较为轻量化的训练。这是因为:


      在一般Dense模型小型训练场景下,轻量训练(LoRA、Quantization)带来的收益比较高,而Megatron的复杂分布式结构并不适合单卡或双卡的场景

      开发者理解成本比较高,不利于理解和使用。


      然而在我们的测试中,即使使用单机八卡环境,Dense模型训练使用Megatron比transformers同模型代码的速度也可以提升20%左右,GPU利用率也更高。在MoE模型上,该优势更加明显,加速比可以达到1000%或更多。


      Megatron框架的优点有:

        对于Attention结构有额外优化,例如算子融合(Fused kernel),这会让模型有更快的训练速度

        更适配于多机训练,可以合理对机内和机外进行模型分片,保持较低通讯量。

        对MoE结构有额外并行训练支持


      我们可以看出,使用串行训练MoE无法利用多卡的优势,因此SWIFT引入了Megatron的并行技术来加速大模型的训练,包括数据并行、张量并行、流水线并行、序列并行,上下文并行,专家并行。支持Qwen3、Qwen3-MoE、Qwen2.5、Llama3、Deepseek-R1蒸馏系等模型的预训练和微调。

      Megatron-LM

      DeepSpeed-ZeRO2

      DeepSpeed-ZeRO3

      训练速度

      9.6s/it

      -

      91.2s/it

      显存占用

      16 * 60GiB

      OOM

      16 * 80GiB

      Qwen3-30B-A3B模型全参数训练速度/显存占用对比


      可以看到,MoE训练使用Megatron比使用transformers库+DeepSpeed快10倍左右。


      02

      RLVR支持



      在DeepSeek-R1技术报告之后,业界普遍认识到可以使用verified reward训练模型的思维能力。这种方式相对PRM方式数据要求低很多,同时训练速度也更快,工程实现更简单,这有利于将RL训练应用到有需求的中小开发者场景中。RLVR的普遍训练算法包含PPO、GRPO、DAPO等,使用较多的是GRPO,因为其省略了Critic model,并使用采样代替了模型拟合过程,在工程实现上更加简单和鲁棒。SWIFT对RLVR算法也进行了支持,并且在最新的Qwen3模型上,也直接可以使用。

      SWIFT GRPO model placement


      目前我们支持了两种model placement:

        Side Mode:Actor和Rollout模型分别占用单独的GPU,这种模式下vLLM可以使用全部GPU显存和计算能力,并支持tensor parallel

        Colocate Mode:Actor和Rollout模型复用GPU。这种模式下vLLM和Actor会通过offload/load对GPU进行时分复用,对大规模模型更友好

      目前SWIFT的GRPO可以支持百卡(或更大)集群的训练。


      03

      采样与蒸馏



      蒸馏作为知识灌注的主要手段之一,在DeepSeek-R1的技术报告中也有提及。我们在实际训练Qwen3的过程中发现,如果使用自己的数据集直接SFT,可能会产生严重的知识遗忘问题。这个问题虽然一直伴随着近年大模型训练过程,但在最近的模型中体现尤为明显。


      因此,我们预计未来模型训练范式的重心,可能从SFT往强化微调方向倾斜。这个方向包含了RLVR这种on-policy训练方法,也包含了拒绝采样微调和蒸馏这样的off-policy方法。使用rollout数据(无论是更大模型的数据,或者模型自身数据)的友好性和精密性比人为生成的数据集训练质量要高很多。例如,在之前的实验中我们发现,使用competition_math对LLM进行SFT,反而导致competition_math测试集掉10个点以上。反而使用蒸馏、MCTS采样、拒绝采样、GRPO方式可以在对应测试集提点的同时保留其他方向的知识。这可以近似理解为是“近端优化(Proximal policy)”的,虽然部分算法中并不带有KL散度正则限制。


      同样,我们对模型采样和蒸馏进行了支持,这些支持可以直接应用在Qwen3系列模型上。example可以参考这里如下:


      example1:

      https://github.com/modelscope/ms-swift/blob/main/examples/sampler/distill/distill.sh


      example2:

      https://github.com/modelscope/ms-swift/blob/main/examples/train/rft/rft.py


      04

      评测支持



      为了全面评测模型的各方面能力,了解训练前后模型的性能指标变化。ModelScope推出了EvalScope评测工具,提供了统一的平台来整合和管理多种模型在各种benchmark的评测流程,包括大语言模型的代码能力(LiveCodeBench)、数学能力(AIME2024, AIME2025)、知识能力(MMLU-Pro, CEVAL)、指令遵循(IFEval);多模态大模型的视觉理解能力(ChartQA);文生图模型的图文一致性(GenAI-Bench)等等。

      通过EvalScope,我们可以方便地进行以下操作:

        自动化评测流程:减少人工干预,提升评测效率

        可视化性能分析:查看所有评测结果,便于对模型进行全面分析

        自定义评测:通过简单的配置扩展到新的评测任务,或构建评测数据集集合


      自定义数据集合评测结果
      文生图任务评测结果


      除此之外,EvalScope还集成了模型服务推理性能压测功能,可以一键测试服务的吞吐量、首包延迟等指标。在Qwen3系列模型上的评测(包括模型服务推理性能评测、模型能力评测、以及模型思考效率评测)可以参考这里:https://evalscope.readthedocs.io/zh-cn/latest/best_practice/qwen3.html


      05

      写在最后



      在AI业界预测中,有不少声音认为AGI有望在几年内达到。也可以看到,目前Qwen3最受关注的模型系列,是Qwen3-32B、Qwen3-235B-A22B等尺寸模型,开发者的目光越来越转向能力更强、尺寸较大的模型,而模型的使用和关注,也影响了应用生态,例如数字人、Agent等领域的最新技术和方向。我们希望,魔搭的工具链可以不断适配模型尺寸的增大,以及训练评测的便捷化,并在开源领域推出新的训练技巧和新模型。开发者也可以持续关注我们社区(包括站点 www.modelscope.cn,以及github: https://github.com/modelscope/),我们会依托于等强大开源模型生态,不断构建新的模型能力和应用能力。


      点击阅读原文, 即可跳转Qwen3模型合集~



      👇点击关注ModelScope公众号获取
      更多技术信息~




      阅读原文

      跳转微信打开

      Fish AI Reader

      Fish AI Reader

      AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

      FishAI

      FishAI

      鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

      联系邮箱 441953276@qq.com

      相关标签

      Qwen3 SWIFT EvalScope 模型训练 模型评测
      相关文章