Transformers documentation
FBGEMM
FBGEMM
FBGEMM (Facebook GEneral Matrix Multiplication), küçük batch boyutları için düşük hassasiyetli matris çarpımı kütüphanesidir ve satır bazlı kuantizasyon ile aykırı değerlere duyarlı kuantizasyon gibi doğruluk kaybını azaltan teknikleri destekler. FBGEMM ile bir modelin ağırlıklarını 8-bit/kanal, aktivasyonlarını ise 8-bit/tokene (fp8 veya w8a8 olarak da bilinir) kuantize edebilirsiniz.
H100 gibi compute capability 9+ destekleyen bir GPU'ya ihtiyacınız var.
En güncel sürüme sahip olduğunuzdan emin olmak için aşağıdaki komutla FBGEMM_GPU paketini yükleyin.
pip install --upgrade accelerate fbgemm-gpu torch
Yükleme sorunları yaşıyorsanız, gece sürümünü yüklemeyi deneyin.
Bir FbgemmFp8Config oluşturun ve modeli fp8'e kuantize etmek için from_pretrained() fonksiyonuna iletin.
from transformers import FbgemmFp8Config, AutoModelForCausalLM
quantization_config = FbgemmFp8Config()
quantized_model = AutoModelForCausalLM.from_pretrained(
"meta-llama/Meta-Llama-3-8B",
dtype="auto",
device_map="auto",
quantization_config=quantization_config
)save_pretrained() ve from_pretrained() fonksiyonları, kuantize edilmiş bir modelin kaydedilmesini ve yüklenmesini sağlar.
quant_path = "/path/to/save/quantized/model"
quantized_model.save_pretrained(quant_path)
model = AutoModelForCausalLM.from_pretrained(quant_path, device_map="auto")Kaynaklar
FBGEMM hakkında daha fazla ayrıntı için Open-sourcing FBGEMM for state-of-the-art server-side inference blog yazısını okuyun.
Update on GitHub