Gradio: إنشاء عروض النماذج ومشاركتها في أسطر قليلة
بين نموذج يعمل داخل دفتر Jupyter ونموذج يستطيع زميل غير مبرمج تجربته وإرسال ملاحظاته يفصل عادةً عمل أسابيع من واجهة ويب. Gradio يختصر هذه المسافة إلى عشر أسطر من Python، ويجعل العرض قابلًا للمشاركة برابط مؤقّت أو منشورًا على مساحة Hugging Face، دون أن تكتب سطر HTML واحدًا.
مدّة الدورة: 3 ساعات
ما ستتعلّمه
- بناء واجهة
gr.Interfaceتُطابق أنواع Python بالمكوّنات المناسبة، وتقديم مصنّف صور جاهز في عشرة أسطر. - استعمال مكوّنات النصّ والصورة والصوت والفيد يو، وقراءة الصيغ التي يستقبلها كلّ منها (مصفوفة NumPy، مسار ملفّ، تردّد أخذ العيّنات).
- بناء واجهات مركّبة بـ
gr.Blocksمع صفوف وأعمدة وأحداث نقر وتغيير، وربط خطوات معًا عبر متغيّرات الحالة. - تركيب واجهة حوارية بـ
gr.ChatInterfaceتحفظ التاريخ، وتحمل رسالة نظام، وتتّصل بنموذج محلّيّ من الدورة 29 أو بواجهة سحابيّة، مع دعم اتّجاه اليمين إلى اليسار. - تفعيل البثّ التدريجي للردود رمزًا رمزًا عبر المولّدات، وإتاحة زرّ الإيقاف لتحسين الإحساس بزمن الاستجابة.
- إضافة أمثلة معبّأة مسبقًا قابلة للنقر مع تخزين مؤقّت للنتائج، وانتقاء أمثلة تُظهر حدود النموذج بقدر ما تُظهر نجاحاته.
- ضبط قائمة الانتظار وحدود التزامن والمدّة القصوى للطلب، وقياس السلوك تحت حمل عدّة مستخدمين.
- توليد رابط مشاركة مؤقّت عبر
share=True، وفهم ما يعرضه النفق وحدود عمره، ووضع مصادقة بسيطة، ومعرفة متى نتجنّبه. - نشر عرض توضيحيّ على مساحة Hugging Face مع الملفّات المطلوبة، وإدارة الأسرار، والاختيار بين العتاد المجّانيّ والمدفوع، وفهم آليّة النوم والاستيقاظ، ودمج المساحة في موقعك.
- إنجاز مشروع كامل: مساعد لغوي منشور مع أمثلة وبثّ وقائمة انتظار وجمع ملاحظات، مع قراءة صريحة للكلفة والحدود.
المتطلّبات المسبقة
- إتقان Python (الدورة 02).
- نموذج جاهز للعرض: مصنّف صور من الدورة 10، أو نموذج نصّ من الدورة 13، أو نموذج لغوي كبير من الدورة 16.
- إلمام بسطر الأوامر لتثبيت الحزم وتشغيل السكربتات.
الخيط الأحمر: ثلاثة عروض متتابعة
الدورة كلّها تسير في ثلاثة عروض تتراكم:
- مصنّف صور مبنيّ في الوحدتين 1 و2 على نموذج جاهز من الدورة 10، حيث يرى المتعلّم كيف تتحوّل دالّة Python بسيطة إلى واجهة قابلة للاستعمال.
- أداة نسخ ونصّ ملخّص للصوت في الوحدتين 2 و3، تُدخل مفاهيم Blocks وربط الخطوات، وتُظهر أنّ كثيرًا من الأدوات الحقيقيّة سلاسل من ثلاث عمليّات لا عمليّة واحدة.
- مساعد حواريّ يقوم على نموذج لغوي في الوحدات من 4 إلى 10، حيث تُضاف عليه التوابع الواحدة تلو الأخرى: بثّ تدريجيّ، أمثلة، قائمة انتظار، رابط مشاركة، ثمّ نشر على مساحة Hugging Face.
هذا التصاعد يعكس ما يجري في الميدان: نبدأ صغيرًا، نُضيف قيمة عند كلّ حاجة حقيقيّة، ولا نصنع بنية معقّدة قبل أن نُبرهن أنّها ضروريّة.
وحدات الدورة
- الواجهة: المدخلات والمخرجات والدالّة
- مكوّنات النصّ والصورة والصوت والفيديو
- Blocks: التخطيط والأحداث
- الواجهات الحوارية
- البثّ التدريجي للردود
- الأمثلة المعبّأة مسبقًا والتخزين المؤقّت
- قائمة الانتظار والحمل المتزامن
- رابط المشاركة المؤقّت
- النشر على مساحة Hugging Face
- مشروع: عرض توضيحي لنموذج لغوي
التقييم والشهادة
يُختم المسار باختبار من 40 سؤالًا يغطّي الوحدات العشر، من نوع القيم التي يستقبلها كلّ مكوّن، إلى إدارة الحالة في Blocks، ومرور المولّد الصحيح للبثّ، وأثر قائمة الانتظا ر على تجربة المستخدم، وما يُكشَف بالضبط عند تفعيل share=True، وسلوك مساحة Hugging Face بين النوم والاستيقاظ. عند النجاح تُمنح شهادة إتمام فورًا، ورقمها قابل للتحقّق من أيّ طرف على المنصّة.