🚀 دليل النشر على Hugging Face Spaces
📋 المتطلبات الأساسية
1. حساب Hugging Face
- إنشاء حساب على huggingface.co
- التحقق من البريد الإلكتروني
- إعداد الملف الشخصي
2. إعداد Git (اختياري)
git config --global user.name "اسمك"
git config --global user.email "بريدك@example.com"
🔧 خطوات النشر
الطريقة الأولى: رفع الملفات مباشرة
إنشاء Space جديد
- اذهب إلى huggingface.co/new-space
- اختر اسماً مناسباً:
chicken-assistant-arabic - اختر License:
MIT - اختر SDK:
Gradio - اختر Hardware:
CPU basic(مجاني)
رفع الملفات
- اضغط على "Files" في الصفحة الرئيسية للـ Space
- اضغط "Add file" → "Upload files"
- ارفع جميع الملفات التالية:
app.py chicken_ai.py admin_panel.py (اختياري) requirements.txt README.md LICENSE data/ ├── diseases.md ├── nutrition.md ├── daily_tips.md ├── chicken_breeds.md └── prevention_treatment_general.md
إعداد ملف التكوين
- أنشئ ملف
app.pyفي الجذر (موجود بالفعل) - تأكد من أن الملف يحتوي على:
if __name__ == "__main__": app.launch()- أنشئ ملف
الطريقة الثانية: استخدام Git
- استنساخ المستودع
git clone https://huggingface.co/spaces/YOUR_USERNAME/chicken-assistant-arabic
cd chicken-assistant-arabic
- نسخ الملفات
cp -r /path/to/chicken_assistant/* .
- رفع التغييرات
git add .
git commit -m "Initial commit: Arabic Chicken Assistant"
git push
⚙️ إعدادات متقدمة
1. متغيرات البيئة
إذا كنت تستخدم APIs خارجية، أضف متغيرات البيئة في إعدادات الـ Space:
OPENAI_API_KEY=your_key_here
CUSTOM_CONFIG=production
2. إعدادات الأجهزة
- CPU Basic: مجاني، مناسب للاستخدام العادي
- CPU Upgrade: مدفوع، أداء أفضل
- GPU: للمشاريع التي تتطلب معالجة مكثفة
3. إعدادات الخصوصية
- Public: متاح للجميع
- Private: متاح لك فقط (يتطلب اشتراك مدفوع)
📁 هيكل الملفات المطلوب
chicken-assistant-arabic/
├── app.py # الملف الرئيسي
├── chicken_ai.py # نموذج الذكاء الاصطناعي
├── admin_panel.py # لوحة الإدارة (اختياري)
├── requirements.txt # المتطلبات
├── README.md # التوثيق
├── LICENSE # الترخيص
├── .gitignore # ملفات Git المتجاهلة
└── data/ # قاعدة البيانات
├── diseases.md
├── nutrition.md
├── daily_tips.md
├── chicken_breeds.md
└── prevention_treatment_general.md
🔍 اختبار النشر
1. اختبار محلي
# تشغيل التطبيق محلياً
python app.py
# فتح المتصفح على
http://localhost:7860
2. اختبار على Hugging Face
- انتظر حتى يكتمل البناء (Build)
- اضغط على رابط التطبيق
- اختبر جميع الوظائف
🐛 حل المشاكل الشائعة
1. خطأ في المتطلبات
# تأكد من صحة requirements.txt
pip install -r requirements.txt
2. خطأ في الترميز
# أضف في بداية الملفات Python
# -*- coding: utf-8 -*-
3. مشاكل الذاكرة
- قلل من حجم قاعدة البيانات
- استخدم lazy loading للبيانات الكبيرة
- فكر في ترقية الأجهزة
4. مشاكل الأداء
# استخدم caching للبيانات المتكررة
import functools
@functools.lru_cache(maxsize=128)
def expensive_function():
pass
🔧 تحسينات الأداء
1. تحسين التحميل
# تحميل البيانات مرة واحدة عند البدء
@gr.cache
def load_data():
return data
2. ضغط الملفات
# ضغط الصور والملفات الكبيرة
gzip large_file.json
3. تحسين الذاكرة
# استخدام generators بدلاً من lists
def get_data():
for item in large_dataset:
yield item
📊 مراقبة الأداء
1. إحصائيات الاستخدام
- راقب عدد المستخدمين من لوحة تحكم Hugging Face
- تتبع الأخطاء والمشاكل
2. تحديث التطبيق
# تحديث الكود
git pull origin main
git add .
git commit -m "Update: new features"
git push
🔒 الأمان والخصوصية
1. حماية البيانات الحساسة
- لا تضع مفاتيح API في الكود
- استخدم متغيرات البيئة
- راجع الملفات قبل الرفع
2. إعدادات الخصوصية
# تعطيل التحليلات إذا لزم الأمر
app.launch(analytics_enabled=False)
📞 الدعم والمساعدة
موارد مفيدة
في حالة المشاكل
- راجع logs البناء في Hugging Face
- اختبر التطبيق محلياً أولاً
- اطلب المساعدة في المجتمع
- راسل فريق الدعم إذا لزم الأمر
ملاحظة: هذا الدليل يفترض استخدام الحساب المجاني. للميزات المتقدمة، قد تحتاج لاشتراك مدفوع.