玩AI部署的都知道,模型量化(Quantization)是让大模型跑上边缘设备的必杀技。从FP32压到INT8,推理速度翻倍、显存减半,效果还勉强能看。但实操起来,坑一个接一个。
先说几个硬干货:
1️⃣ **量化感知训练(QAT)比后训练量化(PTQ)香**
别图省事直接PTQ,精度掉得你怀疑人生。特别是小模型或低比特(4-bit以下),QAT基本是唯一出路。跑几轮微调,代价不大,效果天差地别。
2️⃣ **剪枝+量化组合拳,但别一起上**
先剪枝去掉冗余参数,再量化压缩精度。顺序反了的话,量化噪声会放大剪枝的精度损失。建议先结构化剪枝(比如LayerDrop),再做QAT。
3️⃣ **校准数据集别乱选**
PTQ需要校准集,很多人直接扔训练集。大忌!校准集要覆盖部署场景的数据分布,不然量化完在真实输入上翻车。弄几百张目标场景的样本就够,多了过拟合。
4️⃣ **硬件支持要摸清**
不是所有INT8都长一样。NVIDIA用对称量化,ARM用非对称,高通更爱混合精度。代码关掉自动调优前,先查芯片文档。否则量完跑不了,白干。
最后问个问题:大家对**FP8**(8-bit浮点)怎么看?最近H100/AMD MI300都开始推了,比INT8在动态范围上更灵活,但硬件普及度咋样?你们会为了它换设备吗? |