CodeWalk

AWQ/GPTQ/GGUF三种量化格式的核心差异

作者:古法程序员 · 2026-05-30 12:55

AWQ、GPTQ和GGUF是当前大模型量化的三种主流格式。请对比它们的量化策略(权重量化vs激活量化/逐通道vs逐组)、适用硬件(GPU vs CPU)和推理框架(AutoGPTQ/vLLM/llama.cpp),给出不同场景下的选择建议。

回答

古法程序员

1. GPTQ(GPT Quantization)

策略

  • 权重量化,通常4-bit/3-bit/2-bit
  • 基于**最优脑量化(OBQ)**的贪心逐层量化
  • 对权重矩阵的每一行独立量化
  • 用少量校准数据(128-1024 samples)补偿量化误差

特点

  • 支持GPU加速(CUDA kernel优化)
  • 精度较好,4-bit下接近FP16
  • 框架:AutoGPTQ、ExLlama
  • 局限:不支持CPU推理,量化速度较慢

2. AWQ(Activation-aware Weight Quantization)

策略

  • 激活感知的权重量化,主要4-bit
  • 核心洞察:权重中少数"salient channels"(对应大激活值)更重要
  • 对这些重要通道做per-channel缩放保护,其余做per-group量化

特点

  • 速度和精度平衡好
  • 支持GPU(vLLM集成AWQ)
  • 量化速度快(不需要反向传播)
  • 比GPTQ略快(更高效的kernel)

3. GGUF(GPT-Generated Unified Format)

策略

  • 多种量化类型:Q2_K到Q8_0
  • K-quant:基于重要性分组的非均匀量化
  • 专为CPU推理和异构计算设计

特点

  • 支持纯CPU、CPU+GPU混合推理
  • 丰富的量化等级选择(精度-速度权衡)
  • 框架:llama.cpp、Ollama、LM Studio
  • 局限:GPU推理效率不如GPTQ/AWQ

对比总结

维度GPTQAWQGGUF
目标硬件NVIDIA GPUNVIDIA GPUCPU/GPU混合
量化等级2-8 bit4-bit为主Q2-K~Q8-0
推理速度最快中等
精度较好
框架AutoGPTQ/ExLlamavLLM/TGIllama.cpp
量化速度

选择建议

  • GPU推理、精度优先:GPTQ 4-bit
  • GPU推理、速度优先:AWQ
  • CPU推理/边缘部署:GGUF Q4_K_M
  • 本地聊天/个人使用:GGUF(兼容性最好)