Konfigurace kontejnerů Document Intelligence
Podpora kontejnerů je aktuálně dostupná s verzí 2022-08-31 (GA)
Document Intelligence pro všechny modely a 2023-07-31 (GA)
pro modely dokumentů read, Layout, Invoice, Receipt a ID Document:
- REST API
2022-08-31 (GA)
- REST API
2023-07-31 (GA)
- Cílení na klientské knihovny
REST API 2022-08-31 (GA)
- Cílení na klientské knihovny
REST API 2023-07-31 (GA)
✔️ Viz Konfigurace kontejnerů Document Intelligence v3.0 pro podporovanou dokumentaci ke kontejnerům .
Tento obsah se vztahuje na: v3.0 (GA) v3.1 (GA)
S kontejnery Document Intelligence můžete vytvořit architekturu aplikace optimalizovanou tak, aby využívala robustní cloudové funkce i umístění hraničních zařízení. Kontejnery poskytují minimalistické izolované prostředí, které je možné snadno nasadit místně i v cloudu. V tomto článku vám ukážeme, jak pomocí argumentů příkazů nakonfigurovat prostředí runtime kontejneru docker compose
Document Intelligence. Funkce funkce Document Intelligence jsou podporovány sedmi kontejnery funkcí Document Intelligence – Read, Layout, Business Card, ID Document, Receipt, Invoice, Custom. Tyto kontejnery mají požadovaná i volitelná nastavení. Několik příkladů najdete v části Příklad docker-compose.yml souboru .
Nastavení konfigurace
Každý kontejner má následující nastavení konfigurace:
Požaduje se | Nastavení | Purpose |
---|---|---|
Ano | Klíč | Sleduje fakturační údaje. |
Ano | Fakturace | Určuje identifikátor URI koncového bodu prostředku služby v Azure. Další informace najdete v tématu Fakturace. Další informace a úplný seznam regionálních koncových bodů najdete v tématu Vlastní subdomény pro služby Azure AI. |
Ano | Eula | Označuje, že jste přijali licenci pro kontejner. |
No | ApplicationInsights | Umožňuje přidat zákaznickou podporu Aplikace Azure lication Insights pro váš kontejner. |
No | Fluentd | Zapisuje protokoly a volitelně data metrik na server Fluentd. |
No | HTTP Proxy | Nakonfiguruje proxy server HTTP pro vytváření odchozích požadavků. |
No | Protokolování | Poskytuje podporu protokolování ASP.NET Core pro váš kontejner. |
Důležité
Společně Key
se používají možnosti , Billing
a Eula
nastavení. Je nutné zadat platné hodnoty pro všechna tři nastavení; jinak se kontejnery nespustí. Další informace o použití těchto nastavení konfigurace k vytvoření instance kontejneru najdete v tématu Fakturace.
Nastavení konfigurace klíče a fakturace
Toto Key
nastavení určuje klíč prostředku Azure, který se používá ke sledování fakturačních údajů kontejneru. Hodnota klíče musí být platným klíčem pro prostředek zadaný Billing
v části Nastavení konfigurace fakturace.
Nastavení Billing
určuje identifikátor URI koncového bodu prostředku v Azure, který se používá k měření fakturačních údajů kontejneru. Hodnota tohoto nastavení konfigurace musí být platným identifikátorem URI koncového bodu pro prostředek v Azure. Kontejner hlásí využití přibližně každých 10 až 15 minut.
Tato nastavení najdete na webu Azure Portal na stránce Klíče a koncový bod .
EULA
nastavení
Nastavení Eula
značí, že jste přijali licenci pro kontejner. Je nutné zadat hodnotu pro toto nastavení konfigurace a hodnota musí být nastavena na accept
.
Požaduje se | Name | Datový typ | Popis |
---|---|---|---|
Ano | Eula |
String | Přijetí licence Příklad: Eula=accept |
Kontejnery služeb Azure AI jsou licencované podle vaší smlouvy , která se řídí používáním Azure. Pokud nemáte stávající smlouvu, která se řídí používáním Azure, souhlasíte s tím, že vaše smlouva, která se řídí používáním Azure, je Smlouva o předplatném Microsoft Online, která zahrnuje podmínky online služeb. U verzí Preview souhlasíte také s dodatečnými podmínkami použití pro verze Preview Microsoft Azure. Použitím kontejneru souhlasíte s těmito podmínkami.
Nastavení ApplicationInsights
Nastavení ApplicationInsights
umožňuje do kontejneru přidat podporu telemetrie Aplikace Azure lication Insights. Application Insights poskytuje podrobné monitorování kontejneru. Kontejner můžete snadno monitorovat z hlediska dostupnosti, výkonu a využití. Můžete také rychle identifikovat a diagnostikovat chyby v kontejneru.
Následující tabulka popisuje nastavení konfigurace podporovaná ApplicationInsights
v části.
Požaduje se | Name | Datový typ | Popis |
---|---|---|---|
No | InstrumentationKey |
String | Instrumentační klíč instance Application Insights, do které se odesílají telemetrická data kontejneru. Další informace najdete v tématu Application Insights pro ASP.NET Core. Příklad: InstrumentationKey=123456789 |
Nastavení fluentd
Fluentd je opensourcový kolektor dat pro jednotné protokolování. Nastavení Fluentd
spravuje připojení kontejneru k serveru Fluentd . Kontejner obsahuje zprostředkovatele protokolování Fluentd, který kontejneru umožňuje zapisovat protokoly a volitelně data metrik na server Fluentd.
Následující tabulka popisuje nastavení konfigurace podporovaná Fluentd
v části.
Name | Datový typ | Popis |
---|---|---|
Host |
String | IP adresa nebo název hostitele DNS serveru Fluentd. |
Port |
Celé číslo | Port serveru Fluentd. Výchozí hodnota je 24224. |
HeartbeatMs |
Celé číslo | Interval prezenčního signálu v milisekundách. Pokud se před vypršením tohoto intervalu neposílal žádný provoz událostí, odešle se na server Fluentd prezenčních signálů. Výchozí hodnota je 60000 milisekund (1 minuta). |
SendBufferSize |
Celé číslo | Prostor vyrovnávací paměti sítě v bajtech přidělený pro operace odesílání. Výchozí hodnota je 32768 bajtů (32 kilobajtů). |
TlsConnectionEstablishmentTimeoutMs |
Celé číslo | Časový limit v milisekundách pro navázání připojení SSL/TLS k serveru Fluentd. Výchozí hodnota je 1 0000 milisekund (10 sekund). Pokud UseTLS je nastavená hodnota false, tato hodnota se ignoruje. |
UseTLS |
Logická hodnota | Určuje, jestli má kontejner pro komunikaci se serverem Fluentd používat protokol SSL/TLS. Výchozí hodnota je false. |
Nastavení přihlašovacích údajů proxy serveru HTTP
Pokud potřebujete nakonfigurovat proxy server HTTP pro vytváření odchozích požadavků, použijte tyto dva argumenty:
Name | Datový typ | Popis |
---|---|---|
HTTP_PROXY | string | Proxy server, který se má použít, například http://proxy:8888 <proxy-url> |
HTTP_PROXY_CREDS | string | Všechny přihlašovací údaje potřebné k ověření na proxy serveru, username:password například . Tato hodnota musí být malá písmena. |
<proxy-user> |
string | Uživatel proxy serveru. |
<proxy-password> |
string | Heslo přidružené <proxy-user> k proxy serveru. |
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> \
Nastavení protokolování
Nastavení Logging
spravují podporu protokolování ASP.NET Core pro váš kontejner. Pro kontejner, který používáte pro aplikaci ASP.NET Core, můžete použít stejná nastavení a hodnoty konfigurace.
Kontejner podporuje následující zprostředkovatele protokolování:
Poskytovatel | Účel |
---|---|
Konzola | Zprostředkovatel protokolování ASP.NET Core Console . Podporují se všechna nastavení konfigurace ASP.NET Core a výchozí hodnoty tohoto zprostředkovatele protokolování. |
Debug | Zprostředkovatel protokolování ASP.NET Core Debug . Podporují se všechna nastavení konfigurace ASP.NET Core a výchozí hodnoty tohoto zprostředkovatele protokolování. |
Disk | Zprostředkovatel protokolování JSON. Tento zprostředkovatel protokolování zapisuje data protokolu do připojení výstupu. |
Tento příkaz kontejneru ukládá informace o protokolování ve formátu JSON do připojení výstupu:
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
Tento příkaz kontejneru zobrazuje informace o ladění s předponou dbug
, zatímco kontejner běží:
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
Protokolování disku
Disk
Zprostředkovatel protokolování podporuje následující nastavení konfigurace:
Name | Datový typ | Popis |
---|---|---|
Format |
String | Výstupní formát souborů protokolu. Poznámka: Tato hodnota musí být nastavena na json povolení zprostředkovatele protokolování. Pokud je tato hodnota zadána bez zadání výstupního připojení při vytváření instance kontejneru, dojde k chybě. |
MaxFileSize |
Celé číslo | Maximální velikost souboru protokolu v megabajtech (MB). Když velikost aktuálního souboru protokolu splňuje nebo překračuje tuto hodnotu, spustí se nový soubor protokolu poskytovatelem protokolování. Pokud je zadán parametr -1, je velikost souboru protokolu omezena pouze maximální velikostí souboru, pokud existuje, pro připojení výstupu. Výchozí hodnota je 1. |
Další informace o konfiguraci podpory protokolování ASP.NET Core najdete v tématu Konfigurace souboru nastavení.
Nastavení svazku
Pomocí svazků můžete číst a zapisovat data do a z kontejneru. Svazky jsou upřednostňované pro zachování dat generovaných a používaných kontejnery Dockeru. Vstupní připojení nebo výstupní připojení můžete zadat zahrnutím volumes
možnosti a určením type
(cesta ke složce), source
(cesta ke složce) a target
(parametr cesty k souboru).
Kontejner Document Intelligence vyžaduje vstupní svazek a výstupní svazek. Vstupní svazek může být jen pro čtení (ro
) a je vyžadován pro přístup k datům, která se používají pro trénování a vyhodnocování. Výstupní svazek musí být zapisovatelný a používáte ho k ukládání modelů a dočasných dat.
Přesná syntaxe umístění hostitelského svazku se liší v závislosti na hostitelském operačním systému. Umístění svazku hostitelského počítače navíc nemusí být přístupné kvůli konfliktu mezi oprávněními účtu služby Docker a oprávněními umístění připojení hostitele.
Příklad souboru docker-compose.yml
Metoda docker compose je sestavená ze tří kroků:
- Vytvořte soubor Dockerfile.
- Definujte služby v docker-compose.yml , aby je bylo možné spouštět společně v izolovaném prostředí.
- Spusťte
docker-compose up
a spusťte své služby.
Příklad jednoho kontejneru
V tomto příkladu zadejte hodnoty {FORM_RECOGNIZER_ENDPOINT_URI} a {FORM_RECOGNIZER_KEY} pro instanci kontejneru rozložení.
Kontejner rozložení
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
Příklad více kontejnerů
Kontejnery potvrzení a čtení OCR
V tomto příkladu zadejte hodnoty {FORM_RECOGNIZER_ENDPOINT_URI} a {FORM_RECOGNIZER_KEY} pro kontejner účtenek a hodnoty {COMPUTER_VISION_ENDPOINT_URI} a {COMPUTER_VISION_KEY} pro kontejner Azure AI Vision Read.
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