Transformers documentation
AQLM
AQLM
Additive Quantization of Language Models (AQLM) mengkuantisasi beberapa bobot secara bersama-sama dan memanfaatkan ketergantungan antar bobot tersebut. AQLM merepresentasikan kelompok 8-16 bobot sebagai jumlah dari beberapa kode vektor.
AQLM juga mendukung fine-tuning dengan LoRA menggunakan pustaka PEFT, dan sepenuhnya kompatibel dengan torch.compile untuk inferensi dan pelatihan yang lebih cepat.
Jalankan perintah di bawah untuk menginstal pustaka AQLM dengan dukungan kernel untuk inferensi dan pelatihan di GPU maupun CPU.
pip install aqlm[gpu,cpu]
Muat model yang dikuantisasi AQLM dengan 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"
)Konfigurasi
Konfigurasi kuantisasi AQLM terutama bervariasi dalam jumlah codebook yang digunakan, serta ukuran codebook dalam bit. Konfigurasi yang paling populer dan kernel inferensi yang didukung ditunjukkan di bawah ini.
| Kernel | Jumlah codebook | Ukuran codebook, bit | Notasi | Akurasi | Percepatan | Inferensi GPU yang cepat | Inferensi CPU yang cepat |
|---|---|---|---|---|---|---|---|
| Triton | K | N | KxN | - | Hingga ~0,7x | ✅ | ❌ |
| CUDA | 1 | 16 | 1x16 | Terbaik | Hingga ~1,3x | ✅ | ❌ |
| CUDA | 2 | 8 | 2x8 | OKE | Hingga ~3,0x | ✅ | ❌ |
| Numba | K | 8 | Kx8 | Bagus | Hingga ~4.0x | ❌ | ✅ |
Sumber daya
Jalankan notebook demo AQLM untuk melihat lebih banyak contoh cara mengkuantisasi model, mendorong model terkuantisasi ke Hub, dan lainnya.
Untuk contoh notebook demo lainnya, kunjungi repository AQLM.
Update on GitHub