Model Serving
تعرف على كيفية سد خدمة النموذج (model serving) للفجوة بين النماذج المدربة والإنتاج. استكشف استراتيجيات النشر لـ Ultralytics YOLO26 على منصة Ultralytics.
خدمة النماذج هي عملية استضافة نموذج تعلم آلي مدرب وإتاحة وظائفه للتطبيقات البرمجية عبر واجهة شبكة. تعمل هذه الخدمة كجسر بين ملف نموذج ثابت محفوظ على القرص ونظام حي يعالج بيانات العالم الحقيقي. بمجرد انتهاء النموذج من مرحلة تدريب التعلم الآلي (ML)، يجب دمجه في بيئة إنتاج حيث يمكنه تلقي المدخلات—مثل الصور أو النصوص أو البيانات الجدولية—وإرجاع التنبؤات. يتم تحقيق ذلك عادةً عن طريق تغليف النموذج في واجهة برمجة تطبيقات (API)، مما يسمح له بالتواصل مع خوادم الويب أو تطبيقات الهاتف المحمول أو أجهزة إنترنت الأشياء (IoT).
Link to this sectionدور خدمة النماذج في الذكاء الاصطناعي#
The primary goal of model serving is to operationalize predictive modeling capabilities effectively. While training focuses on accuracy and loss minimization, serving focuses on performance metrics like latency (how fast a prediction is returned) and throughput (how many requests can be handled per second). Robust serving infrastructure ensures that computer vision (CV) systems remain reliable under heavy loads. It often involves technologies like containerization using tools such as Docker, which packages the model with its dependencies to ensure consistent behavior across different computing environments.
Link to this sectionتطبيقات العالم الحقيقي#
تعمل خدمة النماذج على تشغيل ميزات الذكاء الاصطناعي المنتشرة عبر مختلف الصناعات من خلال تمكين اتخاذ قرارات فورية بناءً على البيانات.
- التصنيع الذكي: في البيئات الصناعية، تستخدم أنظمة الذكاء الاصطناعي في التصنيع نماذج خادمة لفحص خطوط التجميع. يتم إرسال صور عالية الدقة للمكونات إلى خادم محلي، حيث يقوم نموذج YOLO26 باكتشاف العيوب مثل الخدوش أو المحاذاة الخاطئة، مما يؤدي إلى إطلاق تنبيهات فورية لإزالة العناصر المعيبة.
- أتمتة التجزئة: يستفيد تجار التجزئة من الذكاء الاصطناعي في التجزئة لتعزيز تجارب العملاء. تقوم الكاميرات التي تخدمها نماذج اكتشاف الأشياء بتحديد المنتجات في منطقة الدفع، وحساب التكلفة الإجمالية تلقائياً دون الحاجة إلى مسح الباركود يدوياً.
Link to this sectionالتنفيذ العملي#
لخدمة نموذج بفعالية، غالباً ما يكون من المفيد تصدير النماذج إلى تنسيق موحد مثل ONNX، مما يعزز قابلية التشغيل البيني بين أطر عمل التدريب المختلفة ومحركات الخدمة. يوضح المثال التالي كيفية تحميل نموذج وتشغيل الاستنتاج، محاكياً المنطق الذي قد يوجد داخل نقطة نهاية الخدمة باستخدام Python.
from ultralytics import YOLO
# Load the YOLO26 model (this typically happens once when the server starts)
model = YOLO("yolo26n.pt")
# Simulate an incoming API request with an image source URL
image_source = "https://ultralytics.com/images/bus.jpg"
# Run inference to generate predictions for the user
results = model.predict(source=image_source)
# Process results (e.g., simulating a JSON response to a client)
print(f"Detected {len(results[0].boxes)} objects in the image.")Link to this sectionاختيار الاستراتيجية الصحيحة#
يعتمد اختيار استراتيجية الخدمة بشكل كبير على حالة الاستخدام المحددة. توفر الخدمة عبر الإنترنت استجابات فورية عبر بروتوكولات مثل REST أو gRPC، وهو أمر ضروري لتطبيقات الويب الموجهة للمستخدم. وعلى العكس من ذلك، تعالج الخدمة المجمعة كميات كبيرة من البيانات دون اتصال بالإنترنت، وهي مناسبة لمهام مثل إنشاء التقارير الليلية. بالنسبة للتطبيقات التي تتطلب الخصوصية أو الكمون المنخفض دون الاعتماد على الإنترنت، ينقل الذكاء الاصطناعي على الحافة عملية الخدمة مباشرة إلى الجهاز، باستخدام تنسيقات محسنة مثل TensorRT لزيادة الأداء على الأجهزة ذات الموارد المحدودة. تستفيد العديد من المؤسسات من منصة Ultralytics لتبسيط نشر هذه النماذج إلى نقاط نهاية مختلفة، بما في ذلك واجهات برمجة تطبيقات السحابة وأجهزة الحافة.
Link to this sectionالتمييز عن المصطلحات ذات الصلة#
على الرغم من الارتباط الوثيق، إلا أن "خدمة النماذج" تختلف عن نشر النماذج والاستنتاج.
- نشر النماذج: يشير هذا إلى مرحلة أوسع في دورة حياة النموذج تتمثل في إطلاقه داخل بيئة الإنتاج. الخدمة هي الآلية أو البرنامج المحدد (مثل NVIDIA Triton Inference Server أو TorchServe) المستخدم لتنفيذ النموذج المنشور.
- الاستنتاج: هو العملية الرياضية لحساب تنبؤ من مدخل ما. توفر خدمة النماذج البنية التحتية (الشبكات، وقابلية التوسع، والأمان) التي تسمح بحدوث الاستنتاج بشكل موثوق للمستخدمين النهائيين.
- الخدمات المصغرة: غالباً ما يتم تصميم الخدمة كَمجموعة من الخدمات المصغرة، حيث يعمل النموذج كخدمة مستقلة يمكن لأجزاء أخرى من التطبيق الاستعلام عنها، وغالباً ما تتبادل البيانات بتنسيقات خفيفة الوزن مثل JSON.






