Bereitstellen und Ausführen eines Containers unter Azure Container Instances

Mit den folgenden Schritte können Sie Anwendungen von Azure KI Services mithilfe von Azure Container Instances problemlos in der Cloud skalieren. Mithilfe von Containern können Sie sich auf die Erstellung von Anwendungen konzentrieren und müssen sich nicht um die Verwaltung der Infrastruktur kümmern. Weitere Informationen zur Verwendung von Containern finden Sie unter Features und Vorteile.

Voraussetzungen

Der Ansatz funktioniert mit jedem Container in Azure KI Services. Die Azure KI Services-Ressource muss erstellt werden, bevor Sie mit dem Ansatz beginnen. Jeder Azure KI-Dienst mit Containerunterstützung verfügt über einen Artikel mit einer Installationsanleitung, in dem die Installation und Konfiguration des Diensts für einen Container beschrieben wird. Da für einige Dienste eine Datei oder eine Gruppe von Dateien als Eingabe für den Container benötigt wird, sollten Sie unbedingt mit dem Container vertraut sein und diesen bereits erfolgreich verwendet haben, bevor Sie diese Lösung einsetzen.

  • Eine Azure-Ressource für den von Ihnen verwendeten Azure KI-Dienst

  • Endpunkt-URL eines Azure KI-Diensts: Lesen Sie die entsprechende Installationsanleitung Ihres Diensts für den Container, um im Azure-Portal zu ermitteln, wo sich die Endpunkt-URL befindet und wie ein korrektes Beispiel für die URL aussieht. Das genaue Format kann sich von Dienst zu Dienst unterscheiden.

  • Schlüssel der Azure KI-Dienstressource: Die Schlüssel befinden sich auf der Seite Schlüssel für die Azure-Ressource. Sie benötigen nur einen der beiden Schlüssel. Der Schlüssel ist eine Zeichenfolge mit 32 alphanumerischen Zeichen.

  • Ein einzelner Azure KI Services-Container auf Ihrem lokalen Host (auf Ihrem Computer). Stellen Sie sicher, dass Folgendes möglich ist:

    • Rufen Sie das Image mit einem docker pull-Befehl ab.
    • Führen Sie den lokalen Container erfolgreich mit allen erforderlichen Konfigurationseinstellungen aus, indem Sie einen docker run-Befehl verwenden.
    • Rufen Sie den Endpunkt des Containers auf, um eine HTTP 2xx-Antwort und eine JSON-Antwort zu erhalten.

Sie müssen alle Variablen in spitzen Klammern (<>) durch Ihre eigenen Werte ersetzen. Hierbei müssen auch die spitzen Klammern ersetzt werden.

Wichtig

Der LUIS-Container erfordert eine .gz-Modelldatei, die zur Laufzeit abgerufen wird. Der Container muss auf diese Modelldatei über eine Volumeeinbindung aus der Containerinstanz zugreifen können. Gehen Sie zum Hochladen einer Modelldatei wie folgt vor:

  1. Erstellen Sie eine Azure-Dateifreigabe. Notieren Sie sich den Namen des Azure Storage-Kontos, den Schlüssel und den Namen der Dateifreigabe, da Sie diese Angaben später benötigen.
  2. Exportieren Sie Ihr LUIS-Modell (App-Paket) über das LUIS-Portal.
  3. Navigieren Sie im Azure-Portal zur Seite Übersicht Ihrer Speicherkontoressource, und wählen Sie Dateifreigaben aus.
  4. Wählen Sie den Namen der kürzlich erstellten Dateifreigabe und anschließend Hochladen aus. Laden Sie dann Ihr App-Paket hoch.

Erstellen einer Azure Container Instances-Ressource im Azure-Portal

  1. Wechseln Sie zur Seite Erstellen für Container Instances.

  2. Geben Sie auf der Registerkarte Grundeinstellungen die folgenden Informationen ein:

    Einstellung Wert
    Subscription Wählen Sie Ihr Abonnement aus.
    Resource group Wählen Sie die verfügbare Ressource aus, oder erstellen Sie eine neue wie z.B. cognitive-services.
    Containername Geben Sie einen Namen ein (beispielsweise cognitive-container-instance). Der Name muss aus Kleinbuchstaben bestehen.
    Standort Wählen Sie eine Region für die Bereitstellung aus.
    Imagetyp Wenn Ihr Containerimage in einer Containerregistrierung gespeichert ist, die keine Anmeldeinformationen erfordert, wählen Sie Public. Wenn der Zugriff auf Ihr Containerimage Anmeldeinformationen erfordert, wählen Sie Private. Weitere Informationen darüber, ob das Containerimage Public oder Private („Öffentliche Vorschau“) ist, finden Sie unter Containerrepositorys und -images.
    Imagename Geben Sie den Containerspeicherort für Azure KI Services ein. Der Speicherort wird als Argument für den Befehl docker pull verwendet. Die verfügbaren Imagenamen und entsprechenden Repositorys finden Sie unter Containerrepositorys und -images.

    Der Imagename muss vollqualifiziert sein und drei Teile angeben. Zuerst die Containerregistrierung, dann das Repository und abschließend der Imagename: <container-registry>/<repository>/<image-name>.

    Beispiel: mcr.microsoft.com/azure-cognitive-services/keyphrase würde das Image für die Schlüsselbegriffserkennung in der Microsoft Container Registry-Instanz unter dem Azure KI Services-Repository darstellen. Weiteres Beispiel: containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text würde das Spracherkennungs-Image im Microsoft-Repository der Container Preview-Containerregistrierung darstellen.
    Betriebssystemtyp Linux
    Size Ändern Sie die Größe entsprechend den vorgeschlagenen Empfehlungen für Ihren spezifischen Azure KI-Container:
    2 CPU-Kerne
    4 GB
  3. Geben Sie auf der Registerkarte Netzwerk die folgenden Informationen ein:

    Einstellung Wert
    Ports Legen Sie den TCP-Port auf 5000 fest. Macht den Container an Port 5000 verfügbar.
  4. Geben Sie auf der Registerkarte Erweitert die erforderlichen Umgebungsvariablen für die Abrechnungseinstellungen der Azure Container Instance-Ressource ein:

    Schlüssel Wert
    ApiKey Kopiert von der Seite Schlüssel und Endpunkte der Ressource. Es handelt sich um eine aus 32 alphanumerischen Zeichen bestehende Zeichenfolge ohne Leerzeichen oder Bindestriche, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
    Billing Ihre Endpunkt-URL, kopiert von der Seite Schlüssel und Endpunkte der Ressource.
    Eula accept
  5. Wählen Sie Überprüfen und erstellen aus.

  6. Nachdem die Überprüfung abgeschlossen ist, klicken Sie auf Erstellen, um den Erstellungsprozess abzuschließen.

  7. Nach ihrer erfolgreicher Bereitstellung ist die Ressource bereit.

Verwenden der Containerinstanz

  1. Wählen Sie Übersicht aus, und kopieren Sie die IP-Adresse. Dies ist eine numerische IP-Adresse, z. B. 55.55.55.55.

  2. Öffnen Sie eine neue Browserregisterkarte, und verwenden Sie die IP-Adresse, z. B. http://<IP-address>:5000 (http://55.55.55.55:5000). Sie sehen die Homepage des Containers und erkennen daran, dass der Container ausgeführt wird.

    Homepage des Containers

  3. Wählen Sie Dienst-API-Beschreibung, um die Swagger-Seite für den Container anzuzeigen.

  4. Wählen Sie eine der APIs vom Typ POST und anschließend Jetzt ausprobieren aus. Die Parameter werden angezeigt (einschließlich der Eingabe). Fügen Sie die Parameter ein.

  5. Wählen Sie Ausführen, um die Anforderung an Ihre Containerinstanz zu senden.

    Sie haben erfolgreich Azure KI-Container in Azure Container Instances erstellt und verwendet.