- 大模型
- 模型量化
- 本地部署
【免费下载链接】Qwen3.6-35B-A3B-w4a16-llmcompressor
Qwen3.6-35B-A3B-w4a16-llmcompressor 是 AMD 用 LLM Compressor 对 Qwen3.6-35B-A3B 做 4 比特量化(W4A16)后的开源模型,专为 AMD EPYC CPU 推理优化:256 专家 MoE 架构只激活约 3B 参数,混合线性注意力大幅压缩 KV 缓存,权重从 67 GB 缩到 18.1 GB,让你在没有 GPU 的机器上也能流畅跑 35B 级大模型。
📋 模型速览
| 项目 | 参数 |
|---|---|
| 架构 | Qwen3_5MoeForConditionalGeneration(文本+视觉多模态) |
| 总层数 | 40 层(config.json) |
| MoE 专家 | 256 个路由专家 + 1 个共享专家,每 token 激活 8 个(config.json) |
| 注意力 | 每 4 层 1 次全注意力,其余 30 层为线性注意力(config.json) |
| 量化 | INT4 权重量化(W4A16),group_size=128,GPTQ 算法 |
| 体积 | 67.0 GiB → 18.1 GiB(约 73% 缩减,README.md) |
| 上下文 | 最长 262,144 tokens(config.json) |
| 推理引擎 | vLLM v0.28.0 + ZenDNN v6.1.0(仅 CPU) |
🧠 256 专家 MoE:35B 身材,3B 算力
这个模型是典型的MoE(Mixture of Experts,混合专家)结构:
- 每一层都有 256 个独立专家,每个专家是一个 512 中间维度的小型前馈网络(config.json)
- 一个路由网络(router/gate)为每个 token 挑出得分最高的8 个专家参与计算,其余 248 个完全"休眠"
- 额外还有一个共享专家(shared expert),所有 token 都会经过它
所以虽然参数量约 35B,但每个 token 真正参与运算的只有约 3B 参数——"A3B" 名字的由来。这意味着:
- 计算量小:CPU 上每生成一个 token 的乘加运算量只有稠密 3B 模型的水平,而不是 35B 的
- 专家权重稀疏:MoE 的精髓是"存储多、激活少",非常适合内存大、算力弱的 CPU 平台
📉 W4A16 量化:18 GB 装下整个模型
AMD 使用 LLM Compressor 的 GPTQ 算法做4 比特权重量化:
- 权重用 INT4 对称分组量化(每 128 个权重共享一组缩放因子),激活保持 BF16
- 256 个路由专家、共享专家和线性注意力投影全部量化,所以压缩率接近 INT4 理论极限的 75%
- 视觉塔(visual)、路由 gate、lm_head、嵌入层等敏感部分保留 BF16,保证精度不塌方
完整的量化配方记录在 recipe.yaml,包括scheme: W4A16、block_size: 128、dampening_frac: 0.01等 GPTQ 关键参数。权重本体存储在 model.safetensors 中(约 18.1 GiB,pack-quantized 格式)。
为什么量化对 CPU 推理这么关键?CPU 推理是"内存带宽瓶颈"型任务——生成每个 token 都要把激活专家的权重从内存搬进计算单元。权重压缩 73% ≈ 内存流量减少 73% ≈ 生成速度成比例提升。
⚡ 混合线性注意力:KV 缓存几乎消失
大多数大模型每层都用标准自注意力,需要缓存整个序列的 KV(Key-Value),序列越长内存占用越大。这个模型采用Qwen3.5 系列标志性的混合注意力方案:
full_attention_interval = 4(config.json):每 4 层只有 1 层是标准全注意力,40 层中仅 10 层需要 KV 缓存- 其余 30 层是线性注意力(linear attention):用固定大小递归状态代替 KV 缓存,且带有 kernel 尺寸为 4 的短卷积(config.json)
- 线性注意力部分有 16 个 key head、32 个 value head(config.json),状态随序列长度增长几乎为 O(1)
对 CPU 推理来说这是杀手级设计:长上下文时内存占用不再随序列线性膨胀,也不需要反复搬运越来越大的 KV 张量。再配合partial_rotary_factor: 0.25的局部旋转位置编码(config.json),模型才能稳定支持 256K 上下文。
🚀 为什么"天生"适合 CPU:四个理由总结
- 稀疏激活:每 token 只算 ~3B 参数,CPU 算力够得着
- INT4 权重:内存带宽消耗直降 73%,这是 CPU 推理的第一瓶颈
- 线性注意力:KV 缓存极小,长对话不吃内存、不掉速
- 工程配套:AMD 专门用 ZenDNN v6.1.0 / ZenTorch v2.13.0.0 优化了 4-bit 反量化核,vLLM v0.28.0 原生支持该格式(README.md)
一句话:架构层面(MoE + 线性注意力)决定了它"能跑在 CPU 上",量化层面(W4A16)决定了它"跑得动",软件层面(ZenDNN)决定了它"跑得快"。
🛠️ 快速上手:在你的机器上跑起来
1. 克隆仓库
git clone https://gitcode.com/hf_mirrors/amd/Qwen3.6-35B-A3B-w4a16-llmcompressor.git2. 安装依赖(版本严格锁定)
torch==2.13.0.0 zentorch==2.13.0.0 vllm==0.28.0 llmcompressor==0.12.0版本要求见 README.md。另建议设置LD_PRELOAD指向libomp.so(LLVM OpenMP)以获得最佳 CPU 性能,详见 README.md。
3. 用 vLLM 加载推理
from vllm import LLM, SamplingParams model = LLM(model="./Qwen3.6-35B-A3B-w4a16-llmcompressor", dtype="bfloat16") out = model.generate(["你好,请介绍一下你自己"], SamplingParams(temperature=0.7, max_tokens=256)) print(out[0].outputs[0].text)✅ 精度表现与使用注意
量化不是免费的午餐,但这个模型的损失控制得很好:GSM8K 五样本测试中,BF16 基线 0.9651,W4A16 版本 0.9613,精度保留 99.61%(README.md)。
几个实用提示:
- ⚠️仅限 CPU:该模型针对 AMD EPYC 优化,不适用于 GPU 推理
- 🧠默认开启思维链:Qwen3.6 是推理模型,默认输出思考过程;评测或抽取答案时建议
enable_thinking=False - 👁️视觉模块未量化:视觉塔保持 BF16,纯文本场景可加
language_model_only=True跳过 - 📁 采样参数(top_k=20, top_p=0.95)定义在 generation_config.json,对话模板见 chat_template.jinja
- 📜 许可证与源模型一致(Apache-2.0),见 LICENSE
📌 写在最后
Qwen3.6-35B-A3B-w4a16-llmcompressor 展示了"模型架构 + 量化 + 硬件软件栈"三层协同的威力:256 专家 MoE 把算力需求压到 CPU 可承受的 3B 水平,30 层线性注意力把长上下文的内存压力几乎清零,W4A16 量化再把 67 GB 权重塞进 18 GB。如果你手上有台 AMD EPYC 服务器却没有 GPU,这就是目前跑 35B 级多模态模型最现实的选择之一。
- 大模型
- 模型量化
- 本地部署
【免费下载链接】Qwen3.6-35B-A3B-w4a16-llmcompressor
相关推荐
Qwen3.6-35B-A3B-NVFP4架构拆解:256专家、混合线性注意力与MTP多token预测
Qwen3.6 35B A3B NVFP4架构拆解:256专家、混合线性注意力与MTP多token预测 Qwen3.6 35B A3B NVFP4 是 RedH
拆解Qwen3.6-35B-A3B-Quark-INT4-G128背后的架构:256专家MoE与混合线性注意力的奥秘
拆解Qwen3.6 35B A3B Quark INT4 G128背后的架构:256专家MoE与混合线性注意力的奥秘 本文带你拆解 Qwen3.6 35B A3
一文读懂Qwen3.6-35B-A3B-w8a8-llmcompressor模型架构:256个专家、混合注意力与262K超长上下文(新手友好)
一文读懂Qwen3.6 35B A3B w8a8 llmcompressor模型架构:256个专家、混合注意力与262K超长上下文(新手友好) Qwen3.6
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考