Transformers documentation
HIGGS
HIGGS
HIGGS adalah algoritma kuantisasi zero-shot yang menggabungkan pra-pemrosesan Hadamard dengan grid kuantisasi MSE-Optimal untuk mencapai error kuantisasi yang lebih rendah dan kinerja state-of-the-art.
Dukungan runtime untuk HIGGS diimplementasikan melalui pustaka FLUTE. Saat ini, hanya varian 70B dan 405B dari Llama 3 dan Llama 3.0, serta varian 8B dan 27B dari Gemma 2 yang didukung. HIGGS juga belum mendukung pelatihan terkuantisasi dan backward passes secara umum.
Jalankan perintah di bawah ini untuk menginstal FLUTE.
pip install flute-kernel
pip install flute-kernel -i https://flute-ai.github.io/whl/cu11.8
Buat HiggsConfig dengan jumlah bit untuk mengkuantisasi model.
from transformers import AutoModelForCausalLM, AutoTokenizer, HiggsConfig
model = AutoModelForCausalLM.from_pretrained(
"google/gemma-2-9b-it",
quantization_config=HiggsConfig(bits=4),
device_map="auto",
)Temukan model yang telah di-kuantisasi sebelumnya dengan HIGGS di koleksi resmi ISTA-DASLab.
torch.compile
HIGGS sepenuhnya kompatibel dengan torch.compile.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, HiggsConfig
model = AutoModelForCausalLM.from_pretrained(
"google/gemma-2-9b-it",
quantization_config=HiggsConfig(bits=4),
device_map="auto",
)
model = torch.compile(model)Lihat tabel di bawah ini untuk benchmark forward passes/detik untuk Llama-3.1-8B-Instruct pada RTX4090.
| Ukuran Batch | BF16 (dengan torch.compile) | HIGGS 4bit (tanpa torch.compile) | HIGGS 4bit (dengan torch.compile) |
|---|---|---|---|
| 1 | 59 | 41 | 124 |
| 4 | 57 | 42 | 123 |
| 16 | 56 | 41 | 120 |