Transformers documentation

FBGEMM

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

FBGEMM

FBGEMM (Facebook GEneral Matrix Multiplication) هو مكتبة لضرب المصفوفات بدقة منخفضة مصممة لحجم دفعات صغير، وتدعم تقنيات تهدف إلى تقليل فقدان الدقة مثل التكميم على مستوى الصفوف والتكميم الواعي بالقيم الشاذة. باستخدام FBGEMM، يمكنك تكميم أوزان النموذج إلى 8 بتات لكل قناة، وتكميم التنشيطات إلى 8 بتات لكل رمز (ويُعرف أيضاً بـ fp8 أو w8a8).

تحتاج إلى وحدة معالجة رسومية (GPU) تملك قدرة حوسبة 9+ مثل H100.

قم بتثبيت حزمة FBGEMM_GPU باستخدام الأمر أدناه للتأكد من أنك تمتلك أحدث إصدار.

pip install --upgrade accelerate fbgemm-gpu torch

إذا كنت تواجه مشاكل في التثبيت، فحاول تثبيت الإصدار الليلي.

أنشئ FbgemmFp8Config وقم بتمريره إلى from_pretrained() لتكميم النموذج إلى fp8.

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() وfrom_pretrained() حفظ نموذج مُكمَّم وتحميله.

quant_path = "/path/to/save/quantized/model"
quantized_model.save_pretrained(quant_path)
model = AutoModelForCausalLM.from_pretrained(quant_path, device_map="auto")

الموارد

اقرأ منشور المدونة فتح مصدر FBGEMM للاستدلال الخادمي المتطور لمزيد من التفاصيل حول FBGEMM.

Update on GitHub