GPTQModel
支持 NVIDIA/AMD/Intel/华为昇腾多硬件的 LLM 量化压缩工具,可将模型体积压缩至
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
支持 NVIDIA/AMD/Intel/华为昇腾多硬件的 LLM 量化压缩工具,可将模型体积压缩至
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象你有一台顶配游戏电脑,但硬盘只剩 10GB——装不下 100GB 的 3A 大作。怎么办?压缩。游戏文件从 100GB 压到 15GB,依然能流畅运行,只是画质稍微损失一点。GPTQModel 做的事情本质上与此类似:它把几百 GB 的大语言模型(LLM)压缩到原来的 1/4~1/8,同时让模型依然保持 95%+ 的回答质量。
这个项目来自ModelCloud团队,定位是"Production Ready(生产就绪)"的 LLM 量化工具——不是实验室 demo,而是真正能跑进生产环境的工业级方案。与简单量化不同,GPTQModel 最大的差异化在于多硬件后端支持:不仅支持 NVIDIA GPU(CUDA),还同时支持 AMD ROCm、Intel XPU,以及国内少见的华为昇腾 NPU。对于有国产化诉求的企业来说,这是个稀缺能力。
LLM 量化不是简单地把 32 位浮点数改成 8 位整数。GPTQModel 支持多种量化算法,每种都有不同的精度-速度权衡:
量化过程通常分两步:先压缩权重,再加载推理。GPTQModel 在推理侧也做了大量优化,内置了 Exllamav2/3、Marlin、Q4_K 等 CUDA kernel,推理速度比 naive 实现快 3~10 倍。
| 硬件 | 加速方案 | 说明 |
|---|---|---|
| NVIDIA GPU | Marlin / Exllamav2/v3 / Cutlass | CUDA kernel 高度优化 |
| AMD GPU | ROCm 兼容 | 依托 HIP 编译 |
| Intel GPU/XPU | XPU backend | 支持 Intel Arc 等 |
| 华为昇腾 NPU | Ascend NPU linalg | 国内政企刚需 |
| CPU (Intel/AMD/Apple) | GGUF / Floatx | 纯 CPU 推理 |
这种全栈硬件覆盖的背后,是 ModelCloud 团队对推理优化生态的深度参与。项目与 Hugging Face Transformers、vLLM(高速推理引擎)、SGLang(结构化输出框架)深度集成——用户量化好的模型,可以直接无缝加载到这些主流推理框架中使用。
GPTQModel 代码库采用清晰的模块化分层:
gptqmodel/ # 核心量化逻辑
├── quantization/ # 量化算法实现
│ ├── gptq.py # GPTQ 量化
│ ├── awq.py # AWQ 量化
│ ├── paroquant.py # ParaQuant(旋转量化)
│ ├── qqq.py # QQG 量化
│ └── rtn.py # RTN(Round-to-Nearest)基线
├── models/ # 模型结构适配
├── nn_modules/ # 自定义神经网络模块
├── utils/ # 工具函数
├── hf_kernels/ # HuggingFace 集成 kernel
│ ├── causal_conv1d # Mamba SSM 专用
│ └── mamba_ssm # 状态空间模型支持
└── extension.py # CUDA 扩展加载器
gptqmodel_ext/ # C++/CUDA 高性能 kernel
├── exllamav2/ # EXL2 内核 v2
├── exllamav3/ # EXL2 内核 v3(Marlin 融合)
├── marlin/ # NVIDIA Marlin 融合 kernel
├── cutlass_extensions/ # cuBLAS 扩展
├── awq/ # AWQ 专用 kernel
├── parquant/ # ParaQuant CUDA 实现
└── machete/ # Block-level 混合精度
hw/ # 硬件后端文档
└── ascend_npu.md # 昇腾 NPU 接入说明
核心设计亮点:
最简方式(pip 安装):
pip install gptqmodel
从源码编译(解锁所有优化 kernel):
git clone https://github.com/ModelCloud/GPTQModel
cd GPTQModel
pip install -e .
作者 qubitium 的开发风格非常务实:pip 版本内置了纯 PyTorch fallback,即使没有 CUDA 环境也能跑,只是速度慢一些。源码安装则会编译 C++/CUDA 扩展,解锁 Marlin、Exllamav3 等高性能 kernel。
量化一个模型示例(来自官方文档):
from gptqmodel import GPTQModel
model = GPTQModel.from_pretrained("meta-llama/Llama-2-7b-hf", quantize="4bit")
model.save("./llama2-7b-4bit")
支持的模型列表相当丰富,HuggingFace 上已有 6.7K+ GPTQ 量化模型 和 8.2K+ AWQ 量化模型托管在 ModelCloud 组织下。
2024 年以来,LLM 量化赛道竞争激烈:GPTQ、AWQ、llama.cpp(GGUF)、llamafile 各有拥趸。GPTQModel 的出现带来了几个独特价值:

图1:ModelCloud 组织头像 — ModelCloud 团队专注文档中 HuggingFace 生态的量化基础设施建设
GPTQModel 是一款定位明确的生产级 LLM 量化工具,核心优势是"多硬件后端 + 主流推理框架集成"。如果你需要在 NVIDIA 以外的硬件上部署量化模型,或者希望量化好的模型无缝接入 vLLM/SGLang,它是目前最省力的选择。上手门槛低(pip 即装即用),进阶需要编译 C++ 扩展,适用人群是有模型部署需求的 AI 工程师和有多硬件 GPU 资源的企业团队。