Contêineres conversão de fala em texto com o Docker

O contêiner de conversão de fala em texto transcreve gravações de voz em tempo real ou de áudio em lote com resultados intermediários. Neste artigo, você aprende como baixar, instalar e executar um contêiner de Conversão de fala em texto.

Para obter mais informações sobre os pré-requisitos, validar se um contêiner está sendo executado, executar vários contêineres no mesmo host e executar contêineres desconectados, consulte Instalar e executar contêineres de Fala com o Docker.

Imagens de contêiner

A imagem do contêiner de conversão de fala em texto para todas as versões e localidades suportadas pode ser encontrada na agregação Registro de Contêineres da Microsoft (MCR). Ela reside no repositório azure-cognitive-services/speechservices/ e é chamada speech-to-text.

A screenshot of the search connectors and triggers dialog.

O nome da imagem de contêiner totalmente qualificado é mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text. Acrescente uma versão específica ou acrescente :latest para obter a versão mais recente.

Versão Caminho
Mais recente mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text:latest

A marca latest efetua pull da imagem mais recente para a localidade en-US.
4.6.0 mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text:4.6.0-amd64-mr-in

Todas as marcas, exceto latest, estão disponíveis no seguinte formato e diferenciam maiúsculas de minúsculas:

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

As marcas também estão disponíveis no formato JSON para sua conveniência. O corpo inclui o caminho do contêiner e a lista de marcas. As marcas não são classificadas por versão, mas "latest" é sempre incluída no final da lista, conforme mostrado neste trecho:

{
  "name": "azure-cognitive-services/speechservices/speech-to-text",
  "tags": [
    "2.10.0-amd64-ar-ae",
    "2.10.0-amd64-ar-bh",
    "2.10.0-amd64-ar-eg",
    "2.10.0-amd64-ar-iq",
    "2.10.0-amd64-ar-jo",
    <--redacted for brevity-->
    "latest"
  ]
}

Obtenha a imagem de contêiner com o docker pull

Você precisa dos pré-requisitos, incluindo o hardware necessário. Veja também a alocação recomendada de recursos para cada contêiner de Fala.

Use o comando docker pull para baixar uma imagem de contêiner do Microsoft Container Registry:

docker pull mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text:latest

Importante

A marca latest efetua pull da imagem mais recente para a localidade en-US. Para obter versões e localidades adicionais, confira imagens do contêiner de conversão de fala em texto.

Executar o contêiner com a execução do Docker

Use o comando docker run para executar o contêiner.

A seguinte tabela mostrará vários parâmetros de docker run e as descrições correspondentes:

Parâmetro Descrição
{ENDPOINT_URI} O ponto de extremidade é necessário para obter a medição e a cobrança. Para obter mais informações, consulte os argumentos de cobrança.
{API_KEY} A chave de API é obrigatória. Para obter mais informações, consulte os argumentos de cobrança.

Ao executar o contêiner de conversão de fala em texto, configure a porta, a memória e a CPU de acordo com os requisitos e recomendações do contêiner de conversão de fala em texto.

Aqui está um exemplo de comando docker run com valores de espaço reservado. Você deve especificar os valores para ENDPOINT_URI e API_KEY:

docker run --rm -it -p 5000:5000 --memory 8g --cpus 4 \
mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Esse comando:

  • Executar um contêiner speech-to-text a partir da imagem de contêiner.
  • Aloca quatro núcleos de CPU e 8 GB de memória.
  • Expõe a porta TCP 5000 e aloca um pseudo-TTY para o contêiner.
  • Remove automaticamente o contêiner depois que ele sai. A imagem de contêiner ainda fica disponível no computador host.

Para obter mais informações sobre docker run com contêineres de Fala, confira Instalar e executar contêineres de Fala com o Docker.

Usar o contêiner

Os contêineres de Fala fornecem APIs de ponto de extremidade de consulta baseadas em websocket que são acessadas através do SDK de Fala e da CLI de Fala. Por padrão, o SDK de Fala e a CLI de Fala usam o serviço público de Fala. Para usar o contêiner, você precisa alterar o método de inicialização.

Importante

Ao usar o serviço de Fala com contêineres, certifique-se de usar a autenticação de host. Se você configurar a chave e a região, as solicitações irão para o serviço público de Fala. Os resultados do serviço de Fala podem não ser os que você espera. As solicitações de contêineres desconectados falharão.

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o host do contêiner:

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

Em vez de usar essa configuração de inicialização da Nuvem do Azure:

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

Use essa configuração com o ponto de extremidade do contêiner:

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

Ao usar a CLI de Fala em um contêiner, inclua a opção--host ws://localhost:5000/. Você também deve especificar --key none para garantir que a CLI não tente usar uma chave de Fala para autenticação. Para obter informações sobre como configurar a CLI de Fala, consulte Introdução à CLI de Fala de IA do Azure.

Experimente o início rápido de conversão de fala em texto usando a autenticação do host em vez da chave e região.

Próximas etapas