En esta página, se muestra cómo enviar una solicitud de reconocimiento de voz a Speech-to-Text mediante la interfaz de REST y el comando curl
.
Con Speech-to-Text, se puede realizar una integración sencilla de las tecnologías de reconocimiento de voz de Google en las aplicaciones de los desarrolladores. Puedes enviar datos de audio a la API de Speech-to-Text que, a su vez, muestra una transcripción de texto de ese archivo de audio. Para obtener más información sobre el servicio, consulta Conceptos básicos de Speech-to-Text.
Antes de comenzar
- Accede a tu Cuenta de Google.
Si todavía no tienes una cuenta, regístrate para obtener una nueva.
- Configura un proyecto de Cloud Console.
Haz clic para realizar alguna de las siguientes acciones:
- Crea o selecciona un proyecto.
- Habilita la API de Speech-to-Text para ese proyecto.
- Crea una cuenta de servicio.
- Descargar una clave privada como JSON
Puedes ver y administrar estos recursos en cualquier momento desde Cloud Console.
-
Configura la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS
en la ruta del archivo JSON que contiene la clave de tu cuenta de servicio. Esta variable solo se aplica a la sesión actual de shell. Por lo tanto, si abres una sesión nueva, deberás volver a configurar la variable. - Instala e inicializa el SDK de Cloud.
Realiza una solicitud de transcripción de audio
Ahora puedes usar Speech-to-Text para transcribir un archivo de audio a texto. Usa la siguiente muestra de código para enviar una solicitud de REST recognize
a la API de Speech-to-Text.
-
Crea un archivo de solicitud JSON con el siguiente texto y guárdalo como un archivo de texto sin formato
sync-request.json
:{ "config": { "encoding":"FLAC", "sampleRateHertz": 16000, "languageCode": "en-US", "enableWordTimeOffsets": false }, "audio": { "uri":"gs://cloud-samples-tests/speech/brooklyn.flac" } }
Este fragmento JSON indica que el archivo de audio tiene un formato de codificación FLAC y una tasa de muestreo de 16,000 Hz, y que el archivo de audio está almacenado en Google Cloud Storage en el URI determinado. El archivo de audio es de acceso público, por lo que no necesitas credenciales de autenticación para acceder al archivo.
-
Usa
curl
para hacer una solicitudspeech:recognize
y pasa el nombre de archivo de la solicitud JSON que configuraste en el paso 1:El comando
curl
de muestra usa el comandogcloud auth application-default print-access-token
para obtener un token de autenticación.curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \ https://speech.googleapis.com/v1/speech:recognize \ -d @sync-request.json
Ten en cuenta que, para pasar un nombre de archivo a
curl
, se usa la opción-d
(de “datos”) y se incluye un signo@
antes del nombre. Este archivo debe estar en el mismo directorio en el que ejecutaste el comandocurl
.Deberías ver una respuesta similar a la siguiente:
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
¡Felicitaciones! Enviaste tu primera solicitud a Speech-to-Text.
Si recibes un error o una respuesta vacía de Speech-to-Text, consulta los pasos de Solución de problemas y Mensajes de error.
¿Qué sigue?
- Practica transcribir archivos de audio cortos.
- Aprende a agrupar archivos de audio largos para reconocimiento de voz.
- Aprende a transcribir audio con transmisión continua como, por ejemplo, desde un micrófono.
- Comienza a usar Speech-to-Text en el idioma de tu preferencia mediante una biblioteca cliente de Speech-to-Text.
- Trabaja con las aplicaciones de muestra.
- Para mejorar el rendimiento y la exactitud, así como ver otras sugerencias, consulta la documentación de prácticas recomendadas.