☰
vLLM Ascend快速上手:3步在昇腾NPU上跑通Qwen3-30B-A3B-quantized.w4a8量化推理
2026/10/17 19:23:46 网站建设 项目流程

【免费下载链接】Qwen3-30B-A3B-quantized.w4a8

项目地址:https://ai.gitcode.com/hf_mirrors/vllm-ascend/Qwen3-30B-A3B-quantized.w4a8
点击查看免费下载

本文带你使用vLLM Ascend在昇腾 NPU 上跑通Qwen3-30B-A3B-quantized.w4a8量化推理。这是一份已经做好 W4A8 预量化的 Qwen3 MoE 模型,config.json 中标注量化方式为compressed-tensors,可以直接配合 vLLM 标准流程加载,无需再自己量化。整个流程只有 3 步:装环境、下权重、起服务,十分钟就能收到模型的第一条回复。🚀

一、Qwen3-30B-A3B-quantized.w4a8 是什么模型?

先花一分钟了解模型底细,避免后面配置时"踩坑":

项目参数说明
架构Qwen3MoeForCausalLMMoE(混合专家)架构,见 config.json
总参数 / 激活参数30B / 3B每 token 只激活 128 个专家中的 8 个
量化格式W4A8MLP 权重 4-bit,注意力权重 8-bit,激活 8-bit 动态量化
最大上下文40960见 config.json
任务类型text-generation文本生成
许可证Apache License 2.0见 README.md

W4A8 到底量化了哪里?打开量化配方 recipe.yaml 可以看到两条清晰的规则:

  • ✅4-bit 权重:应用于gate_proj/up_proj/down_proj等 MLP 线性层
  • ✅8-bit 权重:应用于q_proj/k_proj/v_proj/o_proj等注意力投影
  • ✅保留高精度:lm_head和 MoE 路由门(mlp.gate)不参与量化,保护输出质量

💡 一句话理解:这个模型已经被提前"瘦身",MLP 占的大头权重压到 4-bit,NPU 内存占用大幅下降,让 30B 级别的 MoE 模型在单卡昇腾上也能轻松跑起来。

二、3步快速上手:昇腾NPU量化推理最小路径

第1步:安装 vLLM Ascend 环境

前提条件:机器已配备昇腾 NPU,并安装了对应版本的 CANN 工具包。在 Python 环境中安装 vLLM 及其昇腾扩展:

pip install vllm pip install vllm-ascend

⚠️ 小提示:如果安装或启动时提示版本不兼容,先用npu-smi info确认 NPU 驱动与 CANN 版本,再按 vLLM Ascend 的配套要求选择对应的 vLLM 版本。

第2步:下载模型权重

本仓库包含 7 个权重分片(model-00001-of-00007.safetensors~model-00007-of-00007.safetensors),权重索引见 model.safetensors.index.json。最快的下载方式是 ModelScope SDK,方法见 README.md:

pip install modelscope
from modelscope import snapshot_download model_dir = snapshot_download('vllm-ascend/Qwen3-30B-A3B-quantized.w4a8')

下载完成后,model_dir就是下一步要传给 vLLM 的本地模型路径。

第3步:一键启动推理服务并发起请求

模型的对话模板已经随仓库提供(chat_template.jinja),vLLM 会自动套用,不需要手动处理格式。模型配置上限为 40960 上下文(见 config.json),日常使用建议按需求把max-model-len设小一些以省内存:

python -m vllm.entrypoints.openai.api_server \ --model /path/to/Qwen3-30B-A3B-quantized.w4a8 \ --served-model-name qwen3-30b-w4a8 \ --max-model-len 32768 \ --port 8000

服务启动后就是标准的 OpenAI 兼容接口,发一条对话补全请求即可验证:

curl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "qwen3-30b-w4a8", "messages": [{"role": "user", "content": "你好,请用一句话介绍自己。"}], "temperature": 0.6, "top_p": 0.95 }'

生成参数temperature/top_k/top_p的推荐默认值分别为 0.6 / 20 / 0.95,出处见 generation_config.json。只要能收到正常回复,说明昇腾 NPU 上的量化推理链路已全部打通。✅

三、模型文件清单:每个文件是干什么的

文件作用
config.json模型结构与 W4A8 量化配置,其中大段ignore列表记录了保留高精度的层
recipe.yaml量化配方:注意力 8-bit、MLP 4-bit 的具体规则
model-00001-of-00007.safetensors ~ 000077 个权重分片文件
model.safetensors.index.json权重分片索引
chat_template.jinja对话模板,支持 system 提示词与工具调用
tokenizer.jsonQwen2Tokenizer 词表;tokenizer_config.json 中标注最大长度 131072
generation_config.json采样参数推荐值

四、常见问题 FAQ

Q1:和 GPU 上用 vLLM 启动的命令有区别吗?基本没有。vLLM Ascend 复用 vLLM 的启动接口,W4A8 模型通过compressed-tensors配置自动识别,装上vllm-ascend插件即可。

Q2:需要多大的显存(内存)?W4A8 格式已把权重体积压缩到约四分之一,单张 64GB 级别的昇腾 910B 即可加载。实际还需根据并发数和上下文长度预留 KV cache 空间,max-model-len设置越小越省内存。

Q3:量化后效果损失大吗?注意力投影保留了 8-bit,路由门和输出头保留更高精度,只有 MLP 权重采用 4-bit,这是精度与内存平衡较好的组合,日常对话、代码与推理任务基本无感。

五、写在最后

Qwen3-30B-A3B-quantized.w4a8 的价值,是让 30B 级别的 MoE 模型以极低的内存成本跑在昇腾 NPU 上。按照本文装环境 → 下权重 → 起服务三步走,你就能得到一个 OpenAI 兼容的推理接口,直接接入自己的业务或 Agent 应用。动手试试吧,你的 NPU 机器正等着你。✨

【免费下载链接】Qwen3-30B-A3B-quantized.w4a8

项目地址:https://ai.gitcode.com/hf_mirrors/vllm-ascend/Qwen3-30B-A3B-quantized.w4a8
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询