Transformers documentation

مشاركة

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

مشاركة

منصة Hub التابعة لـ Hugging Face هي منصة لمشاركة واكتشاف واستخدام نماذج من جميع الأنواع والأحجام. ننصح بشدة بمشاركة نموذجك على Hub لدفع عجلة تعلم الآلة مفتوح المصدر إلى الأمام من أجل الجميع!

ستُظهر لك هذه الدليل كيفية مشاركة نموذج على Hub من Transformers.

الإعداد

لمشاركة نموذج على Hub، تحتاج إلى حساب على Hugging Face. أنشئ User Access Token (يُخزَّن في cache افتراضياً) وسجّل الدخول إلى حسابك من سطر الأوامر أو من دفتر ملاحظات.

huggingface-CLI
دفتر ملاحظات
hf auth login

مميزات المستودع

تتميز كل مستودع نماذج بإدارة الإصدارات، وسجل الالتزامات، وتصور الفروقات.

تعتمد آلية إصدارات النسخ على Git وGit Large File Storage (LFS)، وتتيح المراجعات، وهي طريقة لتحديد إصدار النموذج باستخدام تجزئة التزامن (commit hash) أو وسم (tag) أو فرع (branch).

على سبيل المثال، استخدم معامل revision في from_pretrained() لتحميل إصدار محدد من النموذج من تجزئة التزامن.

model = AutoModel.from_pretrained(
    "julien-c/EsperBERTo-small", revision="4c77982"
)

عند التحميل من فرع أو وسم، تُثبَّت جميع الملفات في ذلك الاستدعاء على التزام الواحد، ثم تُجلب جميع الملفات من ذلك الالتزام.

تبقى تلك الإبرة (pin) سارية المفعول خلال الاستدعاء فقط. لضمان قابلية إعادة الإنتاج عبر التشغيلات، مرّر رمز التزامن (commit hash) صريحًا أو وسمًا (tag) تعامل معه على أنه ثابت. لا تعتمد على بقاء main أو أي فرع متحرك آخر ثابتًا بين التشغيلات.

تدعم مستودعات النماذج أيضًا التحكم في الوصول للتحكم في من يمكنه الوصول إلى نموذج. يُعدّ هذا التحكم شائعًا للسماح لمجموعة محددة من المستخدمين بمعاينة نموذج بحثي قبل إتاحته للعموم.

يتضمن مستودع النموذج أيضًا مكوّنًا للاستدلال يتيح للمستخدمين التفاعل مباشرة مع النموذج على المنصة.

اطّلع على وثائق النماذج في Hub لمزيد من المعلومات.

رفع نموذج

There are several ways to upload a model to the Hub depending on your workflow preference. You can push a model with Trainer, call push_to_hub() directly on a model, or use the Hub web interface.

Trainer

يمكن لـ Trainer دفع النموذج مباشرةً إلى Hub بعد التدريب. اضبط push_to_hub=True في TrainingArguments وقم بتمريره إلى Trainer. بمجرد اكتمال التدريب، استدعِ push_to_hub() لرفع النموذج.

تضيف push_to_hub() تلقائيًا معلومات مفيدة مثل معاملات التدريب الفائقة والنتائج إلى بطاقة النموذج.

from transformers import TrainingArguments, Trainer

training_args = TrainingArguments(output_dir="my-awesome-model", push_to_hub=True)
trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=small_train_dataset,
    eval_dataset=small_eval_dataset,
    compute_metrics=compute_metrics,
)
trainer.push_to_hub()

لرفع النموذج إلى مستودع خاص، اضبط hub_private_repo=True في TrainingArguments. إذا لم يتم إنشاء المستودع بعد (على سبيل المثال، عندما يكون push_to_hub=False في TrainingArguments)، يمكنك أيضاً تمرير private=True إلى push_to_hub() بدلاً من ذلك. لا يسري مفعول الحجة private إلا عند إنشاء المستودع، لذا فإنها لا تغيّر مستوى ظهور المستودع الموجود مسبقاً.

trainer.push_to_hub(private=True)

PushToHubMixin

توفّر PushToHubMixin إمكانية دفع النموذج أو المُجزِّئ إلى Hub.

Call push_to_hub() directly on a model to upload it to the Hub. It creates a repository under your namespace with the model name specified in push_to_hub().

model.push_to_hub("my-awesome-model")

تُرفع كائنات أخرى مثل مُجزِّئ الرموز إلى Hub بالطريقة نفسها.

tokenizer.push_to_hub("my-awesome-model")

يجب أن يعرض ملفك الشخصي على Hugging Face الآن مستودع النموذج الذي تم إنشاؤه حديثاً. انتقل إلى تبويب Files لعرض جميع الملفات المرفوعة.

راجع دليل رفع الملفات إلى Hub لمزيد من المعلومات حول دفع الملفات إلى Hub.

واجهة الويب الخاصة بـ Hub

واجهة الويب الخاصة بـ Hub هي نهج بدون كتابة أكواد لرفع نموذج.

  1. أنشئ مستودعًا جديدًا عن طريق تحديد نموذج جديد.

أضف بعض المعلومات حول نموذجك:

  • اختر المالك للمستودع. يمكن أن تكون أنت أو أيًا من المنظمات التي تنتمي إليها.
  • اختر اسمًا لنموذجك، وسيكون هذا الاسم أيضًا اسم المستودع.
  • اختر ما إذا كان نموذجك عامًا أو خاصًا.
  • اضبط استخدام الترخيص.
  1. انقر على إنشاء نموذج لإنشاء مستودع النموذج.

  2. اختر تبويب الملفات ثم انقر على زر إضافة ملف لسحب ملف وإفلاته في مستودعك. أضف رسالة التزام ثم انقر على التزام التغييرات إلى main لالتزام الملف.

بطاقة النموذج

تُوفّر بطاقات النموذج للمستخدمين معلومات حول أداء النموذج وحدوده والتحيزات المحتملة والاعتبارات الأخلاقية. يُوصى بشدة بإضافة بطاقة نموذج إلى مستودعك!

بطاقة النموذج هي ملف README.md في مستودعك. أضف هذا الملف من خلال:

  • إنشاء ملف README.md يدويًا ورفع
  • عند النقر على زر تعديل بطاقة النموذج في المستودع

اطّلع على بطاقة النموذج الخاصة بـ Llama 3.1 كمثال على ما يجب تضمينه في بطاقة النموذج.

تعرّف على المزيد حول بيانات وصفية أخرى لبطاقات النموذج (انبعاثات الكربون، الترخيص، رابط إلى الورقة البحثية، إلخ) المتوفرة في دليل بطاقات النموذج.

Update on GitHub