Dela via


Konfigurera dokumentinformationscontainrar

Stöd för containrar är för närvarande tillgängligt med Dokumentinformationsversion 2022-08-31 (GA) för alla modeller och 2023-07-31 (GA) för dokumentmodellerna Läsa, Layout, Faktura, Kvitto och ID:

✔️ Se Konfigurera dokumentinformation v3.0-containrar för dokumentation om containrar som stöds.

Det här innehållet gäller för: Bockmarkering v3.0 (GA) Bockmarkering v3.1 (GA)

Med Dokumentinformationscontainrar kan du skapa en programarkitektur som är optimerad för att dra nytta av både robusta molnfunktioner och gränslokalitet. Containrar ger en minimalistisk, isolerad miljö som enkelt kan distribueras lokalt och i molnet. I den här artikeln visar vi hur du konfigurerar körningsmiljön för dokumentinformationscontainern med hjälp av kommandoargumenten docker compose . Dokumentinformationsfunktioner stöds av sju dokumentinformationsfunktionscontainrar – Läs, Layout, Visitkort, ID-dokument, Kvitto, Faktura, Anpassad. Dessa containrar har både obligatoriska och valfria inställningar. Några exempel finns i avsnittet Exempel docker-compose.yml fil .

Konfigurationsinställningar

Varje container har följande konfigurationsinställningar:

Obligatoriskt Inställning Syfte
Ja Tangent Spårar faktureringsinformation.
Ja Billing Anger slutpunkts-URI för tjänstresursen i Azure. Mer information finns i Fakturering. Mer information och en fullständig lista över regionala slutpunkter finns i Anpassade underdomännamn för Azure AI-tjänster.
Ja Eula Anger att du har godkänt licensen för containern.
Nej ApplicationInsights Gör det möjligt att lägga till Kundsupport för Azure Application Insights för din container.
Nej Fluentd Skriver logg och, om du vill, måttdata till en Fluentd-server.
Nej HTTP-proxy Konfigurerar en HTTP-proxy för att göra utgående begäranden.
Nej Loggning Tillhandahåller ASP.NET Core-loggningsstöd för din container.

Viktigt!

KeyInställningarna , Billingoch Eula används tillsammans. Du måste ange giltiga värden för alla tre inställningarna. annars startar inte containrarna. Mer information om hur du använder dessa konfigurationsinställningar för att instansiera en container finns i Fakturering.

Konfigurationsinställning för nyckel och fakturering

Inställningen Key anger den Azure-resursnyckel som används för att spåra faktureringsinformation för containern. Värdet för nyckeln måste vara en giltig nyckel för den resurs som anges för i avsnittet "Inställning för Billing faktureringskonfiguration".

Inställningen Billing anger slutpunkts-URI för resursen i Azure som används för att mäta faktureringsinformation för containern. Värdet för den här konfigurationsinställningen måste vara en giltig slutpunkts-URI för en resurs i Azure. Containern rapporterar användning var 10:e till 15:e minut.

Du hittar de här inställningarna i Azure Portal på sidan Nycklar och slutpunkt.

Skärmbild av Azure Portal nycklar och slutpunktssida.

EULA inställning

Inställningen Eula anger att du har godkänt licensen för containern. Du måste ange ett värde för den här konfigurationsinställningen och värdet måste vara inställt på accept.

Obligatoriskt Name Datatyp beskrivning
Ja Eula String Godkännande av licens

Exempel:
Eula=accept

Azure AI-tjänstcontainrar licensieras enligt ditt avtal som styr din användning av Azure. Om du inte har ett befintligt avtal som styr din användning av Azure godkänner du att ditt avtal som styr användningen av Azure är Microsoft Online-prenumerationsavtalet, som innehåller villkoren för onlinetjänster. För förhandsversioner godkänner du även de kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure. Genom att använda containern godkänner du dessa villkor.

ApplicationInsights-inställning

Med ApplicationInsights inställningen kan du lägga till telemetristöd för Azure Application Insights i containern. Application Insights ger djupgående övervakning av din container. Du kan enkelt övervaka din container för tillgänglighet, prestanda och användning. Du kan också snabbt identifiera och diagnostisera fel i containern.

I följande tabell beskrivs de konfigurationsinställningar som stöds i avsnittet ApplicationInsights .

Obligatoriskt Name Datatyp beskrivning
Nej InstrumentationKey String Instrumentationsnyckeln för Application Insights-instansen som telemetridata för containern skickas till. Mer information finns i Application Insights för ASP.NET Core.

Exempel:
InstrumentationKey=123456789

Inställningar för Fluentd

Fluentd är en datainsamlare med öppen källkod för enhetlig loggning. Fluentd Inställningarna hanterar containerns anslutning till en Fluentd-server. Containern innehåller en Fluentd-loggningsprovider som gör att din container kan skriva loggar och, om du vill, mätdata till en Fluentd-server.

I följande tabell beskrivs de konfigurationsinställningar som stöds i avsnittet Fluentd .

Name Datatyp beskrivning
Host String IP-adressen eller DNS-värdnamnet för Fluentd-servern.
Port Integer Porten för Fluentd-servern.
Standardvärdet är 24224.
HeartbeatMs Integer Pulsslagsintervallet i millisekunder. Om ingen händelsetrafik har skickats innan det här intervallet upphör att gälla skickas ett pulsslag till Fluentd-servern. Standardvärdet är 6 0000 millisekunder (1 minut).
SendBufferSize Integer Nätverksbuffertutrymmet, i byte, allokerat för sändningsåtgärder. Standardvärdet är 32 768 byte (32 kilobyte).
TlsConnectionEstablishmentTimeoutMs Integer Tidsgränsen i millisekunder för att upprätta en SSL/TLS-anslutning med Fluentd-servern. Standardvärdet är 1 0000 millisekunder (10 sekunder).
Om UseTLS värdet är inställt på false ignoreras det här värdet.
UseTLS Booleskt Anger om containern ska använda SSL/TLS för kommunikation med Fluentd-servern. Standardvärdet är "false".

Inställningar för HTTP-proxyautentiseringsuppgifter

Om du behöver konfigurera en HTTP-proxy för att göra utgående begäranden använder du följande två argument:

Name Datatyp beskrivning
HTTP_PROXY sträng Proxyn som ska användas, till exempel http://proxy:8888
<proxy-url>
HTTP_PROXY_CREDS sträng Eventuella autentiseringsuppgifter som krävs för att autentisera mot proxyn, username:passwordtill exempel . Det här värdet måste vara i gemener.
<proxy-user> sträng Användaren för proxyn.
<proxy-password> sträng Lösenordet som är associerat med <proxy-user> för proxyn.
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTP_PROXY=<proxy-url> \
HTTP_PROXY_CREDS=<proxy-user>:<proxy-password> \

Loggningsinställningar

Logging Inställningarna hanterar ASP.NET Core-loggningsstöd för din container. Du kan använda samma konfigurationsinställningar och värden för din container som du använder för ett ASP.NET Core-program.

Följande loggningsproviders stöds av containern:

Provider Syfte
Konsol ASP.NET Core-loggningsprovidern Console . Alla ASP.NET Core-konfigurationsinställningar och standardvärden för den här loggningsprovidern stöds.
Debug ASP.NET Core-loggningsprovidern Debug . Alla ASP.NET Core-konfigurationsinställningar och standardvärden för den här loggningsprovidern stöds.
Disk JSON-loggningsprovidern. Den här loggningsprovidern skriver loggdata till utdatamonteringen.

Det här containerkommandot lagrar loggningsinformation i JSON-format till utdatamonteringen:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output

Det här containerkommandot visar felsökningsinformation, prefixet med dbug, medan containern körs:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Console:LogLevel:Default=Debug

Diskloggning

Loggningsprovidern Disk stöder följande konfigurationsinställningar:

Name Datatyp beskrivning
Format String Utdataformatet för loggfiler.
Obs! Det här värdet måste anges för att json aktivera loggningsprovidern. Om det här värdet anges utan att ange en utdatamontering vid instansiering av en container uppstår ett fel.
MaxFileSize Integer Den maximala storleken i mb för en loggfil. När storleken på den aktuella loggfilen uppfyller eller överskrider det här värdet startas en ny loggfil av loggningsprovidern. Om -1 anges begränsas loggfilens storlek endast av den maximala filstorleken, om någon, för utdatamonteringen. Standardvärdet är 1.

Mer information om hur du konfigurerar ASP.NET Core-loggningsstöd finns i Inställningar för filkonfiguration.

Volyminställningar

Använd volymer för att läsa och skriva data till och från containern. Volymer är de som föredras för att bevara data som genereras och används av Docker-containrar. Du kan ange en indatamontering eller en utdatamontering genom att inkludera volumes alternativet och ange (bindning type ), source (sökväg till mappen) och target (filsökvägsparameter).

Dokumentinformationscontainern kräver en indatavolym och en utdatavolym. Indatavolymen kan vara skrivskyddad (ro) och krävs för åtkomst till de data som används för träning och bedömning. Utdatavolymen måste vara skrivbar och du använder den för att lagra modeller och tillfälliga data.

Den exakta syntaxen för värdvolymplatsen varierar beroende på värdoperativsystemet. Dessutom kanske inte värddatorns volymplats är tillgänglig på grund av en konflikt mellan Behörigheterna för Docker-tjänstkontot och värdmonteringsplatsbehörigheterna.

Exempel på docker-compose.yml fil

Docker Compose-metoden bygger på tre steg:

  1. Skapa en Dockerfile.
  2. Definiera tjänsterna i en docker-compose.yml så att de kan köras tillsammans i en isolerad miljö.
  3. Kör docker-compose up för att starta och köra dina tjänster.

Exempel på en container

I det här exemplet anger du {FORM_RECOGNIZER_ENDPOINT_URI} och {FORM_RECOGNIZER_KEY} värden för din layoutcontainerinstans.

Layoutcontainer

version: "3.9"
services:
  azure-cognitive-service-layout:
    container_name: azure-cognitive-service-layout
    image: mcr.microsoft.com/azure-cognitive-services/form-recognizer/layout
    environment:
      - EULA=accept
      - billing={FORM_RECOGNIZER_ENDPOINT_URI}
      - key={FORM_RECOGNIZER_KEY}

    ports:
      - "5000"
    networks:
      - ocrvnet
networks:
  ocrvnet:
    driver: bridge

Exempel på flera containrar

Kvitto- och OCR-läscontainrar

I det här exemplet anger du {FORM_RECOGNIZER_ENDPOINT_URI} och {FORM_RECOGNIZER_KEY} värden för din kvittocontainer och {COMPUTER_VISION_ENDPOINT_URI} och {COMPUTER_VISION_KEY} värden för din Azure AI Vision Read-container.

version: "3"
services:
  azure-cognitive-service-receipt:
    container_name: azure-cognitive-service-receipt
    image: cognitiveservicespreview.azurecr.io/microsoft/cognitive-services-form-recognizer-receipt:2.1
    environment:
      - EULA=accept
      - billing={FORM_RECOGNIZER_ENDPOINT_URI}
      - key={FORM_RECOGNIZER_KEY}
      - AzureCognitiveServiceReadHost=http://azure-cognitive-service-read:5000
    ports:
      - "5000:5050"
    networks:
      - ocrvnet
  azure-cognitive-service-read:
    container_name: azure-cognitive-service-read
    image: mcr.microsoft.com/azure-cognitive-services/vision/read:3.2
    environment:
      - EULA=accept
      - billing={COMPUTER_VISION_ENDPOINT_URI}
      - key={COMPUTER_VISION_KEY}
    networks:
      - ocrvnet

networks:
  ocrvnet:
    driver: bridge

Nästa steg