Nyelvazonosítási tárolók a Dockerrel

A Beszédnyelv-azonosító tároló észleli a hangfájlokban beszélt nyelvet. Valós idejű beszéd- vagy kötegelt hangrögzítéseket kaphat köztes eredményekkel. Ebből a cikkből megtudhatja, hogyan tölthet le, telepíthet és futtathat nyelvazonosítási tárolót.

Feljegyzés

A Speech language identification tároló nyilvános előzetes verzióban érhető el. Az előzetes verziójú tárolók még fejlesztés alatt állnak, és nem felelnek meg a Microsoft stabilitási és támogatási követelményeinek.

Az előfeltételekről, a tárolók futásának ellenőrzéséről, több tároló ugyanazon a gazdagépen való futtatásáról és a leválasztott tárolók futtatásáról további információt a Speech-tárolók telepítése és futtatása a Dockerrel című témakörben talál.

Tipp.

A legeredményesebb eredmények eléréséhez használja a Speech language identification tárolót a beszédről szövegre vagy egyéni beszédről szövegtárolókra.

Tárolólemezképek

A Speech language identification container image for all supported versions and locales is found on the Microsoft Container Registry (MCR) syndicate. Az adattárban azure-cognitive-services/speechservices/ található, és neve language-detection.

A screenshot of the search connectors and triggers dialog.

A teljes tárolórendszerkép neve: mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection. Egy adott verzió hozzáfűzése vagy hozzáfűzése :latest a legújabb verzió lekéréséhez.

Verzió Elérési út
Legutóbbi mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest
1.12.0 mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:1.12.0-amd64-preview

A címkék kivételével latestminden címke a következő formátumban van, és megkülönbözteti a kis- és nagybetűket:

<major>.<minor>.<patch>-<platform>-<prerelease>

A címkék JSON formátumban is elérhetők az Ön kényelme érdekében. A törzs tartalmazza a tároló elérési útját és a címkék listáját. A címkék nem verzió szerint lesznek rendezve, de "latest" mindig a lista végén jelennek meg, ahogyan az ebben a kódrészletben látható:

{
  "name": "azure-cognitive-services/speechservices/language-detection",
  "tags": [
    "1.1.0-amd64-preview",
    "1.11.0-amd64-preview",
    "1.12.0-amd64-preview",
    "1.3.0-amd64-preview",
    "1.5.0-amd64-preview",
    <--redacted for brevity-->
    "1.8.0-amd64-preview",
    "latest"
  ]
}

Tárolórendszerkép lekérése Docker-lekéréssel

Szüksége van az előfeltételekre, beleértve a szükséges hardvert is. Tekintse meg az egyes Speech-tárolókhoz javasolt erőforrások lefoglalását is.

A Docker lekéréses parancsával letölthet egy tárolólemezképet a Microsoft Container Registryből:

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

A tároló futtatása docker-futtatással

A tároló futtatásához használja a docker-futtatási parancsot.

Az alábbi táblázat a különböző docker run paramétereket és azok leírását jelöli:

Paraméter Leírás
{ENDPOINT_URI} A végpont szükséges a méréshez és a számlázáshoz. További információ: számlázási argumentumok.
{API_KEY} Az API-kulcs megadása kötelező. További információ: számlázási argumentumok.

A Speech nyelvazonosítási tároló futtatásakor konfigurálja a portot, a memóriát és a processzort a nyelvazonosítási tároló követelményeinek és javaslatainak megfelelően.

Íme egy példaparancs docker run helyőrző értékekkel. Meg kell adnia a ENDPOINT_URI következő értékeket:API_KEY

docker run --rm -it -p 5000:5003 --memory 1g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

A parancs a következőket hajtja végre:

  • Beszédnyelv-azonosító tárolót futtat a tárolórendszerképből.
  • 1 processzormagot és 1 GB memóriát foglal le.
  • Az 5000-s TCP-portot teszi elérhetővé, és egy pszeudo-TTY-t foglal le a tárolóhoz.
  • A tárolót a kilépés után automatikusan eltávolítja. A tárolólemezkép továbbra is elérhető a gazdaszámítógépen.

A Speech-tárolókkal kapcsolatos docker run további információkért lásd : Speech-tárolók telepítése és futtatása a Dockerrel.

Futtatás a speech to text tárolóval

Ha a beszéd-szöveg tárolóval szeretné futtatni a nyelvazonosítási tárolót, használhatja ezt a Docker-lemezképet. A két tároló elindítása után a docker run következő paranccsal hajthatja végre a következőt speech-to-text-with-languagedetection-client:

docker run --rm -v ${HOME}:/root -ti antsu/on-prem-client:latest ./speech-to-text-with-languagedetection-client ./audio/LanguageDetection_en-us.wav --host localhost --lport 5003 --sport 5000

Az egyidejű hívások számának növelése befolyásolhatja a megbízhatóságot és a késést. A nyelvazonosításhoz legfeljebb négy egyidejű hívást ajánlunk 1 processzorral és 1 GB memóriával. A 2 CPU-val és 2 GB memóriával rendelkező gazdagépek esetében legfeljebb hat egyidejű hívást ajánlunk.

A tároló használata

A Speech-tárolók websocket-alapú lekérdezésvégpont API-kat biztosítanak, amelyek a Speech SDK-n és a Speech CLI-n keresztül érhetők el. Alapértelmezés szerint a Speech SDK és a Speech CLI a nyilvános Speech szolgáltatást használja. A tároló használatához módosítania kell az inicializálási módszert.

Fontos

Ha tárolókkal használja a Speech szolgáltatást, mindenképpen használjon gazdagép-hitelesítést. Ha konfigurálja a kulcsot és a régiót, a kérések a nyilvános beszédszolgáltatáshoz kerülnek. Előfordulhat, hogy a Speech szolgáltatás eredményei nem a vártak. A leválasztott tárolókból érkező kérések sikertelenek lesznek.

Az Azure-felhő inicializálási konfigurációjának használata helyett:

var config = SpeechConfig.FromSubscription(...);

Használja ezt a konfigurációt a tároló gazdagépével:

var config = SpeechConfig.FromHost(
    new Uri("http://localhost:5000"));

Az Azure-felhő inicializálási konfigurációjának használata helyett:

auto speechConfig = SpeechConfig::FromSubscription(...);

Használja ezt a konfigurációt a tároló gazdagépével:

auto speechConfig = SpeechConfig::FromHost("http://localhost:5000");

Az Azure-felhő inicializálási konfigurációjának használata helyett:

speechConfig, err := speech.NewSpeechConfigFromSubscription(...)

Használja ezt a konfigurációt a tároló gazdagépével:

speechConfig, err := speech.NewSpeechConfigFromHost("http://localhost:5000")

Az Azure-felhő inicializálási konfigurációjának használata helyett:

SpeechConfig speechConfig = SpeechConfig.fromSubscription(...);

Használja ezt a konfigurációt a tároló gazdagépével:

SpeechConfig speechConfig = SpeechConfig.fromHost("http://localhost:5000");

Az Azure-felhő inicializálási konfigurációjának használata helyett:

const speechConfig = sdk.SpeechConfig.fromSubscription(...);

Használja ezt a konfigurációt a tároló gazdagépével:

const speechConfig = sdk.SpeechConfig.fromHost("http://localhost:5000");

Az Azure-felhő inicializálási konfigurációjának használata helyett:

SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:...];

Használja ezt a konfigurációt a tároló gazdagépével:

SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithHost:"http://localhost:5000"];

Az Azure-felhő inicializálási konfigurációjának használata helyett:

let speechConfig = SPXSpeechConfiguration(subscription: "", region: "");

Használja ezt a konfigurációt a tároló gazdagépével:

let speechConfig = SPXSpeechConfiguration(host: "http://localhost:5000");

Az Azure-felhő inicializálási konfigurációjának használata helyett:

speech_config = speechsdk.SpeechConfig(
    subscription=speech_key, region=service_region)

Használja ezt a konfigurációt a tárolóvégponttal:

speech_config = speechsdk.SpeechConfig(
    host="http://localhost:5000")

Ha a Speech CLI-t egy tárolóban használja, adja meg a --host http://localhost:5000/ lehetőséget. Azt is meg kell adnia --key none , hogy a parancssori felület ne használjon beszédkulcsot a hitelesítéshez. A Speech CLI konfigurálásáról további információt az Azure AI Speech CLI használatának első lépései című témakörben talál.

Próbálja ki a nyelvazonosítást a kulcs és a régió helyett gazdahitelesítéssel. Amikor nyelvazonosítót futtat egy tárolóban, használja az SourceLanguageRecognizer objektumot ahelyett SpeechRecognizer vagy TranslationRecognizer.

Következő lépések