模型量化
概述
- 量化效果:同级别时awq>>>qptq>>>>>gguf
- 大语言模型量化方法对比:GPTQ、GGUF、AWQ
GPTQ
- GPTQ:Post-Training Quantization for GPT Models
- GPTQ是一种4位量化的训练后量化(PTQ)方法,主要关注GPU推理和性能。
- 尝试通过最小化该权重的均方误差将所有权重压缩到4位。在推理过程中,它将动态地将其权重去量化为float16,以提高性能,同时保持低内存。
GGUF
- GGUF:GPT-Generated Unified Format
- 允许用户使用CPU来运行LLM,但也可以将其某些层加载到GPU以提高速度。
AWQ
- AWQ:Activation-aware Weight Quantization 激活感知权重量化
- 类似于GPTQ,最重要的区别是AWQ假设并非所有权重对LLM的性能都同等重要。
- 对于AWQ,可以使用vLLM包
BitNet 1.58
- 微软提出BitNet 1.58
- 项目主站:https://thegenerality.com/agi/
- 项目仓库:https://github.com/microsoft/unilm
- Implementation of "BitNet: Scaling 1-bit Transformers for Large Language Models" in pytorch
AQLM 2-bit量化Mixtral-8x7B
AQLM技术简介
- 加性量化(AQLM,Additive Quantization for Language Models)是一种针对语言模型设计的技术,旨在优化模型的存储和计算效率。
- AQLM是一层一层量化,所以量化速度较慢。量化后的模型可用,但看在测试复杂prompt时效果不如HQQ混合精度和BitsAndBytesConfig NF4量化后的效果