【免费下载链接】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 是什么模型?
先花一分钟了解模型底细,避免后面配置时"踩坑":
| 项目 | 参数 | 说明 |
|---|---|---|
| 架构 | Qwen3MoeForCausalLM | MoE(混合专家)架构,见 config.json |
| 总参数 / 激活参数 | 30B / 3B | 每 token 只激活 128 个专家中的 8 个 |
| 量化格式 | W4A8 | MLP 权重 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 modelscopefrom 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 ~ 00007 | 7 个权重分片文件 |
| model.safetensors.index.json | 权重分片索引 |
| chat_template.jinja | 对话模板,支持 system 提示词与工具调用 |
| tokenizer.json | Qwen2Tokenizer 词表;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
相关推荐
部署指南:如何在vLLM(昇腾Ascend NPU)平台跑通Qwen3-30B-A3B-Instruct-2507-quantized.w4a8
部署指南:如何在vLLM(昇腾Ascend NPU)平台跑通Qwen3 30B A3B Instruct 2507 quantized.w4a8 🚀 本文教你
Qwen3-30B-A3B-quantized.w4a8完全指南:为什么W4A8量化让30B MoE模型在昇腾NPU上跑得快人一步
Qwen3 30B A3B quantized.w4a8完全指南:为什么W4A8量化让30B MoE模型在昇腾NPU上跑得快人一步 Qwen3 30B A3B
vllm-ascend 快速上手:在昇腾 NPU 上离线运行 Qwen3-0.6B 推理
vllm ascend 快速上手:在昇腾 NPU 上离线运行 Qwen3 0.6B 推理 vLLM Ascend 是 vLLM 在华为昇腾(Ascend)硬件上
人工智能大模型模型推理服务AscendCANN
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考