Sdílet prostřednictvím


Použití místních kontejnerů Dockeru pro rozpoznávání jazyka

Kontejnery umožňují hostovat rozhraní API pro rozpoznávání jazyka ve vaší vlastní infrastruktuře. Pokud máte požadavky na zabezpečení nebo zásady správného řízení dat, které se nedají splnit voláním rozpoznávání jazyka vzdáleně, mohou být kontejnery dobrou volbou.

Požadavky

  • Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet.
  • Docker nainstalovaný na hostitelském počítači. Docker musí být nakonfigurovaný tak, aby se kontejnery mohly připojit a odesílat fakturační data do Azure.
    • Ve Windows musí být Docker také nakonfigurovaný tak, aby podporoval kontejnery Linuxu.
    • Měli byste mít základní znalosti o konceptech Dockeru.
  • Prostředek jazyka s cenovou úrovní Free (F0) nebo Standard (S).

Shromáždění požadovaných parametrů

Jsou vyžadovány tři primární parametry pro všechny kontejnery Azure AI. Licenční podmínky pro software společnosti Microsoft musí být k dispozici s hodnotou přijetí. Vyžaduje se také identifikátor URI koncového bodu a klíč rozhraní API.

Identifikátor URI koncového bodu

Tato {ENDPOINT_URI} hodnota je k dispozici na stránce Přehled webu Azure Portal odpovídajícího prostředku služeb Azure AI. Přejděte na stránku Přehled, najeďte myší na koncový bod a zobrazí se ikona Kopírovat do schránky. Zkopírujte koncový bod a použijte ho tam, kde je to potřeba.

Snímek obrazovky znázorňující shromažďování identifikátoru URI koncového bodu pro pozdější použití

Klávesy

Hodnota {API_KEY} se používá ke spuštění kontejneru a je k dispozici na stránce Klíče webu Azure Portal odpovídajícího prostředku služeb Azure AI. Přejděte na stránku Klíče a vyberte ikonu Kopírovat do schránky.

Snímek obrazovky znázorňující získání jednoho ze dvou klíčů pro pozdější použití

Důležité

Tyto klíče předplatného se používají pro přístup k rozhraní API služeb Azure AI. Nesdílejte klíče. Bezpečně je uložte. Použijte například Azure Key Vault. Doporučujeme tyto klíče pravidelně znovu vygenerovat. K volání rozhraní API je nutný jenom jeden klíč. Při opětovném vygenerování prvního klíče můžete pro pokračování přístupu ke službě použít druhý klíč.

Požadavky na hostitelský počítač a doporučení

Hostitel je počítač založený na platformě x64, na kterém běží kontejner Dockeru. Může to být počítač v místním prostředí nebo hostitelská služba Dockeru v Azure, například:

Následující tabulka popisuje minimální a doporučené specifikace kontejneru rozpoznávání jazyka. Každé jádro procesoru musí mít alespoň 2,6 gigahertz (GHz) nebo rychlejší. Jsou uvedeny také povolené transakce za sekundu (TPS).

Minimální specifikace hostitele Doporučené specifikace hostitele Minimální počet TPS Maximální počet TPS
Detekce jazyka 1 jádro, 5 GB paměti 1 jádro, 8 GB paměti 15 30

Jádro procesoru --cpus a paměť odpovídají nastavením, --memory které se používají jako součást docker run příkazu.

Získání image kontejneru pomocí docker pull

Image kontejneru Rozpoznávání jazyka najdete v mcr.microsoft.com syndikátu registru kontejneru. Nachází se v úložišti azure-cognitive-services/textanalytics/ a má název language. Plně kvalifikovaný název image kontejneru je: mcr.microsoft.com/azure-cognitive-services/textanalytics/language

Pokud chcete použít nejnovější verzi kontejneru, můžete použít latest značku. Úplný seznam značek najdete také v MCR.

docker pull Pomocí příkazu stáhněte image kontejneru ze služby Microsoft Container Registry.

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/language:latest

Tip

K výpisu stažených imagí kontejnerů můžete použít příkaz docker images . Následující příkaz například vypíše ID, úložiště a značku každé stažené image kontejneru, která je formátovaná jako tabulka:

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

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

Spuštění kontejneru pomocí docker run

Jakmile je kontejner v hostitelském počítači, spusťte kontejnery pomocí příkazu docker run . Kontejner se bude dál spouštět, dokud ho nezastavíte.

Důležité

  • Příkazy Dockeru v následujících částech používají zpětné lomítko , \jako znak pokračování řádku. Tento postup nahraďte nebo odeberte na základě požadavků vašeho hostitelského operačního systému.
  • 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.

Pokud chcete spustit kontejner Rozpoznávání jazyka, spusťte následující docker run příkaz. Nahraďte následující zástupné symboly vlastními hodnotami:

Zástupný symbol Hodnota Formát nebo příklad
{API_KEY} Klíč pro váš prostředek jazyka. Najdete ho na stránce Klíč a koncový bod vašeho prostředku na webu Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Koncový bod pro přístup k rozhraní API pro rozpoznávání jazyka. Najdete ho na stránce Klíč a koncový bod vašeho prostředku na webu Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/textanalytics/language \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Tento příkaz:

  • Spustí kontejner rozpoznávání jazyka z image kontejneru.
  • Přidělí jedno jádro procesoru a 4 gigabajty (GB) paměti.
  • Zpřístupní port TCP 5000 a přidělí pro kontejner pseudo-TTY.
  • Po ukončení kontejneru se automaticky odebere. Image kontejneru je stále dostupná na hostitelském počítači.

Spuštění více kontejnerů na stejném hostiteli

Pokud máte v úmyslu spouštět více kontejnerů s vystavenými porty, nezapomeňte jednotlivé kontejnery spouštět s jiným vystaveným portem. Například spusťte první kontejner na portu 5000 a druhý kontejner na portu 5001.

Tento kontejner a jiný kontejner služeb Azure AI můžete mít spuštěný společně na hostiteli. Můžete mít také několik kontejnerů stejného kontejneru služeb Azure AI spuštěných.

Zadání dotazu do prediktivního koncového bodu kontejneru

Kontejner poskytuje rozhraní API prediktivního koncového bodu pro dotazy založené na REST.

Pro rozhraní API kontejneru použijte hostitele http://localhost:5000.

Ověření, že je kontejner spuštěný

Existuje několik způsobů, jak ověřit, že je kontejner spuštěný. Vyhledejte externí IP adresu a vystavený port kontejneru a otevřete svůj oblíbený webový prohlížeč. Pomocí různých adres URL požadavků, které následují, ověřte, že kontejner běží. Tady jsou uvedené http://localhost:5000ukázkové adresy URL požadavků, ale váš konkrétní kontejner se může lišit. Ujistěte se, že spoléháte na externí IP adresu kontejneru a vystavený port.

Adresa URL požadavku Účel
http://localhost:5000/ Kontejner poskytuje domovskou stránku.
http://localhost:5000/ready Požadovaná pomocí příkazu GET poskytuje tuto adresu URL ověření, že kontejner je připravený přijmout dotaz na model. Tento požadavek je možné použít pro sondy připravenosti a aktivity Kubernetes.
http://localhost:5000/status Tato adresa URL také vyžaduje get, ověří, jestli klíč rozhraní API použitý ke spuštění kontejneru je platný, aniž by způsoboval dotaz koncového bodu. Tento požadavek je možné použít pro sondy připravenosti a aktivity Kubernetes.
http://localhost:5000/swagger V kontejneru je ke koncovým bodům a k funkci Vyzkoušet kompletní dokumentace. Pomocí této funkce můžete zadat nastavení do webového formuláře HTML a vytvořit dotaz, aniž byste museli psát žádný kód. Po vrácení dotazu se zobrazí příklad příkazu CURL, který předvede požadované hlavičky HTTP a základní formát.

Domovská stránka kontejneru

Spuštění kontejneru odpojeného od internetu

Pokud chcete tento kontejner používat odpojený od internetu, musíte nejprve požádat o přístup vyplněním aplikace a zakoupením plánu závazku. Další informace najdete v tématu Použití kontejnerů Dockeru v odpojených prostředích .

Pokud jste schválili spuštění kontejneru odpojeného od internetu, použijte následující příklad, který ukazuje formátování docker run příkazu, který použijete, se zástupnými hodnotami. Nahraďte tyto zástupné hodnoty vlastními hodnotami.

Parametr DownloadLicense=True v docker run příkazu stáhne licenční soubor, který umožní spuštění kontejneru Dockeru, když není připojený k internetu. Obsahuje také datum vypršení platnosti, po kterém bude soubor licence neplatný pro spuštění kontejneru. Soubor s licencí můžete použít pouze s příslušným kontejnerem, pro který jste byli schváleni. Nemůžete například použít licenční soubor pro kontejner převodu řeči na text s kontejnerem Document Intelligence.

Zástupný symbol Hodnota Formát nebo příklad
{IMAGE} Image kontejneru, kterou chcete použít. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} Cesta, kam se licence stáhne, a připojí se. /host/license:/path/to/license/directory
{ENDPOINT_URI} Koncový bod pro ověření vaší žádosti o služby. Najdete ho na stránce Klíč a koncový bod vašeho prostředku na webu Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Klíč prostředku Analýza textu. Najdete ho na stránce Klíč a koncový bod vašeho prostředku na webu Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Umístění složky s licencí v místním systému souborů kontejneru. /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} 

Po stažení souboru licence můžete kontejner spustit v odpojeném prostředí. Následující příklad ukazuje formátování docker run příkazu, který použijete, se zástupnými hodnotami. Nahraďte tyto zástupné hodnoty vlastními hodnotami.

Všude, kde je kontejner spuštěný, musí být soubor licence připojen ke kontejneru a umístění složky s licencí v místním systému souborů kontejneru musí být zadáno pomocí Mounts:License=. Musí být zadán také výstupní připojení, aby bylo možné zapsat záznamy o využití fakturace.

Zástupný symbol Hodnota Formát nebo příklad
{IMAGE} Image kontejneru, kterou chcete použít. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{MEMORY_SIZE} Odpovídající velikost paměti, která se má přidělit pro váš kontejner. 4g
{NUMBER_CPUS} Odpovídající počet procesorů pro přidělení kontejneru. 4
{LICENSE_MOUNT} Cesta, kde bude licence umístěna a připojena. /host/license:/path/to/license/directory
{OUTPUT_PATH} Výstupní cesta pro protokolování záznamů o využití. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Umístění složky s licencí v místním systému souborů kontejneru. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Umístění výstupní složky v místním systému souborů kontejneru /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}

Zastavení kontejneru

Pokud chcete kontejner vypnout, vyberte v prostředí příkazového řádku, ve kterém je kontejner spuštěný, ctrl+C.

Řešení problému

Pokud kontejner spustíte s povoleným připojením a protokolováním výstupu, kontejner vygeneruje soubory protokolu, které jsou užitečné při řešení problémů, ke kterým dochází při spuštění nebo spuštění kontejneru.

Tip

Další informace a pokyny k řešení potíží najdete v nejčastějších dotazech k kontejnerům Azure AI.

Fakturace

Kontejnery rozpoznávání jazyka odesílají fakturační údaje do Azure pomocí prostředku jazyka na vašem účtu Azure.

Dotazy na kontejner se účtují na cenové úrovni prostředku Azure, který se používá pro tento ApiKey parametr.

Kontejnery služeb Azure AI nejsou licencované ke spuštění bez připojení ke koncovému bodu měření nebo fakturace. Kontejnery musíte povolit, aby vždy komunikují fakturační údaje s koncovým bodem fakturace. Kontejnery služeb Azure AI neodesílají zákaznická data, jako je obrázek nebo text analyzovaný, do Microsoftu.

Připojení k Azure

Kontejner potřebuje ke spuštění hodnoty fakturačních argumentů. Tyto hodnoty umožňují kontejneru připojit se ke koncovému bodu fakturace. Kontejner hlásí využití přibližně každých 10 až 15 minut. Pokud se kontejner nepřipojí k Azure v rámci povoleného časového intervalu, kontejner se bude dál spouštět, ale nebude obsluhovat dotazy, dokud se neobnoví koncový bod fakturace. Připojení se pokouší 10krát ve stejném časovém intervalu 10 až 15 minut. Pokud se během 10 pokusů nemůže připojit ke koncovému bodu fakturace, kontejner přestane obsluhovat požadavky. Příklad informací odeslaných Microsoftu pro fakturaci najdete v nejčastějších dotazech ke kontejneru služeb Azure AI.

Argumenty fakturace

Příkaz docker run spustí kontejner, pokud jsou k dispozici všechny tři z následujících možností s platnými hodnotami:

Možnost Popis
ApiKey Klíč rozhraní API prostředku služeb Azure AI, který se používá ke sledování fakturačních údajů.
Hodnota této možnosti musí být nastavena na klíč rozhraní API pro zřízený prostředek, který je zadaný v Billing.
Billing Koncový bod prostředku služeb Azure AI, který se používá ke sledování fakturačních údajů.
Hodnota této možnosti musí být nastavená na identifikátor URI koncového bodu zřízeného prostředku Azure.
Eula Označuje, že jste přijali licenci pro kontejner.
Hodnota této možnosti musí být nastavena tak, aby přijímala.

Další informace o těchto možnostech najdete v tématu Konfigurace kontejnerů.

Shrnutí

V tomto článku jste se naučili koncepty a pracovní postupy pro stahování, instalaci a spouštění kontejnerů rozpoznávání jazyka. Souhrnně:

  • Rozpoznávání jazyka poskytuje kontejnery Linuxu pro Docker
  • Image kontejnerů se stáhnou ze služby Microsoft Container Registry (MCR).
  • Image kontejnerů se spouštějí v Dockeru.
  • Při vytváření instance kontejneru je nutné zadat fakturační údaje.

Důležité

Tento kontejner nemá licenci ke spuštění bez připojení k Azure za účelem měření. Zákazníci musí kontejnerům umožnit, aby vždy komunikují s fakturačními údaji se službou měření. Kontejnery Azure AI neodesílají zákaznická data (např. text analyzovaný) do Microsoftu.

Další kroky