Diffusers documentation
نظرة عامة
نظرة عامة
🤗 يوفر Diffusers مجموعة من سكربتات التدريب لتدريب نماذج الانتشار الخاصة بك. يمكنك العثور على جميع سكربتات التدريب لدينا في diffusers/examples.
كل سكربت تدريب هو:
- مستقل بذاته: لا يعتمد سكربت التدريب على أي ملفات محلية، وتُثبَّت جميع الحزم المطلوبة لتشغيل السكربت من ملف
requirements.txt. - سهل التعديل: تُعدّ سكربتات التدريب مثالاً على كيفية تدريب نموذج انتشار (diffusion model) لمهمة محددة، ولن تعمل كما هي لكل سيناريو تدريب. على الأرجح ستحتاج إلى تكييف سكربت التدريب ليناسب حالتك الخاصة. لمساعدتك في ذلك، قمنا بكشف كامل لكود معالجة البيانات المسبقة وحلقة التدريب حتى تتمكن من تعديله لاستخدامك الخاص.
- مناسب للمبتدئين: صُممت سكربتات التدريب لتكون مناسبة للمبتدئين وسهلة الفهم، بدلاً من تضمين أحدث الأساليب المتقدمة للحصول على أفضل النتائج الأكثر تنافسية. أي أساليب تدريب نعتبرها معقدة للغاية تُستبعد عمداً.
- لغرض واحد: صُمم كل سكربت تدريب صراحةً لأداء مهمة واحدة فقط للحفاظ على قابليته للقراءة والفهم.
تشمل مجموعة سكربتات التدريب الحالية لدينا:
| التدريب | دعم SDXL | دعم LoRA |
|---|---|---|
| توليد الصور غير الشرطي | ||
| النص إلى صورة | 👍 | 👍 |
| الانعكاس النصي | ||
| DreamBooth | 👍 | 👍 |
| ControlNet | 👍 | |
| InstructPix2Pix | 👍 | |
| Custom Diffusion | ||
| T2I-Adapters | 👍 | |
| Kandinsky 2.2 | 👍 |
تُحافظ هذه الأمثلة على نشاطها باستمرار، لذا لا تتردد في فتح مشكلة إذا لم تعمل كما هو متوقع. وإذا كنت تعتقد أنه يجب تضمين مثال تدريب آخر، فأنت مرحب به تمامًا لبدء طلب ميزة لمناقشة فكرة ميزتك معنا وما إذا كانت تلبي معاييرنا بأن تكون مكتفية ذاتيًا، وسهلة التعديل، ومناسبة للمبتدئين، ومخصصة لغرض واحد.
التثبيت
تأكد من قدرتك على تشغيل أحدث إصدارات سكربتات الأمثلة بنجاح من خلال تثبيت المكتبة من المصدر في بيئة افتراضية جديدة:
git clone https://github.com/huggingface/diffusers
cd diffusers
pip install .ثم انتقل إلى مجلد سكربت التدريب (على سبيل المثال، DreamBooth) وقم بتثبيت ملف requirements.txt. تحتوي بعض سكربتات التدريب على ملف متطلبات محدد لـ SDXL أو LoRA. إذا كنت تستخدم أحد هذه السكربتات، فتأكد من تثبيت ملف المتطلبات المقابل له.
cd examples/dreambooth
pip install -r requirements.txt
# to train SDXL with DreamBooth
pip install -r requirements_sdxl.txtلتسريع التدريب وتقليل استهلاك الذاكرة، نوصي بما يلي:
- باستخدام PyTorch 2.0 أو إصدار أحدث لاستخدام scaled dot product attention تلقائيًا أثناء التدريب (لا حاجة لإجراء أي تغييرات على كود التدريب)
- تثبيت xFormers لتفعيل الانتباه الموفّر للذاكرة