Kubernetes لأحمال عمل ML
Kubernetes هو نظام مفتوح المصدر يقوم تلقائيًا بجدولة البرامج الموجودة في حاويات وتوسيع نطاقها وإعادة تشغيلها عبر مجموعة من الأجهزة.
نظرة عامة
For machine learning, it lets teams pack GPU-hungry training jobs and latency-sensitive model servers onto shared hardware without babysitting individual servers.
الغوص العميق
تم إنشاء Kubernetes في الأصل في Google لتشغيل خدمات الويب، ويتعامل مع مجموعتك على أنها مجموعة واحدة كبيرة من وحدة المعالجة المركزية والذاكرة ووحدات معالجة الرسومات، ثم يقرر الجهاز الذي يقوم بتشغيل كل حاوية. تعتمد فرق تعلم الآلة عليها لأن أعباء العمل متقطعة ومكلفة: قد يحتاج تشغيل التدريب إلى ثماني وحدات معالجة رسوميات لمدة ست ساعات، ثم لا شيء. يقوم Kubernetes بجدولة ذلك الوضع على عقدة تحتوي على وحدات معالجة رسومات مجانية، وعندما تنتهي المهمة، فإنه يحرر الأجهزة. كما أنه يحافظ على خوادم الاستدلال حية، ويعيد تشغيل الحاويات المتعطلة وينشر النسخ المتماثلة عبر الأجهزة من أجل المرونة. تضيف الأدوات المبنية في الأعلى، مثل Kubeflow وRay وKServe، أجزاء خاصة بالتعلم الآلي مثل مشغلي التدريب الموزع، وضبط المعلمات الفائقة، ونقاط نهاية النموذج ذات القياس التلقائي، بحيث يعمل علماء البيانات مع تجريدات عالية المستوى بدلاً من YAML الخام.
البصيرة الفنية
يقوم Kubernetes بتعيين وحدات معالجة الرسومات من خلال المكونات الإضافية للجهاز التي تعلن عن موارد مثل nvidia.com/gpu، والتي يطابقها المجدول مع طلبات الكبسولة. تمنع العيوب والتسامحات وظائف وحدة المعالجة المركزية الرخيصة من عقد وحدة معالجة الرسومات باهظة الثمن، بينما تقوم محددات العقد وقواعد التقارب بتثبيت التدريب على أجهزة معينة. للتدريب على وحدات معالجة الرسومات المتعددة، يقوم المشغلون بإنشاء مجموعة من الكبسولات التي تكتشف بعضها البعض وتقوم بتشغيل أطر عمل مثل PyTorch DDP أو Horovod، وتبادل التدرجات عبر شبكة المجموعة باستخدام NCCL.
التأثير الاستراتيجي
التكلفة والميزانية
تؤدي قرارات الهندسة المعمارية إلى زيادة الأداء وتكلفة التشغيل لسنوات.
قرارات أوضح
يساعد التعليم الفني الفرق على اختيار المجموعة المناسبة، وليس فقط المجموعة الأحدث.
مراقبة الجودة
تعمل الخيارات الهندسية الأفضل على تقليل حوادث الموثوقية في الإنتاج.
مستقبل Kubernetes لأحمال عمل ML
توقع تكاملًا أكثر إحكامًا لتعلم الآلة: جدولة جماعية تطلق جميع حجرات التدريب الموزعة مرة واحدة أو لا شيء على الإطلاق، ومشاركة وحدة معالجة الرسومات (GPU) الجزئية والمقسمة زمنيًا بحيث تشترك العديد من المهام الخفيفة في بطاقة واحدة، ووضع مدرك للهيكل يحترم اتصالات NVLink السريعة. إن الاستدلال بدون خادم على Kubernetes، وتوسيع نطاق نقاط النهاية إلى الصفر بين الطلبات، ينضج. مع تزايد النماذج، ينسق القائمون على الجدولة بشكل متزايد عبر مجموعات وسحابات متعددة، وأصبحت أنظمة المشاركة العادلة القائمة على قائمة الانتظار مثل Kueue وVolcano معيارًا لإدارة سعة وحدة معالجة الرسومات النادرة.
التنفيذ في العالم الحقيقي
يستخدم مختبر الأبحاث مشغل تدريب Kubeflow لإطلاق مهمة تدريب موزعة على 32 وحدة معالجة رسومات PyTorch عبر أربع عقد، ثم يقوم تلقائيًا بتحرير وحدات معالجة الرسومات عندما تتقارب.
تقدم إحدى شركات التجارة الإلكترونية نموذج التوصية الخاص بها مع KServe، والذي يقوم تلقائيًا بتوسيع نطاق النسخ المتماثلة أثناء عملية البيع السريعة والتراجع عنها بين عشية وضحاها.
يدير البنك وظائف تسجيل الدفعات ليلاً مثل Kubernetes CronJobs، ويضعها في قائمة الانتظار على عقد وحدة المعالجة المركزية الاحتياطية حتى لا تتنافس مع حركة مرور الخدمة أثناء النهار.
تستخدم إحدى الشركات الناشئة Ray on Kubernetes لإجراء عمليات مسح متوازية للمعلمات الفائقة، وتدوير العشرات من الكبسولات التجريبية قصيرة العمر على المثيلات الفورية لخفض التكلفة.
المخاطر والدرابزين
يمكن أن يؤدي تحسين معيار واحد إلى إخفاء نقاط ضعف النظام الأوسع.
غالبًا ما يتم التقليل من تكاليف البنية التحتية والصيانة.
يمكن أن تنمو الفجوات الأمنية وقابلية المراقبة عندما تصبح الأنظمة أكثر تعقيدًا.
خارطة طريق التنفيذ
تحديد الكمون والجودة وأهداف التكلفة قبل التنفيذ.
المعيار في ظل ظروف التحميل والبيانات الواقعية.
مراقبة الأدوات للأخطاء والانجراف وتأثير المستخدم.
قم بإعداد مسارات التراجع والاستجابة للحوادث قبل القياس.
استمر في الاستكشاف
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Kubernetes for ML Workloads quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
الدليل التالي
اختبار أ/ب لنماذج تعلم الآلة
الأسئلة المتداولة
What is Kubernetes for ML Workloads?
Kubernetes هو نظام مفتوح المصدر يقوم تلقائيًا بجدولة البرامج الموجودة في حاويات وتوسيع نطاقها وإعادة تشغيلها عبر مجموعة من الأجهزة. بالنسبة للتعلم الآلي، فهو يتيح للفرق حزم مهام التدريب المتعطشة لوحدة معالجة الرسومات والخوادم النموذجية الحساسة لزمن الوصول إلى الأجهزة المشتركة دون رعاية الخوادم الفردية.
ما هي الوظيفة الأساسية لمجدول Kubernetes لأحمال عمل ML؟
يقوم المجدول بمطابقة طلبات موارد الكبسولة (وحدة المعالجة المركزية والذاكرة ووحدات معالجة الرسومات) مع العقد المتاحة ويضع الكبسولة في المكان الذي يناسبها. لا يلمس رمز النموذج أو البيانات.
كيف يقوم Kubernetes عادةً بإتاحة وحدات معالجة الرسومات للجراب؟
تعرض المكونات الإضافية للأجهزة وحدات معالجة الرسومات كمورد قابل للجدولة (على سبيل المثال، nvidia.com/gpu)، مما يسمح للقرون بطلبها وتتبع توفر المجدول.
ما هي العيوب والتسامحات المستخدمة بشكل شائع في مجموعة ML؟
العيب يصد القرون من العقدة. فقط القرون ذات التسامح المطابق يمكنها الهبوط هناك. يؤدي هذا إلى الاحتفاظ بعقد GPU النادرة للوظائف التي تحتاج بالفعل إلى وحدات معالجة الرسومات.
ما الأداة التي تضيف إمكانات خاصة بتعلم الآلة مثل مشغلي التدريب الموزع أعلى Kubernetes؟
يقوم Kubeflow بوضع طبقات سير عمل ML على Kubernetes، بما في ذلك تدريب المشغلين وخطوط الأنابيب والضبط، بحيث تتجنب الفرق الكتابة اليدوية لتكوين المجموعة منخفض المستوى.
لماذا يعتبر Kubernetes مناسبًا تمامًا لأحمال عمل ML المتقطعة؟
التدريب شائك: الكثير من وحدات معالجة الرسومات لفترة وجيزة، ثم لا شيء. يقوم Kubernetes بوضع المهمة عندما تكون الموارد مجانية ويطلقها عند الانتهاء، مما يؤدي إلى تحسين الاستخدام.