إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
في هذه المقالة، ستتعلم كيفية استخدام الوظيفة الإضافية لمشغل سلسلة أدوات الذكاء الاصطناعي للاستضافة الذاتية لنماذج اللغات الكبيرة بكفاءة على Kubernetes، وتقليل التكاليف وتعقيد الموارد، وتحسين التخصيص، والحفاظ على التحكم الكامل في بياناتك.
نبذة عن كايتو
تكتسب نماذج اللغات الكبيرة ذاتية الاستضافة (LLMs) على Kubernetes زخما بين المؤسسات التي لديها أعباء عمل استدلال على نطاق واسع ، مثل معالجة الدفعات وروبوتات الدردشة والوكلاء والتطبيقات التي تعتمد على الذكاء الاصطناعي. غالبا ما تتمتع هذه المؤسسات بإمكانية الوصول إلى وحدات معالجة الرسومات من الدرجة التجارية وتبحث عن بدائل لنماذج تسعير واجهة برمجة التطبيقات المكلفة لكل رمز مميز ، والتي يمكن أن تخرج عن نطاق السيطرة بسرعة. يتطلب الكثيرون أيضا القدرة على ضبط نماذجهم أو تخصيصها ، وهي إمكانية مقيدة عادة من قبل موفري واجهة برمجة التطبيقات مغلقة المصدر. بالإضافة إلى ذلك ، تعطي الشركات التي تتعامل مع البيانات الحساسة أو المملوكة - خاصة في القطاعات الخاضعة للتنظيم مثل التمويل أو الرعاية الصحية أو الدفاع - الأولوية للاستضافة الذاتية للحفاظ على رقابة صارمة على البيانات ومنع التعرض من خلال أنظمة الطرف الثالث.
لتلبية هذه الاحتياجات والمزيد، يعمل Kubernetes الذكاء الاصطناعي Toolchain Operator (KAITO)، وهو مشروع وضع الحماية لمؤسسة الحوسبة السحابية الأصلية (CNCF)، على تبسيط عملية نشر وإدارة أحمال عمل LLM مفتوحة المصدر على Kubernetes. يتكامل KAITO مع vLLM ، وهو محرك استدلال عالي الإنتاجية مصمم لخدمة نماذج اللغات الكبيرة بكفاءة. يساعد vLLM كمحرك استدلال على تقليل متطلبات الذاكرة ووحدة معالجة الرسومات دون المساس بالدقة بشكل كبير.
وتوفر الوظيفة الإضافية المدارة من قبل مشغل سلسلة أدوات الذكاء الاصطناعي، التي تم إنشاؤها على رأس مشروع KAITO مفتوح المصدر، إعدادا معياريا للتوصيل والتشغيل يسمح للفرق بنشر النماذج بسرعة وعرضها عبر واجهات برمجة التطبيقات الجاهزة للإنتاج. يتضمن ميزات مضمنة مثل واجهات برمجة التطبيقات المتوافقة مع OpenAI والتنسيق الفوري ودعم استجابة البث. عند نشرها على نظام مجموعة AKS، تضمن KAITO بقاء البيانات داخل البيئة الخاضعة للرقابة في مؤسستك، مما يوفر بديلا آمنا ومتوافقا لواجهات برمجة تطبيقات LLM المستضافة على السحابة.
قبل البدء
- تفترض هذه المقالة مفاهيم أساسية من مفاهيم Kubernetes. لمزيد من المعلومات، راجع مفاهيم Kubernetes الأساسية ل AKS.
- للحصول على جميع الصور المعينة مسبقا للنموذج المستضاف وتكوين الموارد الافتراضي، راجع مستودع KAITO GitHub.
- تدعم الوظيفة الإضافية لمشغل سلسلة أدوات الذكاء الاصطناعي حاليا الإصدار 0.6.0 من KAITO ، يرجى تدوين ذلك عند التفكير في اختيارك للنموذج من مستودع نموذج KAITO.
القيود
-
AzureLinuxوSKUWindowsلنظام التشغيل غير مدعوم حاليا. - أحجام الجهاز الظاهري لوحدة معالجة الرسومات AMD غير مدعومة
instanceTypeفي مساحة عمل KAITO. - يتم دعم الوظيفة الإضافية لمشغل سلسلة أدوات الذكاء الاصطناعي في مناطق Azure العامة .
Prerequisites
في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
إذا كان لديك العديد من اشتراكات Azure، فتأكد من تحديد الاشتراك الصحيح الذي سيتم فيه إنشاء الموارد وشحنها باستخدام الأمر az account set .
Note
يجب أن يكون لاشتراك Azure حصة نسبية ل GPU VM مستحسنة لنشر النموذج الخاص بك في نفس منطقة Azure مثل موارد AKS الخاصة بك.
تم تثبيت الإصدار 2.76.0 من Azure CLI أو إصدار أحدث وتكوينه. قم بتشغيل
az --versionللعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI.عميل سطر أوامر Kubernetes، kubectl، مثبت ومكون. لمزيد من المعلومات، راجع تثبيت kubectl.
تصدير متغيرات البيئة
لتبسيط خطوات التكوين في هذه المقالة، يمكنك تعريف متغيرات البيئة باستخدام الأوامر التالية. تأكد من استبدال قيم العنصر النائب بقيمك الخاصة.
export AZURE_SUBSCRIPTION_ID="mySubscriptionID" export AZURE_RESOURCE_GROUP="myResourceGroup" export AZURE_LOCATION="myLocation" export CLUSTER_NAME="myClusterName"
تمكين الوظيفة الإضافية لمشغل سلسلة الأدوات الذكاء الاصطناعي على نظام مجموعة AKS
تصف الأقسام التالية كيفية إنشاء نظام مجموعة AKS مع تمكين الوظيفة الإضافية لمشغل سلسلة الأدوات الذكاء الاصطناعي ونشر نموذج الذكاء الاصطناعي مستضاف افتراضي.
إنشاء نظام مجموعة AKS مع تمكين الوظيفة الإضافية لعامل تشغيل سلسلة الأدوات الذكاء الاصطناعي
إنشاء مجموعة موارد Azure باستخدام الأمر az group create .
az group create --name $AZURE_RESOURCE_GROUP --location $AZURE_LOCATIONقم بإنشاء نظام مجموعة AKS مع تمكين الوظيفة الإضافية لعامل تشغيل سلسلة الأدوات الذكاء الاصطناعي باستخدام الأمر az aks create مع
--enable-ai-toolchain-operatorعلامات و--enable-oidc-issuer.az aks create --location $AZURE_LOCATION \ --resource-group $AZURE_RESOURCE_GROUP \ --name $CLUSTER_NAME \ --enable-ai-toolchain-operator \ --enable-oidc-issuer \ --generate-ssh-keysفي نظام مجموعة AKS موجود، يمكنك تمكين الوظيفة الإضافية لمشغل سلسلة الأدوات الذكاء الاصطناعي باستخدام الأمر az aks update .
az aks update --name $CLUSTER_NAME \ --resource-group $AZURE_RESOURCE_GROUP \ --enable-ai-toolchain-operator \ --enable-oidc-issuer
تواصل مع مجموعتك
قم بتكوين
kubectlللاتصال بالمجموعة باستخدام الأمر az aks get-credentials .az aks get-credentials --resource-group $AZURE_RESOURCE_GROUP --name $CLUSTER_NAMEتحقق من الاتصال بالمجموعة باستخدام
kubectl getالأمر .kubectl get nodes
توزيع نموذج الذكاء الاصطناعي مستضاف افتراضي
تقدم KAITO مجموعة من نماذج اللغات الصغيرة والكبيرة المستضافة كصور حاوية عامة ، والتي يمكن نشرها في خطوة واحدة باستخدام مساحة عمل KAITO. يمكنك تصفح صور LLM المعدة مسبقا المتوفرة في سجل نموذج KAITO. في هذا القسم، سنستخدم نموذج لغة Microsoft Phi-4-mini متعدد الوسائط عالي الأداء كمثال:
انشر الإعداد المسبق لنموذج التعليمات Phi-4-mini للاستدلال من مستودع نماذج KAITO باستخدام
kubectl applyالأمر.kubectl apply -f https://raw.githubusercontent.com/kaito-project/kaito/refs/heads/main/examples/inference/kaito_workspace_phi_4_mini.yamlتعقب تغييرات الموارد المباشرة في مساحة العمل باستخدام
kubectl getالأمر .kubectl get workspace workspace-phi-4-mini -wNote
أثناء تتبع نشر مساحة عمل KAITO، لاحظ أن استعداد الجهاز قد يستغرق ما يصل إلى 10 دقائق، واستعداد مساحة العمل حتى 20 دقيقة اعتمادا على حجم النموذج الخاص بك.
تحقق من خدمة الاستدلال والحصول على عنوان IP للخدمة باستخدام الأمر
kubectl get svc.export SERVICE_IP=$(kubectl get svc workspace-phi-4-mini -o jsonpath='{.spec.clusterIP}')اختبر خدمة استدلال التعليمات Phi-4-mini باستخدام نموذج إدخال من اختيارك باستخدام تنسيق واجهة برمجة تطبيقات إكمال الدردشة OpenAI:
kubectl run -it --rm --restart=Never curl --image=curlimages/curl -- curl -X POST http://$SERVICE_IP/v1/completions -H "Content-Type: application/json" \ -d '{ "model": "phi-4-mini-instruct", "prompt": "How should I dress for the weather today?", "max_tokens": 10 }'
نشر LLM مخصص أو خاص بالمجال
غالبا ما يتم تدريب LLMs مفتوحة المصدر في سياقات ومجالات مختلفة ، وقد لا تتناسب الإعدادات المسبقة للنموذج المستضاف دائما مع متطلبات التطبيق أو البيانات الخاصة بك. في هذه الحالة، يدعم KAITO أيضا نشر الاستدلال لنماذج اللغات الأحدث أو الخاصة بالمجال من HuggingFace. جرب نشر استدلال نموذج مخصص باستخدام KAITO باتباع هذه المقالة.
تنظيف الموارد
إذا لم تعد بحاجة إلى هذه الموارد، يمكنك حذفها لتجنب تكبد رسوم حساب Azure إضافية.
احذف مساحة عمل KAITO باستخدام الأمر
kubectl delete workspace.kubectl delete workspace workspace-phi-4-miniتحتاج إلى حذف تجمعات عقدة GPU التي تم توفيرها بواسطة نشر KAITO يدويا. استخدم تسمية العقدة التي تم إنشاؤها بواسطة مساحة عمل Phi-4-mini instruct للحصول على اسم تجمع العقدة باستخدام
az aks nodepool listالأمر. في هذا المثال، تسمية العقدة هي "kaito.sh/workspace": "workspace-phi-4-mini".az aks nodepool list --resource-group $AZURE_RESOURCE_GROUP --cluster-name $CLUSTER_NAMEحذف تجمع العقدة بهذا الاسم من مجموعة AKS وكرر الخطوات الواردة في هذا القسم لكل مساحة عمل KAITO ستتم إزالتها.
سيناريوهات استكشاف الأخطاء وإصلاحها الشائعة
بعد تطبيق مساحة عمل استدلال نموذج KAITO، قد لا يتم تحديث حالة جاهزية الموارد وشروط مساحة العمل إلى True للأسباب التالية:
- لا يحتوي اشتراك Azure الخاص بك على حصة نسبية للحد الأدنى من نوع مثيل GPU المحدد في مساحة عمل KAITO. ستحتاج إلى طلب زيادة الحصة النسبية لعائلة GPU VM في اشتراك Azure.
- نوع مثيل GPU غير متوفر في منطقة AKS. تأكد من توفر مثيل GPU في منطقتك المحددة وقم بتبديل منطقة Azure إذا لم تكن عائلة GPU VM متوفرة.
الخطوات التالية
تعرف على المزيد حول خيارات نشر نموذج KAITO أدناه:
- انشر LLMs مع التطبيق الخاص بك على AKS باستخدام KAITO في Visual Studio Code.
- مراقبة عبء عمل استدلال KAITO.
- ضبط نموذج باستخدام الوظيفة الإضافية لمشغل سلسلة الأدوات الذكاء الاصطناعي على AKS.
- تكوين واختبار استدعاء الأداة باستخدام استدلال KAITO.
- دمج وحدة خدمة MCP مع الوظيفة الإضافية لمشغل سلسلة أدوات الذكاء الاصطناعي على AKS.