Mensagens de erro

Aprenda a resolver alguns erros relacionados à conversão de voz em texto. Neste tópico, falamos sobre erros com resoluções que exigem etapas além do que pode ser facilmente descrito em uma mensagem de erro.

"O Application Default Credentials não está disponível"

Se você recebeu esta mensagem:

The Application Default Credentials are not available. They are
available if running in Google Compute Engine. Otherwise, the
environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined
pointing to a file defining the credentials.
See https://developers.google.com/accounts/docs/application-default-credentials
for more information.

A Speech-to-Text usa AS Application Default Credentials (ADC) para autenticação.

As credenciais das ADC precisam estar disponíveis no contexto em que você chama a API Speech-to-Text. Por exemplo, se você configurar as ADC no terminal, mas executar o código no depurador do ambiente de desenvolvimento integrado, o contexto de execução do seu código poderá não ter acesso às credenciais. Nesse caso, sua solicitação para a Speech-to-Text pode apresentar falha.

Para saber como fornecer credenciais às ADC, consulte Configurar as Application Default Credentials.

"O arquivo ... (apontado pela variável de ambiente GOOGLE_APPLICATION_CREDENTIALS) não existe!"

Se você recebeu esta mensagem:

ERROR: (gcloud.auth.application-default.print-access-token) File /path/to/key.json
(pointed by GOOGLE_APPLICATION_CREDENTIALS environment variable) does not exist!
{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "status": "PERMISSION_DENIED"
  }
}

Verifique se você tem um arquivo JSON de chave de conta de serviço válido no local armazenado na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS e se a variável aponta para o local correto.

Para diagnosticar esse erro, tente abrir o arquivo de chave da conta de serviço na pasta que você quer chamar a API Speech-to-Text.

cat $GOOGLE_APPLICATION_CREDENTIALS

Proibido: a API 403 POST não foi usada ou está desativada

Se você receber a mensagem:

Forbidden: 403 POST Speech-to-Text API has not been used in
project # before or it is disabled.
Enable it by visitng [url] then retry.
If you enabled this API recently, wait a few minutes for the action to
propagate to our systems and retry.

  1. Acesse o link especificado na mensagem de erro e ative a API Speech-to-Text. Aguarde alguns minutos e tente novamente.
  2. Verifique se você tem um arquivo JSON de chave de conta de serviço válido armazenado na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS. Para diagnosticar esse erro, tente abrir o arquivo de chave da conta de serviço na pasta que você quer chamar a API Speech-to-Text.
    cat $GOOGLE_APPLICATION_CREDENTIALS
    

"Você precisa usar um canal único (mono) de áudio"

Se você recebeu esta mensagem:

Must use single channel (mono) audio, but WAV header indicates 2
channels.

Seu arquivo de áudio contém mais de um canal. Para transcrever esse arquivo de áudio, é necessário declarar que seu áudio tem vários canais.

"É necessário usar amostras de 16 bits para LINEAR_PCM"

Se você recebeu esta mensagem:

INVALID_ARGUMENT: Must use 16 bit samples for LINEAR_PCM, but the WAV
header indicates 8 bits per sample

Talvez seja necessário alterar a codificação especificada em RecognitionConfig. Para ler sobre as codificações compatíveis na Speech-to-Text, consulte o guia codificações.

"Entrada de sincronização muito longa"

Se você recebeu esta mensagem:

Sync input too long. For audio longer than 1 min use
LongRunningRecognize with a 'uri' parameter.

O método de reconhecimento síncrono da conversão de voz em texto é compatível apenas com uma transcrição de dados de áudio de até 1 minuto. Para dados de áudio mais longos, use o reconhecimento assíncrono.

"Reconhecimento inválido 'config': codificação incorreta"

Se você recebeu esta mensagem:

Invalid recognition 'config': bad encoding.

Seus dados de áudio podem não ter sido codificados corretamente ou foram codificados com um codec diferente do que você informou na RecognitionConfig. Verifique a entrada de áudio e verifique se você definiu o campo encoding corretamente.

"O payload de solicitação excede o limite."

Se você receber uma destas mensagens:

Request payload size exceeds the limit.
Inline audio exceeds duration limit. Please use a GCS URI.

Você excedeu o limite de tamanho de 10 MB para uma única solicitação enviada à API usando um arquivo local. Mova seu arquivo de áudio para um bucket do Google Cloud Storage (GCS). Assim, você evita o limite de 10 MB. Consulte a página Cotas e limites para mais informações.

"Cota excedida"

Se você recebeu esta mensagem:

RESOURCE_EXHAUSTED: Quota exceeded.

Você atingiu o limite de sua cota diária ou por minuto. Revise as cotas e limites para o uso da conversão de voz em texto.

Solicite um aumento das suas cotas pelo Console do Google Cloud.