Freigeben über


Tutorial: Herstellen einer Verbindung mit dem Azure OpenAI-Dienst in AKS mithilfe einer Verbindungszeichenfolge (Vorschau)

In diesem Tutorial erfahren Sie, wie Sie einen Pod in einem Azure Kubernetes (AKS)-Cluster erstellen, der mit Azure OpenAI Service über eine Verbindungszeichenfolge kommuniziert. Sie führen die folgenden Aufgaben durch:

  • Erstellen Sie ein AKS-Cluster und einen Azure OpenAI-Dienst mit gpt-4-Modellimplementierung.
  • Erstellen Sie eine Verbindung zwischen dem AKS-Cluster und Azure OpenAI mit Service Connector.
  • Klonen Sie eine Beispielanwendung, die von einem AKS-Cluster mit dem OpenAI-Dienst kommunizieren wird.
  • Stellen Sie die Anwendung auf einem Pod im AKS-Cluster bereit und testen Sie die Verbindung.
  • Bereinigen der Ressourcen

Voraussetzungen

Erstellen von Azure-Ressourcen

  1. Erstellen Sie eine Ressourcengruppe für dieses Tutorial.

    az group create \
        --name MyResourceGroup \
        --location eastus
    
  2. Erstellen Sie ein AKS-Cluster mit dem folgenden Befehl, oder verweisen Sie auf AKS-Schnellstart. In diesem Cluster erstellen wir die Dienstverbindungs- und Poddefinition und stellen die Beispielanwendung bereit.

    az aks create \
        --resource-group MyResourceGroup \
        --name MyAKSCluster \
        --enable-managed-identity \
        --node-count 1 \
       --generate-ssh-keys
    
  3. Stellen Sie mithilfe des Befehls azks get-credentials eine Verbindung mit dem Cluster her.

    az aks get-credentials \
        --resource-group MyResourceGroup \
        --name MyAKSCluster
    
  4. Erstellen Sie eine Azure OpenAI Service-Ressource mit dem Befehl az cognitiveservices account create. Optional finden Sie in diesem Tutorial weitere Anweisungen. Azure OpenAI Service ist der Zieldienst, den wir mit dem AKS-Cluster verbinden.

    az cognitiveservices account create \
        --resource-group MyResourceGroup \
        --name MyOpenAIService \
        --location eastus \
        --kind OpenAI \
        --sku s0 \
        --custom-domain myopenaiservice \
        --subscription <SubscriptionID>
    
  5. Stellen Sie ein Modell mit dem Befehl az cognitiveservices-Bereitstellung erstellen bereit. Das Modell wird in der Beispielanwendung verwendet, um die Verbindung zu testen.

    az cognitiveservices account deployment create \
        --resource-group MyResourceGroup \
        --name MyOpenAIService
        --deployment-name MyModel \
        --model-name gpt-4 \
        --model-version 0613 \
        --model-format OpenAI \
        --sku-name "Standard"
        --capacity 1
    
  6. Erstellen Sie eine Azure Container Registry (ACR)-Ressource mit dem Befehl az acr erstellen oder verweisen Sie auf dieses Tutorial. Die Registrierung hostet das Containerimage der Beispielanwendung, die von der AKS-Poddefinition verwendet wird.

    az acr create \
        --resource-group MyResourceGroup \
        --name myregistry \
        --sku Standard
    
  7. Aktivieren Sie anonymen Pull mit dem Befehl az acr Update, damit das AKS-Cluster die Bilder in der Registrierung nutzen kann.

    az acr update \
        --resource-group MyResourceGroup \
        --name myregistry \
        --anonymous-pull-enabled
    

Erstellen einer Dienstverbindung in AKS mit dem Dienstconnector (Vorschau)

Erstellen Sie eine Dienstverbindung zwischen einem AKS-Cluster und dem Azure OpenAI-Dienst im Azure-Portal oder der Azure CLI.

Anweisungen zum Erstellen einer neuen Verbindung finden Sie in der Schnellstartanleitung für die AKS-Dienstverbindung, und füllen Sie die Einstellungen aus, die sich auf die Beispiele in der folgenden Tabelle beziehen. Behalten Sie alle anderen Einstellungen mit ihren Standardwerten bei.

  1. Registerkarte Grundlagen:

    Einstellung Beispielwert Beschreibung
    Kubernetes-Namespace default Der Kubernetes-Namespace.
    Diensttyp OpenAI Service Art des Zieldiensts.
    Verbindungsname openai_conn Verwenden Sie den vom Dienstconnector bereitgestellten Verbindungsnamen, oder wählen Sie Ihren eigenen Verbindungsnamen aus.
    Abonnement <MySubscription> Das Abonnement, das für den Azure OpenAI-Dienst verwendet wird.
    OpenAI <MyOpenAIService> Der Azure OpenAI-Zieldienst, mit dem Sie eine Verbindung herstellen möchten.
    Clienttyp Python Die Codesprache oder das Framework, die bzw. das Sie zum Herstellen einer Verbindung mit dem Zieldienst verwenden.
  2. Registerkarte „Authentifizierung“:

    Authentifizierungseinstellung Beispielwert Beschreibung
    Authentifizierungstyp Verbindungszeichenfolge Der Authentifizierungstyp des Dienstconnectors.

Nachdem die Verbindung erstellt wurde, können Sie die Details im Bereich Service Connector anzeigen.

Klonen der Beispielanwendung

  1. Klonen Sie das Beispielrepository:

    git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.git
    
  2. Wechseln Sie zum Beispielordner des Repositorys für Azure OpenAI:

    cd serviceconnector-aks-samples/azure-openai-connection-string
    
  3. Ersetzen Sie den <MyModel>-Platzhalter in der app.py-Datei durch den Modellnamen, den wir bereitgestellt haben.

Erstellen und Pushen des Containerimage

  1. Erstellen und übertragen Sie die Images mithilfe des Azure CLI-Befehls az acr build an Ihre Containerregistrierung.

    az acr build --registry <MyRegistry> --image sc-demo-openai-connstr:latest ./
    
  2. Zeigen Sie die Bilder in Ihrer Containerregistrierung mithilfe des Befehls az acr Repositoryliste an.

    az acr repository list --name <MyRegistry> --output table
    

Ausführen der Anwendung und Testen der Verbindung

  1. Ersetzen Sie die Platzhalter in der Datei pod.yaml im Ordner azure-openai-connection-string.

    • Ersetzen Sie <YourContainerImage> durch den Namen des zuvor erstellten Images. Beispiel: <MyRegistry>.azurecr.io/sc-demo-openai-connstr:latest
    • Ersetzen Sie <SecretCreatedByServiceConnector> mit den geheimen Schlüssel, der von Service Connector erstellt wurde. Sie können den geheimen Namen im Azure-Portal im Bereich Service Connector überprüfen.
  2. Stellen Sie den Pod mit dem Befehl kubectl apply auf Ihrem Cluster bereit. Installieren Sie kubectl bei Bedarf mithilfe des Befehls az aks install-cli manuell. Der Befehl erstellt einen Pod namens sc-demo-openai-connstr im Standardnamespace Ihres AKS-Clusters.

    kubectl apply -f pod.yaml
    
  3. Überprüfen Sie, ob die Bereitstellung erfolgreich ist, indem Sie den Pod mit kubectl anzeigen.

    kubectl get pod/sc-demo-openai-connstr
    
  4. Überprüfen Sie, ob die Verbindung funktioniert, indem Sie die Protokolle mit kubectl anzeigen.

    kubectl logs pod/sc-demo-openai-connstr
    

Bereinigen von Ressourcen

Wenn Sie diese Ressourcen nicht mehr benötigen, bereinigen Sie die in diesem Tutorial erstellten Azure-Ressourcen, indem Sie die Ressourcengruppe löschen.

az group delete \
    --resource-group MyResourceGroup

Nächste Schritte

Lesen Sie die folgenden Artikel, um mehr über Dienstconnectorkonzepte zu erfahren und sich darüber zu informieren, wie AKS Sie beim Herstellen einer Verbindung mit Azure-Diensten unterstützt.