التحقق بعد التثبيت

تحقق من أن بوابة النماذج (Model Gateway) تعمل بشكل صحيح بعد التثبيت عن طريق التحقق من صحة الخدمة، واتصال النماذج، وطلبات الاستدلال، وسلوك التوجيه، ومعالجة الأخطاء.

بعد تثبيت بوابة استدلال النماذج (Model Inference Gateway) وتكوينها، تحقق من أن عملية النشر تعمل بشكل صحيح. أكمل مهام التحقق التالية بالترتيب. تأكد من نجاح كل خطوة قبل المتابعة إلى الخطوة التالية.

التحقق من صحة البوابة

تحقق من تشغيل pod الخاص بـ Inference Service واستعداد جميع الحاويات:

oc get pods -n <bob-namespace> -l app=bob-inference

افحص سجلات بدء التشغيل لتهيئة البوابة. عند بدء التشغيل الناجح، يتم تسجيل كل نموذج تم تكوينه عند تسجيله. تظهر أخطاء تحليل بيانات الاعتماد أو التكوين هنا:

oc logs -n <bob-namespace> deploy/bob-inference --since=5m

تأكد من استجابة نقطة نهاية /v1/models للبوابة من داخل المجموعة — هذه أوضح إشارة على أنها تعمل وقامت بتحميل التكوين:

oc exec -n <bob-namespace> deploy/bob-gateway -- \
  curl -sk https://bob-inference.<bob-namespace>.svc.cluster.local:7330/v1/model/info | jq .

التحقق من اتصال النماذج

افحص استجابة /v1/models لكل model_name متوقع. النموذج الذي فشل في الاتصال (عنوان URL خاطئ، أو خطأ مصادقة، أو فشل TLS) يكون غائبًا عن القائمة أو يظهر مع حالة خطأ.

ملاحظة:

النماذج التي تحتوي على exposed: true في model_info فقط هي التي تظهر في قائمة /v1/models العامة. النماذج ذات exposed: false (على سبيل المثال، نموذج الحراسة) لا تظهر ولكن يجب أن تظل قابلة للوصول داخليًا. الغياب عن القائمة لا يعني دائمًا فشل الاتصال.

اختبار استدلال النماذج

أرسل طلب إكمال اختباري مبسط مباشرةً إلى خدمة الاستدلال من داخل المجموعة لكل من النموذج الأساسي ونموذج الحراسة:

oc exec -n <bob-namespace> deploy/bob-gateway -- \
  curl -sk https://bob-inference.<bob-namespace>.svc.cluster.local:7330/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "<model_name>",
    "messages": [{"role": "user", "content": "Say hello."}],
    "max_tokens": 10
  }' | jq .

تحتوي الاستجابة الناجحة على مصفوفة choices مع حقل message.content.

الأخطاء الشائعة:

حالة HTTPالسبب
401 Unauthorizedبيانات اعتماد غير صالحة أو أذونات غير كافية
404 Not Foundمعرف النموذج المحدد غير موجود لدى الموفر
502 Bad Gatewayتعذر الوصول إلى نقطة نهاية النموذج الرئيسي (Upstream)
تحذير:

يجب أن يكون نموذج الحراسة قابلاً للوصول وقادرًا على معالجة الطلبات. إذا كان نموذج الحراسة غير متوفر، يرفض IBM Bob جميع طلبات الاستدلال. تأكد من نجاح التحقق من الحراسة قبل اعتبار التثبيت مكتملاً.

التحقق من توجيه النماذج

تأكد من توجيه النموذج الأساسي بشكل صحيح عن طريق التحقق من أن حقل model في الاستجابة يتطابق مع model_name المطلوب.

إذا تم تكوين fallbacks على أي إدخال نموذج، فتحقق من مسار التراجع عن طريق توجيه base_url للنموذج الأساسي مؤقتًا إلى مضيف يتعذر الوصول إليه وتأكيد تراجع البوابة إلى النموذج التالي في القائمة. استعد base_url الصحيح بعد الاختبار.

بالنسبة للنماذج التي تحتوي على exposed: false، تأكد من أن التوجيه الداخلي لا يزال يحلها بشكل صحيح على الرغم من عدم ظهورها في قائمة النماذج العامة.

التحقق من معالجة الأخطاء

قم بتشغيل الاختبارات السلبية المتعمدة التالية للتأكد من تعامل البوابة مع حالات الفشل بسلاسة:

الاختباركيفية التحفيزالسلوك المتوقع
مفتاح API غير صالحتعيين قيمة مفتاح خاطئة مؤقتًا في السرتعيد البوابة 401، ولا تنهار
نقطة نهاية يتعذر الوصول إليهاتعيين base_url لمضيف غير صالحتعيد البوابة 502 أو 503، وتسجل خطأ الخادم الرئيسي
معرف نموذج تالفتعيين model لمعرف غير موجوديرجع الموفر 404، ويظهر الخطأ للمتصل
متغير بيئة مفقود للسرإزالة مفتاح من bob.modelGateway.secretsفشل في وقت الطلب مع خطأ مسجل يشير إلى المتغير المفقود
شهادة TLS منتهية الصلاحيةتوفير شهادة منتهية الصلاحية كـ ca_cert_pemتسجيل فشل مصافحة TLS في وقت الطلب

جمع السجلات واستكشاف المشكلات وإصلاحها

قم ببث السجلات المباشرة أثناء طلب اختباري لمراقبة قرارات توجيه البوابة في الوقت الفعلي:

oc logs -n <bob-namespace> deploy/bob-inference -f

اجمع تفريغ سجل كامل لمشاركته مع الدعم:

oc logs -n <bob-namespace> deploy/bob-inference --since=1h > bob-inference.log

أنماط السجلات الرئيسية:

نمط السجلماذا يعني
Model registered successfullyقامت البوابة بتحميل إدخال النموذج بدون أخطاء
connection refused / no route to hostفشل الاتصال بنقطة نهاية النموذج
401 / 403 من المنبعبيانات الاعتماد خاطئة أو تفتقر إلى الأذونات المطلوبة
certificate signed by unknown authorityشهادة CA مفقودة أو غير صحيحة في ca_cert_pem
environment variable not foundسر مشار إليه بـ env.* غير موجود في الأسرار المركبة

بالنسبة للأخطاء على مستوى الأحداث (على سبيل المثال، حالات فشل تركيب الأسرار التي تمنع بدء الحاوية):

oc describe pod -n <bob-namespace> -l app=inference-service

تبديل نموذج الاستدلال الأساسي

للتبديل من نموذج استدلال أساسي مدعوم إلى نموذج آخر بعد التثبيت:

التأكد من نشر النموذج الجديد

تأكد من نشر النموذج الجديد وتشغيله. راجع البنية التحتية لخدمة النماذج.

تحديث ملف تكوين بوابة النماذج

حدّث ملف model-gateway.yaml الخاص بك للإشارة إلى النموذج الجديد. راجع تكوين بوابة النماذج.

تطبيق التغيير

طبّق التكوين المحدَّث باستخدام bobctl update-model-config:

bobctl update-model-config --model-config ./my-model-config.yaml --update-secrets

راجع نشر التكوين للاطلاع على مرجع الرايات الكامل.

ما رأيك في هذا الموضوع؟