Transformers documentation
AQLM
AQLM
Additive Quantization of Language Models (AQLM) lượng tử hóa nhiều trọng số cùng lúc và tận dụng các mối phụ thuộc lẫn nhau giữa chúng. AQLM biểu diễn các nhóm 8-16 trọng số dưới dạng tổng của nhiều mã vector.
AQLM cũng hỗ trợ fine-tuning với LoRA bằng thư viện PEFT, và tương thích hoàn toàn với torch.compile để suy luận và huấn luyện nhanh hơn nữa.
Chạy lệnh bên dưới để cài đặt thư viện AQLM với hỗ trợ kernel cho cả suy luận và huấn luyện trên GPU và CPU.
pip install aqlm[gpu,cpu]
Tải một mô hình đã lượng tử hóa AQLM bằng from_pretrained().
from transformers import AutoTokenizer, AutoModelForCausalLM
quantized_model = AutoModelForCausalLM.from_pretrained(
"ISTA-DASLab/Mixtral-8x7b-AQLM-2Bit-1x16-hf",
dtype="auto",
device_map="auto"
)Cấu hình
Các cấu hình lượng tử hóa AQLM chủ yếu khác nhau về số lượng codebook được sử dụng cũng như kích thước codebook tính bằng bit. Các cấu hình phổ biến nhất và các kernel suy luận được hỗ trợ được hiển thị bên dưới.
| Kernel | Số lượng codebook | Kích thước codebook, số bit | Ký hiệu | Độ chính xác | Tốc độ tăng | Suy luận GPU nhanh | Suy luận CPU nhanh |
|---|---|---|---|---|---|---|---|
| Triton | K | N | KxN | - | Tối đa ~0,7 lần | ✅ | ❌ |
| CUDA | 1 | 16 | 1x16 | Tốt nhất | Tối đa ~1.3 lần | ✅ | ❌ |
| CUDA | 2 | 8 | 2x8 | OK | Tối đa ~3.0 lần | ✅ | ❌ |
| Numba | K | 8 | Kx8 | Tốt | Tối đa ~4.0 lần | ❌ | ✅ |
Tài nguyên
Chạy notebook demo AQLM để xem thêm các ví dụ về cách lượng tử hóa một mô hình, đẩy mô hình đã lượng tử hóa lên Hub, và nhiều hơn nữa.
Để xem thêm các notebook demo mẫu, hãy truy cập kho mã của AQLM.
Update on GitHub