En esta página, se analizan los errores de Cloud Speech-to-Text cuyas resoluciones requieren más pasos de los que se pueden describir en un mensaje de error.
“Las credenciales predeterminadas de la aplicación no están disponibles”
Si recibes este mensaje, significa lo siguiente:
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.
Cloud STT usa credenciales predeterminadas de la aplicación (ADC) para la autenticación.
Las credenciales para ADC deben estar disponibles en el contexto en que llamas a la API de Cloud Speech-to-Text. Por ejemplo, si configuras ADC en tu terminal, pero ejecutas el código en el depurador del IDE, el contexto de ejecución del código podría no tener acceso a las credenciales. En ese caso, tu solicitud a Cloud STT podría fallar.
Para obtener más información sobre cómo proporcionar credenciales a ADC, consulta Configura credenciales predeterminadas de la aplicación.
“El archivo… (indicado por la variable de entorno GOOGLE_APPLICATION_CREDENTIALS) no existe”
Si recibes este mensaje, sigue los pasos que se indican a continuación:
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"
}
}
Verifica que tengas un archivo JSON válido de claves de la cuenta de servicio en la ubicación
almacenada en la variable de entorno GOOGLE_APPLICATION_CREDENTIALS y que esa
variable apunte al lugar correcto.
Para diagnosticar este error, abre el archivo de claves de la cuenta de servicio en la carpeta desde la que intentas llamar a la API de Cloud Speech-to-Text.
cat $GOOGLE_APPLICATION_CREDENTIALS
Prohibido: 403 POST; la API no se usó o está inhabilitada
Si recibes este mensaje, sigue los pasos que se indican a continuación:
Forbidden: 403 POST Cloud Speech-to-Text API has not been used in project # before or it is disabled. Enable it by visiting [url] then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.
- Visita el vínculo especificado en el mensaje de error y habilita la API de Cloud STT. Espera varios minutos y vuelve a intentarlo.
- Verifica que tengas un archivo JSON válido de claves de la cuenta de servicio
almacenado en la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS. Para diagnosticar este error, intenta abrir el archivo de claves de la cuenta de servicio en la carpeta desde la que intentas llamar a la API de Cloud Speech-to-Text.
cat $GOOGLE_APPLICATION_CREDENTIALS
"Se debe usar audio de un solo canal (mono)"
Si recibes este mensaje, significa lo siguiente:
Must use single channel (mono) audio, but WAV header indicates 2 channels.
El archivo de audio contiene más de un canal. Para transcribir este archivo de audio, debes declarar que el audio tiene varios canales.
“Se deben usar muestras de 16 bits para LINEAR_PCM”
Si recibes este mensaje, significa lo siguiente:
INVALID_ARGUMENT: Must use 16 bit samples for LINEAR_PCM, but the WAV header indicates 8 bits per sample
Es posible que debas cambiar la codificación que especificaste en la
RecognitionConfig.
Para obtener más información sobre las codificaciones admitidas
en Cloud STT, consulta la guía de codificaciones.
“La entrada de sincronización es demasiado larga”
Si recibes este mensaje, significa lo siguiente:
Sync input too long. For audio longer than 1 min use LongRunningRecognize with a 'uri' parameter.
El método de reconocimiento síncrono para Cloud STT solo admite la transcripción de datos de audio de hasta 1 minuto de duración. Para datos de audio más largos, usa el reconocimiento asíncrono en su lugar.
“Configuración de reconocimiento no válida: codificación incorrecta”
Si recibes este mensaje, significa lo siguiente:
Invalid recognition 'config': bad encoding.
Es posible que tus datos de audio no estén codificados correctamente o que estén
codificados con un códec diferente al que
declaraste en la RecognitionConfig. Comprueba la entrada de audio y asegúrate
de haber configurado el campo encoding correctamente.
“El tamaño de la carga útil de la solicitud supera el límite”
Si recibes alguno de estos mensajes, signfica lo siguiente:
Request payload size exceeds the limit.
Inline audio exceeds duration limit. Please use a GCS URI.
Superaste el límite de tamaño de 10 MB para una sola solicitud enviada a la API con un archivo local. Puedes mover el archivo de audio a un bucket de Cloud Storage para evitar el límite de 10 MB. Consulta la página de cuotas y límites para obtener más información.
“Se superó la cuota”
Si recibes este mensaje, significa lo siguiente:
RESOURCE_EXHAUSTED: Quota exceeded.
Alcanzaste el límite de tu cuota diaria o por minuto. Revisa las cuotas y límites para usar Cloud STT.
Puedes solicitar un aumento de las cuotas desde la consola deGoogle Cloud .