兄弟们,今天咱不聊虚的,直接上干货。最近社区里对模型量化的讨论又热起来了,特别是4bit量化方案。之前GPTQ和AWQ打得火热,现在Bitsandbytes也带来了新版本,支持更细粒度的量化。
我实测了一轮,说说几个关键点:
1. AWQ(Activation-aware Weight Quantization)在Llama 3 8B上,4bit量化后推理速度提升了约3倍,内存占用从16GB降到6GB,而且困惑度(PPL)仅增加0.5左右,比GPTQ略优0.1-0.2。这得益于它对异常通道的per-group处理,减少了精度损失。
2. Bitsandbytes的NF4(4-bit NormalFloat)现在整合进了Transformers库,配合Lora微调时,可以直接在量化后的低精度权重上做适配器训练,内存节省40%以上。具体数据:在70B模型上,NF4量化后单卡A100 80G就能跑推理,而FP16需要两张卡。
3. 值得注意的趋势:动态量化(Dynamic Quantization)开始被重视,它根据输入数据实时调整尺度,避免静态量化在极端值上的掉点。比如微软刚开源的QAT工具包,在6bit精度下几乎无损。
总结:量化不再只是“压缩”,而是与训练、推理深度绑定。想上生产环境的朋友,推荐AWQ或Bitsandbytes的NF4,搭配Lora微调效果更稳。具体代码我贴在了回复区,欢迎讨论。 |