Crear experiencias conversacionales naturales requiere una síntesis del habla que siga el ritmo de las interacciones en tiempo real. Hoy, nos complace anunciar la nueva API de transmisión bidireccional para Amazon Polly, que permite la síntesis optimizada de texto a voz (TTS) en tiempo real, donde puede comenzar a enviar texto y recibir audio simultáneamente.
Esta nueva API está diseñada para aplicaciones de IA conversacionales que generan texto o audio de forma incremental, como respuestas de modelos de lenguaje grandes (LLM), donde los usuarios deben comenzar a sintetizar audio antes de que el texto completo esté disponible. Amazon Polly ya admite la transmisión de audio sintetizado a los usuarios. La nueva API va más allá y se centra en la comunicación bidireccional a través de HTTP/2, lo que permite una velocidad mejorada, una latencia más baja y un uso optimizado.
El desafío de la conversión de texto a voz tradicional
Las API tradicionales de conversión de texto a voz siguen un patrón de solicitud-respuesta. Esto requería que usted recopilara el texto completo antes de realizar una solicitud de síntesis. Amazon Polly transmite audio de forma incremental después de realizar una solicitud, pero el cuello de botella está en el lado de entrada: no se puede comenzar a enviar texto hasta que esté completamente disponible. En aplicaciones conversacionales impulsadas por LLM, donde el texto se genera token por token, esto significa esperar la respuesta completa antes de que comience la síntesis.
Considere un asistente virtual desarrollado por un LLM. El modelo genera tokens de forma incremental durante varios segundos. Con TTS tradicional, los usuarios deben esperar:
El LLM para terminar de generar la respuesta completa El servicio TTS para sintetizar el texto completo El audio para descargar antes de que comience la reproducción
La nueva API de transmisión bidireccional de Amazon Polly está diseñada para abordar estos cuellos de botella.
Novedades: Streaming bidireccional
La API StartSpeechSynthesisStream introduce un enfoque fundamentalmente diferente:
Envíe texto de forma incremental: transmita texto a Amazon Polly a medida que esté disponible; no es necesario esperar oraciones o párrafos completos. Reciba audio inmediatamente: recupere bytes de audio sintetizados en tiempo real a medida que se generan. Controle el tiempo de síntesis: utilice la configuración de descarga para activar la síntesis inmediata del texto almacenado en el búfer. Verdadera comunicación dúplex: envíe y reciba simultáneamente a través de una única conexión.
Componentes clave
Componente Dirección del evento Dirección Propósito TextEvent Cliente entrante → Amazon Polly Enviar texto a sintetizar CloseStreamEvent Cliente entrante → Amazon Polly Señal de fin de entrada de texto AudioEvent Saliente Amazon Polly → Cliente Recibir fragmentos de audio sintetizados StreamClosedEvent Saliente Amazon Polly → Cliente Confirmación de finalización de la transmisión
Comparación con los métodos tradicionales.
Implementaciones tradicionales de separación de archivos
Anteriormente, lograr TTS de baja latencia requería implementaciones a nivel de aplicación:
Este enfoque requirió:
Lógica de separación de texto del lado del servidor Múltiples llamadas paralelas a la API de Amazon Polly Reensamblaje de audio complejo
Después: Streaming bidireccional nativo
Beneficios:
No se requiere lógica de separación Conexión única persistente Transmisión nativa en ambas direcciones Complejidad de infraestructura reducida Menor latencia
Puntos de referencia de rendimiento
Para medir el impacto en el mundo real, comparamos tanto la API SynthesizeSpeech tradicional como la nueva API bidireccional StartSpeechSynthesisStream con la misma entrada: 7045 caracteres de prosa (970 palabras), usando la voz de Matthew con el motor generativo, salida MP3 a 24 kHz en us-west-2.
Cómo medimos: Ambas pruebas simulan un LLM que genera tokens a ~30 ms por palabra. La prueba API tradicional almacena palabras en buffer hasta que se alcanza el límite de una oración, luego envía la oración completa como una solicitud SynthesizeSpeech y espera la respuesta de audio completa antes de continuar. Estas pruebas reflejan cómo funcionan las integraciones TTS tradicionales, porque debes tener la oración completa antes de solicitar la síntesis. La prueba API de transmisión bidireccional envía cada palabra a la transmisión a medida que llega, lo que permite a Amazon Polly comenzar la síntesis antes de que el texto completo esté disponible. Ambas pruebas utilizan la misma configuración de texto, voz y salida.
Métrica Tradicional SynthesizeSpeech Mejora de la transmisión bidireccional Tiempo total de procesamiento 115 226 ms (~115 s) 70 071 ms (~70 s) Llamadas API 39 % más rápidas 27 1 27 veces menos oraciones enviadas 27 (secuencial) 27 (transmitidas a medida que llegan las palabras) — Total de bytes de audio 2 354 292 2 324 636 —
La ventaja clave es arquitectónica: la API bidireccional permite enviar texto de entrada y recibir audio sintetizado simultáneamente a través de una única conexión. En lugar de esperar a que se acumule cada oración antes de solicitar la síntesis, el texto se transmite a Amazon Polly palabra por palabra a medida que el LLM lo produce. Para la IA conversacional, esto significa que Amazon Polly recibe y procesa texto de forma incremental a lo largo de la generación, en lugar de recibirlo todo de una vez una vez finalizado el LLM. El resultado es menos tiempo de espera para la síntesis una vez completada la generación: la latencia general de extremo a extremo desde el aviso hasta el audio entregado por completo se reduce significativamente.
Implementación técnica
Empezando
Puede utilizar la API de transmisión bidireccional con AWS SDK para Java-2x, JavaScript v3, .NET v4, C++, Go v2, Kotlin, PHP v3, Ruby v3, Rust y Swift. Actualmente no se admite la compatibilidad con CLI (AWS Command Line Interface (AWS CLI) v1 y v2, PowerShell v4 y v5), Python y .NET v3. He aquí un ejemplo:
Envío de eventos de texto
El texto se envía a Amazon Polly mediante un editor de flujos reactivos. Cada TextEvent contiene texto:
Manejo de eventos de audio
El audio llega a través de un controlador de respuesta con un patrón de visitante:
Ejemplo completo: transmisión de texto desde un LLM
A continuación se muestra un ejemplo práctico que muestra cómo integrar la transmisión bidireccional con la generación incremental de texto:
Patrón de integración con streaming LLM
A continuación se muestra cómo integrar patrones con la transmisión de LLM:
Beneficios comerciales
Experiencia de usuario mejorada
La latencia impacta directamente en la satisfacción del usuario. Cuanto más rápido escuchen los usuarios una respuesta, más natural y atractiva se sentirá la interacción. La API de transmisión bidireccional permite:
Reducción del tiempo de espera percibido: la reproducción de audio comienza mientras el LLM aún se está generando, enmascarando el tiempo de procesamiento de backend. Mayor compromiso: interacciones más rápidas y con mayor capacidad de respuesta conducen a una mayor retención y satisfacción del usuario. Implementación simplificada: la configuración y administración de la solución de transmisión ahora es una única llamada API con enlaces y devoluciones de llamada claros para eliminar la complejidad.
Costos operativos reducidos
La optimización de su arquitectura se traduce directamente en ahorros de costos:
Factor de costo Fragmentación tradicional Infraestructura de transmisión bidireccional Servidores WebSocket, balanceadores de carga, middleware de fragmentación Conexión directa de cliente a Amazon Polly Desarrollo Lógica de fragmentación personalizada, reensamblaje de audio, manejo de errores SDK maneja la complejidad Mantenimiento Múltiples componentes para monitorear y actualizar Punto de integración único Llamadas API Múltiples llamadas por solicitud (una por fragmento) Sesión de transmisión única
Las organizaciones pueden esperar reducir los costos de infraestructura al eliminar servidores intermedios y disminuir el tiempo de desarrollo al utilizar la capacidad de transmisión nativa.
Casos de uso
Se recomienda la API de transmisión bidireccional para:
Asistentes conversacionales de IA: transmite las respuestas de LLM directamente a voz. Traducción en tiempo real: sintetiza el texto traducido a medida que se genera. Respuesta de voz interactiva (IVR): sistemas telefónicos dinámicos y responsivos. Herramientas de accesibilidad: lectores de pantalla en tiempo real y conversión de texto a voz. Juegos: diálogo y narración dinámica de NPC. Subtítulos en vivo: salida de audio para sistemas de transcripción en vivo.
Conclusión
La nueva API de transmisión bidireccional para Amazon Polly representa un avance significativo en la síntesis de voz en tiempo real. Al permitir una transmisión real en ambas direcciones, se eliminan los cuellos de botella de latencia que tradicionalmente han afectado a las aplicaciones de IA conversacional.
Conclusiones clave:
Latencia reducida: el audio comienza a reproducirse mientras aún se genera el texto. Arquitectura simplificada: no se necesitan soluciones alternativas de separación de archivos ni infraestructura compleja. Integración nativa de LLM: diseñada específicamente para transmitir texto desde modelos de lenguaje. Control flexible: control detallado sobre el tiempo de síntesis con configuración integrada.
Ya sea que esté creando un asistente virtual, una herramienta de accesibilidad o cualquier aplicación que requiera conversión de texto a voz responsiva, la API de transmisión bidireccional proporciona la base para experiencias verdaderamente conversacionales.
Próximos pasos
La API de transmisión bidireccional ahora está disponible con carácter general. Para empezar:
Actualice al último AWS SDK para Java 2.x con soporte de transmisión bidireccional. Revise la documentación de la API para obtener una referencia detallada. Pruebe el código de ejemplo en esta publicación para experimentar la transmisión de baja latencia.
Estamos emocionados de ver lo que construye con esta nueva capacidad. ¡Comparta sus comentarios y casos de uso con nosotros!