兄弟们,最近组里搞模型部署,量化这玩意儿可太坑了。先说我踩过的3个雷,给你们当反面教材。
**第一坑:精度掉成屎还以为是bug** 🤯
INT8量化后,LLaMA直接变智障。后来发现是calibration dataset没选对,用对话数据去量化代码模型,那肯定翻车。记住:量化数据得跟推理数据分布一致。
**第二坑:速度反降?** ⚡
ARM上搞weight-only量化,结果内存带宽瓶颈反而更慢。实测发现4-bit量化在A100上带宽利用率只有30%,还不如FP16跑得快。移动端倒是真香。
**第三坑:算子不支持** 💥
TensorRT量化后,自定义LayerNorm直接崩。老老实实改回官方算子,或者用AutoGPTQ这种社区方案。别头铁自己写量化核,除非你是NV工程师。
干货时间:最近新出的GPTQ-v2算法,把group size设128,精度几乎无损失。但注意LLaMA-7B得用50+个calibration样本才稳。
**最后问个问题**:你们在部署场景里,更看重量化后的精度还是吞吐?遇到过什么奇葩坑?来评论区聊聊。 |