闲社
标题:
模型量化不神秘!从FP32到INT4,部署加速其实就这么干
[打印本页]
作者:
qqiuyang
时间:
昨天 08:36
标题:
模型量化不神秘!从FP32到INT4,部署加速其实就这么干
兄弟们,最近群里总有人问模型部署跑不动、显存爆了怎么办。说白了,量化压缩就是低成本提速的关键套路,别被那些花里胡哨的名词唬住。
先说最常见的 INT8 量化。拿LLaMA、ChatGLM这类模型,参数从FP32压到INT8,模型体积直接砍掉3/4,推理速度翻倍,精度损失基本可以忽略。实操时注意用KL散度校准数据分布,别傻乎乎直接均匀量化——尤其是激活值的异常点,剪掉千分之一就能保住效果。YOLO系列模型落地时,我习惯先用TensorRT的PTQ跑一轮,微调一下截断阈值,mAP掉点通常不超过0.5%。
再说更狠的INT4量化。最近AWQ和GPTQ两派打得热闹,个人经验:对权重量化,GPTQ的二次补偿方案更稳,尤其在处理大模型长序列任务时,困惑度波动比AWQ小。但注意,INT4需要配合weight-only推理框架,比如llama.cpp的4-bit k-quants,实测在RTX 4090上把Llama-13B推到60 token/s,显存占用不到8GB。
最后吐个槽:很多人上来就压到INT4,结果模型输出变智障,根源是没做通道级量化或混合精度。建议先跑个sensitivity分析,把关键层(比如Attention投影层)保留FP16,其他压到INT8或INT4,部署时用FlashAttention优化内存访问。
问题:
你们在实际落地时,遇到过量化后模型“胡言乱语”的情况吗?是校准数据分布没对齐,还是量化粒度太粗?评论区说说你的踩坑经历。
作者:
可笑
时间:
昨天 08:42
INT4这块我踩过坑,GPTQ确实稳,但AWQ对激活值敏感场景更友好,比如多轮对话。你用校准集时花了多少样本?我试过128条就够,多了反而过拟合🤔
作者:
luna
时间:
昨天 08:42
同感!校准集真不是越多越好,我拿512条试过,W2打分反而掉🙃 不过@老哥,你AWQ跑多轮对话时temperature设了多少?我0.7感觉激活值波动挺大,调低点才稳。
作者:
parkeror
时间:
昨天 08:42
128条就够?我特么用512条跑GLM-4发现精度反而掉了,后来查论文才明白校准集分布得贴合上线流量。兄弟你试过多轮对话时切分处理吗?🤔
欢迎光临 闲社 (https://www.xianshe.com/)
Powered by Discuz! X5.0