Instalace a spouštění kontejnerů služby Speech pomocí Dockeru
Pomocí kontejnerů můžete použít podmnožinu funkcí služby Speech ve vlastním prostředí. V tomto článku se dozvíte, jak stáhnout, nainstalovat a spustit kontejner služby Speech.
Poznámka:
Ceny odpojených kontejnerů a úrovně závazku se liší od standardních kontejnerů. Další informace najdete v tématu Ceny služby Speech.
Požadavky
Před použitím kontejnerů služby Speech musíte splnit následující požadavky. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet. Potřebujete:
- 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 služby Speech s cenovou úrovní Free (F0) nebo Standard (S).
Argumenty fakturace
Kontejnery služby Speech nejsou licencované ke spouštění bez připojení k Azure pro měření. Kontejner musíte nakonfigurovat tak, aby vždy komunikovali fakturační údaje se službou měření.
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.
Dotazy na kontejner se účtují na cenové úrovni prostředku Azure, který se používá pro tento ApiKey
parametr.
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žby Speech, který se používá ke sledování fakturačních údajů. Hodnota ApiKey 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žby Speech. Přejděte na stránku Klíče a vyberte ikonu Kopírovat do schránky. |
Billing |
Koncový bod prostředku služby Speech, který se používá ke sledování fakturačních údajů. Koncový bod je k dispozici na stránce Přehled webu Azure Portal odpovídajícího prostředku služby Speech. 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. |
Eula |
Označuje, že jste přijali licenci pro kontejner. Hodnota této možnosti musí být nastavena tak, aby přijímala. |
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íč.
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 kontejnerům Azure AI v dokumentaci ke službám Azure AI.
Další informace o těchto možnostech najdete v tématu Konfigurace kontejnerů.
Požadavky na kontejnery a doporučení
Následující tabulka popisuje minimální a doporučené přidělení prostředků pro každý kontejner služby Speech:
Kontejner | Minimum | Doporučeno | Speech Model |
---|---|---|---|
Převod řeči na text | 4 jádra, 4 GB paměti | 8 jader, 8 GB paměti | +4 až 8 GB paměti |
Vlastní řeč na text | 4 jádra, 4 GB paměti | 8 jader, 8 GB paměti | +4 až 8 GB paměti |
Identifikace jazyka řeči | 1 jádro, 1 GB paměti | 1 jádro, 1 GB paměti | Není k dispozici |
Neurální převod textu na řeč | 6 jader, 12 GB paměti | 8 jader, 16 GB paměti | Není k dispozici |
Každé jádro musí mít alespoň 2,6 gigahertz (GHz) nebo rychlejší.
Jádro a paměť odpovídají hodnotám --cpus
a --memory
nastavením, které se používají jako součást docker run
příkazu.
Poznámka:
Minimální a doporučené přidělení jsou založené na limitech Dockeru, nikoli na prostředcích hostitelského počítače. Například převod řeči na textové kontejnery paměti mapuje části velkého jazykového modelu. Doporučujeme, aby se celý soubor vešel do paměti. Pokud chcete načíst řečové modely (viz předchozí tabulka), musíte přidat další 4 až 8 GB. První spuštění některého kontejneru může také trvat déle, protože modely se stránkují do paměti.
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:
- Azure Kubernetes Service.
- Azure Container Instances.
- Cluster Kubernetes nasazený do služby Azure Stack. Další informace najdete v tématu Nasazení Kubernetes do služby Azure Stack.
Poznámka:
Kontejnery podporují komprimovaný zvukový vstup do sady Speech SDK pomocí GStreameru. Pokud chcete nainstalovat GStreamer do kontejneru, postupujte podle pokynů pro Linux pro GStreamer v použití komprimovaného zvukového vstupu kodeku se sadou Speech SDK.
Podpora rozšíření Advanced Vector
Hostitel je počítač, na kterém běží kontejner Dockeru. Hostitel musí podporovat rozšířená vektorová rozšíření (AVX2). Podporu AVX2 můžete zkontrolovat na hostitelích s Linuxem pomocí následujícího příkazu:
grep -q avx2 /proc/cpuinfo && echo AVX2 supported || echo No AVX2 support detected
Upozorňující
K podpoře AVX2 se vyžaduje hostitelský počítač. Kontejner nebude správně fungovat bez podpory AVX2.
Spuštění kontejneru
Ke spuštění kontejneru použijte příkaz docker run. Po spuštění se kontejner bude dál spouštět, dokud kontejner nezastavíte.
Poznamenejte si následující osvědčené postupy s příkazem docker run
:
- Znak pokračování řádku: Příkazy Dockeru v následujících částech používají zpětné lomítko,
\
jako znak pokračování řádku. Nahraďte nebo odeberte tento znak na základě požadavků vašeho hostitelského operačního systému. - Pořadí argumentů: Neměňte pořadí argumentů, pokud neznáte kontejnery Dockeru.
K výpisu stažených imagí kontejnerů můžete použít příkaz docker images . Následující příkaz 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}}"
Tady je příklad výsledku:
IMAGE ID REPOSITORY TAG
<image-id> <repository-path/name> <tag-name>
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:5000
uká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.
Zastavení kontejneru
Pokud chcete kontejner vypnout, vyberte v prostředí příkazového řádku, ve kterém je kontejner spuštěný, ctrl+C.
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 Azure AI můžete mít spuštěný společně na hostiteli. Můžete mít také několik kontejnerů stejného kontejneru Azure AI spuštěných.
Adresy URL hostitele
Poznámka:
Pokud používáte více kontejnerů, použijte jedinečné číslo portu.
Protokol | Adresa URL hostitele | Kontejnery |
---|---|---|
WS | ws://localhost:5000 |
Převod řeči na text Vlastní řeč na text |
HTTP | http://localhost:5000 |
Neurální text na řeč Identifikace jazyka řeči |
Další informace o používání protokolů WSS a HTTPS najdete v tématu Zabezpečení kontejnerů v dokumentaci ke službám Azure AI.
Řešení problému
Při spuštění nebo spuštění kontejneru může docházet k problémům. Použijte výstupní připojení a povolte protokolování. To umožňuje kontejneru generovat soubory protokolu, které jsou užitečné při řešení problémů.
Tip
Další informace a pokyny k řešení potíží najdete v nejčastějších dotazech k kontejnerům Azure AI v dokumentaci ke službám Azure AI.
Nastavení protokolování
Kontejnery služby Speech mají podporu protokolování ASP.NET Core. Tady je příklad neural-text-to-speech container
spuštění s výchozím protokolováním do konzoly:
docker run --rm -it -p 5000:5000 --memory 12g --cpus 6 \
mcr.microsoft.com/azure-cognitive-services/speechservices/neural-text-to-speech \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY} \
Logging:Console:LogLevel:Default=Information
Další informace o protokolování najdete v tématu Konfigurace kontejnerů služby Speech a záznamů o využití v dokumentaci ke službám Azure AI.
Kontejner diagnostiky Microsoftu
Pokud máte potíže se spuštěním kontejneru Azure AI, můžete zkusit použít diagnostický kontejner Microsoftu. Pomocí tohoto kontejneru můžete diagnostikovat běžné chyby ve vašem prostředí nasazení, které by mohly zabránit tomu, aby kontejnery Azure AI fungovaly podle očekávání.
Kontejner získáte pomocí následujícího docker pull
příkazu:
docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic
Pak kontejner spusťte. Nahraďte {ENDPOINT_URI}
koncovým bodem a nahraďte {API_KEY}
klíčem k vašemu prostředku:
docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Testy kontejnerů pro síťové připojení ke koncovému bodu fakturace.
Spuštění odpojených kontejnerů
Pokud chcete spustit odpojené kontejnery (nepřipojené k internetu), musíte odeslat tento formulář žádosti a počkat na schválení. Další informace o použití a zakoupení plánu závazku k používání kontejnerů v odpojených prostředích najdete v tématu Použití kontejnerů v odpojených prostředích v dokumentaci ke službám Azure AI.
Další kroky
- Zkontrolujte konfiguraci kontejnerů pro nastavení konfigurace.
- Naučte se používat kontejnery služby Speech s Kubernetes a Helmem.
- Nasazení a spouštění kontejnerů ve službě Azure Container Instance
- Použijte více kontejnerů Azure AI.