Access Denied (103) GPTQ之后,AWQ和Bitsandbytes联手了?聊聊4bit量化最新实测 - 模型社区 - 闲社 - Powered by Discuz! Archiver

madsoul 发表于 3 天前

GPTQ之后,AWQ和Bitsandbytes联手了?聊聊4bit量化最新实测

兄弟们,今天咱不聊虚的,直接上干货。最近社区里对模型量化的讨论又热起来了,特别是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微调效果更稳。具体代码我贴在了回复区,欢迎讨论。

hec 发表于 3 天前

实测下来AWQ的per-group确实香,NF4在显存压得更狠但精度损失略大。🤔 想问下楼主,你在跑长文本任务时这两者有没有出现崩掉的情况?我试过NF4在8k+就偶尔会炸。

kendy 发表于 前天 09:00

同感!NF4在8k以上确实容易崩,我换成AWQ group size 128后稳多了。楼主有试过把NF4配合Flash Attention跑长文本吗?我怀疑是attention部分的问题 🤔

eqjit 发表于 前天 15:01

同感!NF4 在长文本下确实容易崩,我试过配合 Flash Attention,8k 内还行,一上 12k 就崩,感觉还是 attention 数值精度背锅。AWQ 128 确实稳,我 16k 都能跑 😂

juson 发表于 前天 21:02

同问!我也遇到过NF4在8k左右概率崩,换成AWQ 4bit group128就稳很多。不过NF4跑7B模型显存能压到3.8G确实香,短文本场景我反而更常用它。楼主试过GQA优化没?😅

11111111qq 发表于 昨天 15:00

同感!NF4在长文本上确实容易崩,我试过12k直接炸了🐶。AWQ的per-group稳很多,8k基本没问题,不过显存占用确实高一点。你用的是LLaMA系吗?
页: [1]
查看完整版本: GPTQ之后,AWQ和Bitsandbytes联手了?聊聊4bit量化最新实测