介绍

前言

LLM Compressor,作为 vLLM 项目 中面向高效提供 LLM 服务的一部分,将最新的模型压缩研究整合到一个统一的开源库中,使用户能够以极低的工作量生成高效的压缩模型。

该框架使用户能够应用最新的模型压缩技术研究来提升生成式 AI(gen AI)模型的效率、可扩展性和性能,同时保持准确性。借助对 Hugging Face 和 vLLM 的原生支持,压缩后的模型可以集成到部署流水线中,从而以更低成本在大规模场景下提供更快的推理。

LLM Compressor 允许你执行量化、稀疏化和压缩等模型优化技术,以减少内存占用、模型大小,并在不影响模型响应准确性的前提下提升推理性能。LLM Compressor 支持以下压缩方法:

  • 量化:将模型权重和激活值转换为更低比特位格式,例如 int8,从而减少内存使用。
  • 稀疏化:将模型权重的一部分置为零,通常采用固定模式,以实现更高效的计算。
  • 压缩:缩小保存的模型文件大小,理想情况下对性能的影响最小。

将这些方法结合使用,可以在资源受限的硬件上更高效地部署模型。

LLM Compressor 支持多种压缩技术:

  • 仅权重量化(W4A16)将模型权重压缩到 4 位精度,适用于硬件资源有限或对延迟高度敏感的 AI 应用。
  • 权重和激活量化(W8A8)将权重和激活值都压缩到 8 位精度,面向整数和浮点格式的通用服务器场景。

LLM Compressor 支持多种压缩算法:

  • AWQ:仅权重 INT4 量化
  • GPTQ:仅权重 INT4 量化
  • FP8:按 token 动态量化
  • SparseGPT:训练后稀疏化
  • SmoothQuant:激活量化

有关压缩算法和格式的更多信息,请参阅 文档 以及 llmcompressor 仓库中的示例。 这些压缩方法都会为权重和激活值计算最优的 scale 和 zero-point。优化后的 scale 可以按 tensor、channel、group 或 token 进行设置。最终结果是一个已应用所有量化参数的压缩模型。