通过量化,我们可以减小大型语言模型 (LLM) 的大小。量化后的 LLM 更容易在内存较小的 GPU 上运行,可有效用作 LLM 的压缩方法。
根据Meta 自己的评测,Llama 3 8B 优于 Llama 2 7B 和 Mistral 7B。然而问题来了:量化之后,Llama 3 8B 是否还能保持优势呢?
换句话说,如果 Llama 3 优于 Mistral 7B 和 Llama 2(Llama 3 > Mistral 7B > Llama 2 7B),那么量化版本是否也比这些量化模型更好(量化 Llama 3 > 量化 Mistral 7B > 量化 Llama 2 7B)?
在本文中,我们将回答这个问题。我使用 bitsandbytes 将所有模型量化为 8 位和 4 位,使用 GPTQ 将所有模型量化为 8 位、4 位、3 位和 2 位,并在 3 个不同任务上检查它们的性能。我们将看到,对于 Llama 3,使用这两种量化算法,8 位量化效果都相当好。我还发现,虽然 GPTQ 4 位会显著降低模型的性能,但 bitsandbytes 量化似乎效果很好。
Llama 3 的 GPTQ 量化
GPTQ 是一种非常流行的量化方案,支持多种神经架构。借助AutoGPTQ(MIT 许可证