Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel erfahren Sie, wie Sie das KI-Toolkette-Operator-Add-On verwenden, um große Sprachmodelle auf Kubernetes effizient selbst zu hosten, Kosten und Ressourcenkomplexität zu reduzieren, Anpassungen zu verbessern und die vollständige Kontrolle über Ihre Daten aufrechtzuerhalten.
Informationen zu KAITO
Self-Hosting großer Sprachmodelle (LLMs) auf Kubernetes gewinnt an Dynamik bei Organisationen mit Rückschlussarbeitslasten im Großen und Ganzen, z. B. Batchverarbeitung, Chatbots, Agents und KI-gesteuerte Anwendungen. Diese Organisationen haben häufig Zugriff auf kommerzielle GPUs und suchen nach Alternativen zu teuren API-Preismodellen pro Token, die schnell außer Kontrolle stehen können. Viele erfordern auch die Möglichkeit, ihre Modelle zu optimieren oder anzupassen, eine Funktion, die in der Regel durch Anbieter der geschlossenen Quell-API eingeschränkt ist. Darüber hinaus priorisieren Unternehmen, die sensible oder proprietäre Daten behandeln – insbesondere in regulierten Bereichen wie Finanzen, Gesundheitswesen oder Verteidigung – selbsthosting, um die strenge Kontrolle über Daten aufrechtzuerhalten und die Gefährdung durch Drittanbietersysteme zu verhindern.
Um diese Anforderungen und vieles mehr zu erfüllen, vereinfacht der Kubernetes AI Toolchain Operator (KAITO), ein Cloud Native Computing Foundation (CNCF) Sandbox-Projekt, den Prozess der Bereitstellung und Verwaltung von Open-Source-LLM-Workloads auf Kubernetes. KAITO integriert sich in vLLM, ein Modul mit hohem Durchsatz, das für die effiziente Bereitstellung großer Sprachmodelle entwickelt wurde. vLLM als Ableitungsmodul trägt dazu bei, arbeitsspeicher- und GPU-Anforderungen zu reduzieren, ohne die Genauigkeit erheblich zu beeinträchtigen.
Basierend auf dem Open-Source-KAITO-Projekt bietet das vom KI-Toolkette verwaltete Add-On ein modulares, Plug-and-Play-Setup, mit dem Teams Modelle schnell bereitstellen und über produktionsfähige APIs verfügbar machen können. Es enthält integrierte Features wie OpenAI-kompatible APIs, Eingabeaufforderungsformatierung und Streamingantwortunterstützung. Wenn sie auf einem AKS-Cluster bereitgestellt wird, stellt KAITO sicher, dass Daten in der kontrollierten Umgebung Ihrer Organisation verbleiben und eine sichere, kompatible Alternative zu in der Cloud gehosteten LLM-APIs bieten.
Voraussetzungen
- Für diesen Artikel werden Grundkenntnisse in Bezug auf die Kubernetes-Konzepte vorausgesetzt. Weitere Informationen finden Sie unter Grundlegende Kubernetes-Konzepte für AKS.
- Alle gehosteten modellvoreingestellten Bilder und die Standardressourcenkonfiguration finden Sie im KAITO GitHub-Repository.
- Das KI-Toolkette-Operator-Add-On unterstützt derzeit KAITO Version 0.6.0. Bitte notieren Sie sich dies, wenn Sie ihre Auswahl des Modells aus dem KAITO-Modell-Repository berücksichtigen.
Einschränkungen
-
AzureLinuxundWindowsdie Betriebssystem-SKU wird derzeit nicht unterstützt. - AMD-GPU-VM-Größen werden in einem KAITO-Arbeitsbereich nicht unterstützt
instanceType. - Das KI-Toolkettenoperator-Add-On wird in öffentlichen Azure-Regionen unterstützt.
Voraussetzungen
Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
Wenn Sie über mehrere Azure-Abonnements verfügen, stellen Sie sicher, dass Sie das richtige Abonnement auswählen, in dem die Ressourcen mit dem Befehl az account set erstellt und in Rechnung gestellt werden.
Hinweis
Ihr Azure-Abonnement muss über ein GPU-VM-Kontingent verfügen, das für Ihre Modellbereitstellung in derselben Azure-Region wie Ihre AKS-Ressourcen empfohlen wird.
Version 2.76.0 oder höher der Azure-CLI muss installiert und konfiguriert sein. Führen Sie
az --versionaus, um die Version zu ermitteln. Informationen zum Durchführen einer Installation oder eines Upgrades finden Sie bei Bedarf unter Installieren der Azure CLI.Installation und Konfiguration des Kubernetes-Befehlszeilenclients kubectl. Weitere Informationen finden Sie unter Installieren von kubectl.
Exportieren von Umgebungsvariablen
Um die Konfigurationsschritte in diesem Artikel zu vereinfachen, können Sie Umgebungsvariablen mithilfe der folgenden Befehle definieren. Ersetzen Sie die Platzhalterwerte durch Ihre eigenen Werte.
export AZURE_SUBSCRIPTION_ID="mySubscriptionID" export AZURE_RESOURCE_GROUP="myResourceGroup" export AZURE_LOCATION="myLocation" export CLUSTER_NAME="myClusterName"
Aktivieren des KI-Toolkette-Operator-Add-Ons auf einem AKS-Cluster
In den folgenden Abschnitten wird beschrieben, wie Sie ein AKS-Cluster mit aktiviertem KI-Toolchain-Betreiber-Add-On erstellen und ein standardmäßiges gehostetes KI-Modell bereitstellen.
Erstellen eines AKS-Clusters mit aktiviertem KI-Toolchain-Betreiber-Add-On
Erstellen Sie mit dem Befehl az group create eine Azure-Ressourcengruppe.
az group create --name $AZURE_RESOURCE_GROUP --location $AZURE_LOCATIONErstellen Sie einen AKS-Cluster mit aktiviertem KI-Toolchain-Betreiber-Add-On mithilfe des Befehls az aks create mit den Flags
--enable-ai-toolchain-operatorund--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-keysAuf einem vorhandenen AKS-Cluster können Sie das KI-Toolchain-Betreiber-Add-On mit dem Befehl az aks update aktivieren.
az aks update --name $CLUSTER_NAME \ --resource-group $AZURE_RESOURCE_GROUP \ --enable-ai-toolchain-operator \ --enable-oidc-issuer
Herstellen einer Clusterverbindung
Mit dem Befehl
kubectlkönnen Sie für die Verbindungsherstellung mit Ihrem Cluster konfigurieren.az aks get-credentials --resource-group $AZURE_RESOURCE_GROUP --name $CLUSTER_NAMEÜberprüfen Sie die Verbindung mit dem Cluster mithilfe des Befehls
kubectl get.kubectl get nodes
Bereitstellen eines standardmäßig gehosteten KI-Modells
KAITO bietet eine Reihe kleiner bis großer Sprachmodelle, die als öffentliche Containerimages gehostet werden und in einem Schritt mithilfe eines KAITO-Arbeitsbereichs bereitgestellt werden können. Sie können die vordefinierten LLM-Images durchsuchen, die in der KAITO-Modellregistrierungverfügbar sind. In diesem Abschnitt verwenden wir das leistungsstarke Microsoft Phi-4-Minisprachmodell als Beispiel:
Stellen Sie die Phi-4-mini-Anweisungsmodellvoreinstellung für Rückschlüsse aus dem KAITO-Modell-Repository mithilfe des
kubectl applyBefehls bereit.kubectl apply -f https://raw.githubusercontent.com/kaito-project/kaito/refs/heads/main/examples/inference/kaito_workspace_phi_4_mini.yamlVerfolgen Sie die Änderungen der Liveressourcen in Ihrem Arbeitsbereich mithilfe des
kubectl get-Befehls.kubectl get workspace workspace-phi-4-mini -wHinweis
Beachten Sie beim Nachverfolgen der KAITO-Arbeitsbereichsbereitstellung, dass die Computerbereitschaft bis zu 10 Minuten dauern kann und die Arbeitsbereichsbereitschaft je nach Größe Ihres Modells bis zu 20 Minuten dauern kann.
Überprüfen Sie Ihren Rückschlussdienst, und rufen Sie die DIENST-IP-Adresse mithilfe des
kubectl get svcBefehls ab.export SERVICE_IP=$(kubectl get svc workspace-phi-4-mini -o jsonpath='{.spec.clusterIP}')Testen Sie den Phi-4-Mini-Ableitungsdienst mit einer Beispieleingabe Ihrer Wahl mithilfe des OpenAI-Chat-Abschluss-API-Formats:
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 }'
Bereitstellen eines benutzerdefinierten oder domänenspezifischen LLM
Open-Source-LLMs werden häufig in verschiedenen Kontexten und Domänen trainiert, und die Voreinstellungen des gehosteten Modells entsprechen möglicherweise nicht immer den Anforderungen Ihrer Anwendung oder Ihrer Daten. In diesem Fall unterstützt KAITO auch die Ableitung der Bereitstellung neuerer oder domänenspezifischer Sprachmodelle von HuggingFace. Probieren Sie anhand dieses Artikels eine benutzerdefinierte Modellrückschlussbereitstellung mit KAITO aus.
Bereinigen von Ressourcen
Wenn Sie diese Ressourcen nicht mehr benötigen, können Sie sie löschen, um zusätzliche Azure-Computegebühren zu vermeiden.
Löschen Sie den KAITO-Arbeitsbereich mithilfe des
kubectl delete workspaceBefehls.kubectl delete workspace workspace-phi-4-miniSie müssen die gpu-Knotenpools, die von der KAITO-Bereitstellung bereitgestellt werden, manuell löschen. Verwenden Sie die von Phi-4-mini erstellte Knotenbezeichnung, um den Namen des Knotenpools mithilfe des
az aks nodepool listBefehls abzurufen. In diesem Beispiel lautet die Knotenbezeichnung "kaito.sh/workspace": "workspace-phi-4-mini".az aks nodepool list --resource-group $AZURE_RESOURCE_GROUP --cluster-name $CLUSTER_NAMELöschen Sie den Knotenpool mit diesem Namen aus Ihrem AKS-Cluster, und wiederholen Sie die Schritte in diesem Abschnitt für jeden KAITO-Arbeitsbereich, der entfernt wird.
Häufige Problembehandlungsszenarien
Nach dem Anwenden des KAITO-Modell-Inferenz-Arbeitsbereichs könnten Ihre Ressourcenbereitschaft und Arbeitsbereichsbedingungen aus den folgenden Gründen möglicherweise nicht zu True aktualisiert werden:
- Ihr Azure-Abonnement verfügt nicht über ein Kontingent für den minimalen GPU-Instanztyp, der in Ihrem KAITO-Arbeitsbereich angegeben ist. Sie müssen eine Kontingenterhöhung für die GPU-VM-Familie in Ihrem Azure-Abonnement anfordern.
- Der GPU-Instanztyp ist in Ihrer AKS-Region nicht verfügbar. Bestätigen Sie die Verfügbarkeit der GPU-Instanz in Ihrer spezifischen Region , und wechseln Sie zur Azure-Region, wenn Ihre GPU-VM-Familie nicht verfügbar ist.
Nächste Schritte
Weitere Informationen zu den Bereitstellungsoptionen des KAITO-Modells finden Sie unten:
- Stellen Sie LLMs mit Ihrer Anwendung auf AKS mithilfe von KAITO in Visual Studio Code bereit.
- Überwachen Sie Ihre KAITO-Ableitungsauslastung.
- Optimieren Sie ein Modell mit dem KI-Toolchain-Betreiber-Add-On auf AKS.
- Konfigurieren und Testen von Toolaufrufen mit KAITO-Rückschluss.
- Integrieren Sie einen MCP-Server in die KI-Toolchain-Operator-Erweiterung auf AKS.