Kurulum sonrası doğrulama

Servis sağlığını, model bağlantısını, çıkarım isteklerini, yönlendirme davranışını ve hata yönetimini doğrulayarak Model Gateway'in kurulumdan sonra düzgün çalıştığını doğrulayın.

Model Inference Gateway'i kurup yapılandırdıktan sonra, dağıtımın düzgün çalıştığını doğrulayın. Aşağıdaki doğrulama görevlerini sırayla tamamlayın. Bir sonrakine geçmeden önce her adımın başarılı olduğunu onaylayın.

Ağ geçidi sağlığını doğrulayın

Inference Service pod'unun çalıştığını ve tüm container'ların hazır olduğunu kontrol edin:

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

Ağ geçidi başlatması için başlangıç loglarını kontrol edin. Başarılı bir başlatma, yapılandırılan her modelin kaydedildiğini günlüğe kaydeder. Kimlik bilgisi veya yapılandırma ayrıştırma (parse) hataları burada görünür:

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

Ağ geçidinin /v1/models endpoint'inin küme içinden yanıt verdiğini onaylayın — bu, ayakta olduğunun ve yapılandırmayı yüklediğinin en net göstergesidir:

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

Model bağlantısını doğrulayın

Beklenen her model_name için /v1/models yanıtını kontrol edin. Bağlanamayan bir model (hatalı URL, kimlik doğrulama hatası, TLS hatası) listede bulunmaz veya bir hata durumuyla görünür.

Not:

Yalnızca model_info içinde exposed: true olan modeller herkese açık /v1/models listesinde görünür. exposed: false olan modeller (örneğin koruluk modeli) görünmez ancak dahili olarak yine de erişilebilir olmalıdır. Listede bulunmama her zaman bir bağlantı hatası anlamına gelmez.

Model çıkarımını test edin

Hem temel model hem de koruluk modeli için küme içinden doğrudan Inference Service'e minimal bir test tamamlama isteği gönderin:

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 .

Başarılı bir yanıt, message.content alanını içeren bir choices dizisi içerir.

Yaygın hatalar:

HTTP durumuNeden
401 UnauthorizedGeçersiz kimlik bilgileri veya yetersiz izinler
404 Not FoundBelirtilen model ID'si sağlayıcıda mevcut değil
502 Bad GatewayYukarı akış (upstream) model endpoint'ine ulaşılamıyor
Uyarı:

Koruluk (guardrail) modeli erişilebilir olmalı ve istekleri işleyebilmelidir. Koruluk modeli kullanılamıyorsa, IBM Bob tüm çıkarım isteklerini reddeder. Kurulumu tamamlanmış saymadan önce koruluk doğrulamasının başarılı olduğundan emin olun.

Model yönlendirmesini doğrulayın

Yanıttaki model alanının istenen model_name ile eşleştiğini kontrol ederek birincil modelin doğru şekilde yönlendirildiğini onaylayın.

Herhangi bir model girdisinde fallbacks yapılandırılmışsa, birincil modelin base_url değerini geçici olarak erişilemeyen bir ana bilgisayara yönlendirerek ve ağ geçidinin listedeki bir sonraki modele geri döndüğünü (fallback) onaylayarak geri dönüş yolunu doğrulayın. Testten sonra doğru base_url değerini geri yükleyin.

exposed: false olan modeller için, herkese açık model listesinde görünmeseler bile dahili yönlendirmenin bunları doğru şekilde çözdüğünü onaylayın.

Hata yönetimini doğrulayın

Ağ geçidinin arızaları sorunsuz bir şekilde yönettiğini onaylamak için aşağıdaki bilinçli negatif testleri çalıştırın:

TestNasıl tetiklenirBeklenen davranış
Geçersiz API anahtarıSecret içinde geçici olarak yanlış bir anahtar değeri ayarlayınAğ geçidi 401 döndürür, çökmez
Ulaşılamayan endpointbase_url değerini geçersiz bir ana bilgisayara ayarlayınAğ geçidi 502 veya 503 döndürür, yukarı akış hatasını günlüğe kaydeder
Hatalı biçimlendirilmiş model ID'simodel değerini var olmayan bir ID'ye ayarlayınSağlayıcı 404 döndürür, hata çağırana iletilir
Eksik secret ortam değişkenibob.modelGateway.secrets içinden bir anahtarı kaldırınİstek zamanında eksik değişkene referans veren günlüğe kaydedilmiş bir hata ile başarısızlık
Süresi dolmuş TLS sertifikasıca_cert_pem olarak süresi dolmuş bir sertifika sağlayınİstek zamanında günlüğe kaydedilen TLS anlaşma hatası

Logları toplayın ve sorunları giderin

Ağ geçidi yönlendirme kararlarını gerçek zamanlı olarak gözlemlemek için bir test isteği sırasında canlı logları izleyin:

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

Destek ekibiyle paylaşmak için tam bir log dökümü toplayın:

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

Temel log kalıpları:

Log kalıbıNe anlama gelir
Model registered successfullyAğ geçidi model girdisini hatasız yükledi
connection refused / no route to hostModel endpoint'ine bağlantı hatası
Yukarı akıştan 401 / 403Kimlik bilgisi yanlış veya gerekli izinlere sahip değil
certificate signed by unknown authorityCA sertifikası ca_cert_pem içinde eksik veya yanlış
environment variable not foundenv.* ile referans verilen bir secret, bağlanan secret'lar içinde yok

Olay düzeyindeki hatalar için (örneğin container'ın başlamasını engelleyen secret mount hataları):

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

Temel çıkarım modelini değiştirme

Kurulumdan sonra desteklenen bir temel çıkarım modelinden diğerine geçmek için:

Yeni modelin dağıtıldığından emin olun

Yeni modelin dağıtıldığını ve hizmet verdiğini onaylayın. Bkz. Model sunum altyapısı.

Model gateway yapılandırma dosyasını güncelleyin

model-gateway.yaml dosyanızı yeni modele referans verecek şekilde güncelleyin. Bkz. Model Gateway'i Yapılandırma.

Değişikliği uygulayın

bobctl update-model-config komutunu kullanarak güncellenen yapılandırmayı uygulayın:

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

Tam bayrak referansı için bkz. Yapılandırmayı dağıtma.

Bu konu nasıl?