Transformers documentation

MXFP4

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

MXFP4

ملاحظة: تعمل عملية التكميم MXFP4 حاليًا فقط مع نماذج OpenAI GPT-OSS 120b و 20b.

MXFP4 هو تنسيق فاصلة عائمة بدقة 4 بت يقلل بشكل كبير من متطلبات الذاكرة للنماذج الكبيرة. يمكن استيعاب النماذج الكبيرة (GPT-OSS-120B) على وحدة معالجة رسومية واحدة بسعة 80 غيغابايت، بينما تتطلب النماذج الأصغر (GPT-OSS-20B) 16 غيغابايت من الذاكرة فقط. يستخدم هذا التنسيق التدرّج على مستوى الكتل (blockwise scaling) للحفاظ على نطاقه ودقته، وهما ما يميلان عادةً إلى التدهور عند استخدام دقات أدنى.

لاستخدام MXPF4، تأكد من أن جهازك يلبي المتطلبات التالية.

  • قم بتثبيت Accelerate وkernels وTriton ≥ 3.4. ثبّت Triton ≥ 3.4 يدوياً فقط إذا كنت تستخدم PyTorch 2.7، لأنه مدعوم مسبقاً في PyTorch 2.8.
  • قدرة معالجة GPU من NVIDIA ≥ 7.5 والتي تشمل معالجات Tesla والأحدث منها. استخدم get_device_capability للتحقق من قدرة المعالجة.
from torch import cuda
cuda.get_device_capability()

# (7, 5)

تحقق من إعدادات التكميم الخاصة بالنموذج كما هو موضح أدناه لمعرفة ما إذا كان يدعم MXFP4. إذا كان 'quant_method': 'mxfp4'، فإن النموذج يستخدم MXFP4 تلقائيًا.

from transformers import GptOssConfig

model_id = "openai/gpt-oss-120b"
cfg = GptOssConfig.from_pretrained(model_id)
print(cfg.quantization_config)

# Example output:
# {
#   'modules_to_not_convert': [
#     'model.layers.*.self_attn',
#     'model.layers.*.mlp.router',
#     'model.embed_tokens',
#     'lm_head'
#   ],
#   'quant_method': 'mxfp4'
# }

نواة MXFP4

يسحب Transformers تلقائيًا نواة Triton المدركة لـ MXFP4 من مستودع المجتمع عند تحميل نموذج يتطلبها. تُخزَّن النوى في ذاكرة التخزين المؤقت المحلية وتُستخدم أثناء المرور الأمامي.

تُستخدم نوى MXFP4 افتراضياً، إذا كانت متاحة ومدعومة، ولا تتطلب أي تغييرات في الكود.

يمكنك استخدام hf cache scan للتحقق من تنزيل النوى.

hf cache scan
REPO ID                          REPO TYPE SIZE ON DISK
-------------------------------- --------- ------------
kernels-community/triton_kernels model           536.2K
openai/gpt-oss-20b               model            13.8G

الموارد

تعرّف على المزيد حول تكميم MXFP4 وكيفية عمل التدرّج على مستوى الكتل في هذا المقال.

Update on GitHub