Språkidentifieringscontainrar med Docker
Containern för talspråksidentifiering identifierar språket som talas i ljudfiler. Du kan få tal- eller batchljudinspelningar i realtid med mellanliggande resultat. I den här artikeln får du lära dig hur du laddar ned, installerar och kör en container för språkidentifiering.
Kommentar
Containern för talspråksidentifiering är tillgänglig i offentlig förhandsversion. Containrar i förhandsversionen är fortfarande under utveckling och uppfyller inte Microsofts stabilitets- och supportkrav.
Mer information om förutsättningar, verifiering av att en container körs, körning av flera containrar på samma värd och körning av frånkopplade containrar finns i Installera och köra Speech-containrar med Docker.
Dricks
För att få de mest användbara resultaten använder du containern för talspråksidentifiering med tal till text eller anpassade tal till textcontainrar .
Containeravbildningar
Containeravbildningen för talspråksidentifiering för alla versioner och nationella inställningar som stöds finns i MCR-syndikatet (Microsoft Container Registry). Den finns på lagringsplatsen azure-cognitive-services/speechservices/
och heter language-detection
.
Det fullständigt kvalificerade containeravbildningsnamnet är , mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection
. Lägg antingen till en viss version eller lägg till :latest
för att hämta den senaste versionen.
Version | Sökväg |
---|---|
Senast | mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest |
1.16.0 | mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:1.16.0-amd64-preview |
Alla taggar, förutom latest
, är i följande format och är skiftlägeskänsliga:
<major>.<minor>.<patch>-<platform>-<prerelease>
Taggarna är också tillgängliga i JSON-format för din bekvämlighet. Brödtexten innehåller containersökvägen och listan med taggar. Taggarna sorteras inte efter version, men "latest"
ingår alltid i slutet av listan enligt följande kodfragment:
{
"name": "azure-cognitive-services/speechservices/language-detection",
"tags": [
"1.1.0-amd64-preview",
"1.11.0-amd64-preview",
"1.12.0-amd64-preview",
"1.13.0-amd64-preview",
"1.14.0-amd64-preview",
"1.15.0-amd64-preview",
"1.16.0-amd64-preview",
"1.3.0-amd64-preview",
"1.5.0-amd64-preview",
"1.6.1-amd64-preview",
"1.7.0-amd64-preview",
"1.8.0-amd64-preview",
"latest"
]
}
Hämta containeravbildningen med docker pull
Du behöver kraven, inklusive nödvändig maskinvara. Se även den rekommenderade allokeringen av resurser för varje Speech-container.
Använd docker pull-kommandot för att ladda ned en containeravbildning från Microsoft Container Registry:
docker pull mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest
Kör containern med docker-körning
Använd kommandot docker run för att köra containern.
Följande tabell representerar de olika docker run
parametrarna och deras motsvarande beskrivningar:
Parameter | Description |
---|---|
{ENDPOINT_URI} |
Slutpunkten krävs för mätning och fakturering. Mer information finns i faktureringsargument. |
{API_KEY} |
API-nyckeln krävs. Mer information finns i faktureringsargument. |
När du kör containern för talspråksidentifiering konfigurerar du porten, minnet och processorn enligt kraven och rekommendationerna för språkidentifieringscontainern.
Här är ett exempelkommando docker run
med platshållarvärden. Du måste ange ENDPOINT_URI
värdena och 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}
Det här kommandot:
- Kör en container för talspråksidentifiering från containeravbildningen.
- Allokerar 1 CPU-kärna och 1 GB minne.
- Exponerar TCP-port 5000 och allokerar en pseudo-TTY för containern.
- Tar automatiskt bort containern när den har avslutats. Containeravbildningen är fortfarande tillgänglig på värddatorn.
Mer information om docker run
med Speech-containrar finns i Installera och köra Speech-containrar med Docker.
Kör med containern speech to text
Om du vill köra containern för språkidentifiering med containern speech to text kan du använda den här docker-avbildningen. När båda containrarna har startats använder du det här docker run
kommandot för att köra 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
Att öka antalet samtidiga anrop kan påverka tillförlitligheten och svarstiden. För språkidentifiering rekommenderar vi högst fyra samtidiga anrop med 1 CPU med 1 GB minne. För värdar med 2 processorer och 2 GB minne rekommenderar vi högst sex samtidiga anrop.
Använda containern
Talcontainrar tillhandahåller websocketbaserade frågeslutpunkts-API:er som nås via Speech SDK och Speech CLI. Som standard använder Speech SDK och Speech CLI den offentliga Speech-tjänsten. Om du vill använda containern måste du ändra initieringsmetoden.
Viktigt!
När du använder Speech-tjänsten med containrar måste du använda värdautentisering. Om du konfigurerar nyckeln och regionen går begäranden till den offentliga Speech-tjänsten. Resultat från Speech-tjänsten kanske inte är vad du förväntar dig. Begäranden från frånkopplade containrar misslyckas.
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
var config = SpeechConfig.FromSubscription(...);
Använd den här konfigurationen med containervärden:
var config = SpeechConfig.FromHost(
new Uri("http://localhost:5000"));
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
auto speechConfig = SpeechConfig::FromSubscription(...);
Använd den här konfigurationen med containervärden:
auto speechConfig = SpeechConfig::FromHost("http://localhost:5000");
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
speechConfig, err := speech.NewSpeechConfigFromSubscription(...)
Använd den här konfigurationen med containervärden:
speechConfig, err := speech.NewSpeechConfigFromHost("http://localhost:5000")
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
SpeechConfig speechConfig = SpeechConfig.fromSubscription(...);
Använd den här konfigurationen med containervärden:
SpeechConfig speechConfig = SpeechConfig.fromHost("http://localhost:5000");
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
const speechConfig = sdk.SpeechConfig.fromSubscription(...);
Använd den här konfigurationen med containervärden:
const speechConfig = sdk.SpeechConfig.fromHost("http://localhost:5000");
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:...];
Använd den här konfigurationen med containervärden:
SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithHost:"http://localhost:5000"];
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
let speechConfig = SPXSpeechConfiguration(subscription: "", region: "");
Använd den här konfigurationen med containervärden:
let speechConfig = SPXSpeechConfiguration(host: "http://localhost:5000");
I stället för att använda den här initieringskonfigurationen för Azure-molnet:
speech_config = speechsdk.SpeechConfig(
subscription=speech_key, region=service_region)
Använd den här konfigurationen med containerslutpunkten:
speech_config = speechsdk.SpeechConfig(
host="http://localhost:5000")
När du använder Speech CLI i en container inkluderar du alternativet --host http://localhost:5000/
. Du måste också ange --key none
för att säkerställa att CLI inte försöker använda en Talnyckel för autentisering. Information om hur du konfigurerar Speech CLI finns i Kom igång med Azure AI Speech CLI.
Prova språkidentifiering med värdautentisering i stället för nyckel och region. När du kör språk-ID i en container använder du SourceLanguageRecognizer
objektet i stället för SpeechRecognizer
eller TranslationRecognizer
.
Nästa steg
- Se översikten över Speech-containrar
- Granska konfigurera containrar för konfigurationsinställningar
- Använda fler Azure AI-containrar