Transformers documentation
حفظ ومشاركة نموذج
حفظ ومشاركة نموذج
يحفظ النموذج بعد تكميمه أثناء تحميله، مما يتيح لك ولأي شخص تشاركه معه تجاوز خطوة التكميم في المرة القادمة. تستفيد طرق المعايرة مثل GPTQ بشكل أكبر لأن المعايرة قد تستغرق من دقائق إلى ساعات.
حفظ النموذج
استدعِ save_pretrained() على النموذج المُكمَّم لحفظ الأوزان المُكمَّمة وإضافة quantization_config إلى config.json.
from transformers import AutoModelForCausalLM, BitsAndBytesConfig
quantization_config = BitsAndBytesConfig(load_in_4bit=True)
model = AutoModelForCausalLM.from_pretrained(
"Qwen/Qwen3-0.6B",
quantization_config=quantization_config,
device_map="auto",
)
model.save_pretrained("Qwen3-0.6B-bnb-4bit")احفظ مُجزّئ النص في نفس المجلد حتى يكون نقطة التفتيش مكتملة.
ادفع النموذج إلى Hub
استدعِ push_to_hub() لرفع الأوزان المُكمّأة وإعدادات النموذج إلى مستودع في Hub. سجّل الدخول أولاً باستخدام hf auth login.
model.push_to_hub("Qwen3-0.6B-bnb-4bit")تحميل النموذج المحفوظ
حمّل نقطة التفتيش المحفوظة باستخدام from_pretrained() دون إعداد كميّة. تقرأ Transformers الطريقة من quantization_config في config.json وتحمّل الأوزان المُكمّاة مسبقًا.
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("your-username/Qwen3-0.6B-bnb-4bit", device_map="auto")يجب تثبيت مكتبة الطريقة في أي مكان يتم فيه تحميل نقطة التفتيش.
طرق غير قابلة للحفظ
لا يمكن لبعض الطرق حفظ أوزانها المُكمّاة، وتُطلق save_pretrained() خطأً من نوع ValueError لها.
| الطريقة | لماذا |
|---|---|
| GGUF | تُحمَّل الأوزان من ملف GGUF. احفظها بتنسيق GGUF باستخدام أدوات llama.cpp بدلاً من ذلك. |
| NVFP4 | الحفظ غير مدعوم. قم بتكميم النموذج مرة أخرى عند تحميله. |
| Quanto | لا يُدعم الحفظ عبر Transformers. |
| Quark | لا يُدعم الحفظ عبر Transformers. |
| AWQ مع واجهة خلفية ExLlama | لا يُدعم الحفظ مع واجهات ExLlama الخلفية. حمّل النموذج بواجهة خلفية أخرى لحفظه. |
يُعدّ النموذج المُكمَّم مع مُكيّف PEFT مرفق به استثناءً. حيث يحفظ save_pretrained() أوزان المُكيّف فقط، لذا يعمل مع أي طريقة.
لحفظ النموذج بدقة كاملة بدلاً من ذلك، قم بإلغاء التكميم أولاً. راجع إلغاء تكميم النموذج.
Update on GitHub