背景

基础名词解释
理论知识
常见的数据类型
数据类型 | 位宽 | 符号位 | 指数位 | 尾数位 | 十进制有效数字 | 动态范围 | 相对内存 |
FP64 | 64 | 1 | 11 | 52 | 15-17位 | 10^308 | 8x |
FP32 | 32 | 1 | 8 | 23 | 6-7位 | 10^38 | 4x |
BF16 | 16 | 1 | 8 | 7 | 2-3位 | 10^38 | 2x |
FP16 | 16 | 1 | 5 | 10 | 3-4位 | 10^5 | 2x |
FP8(E4M3) | 8 | 1 | 4 | 3 | ~1位 | 10^2 | 1x |
FP8(E5M2) | 8 | 1 | 5 | 2 | <1位 | 10^4 | 1x |
INT8 | 8 | ㅤ | ㅤ | ㅤ | 2-3位 | 10^2 | 1x |
INT4 | 4 | ㅤ | ㅤ | ㅤ | 1位 | 10^1 | 0.5x |
模型量化对象
模型量化分类
特性 | 训练后量化(PTQ) | 量化感知微调(QAF) | 量化感知训练(QAT) |
介入阶段 | 训练完成后 | 训练中后期微调 | 从零开始训练 |
精度损失 | 中(3-5%) | 低(<1%) | 理论最低 |
时间成本 | 分钟级 | GPU小时级 | GPU周级 |
硬件要求 | 无 | 需支持低精度训练 | 需定制硬件 |
开源支持 | AutoGPTQ, GGUF | NNCF, Brevitas | FP6-LLM代码库 |
产业应用 | ★★★★★ | ★★★★☆ | ★☆☆☆☆ |
常见的量化方法
GPTQ(高精度训练后权重量化)
- 量化速度较快
- 模型性能损耗较小(4位量化的情况下,仍能接近于全精度模型的性能)
- 内存占用大幅降低(量化后的175B模型可在单个A100-80GPU运行,未量化需5块GPU)
- 推理速度提升(在生成任务中,3位量化的模型在A100 GPU上实现了约3.25倍提速)
- 依赖校准数据(数据质量差则效果差)
- 可能存在过拟合校准集,导致模型在校准集之外的场景下性能下降
- 只支持新显卡(Nvidia 30系以上)
AWQ(激活感知的权重量化)
- 泛化性强(不同场景表现稳定)
- 可以自动识别关键参数(无需人工指定)
- 不支持复杂模型结构(比如MoE专家网络)
- 需简单调参
BitsandBytes(动态反量化)
- 无需校准或导出,可直接使用
- 支持4/8-bit混合精度
- 存在性能损失,4-bit量化精度下降较明显
- 推理过程中的反量化会增加10%的延迟
QLoRA(量化低秩微调)
- 可极致降低模型微调使用的显存,比如微调65B模型仅需48G显存;
- 低秩适配器需要手动调参
- 在某些任务上,QLoRA微调的模型精度可能比不上全量微调模型
模型评估
安装
使用命令行评测
动手实践
使用AWQ量化DeepSeek-R1-Distill-Qwen-1.5B模型
硬件配置
- GPU-12G
- 运行内存-32G
- CPU 6核12线程
工具介绍
GitHub - vllm-project/llm-compressor: Transformers-compatible library for applying various compression algorithms to LLMs for optimized deployment with vLLM
Transformers-compatible library for applying various compression algorithms to LLMs for optimized deployment with vLLM - vllm-project/llm-compressor
原始模型导入
校准数据准备
量化压缩代码
模型评估代码
ㅤ | 模型体积 | CoQA | gsm8K |
量化前 | 3.5G | 0.4232 | 0.684 |
量化后 | 1.5G | 0.4232 | 0.684 |
大型语言模型如何高效微调量化?答案就是 QLoRA! - 53AI-AI知识库|大模型知识库|大模型训练|智能体开发
大型语言模型如何高效微调量化?答案就是 QLoRA! - 53AI-AI知识库|大模型知识库|大模型训练|智能体开发
探索大语言模型的高效微调之道!QLoRA 作为一种创新的微调技术,通过量化和低秩适配器大幅降低内存占用,在单张消费级 GPU 上就能微调大模型。适用于个人、中小企业及各垂直行业。想了解更多大模型微调技术和模型微调方法?点击阅读!
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
mp.weixin.qq.com
mp.weixin.qq.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
zhuanlan.zhihu.com
vLLM - Qwen
vLLM - Qwen
我们建议您在部署 Qwen 时尝试使用 vLLM。它易于使用,且具有最先进的服务吞吐量、高效的注意力键值内存管理(通过PagedAttention实现)、连续批处理输入请求、优化的CUDA内核等功能。要了解更多关于vLLM的信息,请参阅 论文 和 文档。
GitHubGitHub - vllm-project/vllm: A high-throughput and memory-efficient inference and serving engine for LLMsGitHub - vllm-project/vllm: A high-throughput and memory-efficient inference and serving engine for LLMs
A high-throughput and memory-efficient inference and serving engine for LLMs - vllm-project/vllm
- 作者:luxinfeng
- 链接:https://www.luxinfeng.top/article/%E5%A4%A7%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B%E5%8E%8B%E7%BC%A9%E9%87%8F%E5%8C%96%E5%8A%A0%E9%80%9F%E6%8E%A8%E7%90%86
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。




