Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

الحاويات

اكتشف قوة الحاويات لمشاريع الذكاء الاصطناعي/تعلم الآلة. قم بتبسيط سير العمل، وضمان الاتساق، والتوسع بكفاءة باستخدام أحدث الأدوات.

عملية نشر الحاوية هي عملية نشر برمجيات تقوم بتجميع التعليمات البرمجية للتطبيق مع جميع الملفات والمكتبات التي يحتاجها للتشغيل على أي بنية تحتية. من خلال تغليف البرنامج وتوابعه في وحدة واحدة خفيفة الوزن خفيفة الوزن، والمعروفة باسم الحاوية، يضمن المطورون أن التطبيق يعمل باستمرار بغض النظر عن بيئة الحوسبة المحددة. في مجال التعلّم الآلي (ML)، أصبح استخدام الحاويات حجر الزاوية في استراتيجيات استراتيجيات التعلم الآلي الحديثة. فهو يحل مشكلة مشكلة "يعمل على جهازي" سيئة السمعة من خلال عزل بيئة التنفيذ، مما يجعل عمليات سير عمل سير عمل الرؤية الحاسوبية المعقدة (CV) قابلاً للنقل, وقابلة للتكرار وسهلة التوسيع.

دور الحاويات في الذكاء الاصطناعي

بالنسبة لعلماء البيانات ومهندسي التعلّم الآلي، فإن إدارة التبعيات مثل الإصدارات المحددة من Python, PyTorchو ومحركات CUDA يمكن أن تكون صعبة. تعالج الحاوية هذا الأمر من خلال إنشاء بيئة غير قابلة للتغيير.

  • قابلية النقل: حاوية YOLO11 نموذج يمكن أن ينتقل بسلاسة من حاسوب محمول محلي للمطور إلى خادم محلي عالي الأداء أو إلى خادم سحابي عام العامة دون الحاجة إلى إعادة التكوين. هذه المرونة ضرورية لاستراتيجيات استراتيجيات الحوسبة السحابية المختلطة.
  • الكفاءة: على عكس الآلات الافتراضية التقليدية (VMs)، التي تحاكي مجموعة كاملة من الأجهزة و ونظام تشغيل كامل، فإن الحاويات تشارك نواة نظام التشغيل في النظام المضيف. هذا يجعلها أخف وزناً بشكل ملحوظ و وأسرع في البدء، مما يحسن استخدام الموارد من أجل خدمة النموذج.
  • قابلية التوسع: يتم نسخ الحاويات بسهولة. عندما ترتفع حركة المرور إلى أحد التطبيقات، يمكن لأدوات التنسيق يمكن لأدوات التنسيق تشغيل مثيلات حاوية إضافية على الفور للتعامل مع الحمل، مما يضمن انخفاض كمون استدلالي منخفض.

التقنيات والمفاهيم الأساسية

يتضمن فهم عملية بناء الحاويات الإلمام ببعض التقنيات الرئيسية التي تعمل على توحيد كيفية بناء الحاويات وإدارتها.

  • Docker: المنصة الأكثر اعتمادًا على نطاق واسع لتطوير التطبيقات وشحنها وتشغيلها في حاويات. يوفر موقع Ultralytics دليل Docker Quickstart الشامل لمساعدة المستخدمين على نشر نماذج الكشف عن الكائنات بكفاءة. يلتزم Docker بمعايير الصناعة التي وضعتها مبادرة الحاويات المفتوحة (OCI)، مما يضمن التوافق عبر مختلف المنصات المختلفة.
  • Kubernetes: بينما يدير Docker الحاويات الفردية، فإن Kubernetes هو نظام تزامن لأتمتة نشر وتوسيع نطاق وإدارة التطبيقات المعبأة في حاويات. وغالبًا ما يستخدم لإدارة مجموعات كبيرة من GPU الموارد من أجل التدريب الموزع.
  • سجلات الحاويات: وهي عبارة عن مستودعات يتم فيها تخزين صور الحاويات ومشاركتها. ومن الأمثلة الشائعة ومن الأمثلة الشائعة على ذلك Docker Hub وكتالوجNVIDIA NGC، الذي يستضيف برامج الذكاء الاصطناعي GPU.

الحاويات مقابل الآلات الافتراضية

من المهم التمييز بين الحاويات و الآلات الافتراضية. تقوم الآلة الافتراضية بتشغيل نظام تشغيل ضيف كامل مع وصول افتراضي إلى موارد المضيف من خلال برنامج Hypervisor. هذا يخلق مستوى عالٍ من العزلة ولكن ينتج عنه نفقات كبيرة. على العكس، تقوم الحاويات بتحويل نظام التشغيل إلى نظام تشغيل افتراضي، مما يسمح بتشغيل العديد من مثيلات فضاء المستخدم المعزولة على نواة واحدة. هذا التمييز يجعل الحاويات الخيار المفضل الخيار المفضل للخدمات المصغرة وتطبيقات Edge AI حيث تكون الموارد تكون الموارد محدودة.

تطبيقات واقعية

يتم تطبيق الاحتواء عبر مراحل مختلفة من دورة حياة الذكاء الاصطناعي، بدءاً من البحث إلى الإنتاج.

1. بيئات البحث القابلة للتكرار

في البحوث الأكاديمية والصناعية، يعد استنساخ النتائج أمرًا بالغ الأهمية. من خلال تحديد البيئة الدقيقة في حاوية يضمن الباحثون أن تجاربهم تجاربهم التدريبية النموذجية يمكن تكرارها من قبل أي شخص, في أي مكان. وهذا يزيل التناقضات الناجمة عن اختلاف إصدارات المكتبة أو تكوينات النظام. على سبيل المثال، يمكن لفريق يمكن لفريق يعمل على تجزئة الصور مشاركة صورة Docker التي تحتوي على أدوات معالجة مجموعة البيانات الخاصة بهم وبنى النماذج، مما يضمن الحصول على نتائج متسقة.

2. النشر إلى الحافة

يتطلب نشر نماذج التعلم العميق على الأجهزة المتطورة، مثل أجهزة NVIDIA Jetson، يتطلب بيئات محسنة للغاية مُحسَّنة للغاية. تسمح الحاويات للمطورين بتجميع نموذج مثل YOLO11 مع تبعيات وقت التشغيل الضرورية فقط. يمكن نشر هذه يمكن نشر هذه الحزمة المبسطة على آلاف الأجهزة البعيدة، وتحديث قدرات اكتشاف الأجسام للكاميرات الأمنية أو الروبوتات المستقلة عبر الأثير دون تدخل يدوي. اقرأ المزيد عن هذا في حالات استخدام حاوية AWS.

مثال: برنامج استدلالي جاهز للحاويات

عند تجميع تطبيق في حاوية، عادةً ما تقوم بإنشاء برنامج نصي يعمل كنقطة دخول. توضح شيفرة Python التالية التالية سير عمل استدلالي بسيط باستخدام الرمز ultralytics الحزمة. يمكن أن يكون هذا البرنامج النصي العملية الرئيسية التي تعمل داخل حاوية Docker المصممة من أجل الاستدلال في الوقت الحقيقي.

from ultralytics import YOLO

# Load the YOLO11 model (ensure weights are present in the container)
model = YOLO("yolo11n.pt")

# Perform inference on an image URL
# In a container, this might process incoming video streams or API requests
results = model.predict(source="https://ultralytics.com/images/bus.jpg", save=True)

# Print detection results to verify operation
for result in results:
    print(f"Detected {len(result.boxes)} objects in the frame.")

يوضح هذا النص البرمجي بفعالية كيف يمكن أن تكون البصمة البرمجية في حدها الأدنى عندما يتم التعامل مع التبعيات بواسطة بيئة الحاوية. من خلال الاستفادة من أوزان النموذج المضمنة في الصورة، تصبح الحاوية تصبح وحدة ذكاء مستقلة جاهزة للنشر. للمزيد من القراءة عن أساسيات الحاوية، تقدم وثائق حاويات ريد هات تقدم مواد تمهيدية ممتازة.

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون وانمو مع المبتكرين العالميين

انضم الآن