Installieren des allgemein verfügbaren Read OCR-Containers für Azure KI Vision 3.2

Container ermöglichen Ihnen, die Azure KI Vision-APIs in Ihrer eigenen Umgebung auszuführen. Container eignen sich hervorragend für bestimmte Sicherheits- und Datengovernanceanforderungen. In diesem Artikel erfahren Sie, wie Sie einen Read-OCR-Container herunterladen, installieren und ausführen.

Mit dem Read-Container können Sie gedruckten und handschriftlichen Text aus Bildern und Dokumenten mit Unterstützung für die Dateiformate JPEG, PNG, BMP, PDF und TIFF extrahieren. Weitere Informationen finden Sie in der Schrittanleitung zur Lese-API.

Neuigkeiten

Die allgemeine verfügbare Version 3.2-model-2022-04-30 des Containers für das Lesen ist mit Unterstützung für 164 Sprachen und weiteren Verbesserungen verfügbar. Wenn Sie Bestandskunde sind, befolgen Sie die Downloadanweisungen, um loszulegen.

Der Read 3.2-OCR-Container ist das neueste GA-Modell und bietet Folgendes:

  • Neue Modelle für erweiterte Genauigkeit
  • Unterstützung für mehrere Sprachen innerhalb desselben Dokuments
  • Unterstützung für insgesamt 164 Sprachen Eine vollständige Liste finden Sie unter Sprachunterstützung für maschinelles Sehen.
  • Ein einzelner Vorgang für Dokumente und Bilder
  • Unterstützung für größere Dokumente und Bilder
  • Zuverlässigkeitsbewertungen
  • Unterstützung für Dokumente mit gedrucktem und handgeschriebenem Text
  • Möglichkeit, Text nur von ausgewählten Seiten in einem Dokument zu extrahieren
  • Änderung der Reihenfolge der Textzeilenausgabe von der Standardrichtung in eine natürlichere Leserichtung nur für lateinische Sprachen
  • Klassifizierung der Textzeilen als handschriftlich oder nicht nur für lateinische Sprachen

Wenn Sie heute Read 2.0-Container verwenden, lesen Sie den Migrationsleitfaden, um sich über die Änderungen in den neuen Versionen zu informieren.

Voraussetzungen

Zur Verwendung der Container müssen die folgenden Voraussetzungen erfüllt sein:

Erforderlich Zweck
Docker-Engine Die Docker-Engine muss auf einem Hostcomputer installiert sein. Für die Docker-Umgebung stehen Konfigurationspakete für macOS, Windows und Linux zur Verfügung. Eine Einführung in Docker und Container finden Sie in der Docker-Übersicht.

Docker muss so konfiguriert werden, dass die Container eine Verbindung mit Azure herstellen und Abrechnungsdaten an Azure senden können.

Unter Windows muss Docker auch für die Unterstützung von Linux-Containern konfiguriert werden.

Kenntnisse zu Docker Sie sollten über Grundkenntnisse der Konzepte von Docker, einschließlich Registrierungen, Repositorys, Container und Containerimages, verfügen und die grundlegenden docker-Befehle kennen.
Ressource für maschinelles Sehen Um den Container zu verwenden, benötigen Sie Folgendes:

Eine Ressource vom Typ Maschinelles Sehen sowie den zugehörigen API-Schlüssel und Endpunkt-URI. Beide Werte stehen auf der Übersichts- und auf der Schlüsselseite der Ressource zur Verfügung und werden zum Starten des Containers benötigt.

{API_KEY} : Einer der beiden verfügbaren Ressourcenschlüssel auf der Seite Schlüssel

{ENDPOINT_URI} : Der Endpunkt, der auf der Seite Übersicht angegeben ist

Wenn Sie kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.

Erfassen erforderlicher Parameter

Für alle Azure KI-Container werden drei primäre Parameter benötigt. Die Microsoft-Software-Lizenzbedingungen müssen mit dem Wert accept vorhanden sein. Außerdem werden ein Endpunkt-URI und ein API-Schlüssel benötigt.

Endpunkt-URI

Der {ENDPOINT_URI}-Wert ist im Azure-Portal auf der Seite Übersicht der entsprechenden Azure KI Services-Ressource verfügbar. Wechseln Sie zur Seite Übersicht, zeigen Sie auf den Endpunkt, und das Symbol In Zwischenablage kopieren wird angezeigt. Kopieren Sie den Endpunkt, und verwenden Sie ihn bei Bedarf.

Screenshot, der die Erfassung des Endpunkt-URIs für den späteren Gebrauch zeigt.

Tasten

Der {API_KEY}-Wert wird zum Starten des Containers verwendet und ist im Azure-Portal auf der Seite Schlüssel der entsprechenden Azure KI Services-Ressource verfügbar. Wechseln Sie zur Seite Schlüssel, und wählen Sie das Symbol In Zwischenablage kopieren aus.

Screenshot, der das Abrufen eines der zwei Schlüssel für den späteren Gebrauch zeigt.

Wichtig

Diese Abonnementschlüssel werden für den Zugriff auf Ihre Azure KI Services-API verwendet. Geben Sie Ihre Schlüssel nicht weiter. Speichern Sie diese sicher. Verwenden Sie beispielsweise Azure Key Vault. Außerdem wird empfohlen, diese Schlüssel regelmäßig neu zu generieren. Für einen API-Aufruf ist nur ein Schlüssel erforderlich. Beim Neugenerieren des ersten Schlüssels können Sie den zweiten Schlüssel für den kontinuierlichen Zugriff auf den Dienst verwenden.

Anforderungen an Hostcomputer

Der Host ist ein x64-basierter Computer, auf dem der Docker-Container ausgeführt wird. Dies kann ein lokaler Computer oder ein Docker-Hostingdienst in Azure sein, z. B.:

Unterstützung von Advanced Vector Extensions

Der Hostcomputer ist der Computer, auf dem der Docker-Container ausgeführt wird. Der Host muss Unterstützung für Advanced Vector Extensions (AVX2) bieten. Sie können die AVX2-Unterstützung auf Linux-Hosts mit dem folgenden Befehl überprüfen:

grep -q avx2 /proc/cpuinfo && echo AVX2 supported || echo No AVX2 support detected

Warnung

Der Hostcomputer muss AVX2 unterstützen. Ohne AVX2-Unterstützung funktioniert der Container nicht ordnungsgemäß.

Containeranforderungen und -empfehlungen

Hinweis

Die Anforderungen und Empfehlungen basieren auf Benchmarks mit einer einzelnen Anforderung pro Sekunde, wobei ein 523 KB großes Bild eines gescannten Geschäftsbriefs mit 29 Zeilen und insgesamt 803 Zeichen verwendet wird. Die empfohlene Konfiguration führte im Vergleich zur Mindestkonfiguration zu einer etwa doppelt so schnellen Reaktion.

In der folgenden Tabelle werden die minimale und empfohlene Zuordnung von Ressourcen für jeden OCR-Container für das Lesen beschrieben.

Container Minimum Empfohlen
Read 3.2 2022-04-30 4 Kerne, 8 GB Arbeitsspeicher 8 Kerne, 16 GB Arbeitsspeicher
Read 3.2 2021-04-12 4 Kerne, 16 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
  • Jeder Kern muss eine Geschwindigkeit von mindestens 2,6 GHz aufweisen.

Kern und Arbeitsspeicher entsprechen den Einstellungen --cpus und --memory, die im Rahmen des Befehls docker run verwendet werden.

Abrufen des Containerimages

Das Read OCR-Containerimage von Azure KI Vision befindet sich im Containerregistrierungssyndikat mcr.microsoft.com. Es befindet sich im Repository azure-cognitive-services und trägt den Namen read. Der vollqualifizierte Containerimagename lautet mcr.microsoft.com/azure-cognitive-services/vision/read.

Um die neueste Version des Containers zu verwenden, können Sie das Tag latest verwenden. Eine vollständige Liste der Tags finden Sie auch in der MCR.

Die folgenden Containerimages stehen für das Lesen zur Verfügung.

Container Container Registry/Repository/Imagename Tags
Read 3.2 GA mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30 latest, 3.2, 3.2-model-2022-04-30

Verwenden Sie den Befehl docker pull, um ein Containerimage herunterzuladen.

docker pull mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30

Tipp

Mithilfe des Befehls docker images können Sie Ihre heruntergeladenen Containerimages auflisten. Mit dem folgenden Befehl werden beispielsweise die ID, das Repository und das Tag jedes heruntergeladenen Containerimages in Form einer Tabelle aufgelistet:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Verwenden des Containers

Wenn sich der Container auf dem Hostcomputer befindet, können Sie über den folgenden Prozess mit dem Container arbeiten.

  1. Führen Sie den Container aus, und verwenden Sie dabei die erforderlichen Abrechnungseinstellungen. Es sind noch weitere Beispiele für den Befehl docker run verfügbar.
  2. Fragen Sie den Vorhersageendpunkt des Containers ab.

Ausführen des Containers

Verwenden Sie den Befehl docker run, um den Container auszuführen. Genaue Informationen dazu, wie Sie die Werte {ENDPOINT_URI} und {API_KEY} abrufen, erhalten Sie unter Ermitteln erforderlicher Parameter.

Es sind Beispiele für den Befehl docker run verfügbar.

docker run --rm -it -p 5000:5000 --memory 16g --cpus 8 \
mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30 \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Der obige Befehl führt Folgendes aus:

  • Führt den neusten allgemein verfügbaren OCR-Container für das Lesen aus dem Containerimage aus.
  • Ordnet 8 CPU-Kerne und 16 GB Arbeitsspeicher zu
  • Macht den TCP-Port 5000 verfügbar und ordnet eine Pseudo-TTY-Verbindung für den Container zu.
  • Entfernt den Container automatisch, nachdem er beendet wurde. Das Containerimage ist auf dem Hostcomputer weiterhin verfügbar.

Alternativ können Sie den Container mithilfe von Umgebungsvariablen ausführen:

docker run --rm -it -p 5000:5000 --memory 16g --cpus 8 \
--env Eula=accept \
--env Billing={ENDPOINT_URI} \
--env ApiKey={API_KEY} \
mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30

Es sind noch weitere Beispiele für den Befehl docker run verfügbar.

Wichtig

Die Optionen Eula, Billing und ApiKey müssen angegeben werden, um den Container auszuführen, andernfalls wird der Container nicht gestartet. Weitere Informationen finden Sie unter Abrechnung.

Wenn Sie einen höheren Durchsatz (beispielsweise bei der Verarbeitung mehrseitiger Dateien) benötigen, ziehen Sie die Bereitstellung mehrerer Container in einem Kubernetes-Cluster mithilfe von Azure Storage und Azure Queue in Betracht.

Wenn Sie Azure Storage zum Speichern von Images für die Verarbeitung verwenden, können Sie eine Verbindungszeichenfolge erstellen, die beim Aufrufen des Containers verwendet werden soll.

So finden Sie die Verbindungszeichenfolge:

  1. Navigieren Sie im Azure-Portal zu Speicherkonten, und suchen Sie Ihr Konto.
  2. Wählen Sie in der linken Navigationsliste die Zugriffsschlüssel aus.
  3. Die Verbindungszeichenfolge befindet sich unterhalb von Verbindungszeichenfolge.

Ausführen mehrerer Container auf dem gleichen Host

Wenn Sie beabsichtigen, mehrere Container mit offengelegten Ports auszuführen, stellen Sie sicher, dass jeder Container mit einem anderen offengelegten Port ausgeführt wird. Führen Sie beispielsweise den ersten Container an Port 5000 und den zweiten Container an Port 5001 aus.

Sie können diesen Container zusammen mit einem anderen Azure KI Services-Container auf dem Host ausführen. Sie können auch mehrere Container desselben Azure KI Services-Containers ausführen.

Überprüfen auf aktive Container

Es gibt mehrere Möglichkeiten zu überprüfen, ob ein Container aktiv ist. Suchen Sie die externe IP-Adresse und den verfügbar gemachten Port des betreffenden Containers, und öffnen Sie Ihren bevorzugten Webbrowser. Verwenden Sie die folgenden verschiedenen URLs für Anforderungen, um zu überprüfen, ob der Container ausgeführt wird. Die hier aufgeführten Beispiel-URLs für Anforderungen sind http://localhost:5000, aber Ihr spezifischer Container kann variieren. Stellen Sie sicher, dass Sie sich auf die externe IP-Adresse Ihres Containers und den verfügbar gemachten Port beziehen.

Anforderungs-URL Zweck
http://localhost:5000/ Der Container stellt eine Homepage bereit.
http://localhost:5000/ready Diese mit GET angeforderte URL ermöglicht es, zu überprüfen, ob der Container eine Abfrage des Modells akzeptiert. Diese Anforderung kann für Live- und Bereitschaftstests von Kubernetes verwendet werden.
http://localhost:5000/status Diese URL wird auch mit GET angefordert und überprüft, ob der zum Starten des Containers verwendete API-Schlüssel gültig ist, ohne dass eine Endpunktabfrage veranlasst wird. Diese Anforderung kann für Live- und Bereitschaftstests von Kubernetes verwendet werden.
http://localhost:5000/swagger Der Container stellt eine umfassende Dokumentation für die Endpunkte sowie die Funktion Jetzt ausprobieren bereit. Diese Funktion ermöglicht Ihnen die Eingabe Ihrer Einstellungen in einem webbasierten HTML-Formular, sodass Sie die Abfrage ausführen können, ohne Code schreiben zu müssen. Nach der Rückgabe der Abfrage wird ein cURL-Beispielbefehl bereitgestellt, der das erforderliche Format für HTTP-Header und -Text veranschaulicht.

Homepage des Containers

Abfragen des Vorhersageendpunkts des Containers

Der Container stellt REST-basierte Endpunkt-APIs für die Abfragevorhersage bereit.

Verwenden Sie für Container-APIs den Host http://localhost:5000. Sie können den Swagger-Pfad unter http://localhost:5000/swagger/ anzeigen.

Asynchrones Lesen

Sie können die Vorgänge POST /vision/v3.2/read/analyze und GET /vision/v3.2/read/operations/{operationId} kombiniert verwenden, um asynchron in einem Bild zu lesen, ähnlich wie der Azure KI Vision-Dienst die entsprechenden REST-Vorgänge verwendet. Die asynchrone POST-Methode gibt eine operationId zurück, die als Bezeichner für die HTTP GET-Anforderung verwendet wird.

Wählen Sie auf der Swagger-Benutzeroberfläche Analyze aus, um die Option im Browser zu erweitern. Wählen Sie dann Jetzt ausprobieren>Datei auswählen aus. In diesem Beispiel verwenden wir das folgende Bild:

Tabstopps und Leerzeichen

Wenn die asynchrone POST-Anforderung erfolgreich ausgeführt wurde, gibt sie den Statuscode HTTP 202 zurück. Teil der Antwort ist ein operation-location-Header, der den Ergebnisendpunkt für die Anforderung enthält.

 content-length: 0
 date: Fri, 04 Sep 2020 16:23:01 GMT
 operation-location: http://localhost:5000/vision/v3.2/read/operations/a527d445-8a74-4482-8cb3-c98a65ec7ef9
 server: Kestrel

Die operation-location ist die vollqualifizierte URL, auf die über HTTP GET zugegriffen wird. Hier ist die JSON-Antwort der Ausführung der URL operation-location aus dem vorherigen Bild:

{
  "status": "succeeded",
  "createdDateTime": "2021-02-04T06:32:08.2752706+00:00",
  "lastUpdatedDateTime": "2021-02-04T06:32:08.7706172+00:00",
  "analyzeResult": {
    "version": "3.2.0",
    "readResults": [
      {
        "page": 1,
        "angle": 2.1243,
        "width": 502,
        "height": 252,
        "unit": "pixel",
        "lines": [
          {
            "boundingBox": [
              58,
              42,
              314,
              59,
              311,
              123,
              56,
              121
            ],
            "text": "Tabs vs",
            "appearance": {
              "style": {
                "name": "handwriting",
                "confidence": 0.96
              }
            },
            "words": [
              {
                "boundingBox": [
                  68,
                  44,
                  225,
                  59,
                  224,
                  122,
                  66,
                  123
                ],
                "text": "Tabs",
                "confidence": 0.933
              },
              {
                "boundingBox": [
                  241,
                  61,
                  314,
                  72,
                  314,
                  123,
                  239,
                  122
                ],
                "text": "vs",
                "confidence": 0.977
              }
            ]
          },
          {
            "boundingBox": [
              286,
              171,
              415,
              165,
              417,
              197,
              287,
              201
            ],
            "text": "paces",
            "appearance": {
              "style": {
                "name": "handwriting",
                "confidence": 0.746
              }
            },
            "words": [
              {
                "boundingBox": [
                  286,
                  179,
                  404,
                  166,
                  405,
                  198,
                  290,
                  201
                ],
                "text": "paces",
                "confidence": 0.938
              }
            ]
          }
        ]
      }
    ]
  }
}

Wichtig

Wenn Sie mehrere OCR-Container für das Lesen hinter einem Lastenausgleich bereitstellen (z. B. unter Docker Compose oder Kubernetes), benötigen Sie einen externen Cache. Da der Verarbeitungscontainer und der GET-Anforderungscontainer möglicherweise nicht identisch sind, werden die Ergebnisse in einem externen Cache gespeichert und dort für die Container freigegeben. Ausführliche Informationen zu Cacheeinstellungen finden Sie im Artikel zum Konfigurieren von Docker-Containern für Azure KI Vision.

Synchrones Lesen

Mit dem folgenden Vorgang können Sie ein Bild synchron lesen:

POST /vision/v3.2/read/syncAnalyze

Wenn das Bild vollständig gelesen wird, dann – und nur dann – gibt die API eine JSON-Antwort zurück. Die einzige Ausnahme zu diesem Verhalten ist das Auftreten eines Fehlers. Bei einem Fehler wird der folgende JSON-Code zurückgegeben:

{
    "status": "Failed"
}

Das JSON-Antwortobjekt enthält dasselbe Objektdiagramm wie die asynchrone Version. Wenn Sie ein JavaScript-Benutzer sind und Typsicherheit wünschen, können Sie die JSON-Antwort mithilfe von TypeScript umwandeln.

Ein Beispiel für einen Anwendungsfall finden Sie in dieser TypeScript-Sandbox. Wählen Sie Ausführen aus, um die Benutzerfreundlichkeit visuell darzustellen.

Ausführen des Containers ohne Verbindung zum Internet

Um diesen Container ohne Internetverbindung nutzen zu können, müssen Sie zunächst einen Antrag auf Zugriff stellen und einen Prepaidtarif erwerben. Weitere Informationen finden Sie unter Verwendung von Docker-Containern in nicht verbundenen Umgebungen.

Wenn Sie die Erlaubnis erhalten haben, den Container ohne Internetverbindung zu betreiben, verwenden Sie das folgende Beispiel, das die Formatierung des zu verwendenden docker run-Befehls mit Platzhalterwerten zeigt. Ersetzen Sie diese Platzhalterwerte durch eigene Werte.

Der DownloadLicense=True Parameter in Ihrem docker run-Befehl lädt eine Lizenzdatei herunter, die es Ihrem Docker-Container ermöglicht, auch ohne Internetverbindung zu arbeiten. Sie enthält auch ein Ablaufdatum, nach dem die Lizenzdatei nicht mehr für die Ausführung des Containers gültig ist. Sie können eine Lizenzdatei nur mit dem entsprechenden Container verwenden, für den Sie eine Genehmigung erhalten haben. So können Sie z. B. keine Lizenzdatei für einen Spracherkennungscontainer mit einem Dokument Intelligenz-Container verwenden.

Platzhalter Wert Format oder Beispiel
{IMAGE} Das Containerimage, das Sie verwenden möchten. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} Der Pfad, in den die Lizenz heruntergeladen und eingebunden wird. /host/license:/path/to/license/directory
{ENDPOINT_URI} Der Endpunkt für Ihre Service Request-Authentifizierung. Sie finden ihn im Azure-Portal auf der Seite Key and endpoint (Schlüssel und Endpunkt) Ihrer Ressource. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Der Schlüssel für Ihre Textanalyseressource. Sie finden ihn im Azure-Portal auf der Seite Key and endpoint (Schlüssel und Endpunkt) Ihrer Ressource. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Speicherort des Lizenzordners im lokalen Dateisystem des Containers. /path/to/license/directory
docker run --rm -it -p 5000:5000 \ 
-v {LICENSE_MOUNT} \
{IMAGE} \
eula=accept \
billing={ENDPOINT_URI} \
apikey={API_KEY} \
DownloadLicense=True \
Mounts:License={CONTAINER_LICENSE_DIRECTORY} 

Nachdem die Lizenzdatei heruntergeladen wurde, können Sie den Container in einer nicht verbundenen Umgebung ausführen. Das folgende Beispiel zeigt die Formatierung des zu verwendenden docker run-Befehls mit Platzhalterwerten. Ersetzen Sie diese Platzhalterwerte durch eigene Werte.

Unabhängig davon, wo der Container ausgeführt wird, muss die Lizenzdatei in den Container eingebunden und der Speicherort des Lizenzordners im lokalen Dateisystem des Containers muss mit Mounts:License= angegeben werden. Außerdem muss eine Ausgabeeinbindung angegeben werden, sodass Einträge für die Abrechnung der Nutzung geschrieben werden können.

Platzhalter Wert Format oder Beispiel
{IMAGE} Das Containerimage, das Sie verwenden möchten. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{MEMORY_SIZE} Die geeignete Größe des Arbeitsspeichers, der für Ihren Container zugeordnet werden soll. 4g
{NUMBER_CPUS} Die geeignete Anzahl von CPUs, die für Ihren Container zugeordnet werden soll. 4
{LICENSE_MOUNT} Der Pfad, in dem sich die Lizenz befindet und eingebunden wird. /host/license:/path/to/license/directory
{OUTPUT_PATH} Der Ausgabepfad für die Protokollierung von Verwendungseinträgen. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Speicherort des Lizenzordners im lokalen Dateisystem des Containers. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Speicherort des Ausgabeordners im lokalen Dateisystem des Containers. /path/to/output/directory
docker run --rm -it -p 5000:5000 --memory {MEMORY_SIZE} --cpus {NUMBER_CPUS} \ 
-v {LICENSE_MOUNT} \ 
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}

Beenden des Containers

Zum Herunterfahren des Containers drücken Sie in der Befehlszeilenumgebung, in der der Container ausgeführt wird, STRG+C.

Problembehandlung

Wenn Sie den Container mit einer Ausgabenbereitstellung ausführen und die Protokollierung aktiviert ist, generiert der Container Protokolldateien. Diese sind hilfreich, um Probleme beim Starten oder Ausführen des Containers zu beheben.

Tipp

Weitere Informationen und Leitfäden zur Problembehandlung finden Sie unter Häufig gestellte Fragen (FAQ) zu Azure KI-Containern.

Wenn Sie Probleme beim Ausführen eines Azure KI Services-Containers haben, können Sie versuchen, den Microsoft-Diagnosecontainer zu verwenden. Verwenden Sie diesen Container zum Diagnostizieren häufiger Fehler in Ihrer Bereitstellungsumgebung, die ggf. verhindern, dass Azure KI-Container wie erwartet funktionieren.

Zum Abrufen des Containers verwenden Sie den folgenden Befehl: docker pull

docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic

Führen Sie dann den Container aus. Ersetzen Sie {ENDPOINT_URI} durch Ihren Endpunkt, und ersetzen Sie {API_KEY} durch den Schlüssel für Ihre Ressource:

docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Der Container überprüft die Netzwerkkonnektivität mit dem Abrechnungsendpunkt.

Abrechnung

Die Azure KI-Container senden Abrechnungsinformationen an Azure und verwenden dafür die entsprechende Ressource in Ihrem Azure-Konto.

Abfragen des Containers werden gemäß des Tarifs der Azure-Ressource in Rechnung gestellt, die für den Parameter ApiKey verwendet wird.

Azure KI Services-Container sind nicht zur Ausführung lizenziert, wenn keine Verbindung mit dem Endpunkt zur Verbrauchsmessung oder Abrechnung besteht. Sie müssen sicherstellen, dass die Container jederzeit Abrechnungsinformationen an den Abrechnungsendpunkt übermitteln können. Azure KI Services-Container senden keine Kundendaten wie das analysierte Bild oder den analysierten Text an Microsoft.

Herstellen einer Verbindung mit Azure

Der Container benötigt die Abrechnungsargumentwerte, um ausgeführt werden zu können. Diese Werte ermöglichen es dem Container, eine Verbindung mit dem Abrechnungsendpunkt herzustellen. Der Container meldet die Nutzung etwa alle 10 bis 15 Minuten. Wenn der Container nicht innerhalb des zulässigen Zeitfensters eine Verbindung mit Azure herstellt, wird der Container weiterhin ausgeführt, verarbeitet aber keine Anfragen, bis der Abrechnungsendpunkt wiederhergestellt wurde. Es erfolgen 10 Verbindungsversuche im gleichen Zeitintervall von 10 bis 15 Minuten. Wenn die Verbindung mit dem Abrechnungsendpunkt nicht innerhalb der 10 Versuche hergestellt werden kann, wird die Bereitstellung von Anforderungen durch den Container beendet. Ein Beispiel der zur Abrechnung an Microsoft gesendeten Informationen finden Sie in den häufig gestellten Fragen (FAQ) zu Azure KI Services-Containern.

Abrechnungsargumente

Der Befehl docker run startet den Container, wenn alle drei der folgenden Optionen über gültige Werte verfügen:

Option BESCHREIBUNG
ApiKey Der API-Schlüssel der Azure KI Services-Ressource, der zum Nachverfolgen von Abrechnungsinformationen verwendet wird.
Der Wert dieser Option muss für die bereitgestellte Ressource, die in Billing angegeben wurde, auf einen API-Schlüssel festgelegt werden.
Billing Der Endpunkt der Azure KI Services-Ressource, der zum Nachverfolgen von Abrechnungsinformationen verwendet wird.
Der Wert dieser Option muss auf den Endpunkt-URI einer bereitgestellten Azure-Ressource festgelegt werden.
Eula Gibt an, dass Sie die Lizenz für den Container akzeptiert haben.
Der Wert dieser Option muss auf accept festgelegt werden.

Weitere Informationen zu diesen Optionen finden Sie unter Konfigurieren von Containern.

Zusammenfassung

In diesem Artikel haben Sie die Konzepte und den Workflow zum Herunterladen, Installieren und Ausführen von Azure KI Vision-Containern kennengelernt. Zusammenfassung:

  • Für Azure KI Vision ist ein Linux-Container für Docker verfügbar, der das Lesen kapselt.
  • Das Read-Containerimage erfordert eine Anwendung, die es ausführt.
  • Containerimages werden in Docker ausgeführt.
  • Sie können entweder die REST-API oder das SDK verwenden, um Vorgänge in OCR-Containern für das Lesen über den Host-URI des Containers aufzurufen.
  • Bei der Instanziierung eines Containers müssen Sie Abrechnungsinformationen angeben.

Wichtig

Für die Ausführung von Azure KI Services-Containern besteht keine Lizenz, wenn sie nicht zu Messzwecken mit Azure verbunden sind. Kunden müssen sicherstellen, dass Container jederzeit Abrechnungsinformationen an den Messungsdienst übermitteln können. Azure KI-Container senden keine Kundendaten (etwa das analysierte Bild oder den analysierten Text) an Microsoft.

Nächste Schritte