مسرد المصطلحات

دوكر

تبسيط مهام سير عمل الذكاء الاصطناعي/تعلم الآلة باستخدام Docker! تعرّف على كيفية نشر النماذج، وضمان قابلية التكرار، والتوسع بكفاءة عبر البيئات.

Docker عبارة عن منصة مفتوحة المصدر تعمل على أتمتة نشر التطبيقات وتوسيع نطاقها وإدارتها باستخدام المحاكاة الافتراضية على مستوى نظام التشغيل لتقديم البرامج في حزم تسمى الحاويات. بالنسبة لمهندسي التعلّم الآلي وعلماء البيانات، تُعد Docker أداة مهمة للغاية تحل المشكلة الشائعة المتمثلة في التناقضات البيئية - مشكلة "يعمل على جهازي" الشهيرة. من خلال تجميع كود التطبيق مع جميع المكتبات وأطر العمل مثل PyTorch والتبعيات الأخرى التي يحتاجها للتشغيل، يضمن Docker أن يعمل النموذج بشكل متطابق بغض النظر عن مكان نشره. هذا الاتساق أساسي لنشر نموذج موثوق به وهو حجر الزاوية في ممارسات MLOps الحديثة. يوفر موقع Ultralytics دليل Docker Quickstart لمساعدة المستخدمين على البدء في تهيئة تطبيقاتهم في حاويات.

كيف يعمل Docker

يدور سير عمل Docker حول بعض المكونات الأساسية التي تعمل معًا لحزم التطبيقات وتشغيلها:

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

تطبيقات الذكاء الاصطناعي/التعلم الآلي في العالم الحقيقي

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

  1. نشر نماذج الرؤية الحاسوبية على الحافة: يمكن تجميع نموذج Ultralytics YOLO11 المدرّب على اكتشاف الأجسام في حاوية Docker. تتضمن هذه الحاوية أوزان النموذج، والنص البرمجي الاستدلالي، وجميع التبعيات الضرورية مثل إصدارات مكتبة CUDA المحددة. يمكن بعد ذلك نشر هذه الحاوية الواحدة بشكل متسق على منصات مختلفة، بدءًا من وحدة معالجة رسومات سحابية قوية إلى جهاز ذكاء اصطناعي حافة محدود الموارد مثل NVIDIA Jetson. يضمن ذلك أداء النموذج كما هو متوقع، وهو مطلب بالغ الأهمية للاستدلال في الوقت الحقيقي في تطبيقات مثل المراقبة الذكية.
  2. إنشاء بيئات بحثية قابلة للتكرار: يمكن لعالِم البيانات الذي يطوّر خوارزمية جديدة لتجزئة الصور إنشاء حاوية Docker حاوية تحبس إصدارات محددة من Python و TensorFlow ومكتبات أخرى. يمكن مشاركة هذه البيئة الموضوعة في حاوية مع المتعاونين أو نشرها مع ورقة بحثية، مما يسمح للآخرين بتكرار بيئة التدريب بشكل مثالي والتحقق من النتائج. تتكامل منصات مثل Ultralytics HUB مع تقنيات الحاويات لزيادة تبسيط هذه العملية.

مقارنة مع المصطلحات المماثلة

على الرغم من أن Docker أساسي في عملية التجميع في حاويات، إلا أنه غالبًا ما يُستخدم إلى جانب تقنيات أخرى:

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

من خلال الاستفادة من Docker، يمكن لممارسي الذكاء الاصطناعي والرؤية الحاسوبية تحسين كفاءة سير العمل والتعاون وموثوقية النماذج المنشورة بشكل كبير. للحصول على لمحة عامة عن الغرض من Docker، تقدم موارد مثل شرح Docker الخاص بموقع OpenSource.com مقدمات يسهل الوصول إليها. هذه التقنية هي عامل تمكين رئيسي لمجموعة واسعة من خيارات نشر النماذج.

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

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

انضم الآن
تم نسخ الرابط إلى الحافظة