Haga que sus aplicaciones web sean manos libres con Amazon Nova Sonic

Las interfaces gráficas de usuario han llevado la antorcha durante décadas, pero los usuarios de hoy esperan cada vez más hablar con sus aplicaciones. Amazon Nova Sonic es un modelo básico de última generación de Amazon Bedrock, que ayuda a permitir este cambio al proporcionar conversaciones de voz bidireccionales, naturales y de baja latencia a través de una API de transmisión simple. Los usuarios pueden colaborar con las aplicaciones a través de voz e inteligencia integrada en lugar de simplemente operarlas.

En esta publicación, mostramos cómo agregamos una verdadera experiencia de voz a una aplicación de referencia, la aplicación Smart Todo, convirtiendo la gestión de tareas rutinarias en una conversación fluida con manos libres.

Repensar la interacción del usuario a través de agentes de voz colaborativos de IA

Las mejoras importantes de usabilidad a menudo no reciben prioridad, no porque no sean valiosas, sino porque son difíciles de implementar dentro de las interfaces tradicionales de mouse y teclado. Funciones como acciones por lotes inteligentes, flujos de trabajo personalizados o asistencia guiada por voz se debaten con frecuencia, pero se posponen debido a la complejidad de la interfaz de usuario. Se trata de la voz como un modo de interacción adicional de propósito general, no como un reemplazo de los controles específicos del dispositivo o una solución exclusiva de accesibilidad. La voz permite nuevos patrones de interacción y también beneficia a los usuarios de tecnologías de asistencia, como lectores de pantalla, al ofrecer una forma adicional e inclusiva de interactuar con la aplicación.

Amazon Nova Sonic va mucho más allá de los comandos de voz de un solo uso. El modelo puede planificar flujos de trabajo de varios pasos, llamar a herramientas de backend y mantener el contexto en todos los turnos para que su aplicación pueda colaborar con los usuarios.

La siguiente tabla muestra las interacciones de voz de diferentes dominios de aplicaciones, como administración de tareas, CRM y servicio de asistencia.

Interacción de voz (frase de ejemplo) Intención/objetivo Acción/comportamiento del sistema Confirmación/UX Marcar todas mis tareas como completadas. Tareas completas en masa Buscar tareas abiertas del usuario → marcar como completadas
→ archivar si está configurado. Las 12 tareas abiertas están marcadas como completadas. Crea un plan para preparar el Q3
Presupuesto: divídalo en pasos, asigne propietarios y establezca plazos. Crear flujo de trabajo de varios pasos Generar plan → crear tareas → asignar
propietarios → establecer plazos → opciones de revisión de superficie Plan creado con 6 tareas. Notificar
dueños? Encuentre clientes potenciales empresariales en APAC con ARR
más de 1 millón de dólares y borrador de divulgación personalizada. Cree una lista y un borrador de prospectos específicos
alcance Consulta CRM → armar lista filtrada →
redactar mensajes personalizados para su revisión Redactó 24 mensajes personalizados de divulgación
mensajes. ¿Revisar y enviar? Priorizar todos los tickets P1 abiertos en el
últimas 24 horas y asignarlos a guardia. Clasificar y asignar Filtrar tickets → establecer prioridad → asignar
a guardia → registrar cambios 12 tickets P1 priorizados y asignados
al equipo de guardia.

Amazon Nova Sonic comprende la intención, invoca las API necesarias y confirma los resultados, sin necesidad de formularios. Esto ayuda a crear un entorno donde la productividad se multiplica y el contexto se convierte en la interfaz. No se trata de reemplazar la interfaz de usuario tradicional, sino de desbloquear nuevas capacidades a través de la voz.

La aplicación de muestra de un vistazo

Con la aplicación de referencia Smart Todo, los usuarios pueden crear listas de tareas pendientes y administrar notas dentro de esas listas. La aplicación ofrece una interfaz enfocada pero flexible para el seguimiento de tareas y la organización de notas. Con la incorporación de la voz, la aplicación se convierte en una experiencia de manos libres que desbloquea interacciones más naturales y productivas. En la aplicación Smart Todo, los usuarios pueden decir:

“Agregue una nota para dar seguimiento a la carta del proyecto”. “Archivar todas las tareas completadas”.

Detrás de cada comando hay acciones enfocadas, como crear una nueva nota, organizar contenido o actualizar el estado de la tarea, ejecutadas a través del habla de una manera que se siente natural y eficiente.

Cómo funcionan las API bidireccionales de Amazon Nova Sonic

Amazon Nova Sonic implementa una arquitectura de transmisión bidireccional en tiempo real. Después de iniciar una sesión con InvokeModelWithBidireccionalStream, la entrada de audio y las respuestas del modelo fluyen simultáneamente a través de una secuencia abierta:

Inicio de sesión: el cliente envía un evento de inicio de sesión con la configuración del modelo (por ejemplo, temperatura y topP). Inicio rápido y de contenido: el cliente envía eventos estructurados que indican si los datos próximos son audio, texto o entrada de herramienta. Transmisión de audio: el audio del micrófono se transmite como eventos de entrada de audio codificados en base64. Respuestas del modelo: a medida que el modelo procesa la entrada, transmite las siguientes respuestas de forma asíncrona: Resultados del reconocimiento automático de voz (ASR) Invocaciones de uso de herramientas Respuestas de texto Salida de audio para reproducción Cierre de sesión: las conversaciones se cierran explícitamente mediante el envío de eventos contentEnd, PromptEnd y sessionEnd.

Diagrama de arquitectura de Nova Sonic

Puede utilizar este enfoque basado en eventos para interrumpir al asistente (irrupción), habilitar conversaciones de varios turnos y admitir la adaptabilidad en tiempo real.

Arquitectura de la solución

Para esta solución, utilizamos un patrón de arquitectura de aplicación sin servidor, donde la interfaz de usuario es una aplicación React de una sola página. La aplicación de página única React está integrada con API web backend que se ejecutan en contenedores del lado del servidor. La aplicación Smart Todo se implementa mediante una arquitectura de AWS escalable y consciente de la seguridad que está diseñada para admitir interacciones de voz en tiempo real. La siguiente imagen proporciona una descripción general de la arquitectura de los servicios de AWS que trabajan juntos para respaldar las necesidades de transmisión bidireccional de una aplicación habilitada para voz.

Los servicios clave de AWS incluyen:

Amazon Bedrock: potencia las interacciones de voz bidireccionales en tiempo real a través del modelo básico de Amazon Nova Sonic. Amazon CloudFront: una red de entrega de contenido (CDN) que distribuye la aplicación globalmente con baja latencia. Enruta el tráfico /(raíz) a la aplicación React alojada en un depósito de Amazon S3 y el tráfico /api y /novasonic al balanceador de carga de aplicaciones. AWS Fargate para Amazon Amazon Elastic Container Service (Amazon ECS): ejecuta los servicios backend en contenedores para el manejo de WebSocket y API REST capaces de admitir transmisiones bidireccionales de larga duración. Balanceador de carga de aplicaciones (ALB): reenvía el tráfico web /api (llamadas HTTPS REST API) a los servicios backend de ECS, manejando las API de la aplicación Smart Todo y /novasonic (conexiones WebSocket) a los servicios ECS que administran la transmisión de voz en tiempo real con Amazon Nova Sonic. Amazon Virtual Private Cloud (Amazon VPC): proporciona aislamiento de red y seguridad para servicios backend. Las subredes públicas albergan el balanceador de carga de aplicaciones (ALB) y las subredes privadas albergan tareas de ECS Fargate que ejecutan WebSocket y API REST. NAT Gateway permite que las tareas de Amazon ECS en subredes privadas se conecten de forma más segura a Internet para operaciones como los puntos finales de verificación de tokens Cognito JWT. Amazon Simple Storage Service (Amazon S3): aloja la interfaz React para las interacciones del usuario AWS WAF: ayuda a proteger el balanceador de carga de aplicaciones (ALB) del tráfico malicioso y aplica reglas de seguridad en la capa de aplicación. Amazon Cognito: gestiona la autenticación y emite tokens. Amazon DynamoDB: almacena datos de aplicaciones, como listas de tareas pendientes y notas.

La siguiente imagen ilustra cómo se atienden las solicitudes de los usuarios con soporte para transmisión bidireccional de baja latencia.

Solicitar flujo de trabajo

Implementando la solución

Para evaluar esta solución, proporcionamos un código de muestra de una aplicación Smart Todo disponible en el repositorio de GitHub.

La aplicación Smart Todo consta de varios proyectos independientes de Node.js, incluido un proyecto de infraestructura CDK, una aplicación frontend React y servicios API backend. El flujo de trabajo de implementación garantiza que los componentes se creen e integren correctamente con servicios de AWS como Amazon Cognito, Amazon DynamoDB y Amazon Bedrock.

Requisitos previos

Pasos de implementación

Clona el siguiente repositorio:

clon de git https://github.com/aws-samples/sample-amazon-q-developer-vibe-coded-projects.git cd NovaSonicVoiceAssistant

Para la implementación por primera vez, utilice el siguiente script automatizado:

npm ejecutar implementación: primera vez

Este script:

Instalar las dependencias usando npm (administrador de paquetes de nodos) Construir los componentes y la imagen del contenedor usando el motor Docker instalado localmente Implementar la infraestructura usando CDK (CDK BootStrap ==> CDK Synth ==> CDK Deploy) Actualizar las variables de entorno con la configuración de Amazon Cognito Reconstruir la interfaz de usuario con variables de entorno actualizadas Implementar la infraestructura final (CDK Deploy)

Verificando la implementación

Una vez que la implementación sea exitosa, complete los siguientes pasos:

Acceda a la URL de Amazon CloudFront proporcionada en los resultados del CDK.
Nota: La URL que se muestra en la imagen es solo como referencia; cada implementación obtendrá una URL única.

Captura de pantalla de implementación exitosa

Cree un nuevo usuario registrándose en la sección Crear cuenta.

Crear usuario e iniciar sesión

Pruebe la funcionalidad de voz para verificar la integración con Amazon Nova Sonic. La siguiente imagen ilustra una conversación entre el usuario que inició sesión y el agente de Amazon Bedrock. El agente de IA puede invocar las API existentes y la interfaz de usuario se actualiza en tiempo real para reflejar las acciones del agente.

Otorgar acceso de micrófono a la aplicación

Interacción de voz en la aplicación Smart Todo

Limpiar

Puede eliminar las pilas con el siguiente comando.

# pasar a la carpeta infra, asumiendo que se encuentra en la carpeta raíz del proyecto cd infra # Elimina la pila de AWS npm run destroy

Próximos pasos

La voz no es sólo un complemento de accesibilidad: se está convirtiendo en la interfaz principal para flujos de trabajo complejos.
Resulta que hablar es más rápido que seleccionar, especialmente cuando tu aplicación responde.

Pruebe estos recursos para comenzar.

Repositorio de código de muestra: una integración funcional de Amazon Nova Sonic
puedes ejecutar localmente. Vea cómo son las interacciones de voz en tiempo real, el manejo de intenciones y los flujos de varios pasos
implementado de principio a fin. Taller práctico de Amazon Nova Sonic: un laboratorio guiado que lo guía
mediante la implementación de Amazon Nova Sonic en su cuenta de AWS y la prueba de funciones nativas de voz. Documentos de Amazon Nova Sonic: proporciona referencia de API, ejemplos de transmisión y lo mejor
prácticas para ayudarle a diseñar e implementar flujos de trabajo controlados por voz. Póngase en contacto con su equipo de cuentas de AWS para obtener más información sobre cómo las soluciones basadas en IA pueden transformar sus operaciones.

Sobre los autores

Manu Mishra es arquitecto senior de soluciones en AWS y se especializa en inteligencia artificial, datos y análisis, y seguridad. Su experiencia abarca la supervisión estratégica y el liderazgo técnico práctico, donde revisa y guía el trabajo de los clientes internos y externos. Manu colabora con los clientes de AWS para dar forma a estrategias técnicas que impulsen resultados comerciales impactantes, proporcionando alineación entre la tecnología y los objetivos organizacionales.

AK Soni es gerente técnico senior de cuentas en AWS Enterprise Support, donde capacita a los clientes empresariales para que alcancen sus objetivos comerciales al ofrecer orientación proactiva sobre la implementación de soluciones innovadoras basadas en la nube y AI/ML alineadas con las mejores prácticas de la industria. Con más de 19 años de experiencia en arquitectura y desarrollo de aplicaciones empresariales, utiliza su experiencia en tecnologías de IA generativa para mejorar las operaciones comerciales y superar las limitaciones tecnológicas existentes.

Raj Bagwe es arquitecto senior de soluciones en Amazon Web Services, con sede en San Francisco, California. Con más de 6 años en AWS, ayuda a los clientes a afrontar desafíos tecnológicos complejos y se especializa en arquitectura, seguridad y migraciones de la nube. En su tiempo libre entrena un equipo de robótica y juega voleibol. Se le puede contactar en X handle @rajesh_bagwe.