Installieren und Ausführen von Containern

Die Unterstützung für Container ist derzeit mit der Dokument Intelligenz-Version 2022-08-31 (GA) für alle Modelle und Version 2023-07-31 (GA) nur für Lesen und Layout verfügbar:

✔️ Informationen zur unterstützten Containerdokumentation finden Sie unter Installieren und Ausführen von Dokument Intelligenz v3.0-Containern.

Dieser Inhalt gilt für:checkmarkv3.0 (GA)checkmarkv3.1 (GA)

Azure KI Dokument Intelligenz ist ein Azure KI-Dienst, der Ihnen ermöglicht, unter Verwendung von Technologien zum maschinellen Lernen Software für die automatisierte Datenverarbeitung zu entwickeln. Mit Dokument Intelligenz identifizieren und extrahieren Sie Text, Schlüssel-Wert-Paare, Auswahlmarkierungen, Tabellendaten und Ähnliches aus Ihren Dokumenten. Als Ergebnis werden strukturierte Daten ausgegeben, die die Beziehungen in der Originaldatei enthalten.

In diesem Artikel erfahren Sie, wie Sie Dokument Intelligenz-Container herunterladen, installieren und ausführen. Container ermöglichen Ihnen, den Dokument Intelligenz-Dienst in Ihrer eigenen Umgebung auszuführen. Container eignen sich hervorragend für bestimmte Sicherheits- und Datengovernanceanforderungen.

  • Modelle zum Lesen und für Layout werden von Containern von Document Intelligence v3.1 unterstützt.

  • Modelle für Lesen, Layout, Allgemeine Dokumente, Ausweisdokumente, Belege, Rechnungen und Visitenkarten sowie benutzerdefinierte Modelle werden von Dokument Intelligenz 3.0-Containern unterstützt.

  • Das Visitenkartenmodell wird derzeit nur in v2.1-Containern unterstützt.

Voraussetzungen

Sie benötigen ein aktives Azure-Konto, um zu beginnen. Falls Sie noch kein Konto haben, können Sie ein kostenloses Konto erstellen.

Außerdem benötigen Sie Folgendes, um Dokument Intelligenz-Container verwenden zu können:

Erforderlich Zweck
Kenntnisse zu Docker Sie sollten über Grundkenntnisse der Konzepte von Docker, einschließlich Registrierungen, Repositorys, Container und Containerimages, verfügen und die grundlegenden Begriffe und Befehle für docker kennen.
Installierte 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.
Dokument Intelligenz-Ressource Eine Azure KI Dokument Intelligenz-Ressource (einzelner Dienst) oder eine für mehrere Dienste im Azure-Portal Um die Container verwenden zu können, benötigen Sie den zugeordneten Schlüssel und den Endpunkt-URI. Beide Werte finden Sie im Azure-Portal auf der Seite Schlüssel und Endpunkt für Dokument Intelligenz:
  • {FORM_RECOGNIZER_KEY}: Einer der beiden verfügbaren Ressourcenschlüssel
  • {FORM_RECOGNIZER_ENDPOINT_URI} : Der Endpunkt für die Ressource zum Nachverfolgen von Abrechnungsinformationen.
Optional Zweck
Azure CLI (Befehlszeilenschnittstelle) Mit der Azure-Befehlszeilenschnittstelle können Sie eine Reihe von Onlinebefehlen verwenden, um Azure-Ressourcen zu erstellen und zu verwalten. Sie ist für die Installation in Windows-, macOS- und Linux-Umgebungen verfügbar und kann in einem Docker-Container und in Azure Cloud Shell ausgeführt werden.

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.:

Containeranforderungen und -empfehlungen

Erforderliche unterstützende Container

Die folgende Tabelle enthält die Hilfscontainer für jeden Dokument Intelligenz-Container, den Sie herunterladen. Weitere Informationen finden Sie im Abschnitt Abrechnung.

Featurecontainer Hilfscontainer
Lesen Nicht erforderlich
Layout Nicht erforderlich
Visitenkarte Lesen
Allgemeines Dokument Layout
Rechnung Layout
Rechnung Lesen oder Layout
Ausweisdokument Lesen
Benutzerdefinierte Vorlage Layout

Hinweis

Die Mindestanforderungen und empfohlenen Werte basieren auf Docker-Grenzwerten und nicht auf den Ressourcen des Hostcomputers.

Dokument Intelligenz-Container
Container Minimum Empfohlen
Read 8 Kerne, 10 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
Layout 8 Kerne, 16 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
Business Card 8 Kerne, 16 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
General Document 8 Kerne, 12 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
ID Document 8 Kerne, 8 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
Invoice 8 Kerne, 16 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
Receipt 8 Kerne, 11 GB Arbeitsspeicher 8 Kerne, 24 GB Arbeitsspeicher
Custom Template 8 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 Befehl docker compose oder docker run verwendet werden.

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>

Ausführen des Containers mit dem Befehl docker-compose up

  • Ersetzen Sie die Werte {ENDPOINT_URI} und {API_KEY} durch Ihren Ressourcenendpunkt-URI und den Schlüssel von der Azure-Ressourcenseite.

    Screenshot of Azure portal keys and endpoint page.

  • Stellen Sie sicher, dass der EULA-Wert auf accept festgelegt ist.

  • Die Werte für EULA, Billing und ApiKey müssen angegeben werden, andernfalls kann der Container nicht gestartet werden.

Wichtig

Die Schlüssel werden für den Zugriff auf Ihre Dokument Intelligenz-Ressource verwendet. Geben Sie Ihre Schlüssel nicht weiter. Speichern Sie diese beispielsweise sicher mit Azure Key Vault. Es wird außerdem empfohlen, diese Schlüssel regelmäßig neu zu generieren. Für einen API-Aufruf ist nur ein Schlüssel erforderlich. Beim erneuten Generieren des ersten Schlüssels können Sie den zweiten Schlüssel für kontinuierlichen Zugriff auf den Dienst verwenden.

Das folgende Codebeispiel ist ein eigenständiges Beispiel für docker compose zum Ausführen des Layoutcontainers von Dokument Intelligenz. Bei docker compose verwenden Sie eine YAML-Datei, um die Dienste Ihrer Anwendung zu konfigurieren. Dann erstellen und starten Sie mit dem Befehl docker-compose up alle Dienste aus Ihrer Konfiguration. Geben Sie die Werte für {FORM_RECOGNIZER_ENDPOINT_URI} und {{FORM_RECOGNIZER_KEY} für Ihre Containerinstanz „Layout“ ein.

version: "3.9"
services:
  azure-form-recognizer-read:
    container_name: azure-form-recognizer-read
    image: mcr.microsoft.com/azure-cognitive-services/form-recognizer/read-3.0
    environment:
      - EULA=accept
      - billing={FORM_RECOGNIZER_ENDPOINT_URI}
      - apiKey={FORM_RECOGNIZER_KEY}
    ports:
      - "5000:5000"
    networks:
      - ocrvnet
networks:
  ocrvnet:
    driver: bridge

Jetzt können Sie den Dienst mit dem Befehl docker compose starten:

docker-compose up

Überprüfen Sie, ob der Dienst ausgeführt wird.

Es gibt mehrere Möglichkeiten zu überprüfen, ob ein Container aktiv ist:

  • Der Container stellt eine Homepage unter \ als visuelle Validierung zur Verfügung, dass der Container ausgeführt wird.

  • Sie können Ihren bevorzugten Webbrowser öffnen und zu der externen IP-Adresse und dem verfügbar gemachten Port des betreffenden Containers navigieren. Verwenden Sie die aufgeführten Anforderungs-URLs, um zu überprüfen, ob der Container ausgeführt wird. Die aufgeführten Beispiel-URLs für Anforderungen lauten http://localhost:5000, aber Ihr spezifischer Container kann variieren. Denken Sie daran, dass Sie zur externen IP-Adresse Ihres Containers und zum verfügbar gemachten Port navigieren.

    Anforderungs-URL Zweck
    http://localhost:5000/ Der Container stellt eine Startseite bereit.
    http://localhost:5000/ready Dies ermöglicht eine Überprüfung mit GET-Anforderung, dass der Container bereit ist, eine Abfrage des Modells zu akzeptieren. Diese Anforderung kann für Live- und Bereitschaftstests von Kubernetes verwendet werden.
    http://localhost:5000/status Dies ermöglicht auch eine Überprüfung mit GET-Anforderung, dass 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.

Screenshot of Azure containers welcome page.

Beenden der Container

Zum Beenden des Containers verwenden Sie den folgenden Befehl:

docker-compose down

Abrechnung

Die Dokument Intelligenz-Container senden Abrechnungsinformationen an Azure, indem sie eine Dokument Intelligenz-Ressource in Ihrem Azure-Konto verwenden.

Abfragen des Containers werden mit dem Tarif der Azure-Ressource abgerechnet, die für den API-Key verwendet wird. Ihnen wird jede Containerinstanz in Rechnung gestellt, die zum Verarbeiten Ihrer Dokumente und Bilder verwendet wird.

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 für die Informationen, die für die Abrechnung an Microsoft gesendet werden, finden Sie in den Häufig gestellten Fragen (FAQ) zu Azure KI-Containern.

Abrechnungsargumente

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

Option Beschreibung
ApiKey Der Schlüssel der Azure KI Services-Ressource, der zum Nachverfolgen der Abrechnungsinformationen verwendet wird
Der Wert dieser Option muss für die bereitgestellte Ressource, die in Billing angegeben wurde, auf einen Schlüssel festgelegt werden.
Billing Der Endpunkt der Azure KI Services-Ressource, der zum Nachverfolgen der 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

Das ist alles! In diesem Artikel haben Sie die Konzepte und Workflows zum Herunterladen, Installieren und Ausführen von Dokument Intelligenz-Containern kennengelernt. Zusammenfassung:

  • Dokument Intelligenz stellt sieben Linux-Container für Docker bereit.
  • Containerimages werden aus der MCR heruntergeladen.
  • Containerimages werden in Docker ausgeführt.
  • Bei der Instanziierung eines Containers müssen Sie die 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