摘要:Qwen3于2025年4月29日发布并开源,作为 Qwen 系列中的最新一代大型语言模型,提供了一系列密集型和混合专家(MoE)模型。本次Qwen发布多个尺寸模型,覆盖235B/32B/30B/14B/8B/4B/1.7B/0.6B。此前昇腾MindSpeed
Qwen3于2025年4月29日发布并开源,作为 Qwen 系列中的最新一代大型语言模型,提供了一系列密集型和混合专家(MoE)模型。本次Qwen发布多个尺寸模型,覆盖235B/32B/30B/14B/8B/4B/1.7B/0.6B。此前昇腾MindSpeed和MindIE一直同步支持Qwen系列模型,此次Qwen3系列一经发布开源,即在MindSpeed和MindIE中开箱即用,实现Qwen3的0Day适配。
Qwen3是 Qwen 系列大型语言模型的最新成员。其中的旗舰模型 Qwen3-235B-A22B 在代码、数学、通用能力等基准测试中,与 DeepSeek-R1、o1、o3-mini、Grok-3 和 Gemini-2.5-Pro 等顶级模型相比,表现出极具竞争力的结果。此外,小型 MoE 模型 Qwen3-30B-A3B 的激活参数数量是 QwQ-32B 的 10%,表现更胜一筹,甚至像 Qwen3-4B 这样的小模型也能匹敌 Qwen2.5-72B-Instruct 的性能。
Qwen3 模型支持两种思考模式:
思考模式:在这种模式下,模型会逐步推理,经过深思熟虑后给出最终答案。这种方法适合需要深入思考的复杂问题。
非思考模式:在此模式中,模型提供快速、近乎即时的响应,适用于那些对速度要求高于深度的简单问题。
多语言:
Qwen3 模型支持 119 种语言和方言。这一广泛的多语言能力为国际应用开辟了新的可能性。
预训练:
在预训练方面,Qwen3 的数据集相比 Qwen2.5 有了显著扩展。Qwen2.5是在 18 万亿个 token 上进行预训练的,而 Qwen3 使用的数据量几乎是其两倍,达到了约 36 万亿个 token,涵盖了 119 种语言和方言。
后训练:
Qwen3实施了一个四阶段的训练流程。该流程包括:(1)长思维链冷启动,(2)长思维链强化学习,(3)思维模式融合,以及(4)通用强化学习。
昇腾MindSpeed训练、MindIE推理支持Qwen2.5、兼容主流生态的分布式并行接口等,Qwen3系列模型一发布即实现低代码无缝迁移,欢迎广大开发者下载体
以下为手把手教程:
【MindSpeed训练上手指导】
环境配置
1、硬件要求
qwen3的参考硬件配置如下,本文将以Atlas 800 A2系列单机8卡训练和推理为例进行介绍:
2、MindSpeed-LLM仓库部署
MindSpeed-LLM的主要依赖配套如下表,安装步骤参考安装指导:HTTPS://gitee.com/ascend/MindSpeed-LLM/blob/master/docs/features/install_guide.md
(1)仓库拉取
git clone https://gitee.com/ascend/MindSpeed-LLM.gitgit clone https://github.com/NVIDIA/Megatron-LM.gitcd Megatron-LMgit checkout core_r0.8.cp -r megatron ../MindSpeed-LLM/ cd ..cd MindSpeed-LLMmkdir logsmkdir datasetmkdir ckpt(2)环境搭建
torch npu 与 CANN包参考链接:https://support.huawei.com/enterprise/zh/ascend-computing/cann-pid-251168373/software
# python3.10conda create -n test python=3.10conda activate test# 安装 torch 和 torch_npu,注意要选择对应python版本、x86或arm的torch、torch_npu及apex包pip install torch-2.1.0-cp310-cp310m-manylinux2014_aarch64.whlpip install torch_npu-2.1.0*-cp310-cp310m-linux_aarch64.whl# apex for Ascend 参考 https://gitee.com/ascend/apex# 建议从原仓编译安装# 安装加速库git clone https://gitee.com/ascend/MindSpeed.gitcd MindSpeed# checkout commit from MindSpeed core_r0.8.0git checkout 2c085cc9pip install -r requirements.txtpip3 install -e .cd ../MindSpeed-LLM # 安装其余依赖库pip install -r requirements.txt权重转换
1、权重下载
从huggingface或者魔乐社区下载权重和配置文件
2、权重转换
MindSpeed-LLM提供脚本将huggingface开源权重转换为mcore权重,用于训练、推理、评估等任务。
使用方法如下,请根据实际需要的TP/PP等切分策略和权重路径修改权重转换脚本
cd MindSpeed-LLMbash tests/0day/qwen3/ckpt_convert_qwen3_hf2mcore.sh数据预处理
MindSpeed-LLM提供脚本进行数据集处理,使用方法如下,请根据实际需要修改以下参数
cd MindSpeed-LLMbash tests/0day/qwen3/data_convert_qwen3_pretrain.sh训练
cd MindSpeed-LLMbash tests/0day/qwen3/pretrain_qwen3_8k_ptd.sh推理
cd MindSpeed-LLMbash tests/0day/qwen3/generate_qwen3_ptd.sh评估
cd MindSpeed-LLMbash tests/0day/qwen3/evaluate_qwen3_ptd.sh更多详细信息请见各模型适配指导链接
https://gitee.com/ascend/MindSpeed-LLM/blob/master/tests/0day/qwen3/README.md
【MindIE推理上手指导】
硬件要求
部署Qwen3-30B-A3B-250425模型进行推理使用1台Atlas 800I A2(8*64G)服务器
权重下载:BF16原始权重下载详见文末链接
推理前置准备
修改模型文件夹属组为1001 -HwHiAiUser属组(容器为Root权限可忽视)
执行权限为750:
chown -R 1001:1001 {/path-to-weights/Qwen3-30B-A3B-250425}chmod -R 750 {/path-to-weights/Qwen3-30B-A3B-250425}加载镜像
前往昇腾社区/开发资源下载适配,下载镜像前需要申请权限,耐心等待权限申请通过后,根据指南下载对应镜像文件。
完成之后,请使用docker images命令确认查找具体镜像名称与标签。
docker images容器启动
启动容器:执行以下命令启动容器(参考)
docker run -itd --privileged --name= {容器名称} --net=host \--shm-size 500g \--device=/dev/davinci0 \--device=/dev/davinci1 \--device=/dev/davinci2 \--device=/dev/davinci3 \--device=/dev/davinci4 \--device=/dev/davinci5 \--device=/dev/davinci6 \--device=/dev/davinci7 \--device=/dev/davinci_manager \--device=/dev/hisi_hdc \--device /dev/devmm_svm \-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \-v /usr/local/Ascend/firmware:/usr/local/Ascend/firmware \-v /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi \-v /usr/local/sbin:/usr/local/sbin \-v /etc/hccn.conf:/etc/hccn.conf \ -v {/权重路径:/权重路径} \{swr.cn-south-1.myhuaweicloud.com/ascendhub/mindie:1.0.0-XXX-800I-A2-arm64-py3.11(根据加载的镜像名称修改)} \ bash进入容器:执行以下命令进入容器(参考)
docker exec -it {容器名称} bash设置基础环境变量
source /usr/local/Ascend/ascend-toolkit/set_env.shsource /usr/local/Ascend/nnal/atb/set_env.shsource /usr/local/Ascend/atb-models/set_env.shsource /usr/local/Ascend/mindie/set_env.sh纯模型推理
【使用场景】使用相同输入长度和相同输出长度,构造多batch去测试纯模型性能
1.精度测试
进入modeltest路径
cd /usr/local/Ascend/atb-models/tests/modeltest/运行测试脚本
Step1.清理残余进程:
pkill -9 -f 'mindie|python'Step2.执行以下命令:
bash run.sh pa_[data_type] [dataset] ([shots]) [batch_size] [model_name] ([is_chat_model]) [weight_dir] [world_size] ([parallel_params])测试脚本运行如下,以双机为例:
样例 -CEval 带shot
bash run.sh pa_bf16 full_CEval 5 1 qwen {/path/to/weights/Qwen3-30B-A3B-250425} 16样例 -GSM8K 不带shot
bash run.sh pa_bf16 full_GSM8K 8 qwen {/path/to/weights/Qwen3-30B-A3B-250425} 162.性能测试
进入modeltest路径:
Step1.清理残余进程:
Step2.执行以下命令:
测试脚本运行如下,以双机为例:
bash run.sh pa_bf16 performance [[256,256]] 1 qwen {/path/to/weights/Qwen3-30B-A3B-250425} 16测试脚本运行如下,以双机为例:
服务化推理
【使用场景】对标真实客户上线场景,使用不同并发、不同发送频率、不同输入长度和输出长度分布,去测试服务化性能
1、配置服务化环境变量
变量含义:expandable_segments-使能内存池扩展段功能,即虚拟内存特性。更多详情请查看昇腾环境变量参考。
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True2、修改服务化参数
cd /usr/local/Ascend/mindie/latest/mindie-service/ vim conf/config.json修改以下参数
..."httpsEnabled" : false, # 如果网络环境不安全,不开启https通信,即“httpsEnabled”=“false”时,会存在较高的网络安全风险..."npudeviceIds" : [[0,1,2,3,4,5,6,7]],..."modelName" : "Qwen-MoE" # 不影响服务化拉起"modelWeightPath" : "权重路径", "worldSize":8,Example:仅供参考,请根据实际情况修改
详见文末链接
3、拉起服务化
# 解决权重加载过慢问题export OMP_NUM_THREADS=1# 拉起服务化cd /usr/local/Ascend/mindie/latest/mindie-service/./bin/mindieservice_daemon执行命令后,首先会打印本次启动所用的所有参数,然后直到出现以下输出:
Daemon start success!则认为服务成功启动。
4、另起客户端
进入相同容器,向服务端发送请求。
更多信息可参考官网信息:https://www.hiascend.com/document/detail/zh/mindie/100/mindieservice/servicedev/mindie_service0285.html
更多详细信息请见各模型适配指导链接:https://modelers.cn/MindIE
来源:华为计算