Hub documentation
المكونات
المكونات
ما هو المكوّن (widget)؟
تحتوي العديد من مستودعات النماذج على أداة تفاعلية تتيح لأي شخص تشغيل عمليات الاستدلال مباشرةً في المتصفح. تعمل هذه الأدوات التفاعلية بواسطة موفّري الاستدلال، الذين يوفّرون للمطوّرين وصولاً موحّداً ومبسّطاً إلى مئات نماذج تعلّم الآلة، مدعوماً بشركائنا في الاستدلال الخادمي.
فيما يلي بعض الأمثلة على النماذج الشائعة حاليًا:
- DeepSeek V3 - نموذج محادثة مفتوح الأوزان من الطراز الأحدث
- Flux Kontext - نموذج محوّل بأوزان مفتوحة لتحرير الصور
- كشف المحتوى غير اللائق من Falconsai - مراجعة محتوى الصور
- نموذج Chatterbox من ResembleAI - نموذج مفتوح المصدر لتحويل النص إلى كلام بمستوى الإنتاج.
يمكنك استكشاف المزيد من النماذج ومكوناتها على صفحة النماذج أو تجربتها تفاعليًا في Inference Playground.
تفعيل أداة
تُعرض أدوات الواجهة (Widgets) عندما يستضيف النموذج مزوّد استدلال واحد على الأقل، مما يضمن الأداء المثالي والموثوقية العالية لاستدلال النموذج. يختار المزوّدون بأنفسهم ويتحكمون في النماذج التي ينشرونها.
يُستنتج نوع المكوّن المعروض (من نص إلى صورة، التعرف التلقائي على الكلام، إلخ) من pipeline_tag الخاص بالنموذج، وهو وسم خاص يحاول Hub حسابه تلقائيًا لجميع النماذج. الاستثناء الوحيد هو مكوّن conversational، الذي يُعرض على جميع النماذج التي يكون pipeline_tag الخاص بها إما text-generation أو image-text-to-text. اخترنا عرض مكوّن واحد فقط لكل نموذج من أجل البساطة.
في بعض المكتبات، مثل transformers، يمكن استنتاج نوع النموذج تلقائيًا بناءً على ملفات الإعداد (config.json). يمكن أن يحدد البنية النوع: على سبيل المثال، AutoModelForTokenClassification يتوافق مع token-classification. إذا كنت مهتمًا بهذا، يمكنك الاطلاع على كود زائف في هذا الملخص.
في معظم حالات الاستخدام الأخرى، نستخدم وسوم النموذج لتحديد نوع مهمة النموذج. على سبيل المثال، إذا وُجد tag: text-classification في بيانات بطاقة النموذج الوصفية، فإن pipeline_tag المستنتج سيكون text-classification.
يمكنك دائمًا تجاوز نوع خط الأنابيب يدويًا باستخدام pipeline_tag: xxx في بيانات بطاقة النموذج الوصفية. (يمكنك أيضًا استخدام محرر الواجهة الرسومية للبيانات الوصفية للقيام بذلك).
كيف يمكنني التحكم في مثال الإدخال الخاص بواجهة النموذج (widget)؟
يمكنك تحديد مدخلات الودجت في قسم بيانات الوصف (metadata) لبطاقة النموذج:
widget:
- text: "This new restaurant has amazing food and great service!"
example_title: "Positive Review"
- text: "I'm really disappointed with this product. Poor quality and overpriced."
example_title: "Negative Review"
- text: "The weather is nice today."
example_title: "Neutral Statement"يمكنك تقديم أكثر من مثال إدخال واحد. في قائمة المنسدلة للأمثلة داخل المكوّن، ستظهر على شكل Example 1، Example 2، وما إلى ذلك. بشكل اختياري، يمكنك أيضًا تقديم example_title.

widget:
- text: "Is this review positive or negative? Review: Best cast iron skillet you will ever buy."
example_title: "Sentiment analysis"
- text: "Barack Obama nominated Hilary Clinton as his secretary of state on Monday. He chose her because she had ..."
example_title: "Coreference resolution"
- text: "On a shelf, there are five books: a gray book, a red book, a purple book, a blue book, and a black book ..."
example_title: "Logic puzzles"
- text: "The two men running to become New York City's next mayor will face off in their first debate Wednesday night ..."
example_title: "Reading comprehension"علاوة على ذلك، يمكنك تحديد مدخلات أمثلة غير نصية في بيانات بطاقة النموذج الوصفية. راجع هنا للحصول على قائمة كاملة بتنسيقات مدخلات الأمثلة لجميع أنواع الأدوات. بالنسبة لأنواع أدوات الرؤية والصوت، قم بتوفير مدخلات أمثلة باستخدام src بدلاً من text.
على سبيل المثال، اسمح للمستخدمين باختيار ملفين صوتيين نموذجيين لمهام التعرف التلقائي على الكلام من خلال:
widget:
- src: https://example.org/somewhere/speech_samples/sample1.flac
example_title: Speech sample 1
- src: https://example.org/somewhere/speech_samples/sample2.flac
example_title: Speech sample 2لاحظ أنه يمكنك أيضًا تضمين ملفات أمثلة في مستودع النموذج الخاص بك واستخدامها على النحو التالي:
widget:
- src: https://huggingface.co/username/model_repo/resolve/main/sample1.flac
example_title: Custom Speech Sample 1لكن الأمر أكثر راحة إذا كان الملف موجودًا في مستودع النموذج المقابل، إذ يمكنك ببساطة استخدام اسم الملف أو مسار الملف داخل المستودع:
widget:
- src: sample1.flac
example_title: Custom Speech Sample 1أو إذا كان متداخلاً داخل المستودع:
widget:
- src: nested/directory/sample1.flacنوفر مدخلات أمثلة لبعض اللغات ومعظم أنواع الأدوات في ملف default-widget-inputs.ts. إذا كانت بعض الأمثلة مفقودة، فنرحب بالمساهمات من المجتمع لإضافتها!
أمثلة على المخرجات
كمُكمِل لدخلات المثال، يمكنك أيضًا اختيار وصف مخرجات النموذج المقابلة لكل مثال في أداة العرض، مباشرةً في خاصية output.
يكون هذا مفيدًا عندما لا يدعم مزودو الاستدلال النموذج بعد، بحيث يمكن لصفحة النموذج أن تُظهر ما زال كيفية عمل النموذج والنتائج التي يعطيها.
على سبيل المثال، لنموذج automatic-speech-recognition:
widget:
- src: sample1.flac
output:
text: "Hello my name is Julien"

يجب أن تكون خاصية output قاموس YAML يمثل صيغة الإخراج من مزودي الاستدلال.
بالنسبة إلى نموذج يُخرج نصًا، راجع المثال أعلاه.
بالنسبة لنموذج يُخرج تسميات (مثل نموذج text-classification على سبيل المثال)، يجب أن يبدو المخرج على النحو التالي:
widget:
- text: "I liked this movie"
output:
- label: POSITIVE
score: 0.8
- label: NEGATIVE
score: 0.2

أخيرًا، بالنسبة لنموذج يُخرج صورة أو صوتًا أو أي نوع آخر من الأصول، يجب أن يتضمن المخرج خاصية url تربط إما باسم ملف أو مسار داخل المستودع أو عنوان URL عن بُعد. على سبيل المثال، بالنسبة لنموذج نص إلى صورة:
widget:
- text: "picture of a futuristic tiger, artstation"
output:
url: images/tiger.jpg

يمكننا أيضًا عرض المخرجات النموذجية في واجهة Hugging Face، على سبيل المثال، لنموذج نص إلى صورة لعرض معرض لتوليدات صور رائعة.

توفر المصغرات ودعم المزود
لا تتوفر أدوات تفاعلية لجميع النماذج. يعتمد توفر الأدوات التفاعلية على:
- دعم المهام: يجب أن تكون مهمة النموذج مدعومة من قبل مزود واحد على الأقل في شبكة مزودي الاستدلال
- توفر المزوّد: يجب أن يكون مزوّد واحد على الأقل يقدم النموذج المحدد
- إعدادات النموذج: يجب أن يحتوي النموذج على بيانات وصفية وملفات إعدادات صحيحة
لعرض القائمة الكاملة بالمهام المدعومة، راجع صفحتنا المخصصة للتوثيق.
يتوفر قائمة بجميع المزودين والمهام التي يدعمونها في هذه الصفحة التوثيقية.
بالنسبة إلى النماذج التي لا تدعمها مزوّدو الخدمات، يمكنك ما زال إبراز الوظائف باستخدام مخرجات أمثلة في بطاقة النموذج الخاصة بك.
يمكنك أيضًا النقر على طلب دعم المزوّد مباشرةً في صفحة النموذج لتشجيع المزوّدين على تقديم النموذج، شريطة أن يكون هناك اهتمام كافٍ من المجتمع.
استكشاف النماذج باستخدام ساحة الاستدلال
قبل دمج النماذج في تطبيقاتك، يمكنك اختبارها تفاعليًا باستخدام Inference Playground. يتيح لك هذا المكان:
- اختبر نماذج إكمال المحادثة المختلفة باستخدام أوامر مخصصة
- مقارنة الاستجابات عبر نماذج مختلفة
- جرّب معلمات الاستدلال مثل درجة الحرارة، والحد الأقصى لعدد الرموز، وغيرها
- اعثر على النموذج المثالي لحالة الاستخدام الخاصة بك
يستخدم حقل اللعب بنية تحتية مزوّدي الاستدلال (Inference Providers) نفسها التي تُشغّل الأدوات المدمجة، لذا يمكنك توقع أداء وقدرات مماثلة عند دمج النماذج في تطبيقاتك الخاصة.
Update on GitHub