Sdílet prostřednictvím


Konfigurace kontejnerů Dockeru language Understanding

Důležité

Služba LUIS bude vyřazena 1. října 2025 a od 1. dubna 2023 nebudete moct vytvářet nové prostředky LUIS. Doporučujeme migrovat aplikace LUIS do porozumění konverzačnímu jazyku, abyste mohli využívat další podporu produktů a vícejazyčné funkce.

Prostředí modulu runtime kontejneru LUIS (Language Understanding ) se konfiguruje pomocí docker run argumentů příkazu. Služba LUIS má několik požadovaných nastavení spolu s několika volitelnými nastaveními. K dispozici je několik příkladů příkazu. Nastavení specifická pro kontejner jsou vstupní nastavení připojení a nastavení fakturace.

Nastavení konfigurace

Tento kontejner má následující nastavení konfigurace:

Požaduje se Nastavení Purpose
Ano Klíč rozhraní API Používá se ke sledování fakturačních údajů.
No ApplicationInsights Umožňuje přidat do kontejneru podporu telemetrie Aplikace Azure lication Insights.
Ano Fakturace Určuje identifikátor URI koncového bodu prostředku služby v Azure.
Ano Eula Označuje, že jste přijali licenci pro kontejner.
No Fluentd Zapisujte protokol a volitelně data metrik na server Fluentd.
No Http Proxy Nakonfigurujte proxy server HTTP pro vytváření odchozích požadavků.
No Protokolování Poskytuje podporu protokolování ASP.NET Core pro váš kontejner.
Ano Montuje Čtení a zápis dat z hostitelského počítače do kontejneru a z kontejneru zpět do hostitelského počítače.

Důležité

Společně ApiKeyse používají hodnoty , Billinga Eula nastavení a musíte zadat platné hodnoty pro všechny tři. Jinak se kontejner nespustí. Další informace o použití těchto nastavení konfigurace k vytvoření instance kontejneru najdete v tématu Fakturace.

Nastavení ApiKey

Nastavení ApiKey určuje klíč prostředku Azure použitý ke sledování fakturačních údajů pro kontejner. Musíte zadat hodnotu pro ApiKey a hodnota musí být platný klíč pro prostředek služeb Azure AI zadaný pro Billing nastavení konfigurace.

Toto nastavení najdete na následujících místech:

  • Azure Portal: Správa prostředků služeb Azure AI v části Klíče
  • Portál LUIS: Stránka nastavení klíčů a koncového bodu

Nepoužívejte počáteční klíč ani klíč pro vytváření.

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í fakturace

Nastavení Billing určuje identifikátor URI koncového bodu prostředku služeb Azure AI v Azure, který se používá k měření fakturačních údajů pro kontejner. Musíte zadat hodnotu tohoto nastavení konfigurace a hodnota musí být platným identifikátorem URI koncového bodu pro prostředek služeb Azure AI v Azure. Kontejner hlásí využití přibližně každých 10 až 15 minut.

Toto nastavení najdete na následujících místech:

  • Azure Portal: Přehled služeb Azure AI s popiskem Endpoint
  • Portál LUIS: Stránka nastavení klíčů a koncových bodů v rámci identifikátoru URI koncového bodu
Požaduje se Name Datový typ Popis
Ano Billing string Identifikátor URI koncového bodu fakturace Další informace o získání identifikátoru URI fakturace najdete v tématu Shromáždění požadovaných parametrů. Další informace a úplný seznam regionálních koncových bodů najdete v tématu Vlastní subdomény pro služby Azure AI.

Nastavení Eula

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í 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:passwordnapří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í připojení

Připojení vazby slouží ke čtení a zápisu dat do a z kontejneru. Vstupní připojení nebo výstupní připojení můžete zadat zadáním --mount možnosti v příkazu docker run .

Kontejner LUIS nepoužívá vstupní ani výstupní připojení k ukládání trénovacích dat nebo dat služby.

Přesná syntaxe umístění připojení hostitele se liší v závislosti na hostitelském operačním systému. Umístění připojení hostitelského počítače navíc nemusí být přístupné kvůli konfliktu mezi oprávněními používanými účtem služby Docker a oprávněními umístění připojení hostitele.

Následující tabulka popisuje podporovaná nastavení.

Požaduje se Name Datový typ Popis
Ano Input String Cíl vstupního připojení. Výchozí hodnota je /input. Toto je umístění souborů balíčku LUIS.

Příklad:
--mount type=bind,src=c:\input,target=/input
No Output String Cíl připojení výstupu. Výchozí hodnota je /output. Toto je umístění protokolů. To zahrnuje protokoly dotazů LUIS a protokoly kontejnerů.

Příklad:
--mount type=bind,src=c:\output,target=/output

Příklady příkazů pro spuštění Dockeru

Následující příklady používají nastavení konfigurace k ilustraci, jak psát a používat docker run příkazy. Po spuštění bude kontejner dál běžet, dokud ho nezastavíte.

  • Tyto příklady používají adresář mimo jednotku C: , aby nedocházelo ke konfliktům oprávnění ve Windows. Pokud potřebujete jako vstupní adresář použít konkrétní adresář, možná budete muset udělit oprávnění ke službě Docker.
  • Pokud neznáte kontejnery Dockeru, neměňte pořadí argumentů.
  • Pokud používáte jiný operační systém, použijte správnou konzolu nebo terminál, syntaxi složky pro připojení a znak pokračování řádku pro váš systém. Tyto příklady předpokládají konzolu systému Windows se znakem ^pokračování řádku . Vzhledem k tomu, že kontejner je operační systém Linux, cíl připojení používá syntaxi složky ve stylu Linuxu.

Položku {argument_name} nahraďte vlastními hodnotami:

Zástupný symbol Hodnota Formát nebo příklad
{API_KEY} Klíč koncového LUIS bodu prostředku na stránce Klíče Azure LUIS . xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Hodnota fakturačního koncového bodu je dostupná na stránce Přehled Azure LUIS . Explicitní příklady najdete v části Shromáždění požadovaných parametrů .

Poznámka:

Nové prostředky vytvořené po 1. červenci 2019 budou používat vlastní názvy subdomén. Další informace a úplný seznam regionálních koncových bodů najdete v tématu Vlastní subdomény pro služby Azure AI.

Důležité

BillingAby se kontejner spustil, musí být zadány Eulaa ApiKey možnosti. V opačném případě se kontejner nespustí. Další informace najdete v tématu Fakturace. Hodnota ApiKey je klíč ze stránky Klíče a koncové body na portálu LUIS a je k dispozici také na stránce Klíče prostředků Azure Azure AI services .

Základní příklad

Následující příklad obsahuje nejmenší možné argumenty ke spuštění kontejneru:

docker run --rm -it -p 5000:5000 --memory 4g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY}

Příklad ApplicationInsights

Následující příklad nastaví argument ApplicationInsights tak, aby odesílal telemetrii do Application Insights, když je kontejner spuštěný:

docker run --rm -it -p 5000:5000 --memory 6g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY} ^
InstrumentationKey={INSTRUMENTATION_KEY}

Příklad protokolování

Následující příkaz nastaví úroveň protokolování a Logging:Console:LogLevelnakonfiguruje úroveň protokolování na Information.

docker run --rm -it -p 5000:5000 --memory 6g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY} ^
Logging:Console:LogLevel:Default=Information

Další kroky