Hub documentation

مساحات Gradio

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

مساحات Gradio

يوفر Gradio واجهة سهلة وبديهية لتشغيل نموذج من قائمة مدخلات وعرض المخرجات بتنسيقات مثل الصور والصوت والأجسام ثلاثية الأبعاد وغيرها. ويحتوي Gradio الآن حتى على مكوّن مخرجات الرسم البياني لإنشاء تصورات للبيانات باستخدام Matplotlib وBokeh وPlotly! لمزيد من التفاصيل، اطّلع على دليل البدء من فريق Gradio.

اختيار Gradio كـ SDK عند إنشاء مساحة جديدة سيهيّئ مساحتك بأحدث إصدار من Gradio من خلال تعيين خاصية sdk إلى gradio في كتلة YAML الخاصة بملف README.md. إذا كنت ترغب في تغيير إصدار Gradio، يمكنك تعديل خاصية sdk_version.

قم بزيارة توثيق Gradio للتعرف على جميع ميزاته، واستعرض أدلة Gradio للحصول على بعض الشروحات المفيدة لمساعدتك في البدء!

مساحتك الأولى في Gradio: مصنّف الهوت دوغ

في الأقسام التالية، ستتعلم أساسيات إنشاء مساحة (Space) وإعدادها ونشر كودك عليها. سنقوم بإنشاء مساحة Hot Dog Classifier باستخدام Gradio، والتي ستُستخدم لعرض نموذج julien-c/hotdog-not-hotdog، القادر على تحديد ما إذا كانت صورة معينة تحتوي على هوت دوغ 🌭

يمكنك العثور على نسخة مكتملة من هذا المشروع مستضافة على NimaBoscarino/hotdog-gradio.

إنشاء مساحة Gradio جديدة

سنبدأ بـ إنشاء مساحة جديدة تمامًا واختيار Gradio كإطار تطوير البرمجيات. مساحات Hugging Face هي مستودعات Git، مما يعني أنه يمكنك العمل على مساحتك بشكل تدريجي (وتعاوني) من خلال دفع الالتزامات. اطّلع على دليل البدء بالمستودعات للتعرف على كيفية إنشاء الملفات وتحريرها قبل المتابعة.

أضِف التبعيات

لصنف الكلاب الساخنة Hot Dog Classifier سنستخدم 🤗 Transformers pipeline لاستخدام النموذج، لذا نحتاج إلى البدء بتثبيت بعض الاعتماديات. يمكن القيام بذلك بإنشاء ملف requirements.txt في مستودعنا، وإضافة الاعتماديات التالية إليه:

transformers
torch

ستتولى بيئة تشغيل Spaces مهمة تثبيت التبعيات!

إنشاء واجهة Gradio

لإنشاء تطبيق Gradio، أنشئ ملفًا جديدًا في المستودع باسم app.py، وأضف الكود التالي:

import gradio as gr
from transformers import pipeline

pipeline = pipeline(task="image-classification", model="julien-c/hotdog-not-hotdog")

def predict(input_img):
    predictions = pipeline(input_img)
    return input_img, {p["label"]: p["score"] for p in predictions} 

gradio_app = gr.Interface(
    predict,
    inputs=gr.Image(label="Select hot dog candidate", sources=['upload', 'webcam'], type="pil"),
    outputs=[gr.Image(label="Processed Image"), gr.Label(label="Result", num_top_classes=2)],
    title="Hot Dog? Or Not?",
)

if __name__ == "__main__":
    gradio_app.launch()

يستخدم هذا السكربت بلغة بايثون 🤗 Transformers pipeline لتحميل نموذج julien-c/hotdog-not-hotdog، وهو النموذج الذي تستخدمه واجهة Gradio. سيتوقع تطبيق Gradio منك رفع صورة، ثم يصنّفها على أنها hot dog أو not hot dog. بمجرد حفظ الكود في ملف app.py، انتقل إلى تبويب App لرؤية تطبيقك قيد التشغيل!

تضمين مساحات Gradio في صفحات ويب أخرى

يمكنك تضمين مساحة Gradio في صفحات ويب أخرى باستخدام مكونات الويب أو وسم <iframe> في HTML. راجع توثيقنا أو توثيق Gradio لمزيد من التفاصيل.

Update on GitHub