Transcribir la voz a texto con la API
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
Antes de enviar una solicitud a la API de Speech-to-Text, debes completar las siguientes acciones. Consulta la página antes de comenzar para obtener más detalles.
- Habilita Speech-to-Text en un Google Cloud proyecto.
- Asegúrate de que la facturación esté habilitada para Speech-to-Text.
- Verifica que tengas los permisos necesarios para completar esta guía. Si creaste un proyecto nuevo para esta guía, ya tienes los permisos necesarios.
-
Instala Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI ejecutando el siguiente comando:
gcloud init
Si usas un proveedor de identidad externo (IdP), primero debes acceder a gcloud CLI con tu identidad federada.
- Crea un bucket de Google Cloud Storage nuevo para almacenar tus datos de audio (opcional).
Roles requeridos
Para obtener los permisos que necesitas para transcribir voz a texto, pídele a tu administrador que te otorgue el rol de IAM de Consumidor de Service Usage (roles/serviceusage.serviceUsageConsumer
) en tu proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
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 print-access-token
para obtener un token de autenticación.curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer "$(gcloud auth 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.
Limpia
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
- Usa la Google Cloud console para borrar tu proyecto si no lo necesitas.
¿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.