Integraciones
Amazon Nova 2 Sonic se puede integrar con varios marcos y plataformas para crear aplicaciones de IA conversacional. Estas integraciones proporcionan componentes prediseñados y API simplificadas para casos de uso comunes.
Strands Agents
Strands Agents es un SDK sencillo, pero potente, que adopta un enfoque basado en modelos para crear y ejecutar agentes de IA. Desde simples asistentes de conversación hasta complejos flujos de trabajo autónomos, desde el desarrollo local hasta la implementación en producción, Strands Agents se adapta a sus necesidades.
Para obtener una documentación completa sobre el marco de Strands, visite la documentación oficial de Strands
Strands BidiAgent proporciona una interacción de audio y texto en tiempo real a través de conexiones de transmisión persistentes. A diferencia de los patrones tradicionales de solicitud y respuesta, este agente mantiene conversaciones prolongadas y admite interrupciones, procesamiento simultáneo y respuestas de audio continuas.
Requisitos previos:
-
Versión 3.8 o posterior de Python instalada
-
Credenciales para AWS configuradas con acceso a Amazon Bedrock
-
Conocimientos básicos sobre la sintaxis async/await de Python
Ejemplo de código:
Instalación:
Instale los paquetes obligatorios:
pip install strands-agents strands-agents-tools
Ejecute este ejemplo:
import asyncio from strands.experimental.bidi.agent import BidiAgent from strands.experimental.bidi.io.audio import BidiAudioIO from strands.experimental.bidi.io.text import BidiTextIO from strands.experimental.bidi.models.novasonic import BidiNovaSonicModel from strands_tools import calculator async def main(): """Test the BidirectionalAgent API.""" # Audio and Text input/output utility audio_io = BidiAudioIO(audio_config={}) text_io = BidiTextIO() # Nova Sonic model model = BidiNovaSonicModel(region="us-east-1") async with BidiAgent(model=model, tools=[calculator]) as agent: print("New BidiAgent Experience") print("Try asking: 'What is 25 times 8?' or 'Calculate the square root of 144'") await agent.run( inputs=[audio_io.input()], outputs=[audio_io.output(), text_io.output()] ) if __name__ == "__main__": try: asyncio.run(main()) except KeyboardInterrupt: print("\nConversation ended by user") except Exception as e: print(f"Error: {e}") import traceback traceback.print_exc()
from strands.experimental.bidi.agent import BidiAgent from strands.experimental.bidi.io.audio import BidiAudioIO from strands.experimental.bidi.io.text import BidiTextIO from strands.experimental.bidi.models.novasonic import BidiNovaSonicModel from strands_tools import calculator
-
BidiAgent: es la clase de agente principal que orquesta las conversaciones bidireccionales.
-
BidiAudioIO: gestiona la entrada y la salida de audio para interacciones de voz.
-
BidiTextIO: proporciona la salida de texto para transcripciones y respuestas.
-
BidiNovaSonicModel: es el contenedor del modelo de Nova 2 Sonic.
-
Calculadora: es una herramienta prediseñada para operaciones matemáticas.
audio_io = BidiAudioIO(audio_config={}) text_io = BidiTextIO()
BidiAudioIO administra la entrada del micrófono y la salida del altavoz, mientras que BidiTextIO muestra las transcripciones del texto y las respuestas en la consola.
model = BidiNovaSonicModel(region="us-east-1")
Cree una instancia del modelo de Nova Sonic. El parámetro region especifica la región de AWS en la que se implementa el modelo.
async with BidiAgent(model=model, tools=[calculator]) as agent: await agent.run( inputs=[audio_io.input()], outputs=[audio_io.output(), text_io.output()] )
El agente se crea con lo siguiente:
-
Modelo: modelo de Nova 2 Sonic que se utilizará
-
Herramientas: lista de herramientas a las que el agente puede llamar (por ejemplo, la calculadora)
-
Entradas: entrada de audio del micrófono
-
Salidas: salida de audio a los altavoces y salida de texto a la consola
Integraciones con marcos
Amazon Nova 2 Sonic se puede integrar con varios marcos y plataformas para crear aplicaciones de voz sofisticadas. En los siguientes ejemplos, se muestran los patrones de integración con marcos populares.
Amazon Bedrock AgentCore proporciona un entorno de tiempo de ejecución administrado para implementar aplicaciones de Nova 2 Sonic con seguridad y escalabilidad empresariales. AgentCore simplifica la implementación de aplicaciones de IA de voz en tiempo real al gestionar la infraestructura, la autenticación y la conectividad de WebSocket.
Características clave:
-
Transmisión bidireccional: soporte nativo para la interfaz de transmisión dúplex completa de Nova Sonic con procesamiento de eventos en tiempo real y comunicación de baja latencia.
-
Infraestructura de WebSocket: servidores de WebSocket listos para producción con escalado automático, administración de conexiones y recuperación de errores.
-
Implementación de contenedores: implemente aplicaciones de Nova Sonic como contenedores en una infraestructura administrada con escalado horizontal y control de versiones independiente.
-
Seguridad empresarial: autenticación detallada mediante IAM y SigV4, aislamiento de VPC y registro de auditoría exhaustivo.
La arquitectura muestra cómo las aplicaciones cliente se conectan al Tiempo de ejecución de AgentCore a través de WebSocket con autenticación SigV4. El entorno en contenedores incluye el servidor de WebSocket, la lógica de la aplicación y el cliente de Nova Sonic, y todos se comunican con Nova Sonic a través de la API de transmisión bidireccional.
Ventajas:
-
Operaciones simplificadas: céntrese en la lógica de la aplicación mientras AgentCore administra la infraestructura, el escalado y la fiabilidad.
-
Seguridad empresarial: características integradas de autenticación, autorización y cumplimiento para las implementaciones de producción.
-
Rentabilidad: pague solo por lo que use, con escalado automático y optimización de recursos.
-
Productividad de los desarrolladores: reduzca el tiempo de producción con la infraestructura de WebSocket administrada y la implementación de contenedores.
Casos de uso
-
Asistentes de voz de servicio al cliente con autenticación segura
-
Aplicaciones de voz empresariales que requieren la integración de IAM
-
Plataformas de voz multiusuario con implementaciones aisladas
-
Aplicaciones habilitadas por voz que requieren registros de auditoría y cumplimiento
Para obtener documentación detallada sobre la implementación de Nova Sonic con AgentCore, visite la documentación de Amazon Bedrock AgentCore
LiveKit es una plataforma de código abierto para crear aplicaciones de audio y video en tiempo real. La integración con Amazon Nova 2 Sonic permite a los desarrolladores crear interfaces de voz conversacionales sin administrar complejas canalizaciones de audio ni protocolos de señalización.
Para obtener ejemplos detallados de implementación y ejemplos de código, visite la documentación de integración de LiveKit con AWS
Funcionamiento:
-
Capa del cliente: las aplicaciones web, móviles o de escritorio se conectan mediante los SDK de cliente de LiveKit, que gestionan la captura de audio, la transmisión por WebRTC y la reproducción.
-
Servidor de LiveKit: actúa como centro de comunicación en tiempo real mediante la gestión de conexiones WebRTC, el enrutamiento de transmisiones de audio y la gestión del estado de la sesión con una optimización de baja latencia.
-
Agente de LiveKit: agente basado en Python que recibe el audio del servidor, lo procesa a través del complemento de Nova Sonic y transmite las respuestas de vuelta. Incluye características integradas, como la detección de actividad por voz y la administración de turnos.
-
Amazon Nova 2 Sonic: procesa la transmisión de audio a través de la API de transmisión bidireccional, lleva a cabo el reconocimiento de voz, la comprensión del lenguaje natural y genera respuestas conversacionales con voz sintetizada.
Pipecat es un marco para crear aplicaciones de IA conversacional multimodal y de voz. Proporciona una arquitectura modular basada en canalizaciones que orquesta varios componentes para crear aplicaciones de voz inteligentes con Amazon Nova Sonic y otros servicios de AWS.
Para obtener ejemplos detallados de implementación y muestras de código, visite la documentación de integración de Pipecat con AWS
Características clave:
-
Arquitectura de canalización: marco modular basado en Python para la composición de componentes de IA de voz, incluidos ASR, NLU, TTS, etc.
-
Flujos de Pipecat: marco de administración de estados para crear una lógica conversacional compleja y ejecutar herramientas.
-
Soporte de WebRTC: integración integrada con Daily y otros proveedores de WebRTC para la transmisión de audio en tiempo real.
-
Integración con AWS: soporte nativo para Amazon Bedrock, Amazon Transcribe y Amazon Polly.
La arquitectura incluye:
-
Transporte de WebRTC: transmisión de audio en tiempo real entre los dispositivos cliente y el servidor de aplicaciones.
-
Detección de actividad de voz (VAD): VAD de Silero con detección de voz y supresión de ruido configurables.
-
Reconocimiento de voz: Amazon Transcribe para una conversión de voz a texto precisa en tiempo real.
-
Comprensión del lenguaje natural: Amazon Nova Pro en Bedrock con inferencia optimizada para la latencia.
-
Ejecución de herramientas: flujos de Pipecat para la integración de las API y las llamadas al servicio de backend.
-
Generación de respuestas: Amazon Nova Pro para respuestas coherentes y sensibles al contexto.
-
Conversión de texto a voz: Amazon Polly con voces generativas para una salida de voz realista.
Implemente sus aplicaciones de Nova Sonic en AWS con infraestructura como código con el AWS CDK (Cloud Development Kit). Este enfoque proporciona implementaciones repetibles, con control de versiones y con las prácticas recomendadas integradas.
Opciones de implementación
-
Amazon ECS (Elastic Container Service): orquestación de contenedores completamente administrada con integración con el Equilibrador de carga de aplicación, escalado automático y ejecución de Fargate sin servidor.
-
Amazon EKS (Elastic Kubernetes Services): Kubernetes administrado para una orquestación compleja, redes avanzadas, implementaciones en varias regiones y un amplio ecosistema de herramientas.
-
AWS CDK: el AWS CDK le permite definir la infraestructura en la nube mediante lenguajes de programación conocidos.
Para obtener un ejemplo completo listo para producción de la implementación de Nova Sonic con el AWS CDK, consulte la muestra del CDK de voz a voz
-
Configuración completa de la infraestructura del CDK con TypeScript
-
Implementación del servidor de WebSocket para una comunicación en tiempo real
-
Implementación de contenedores con ECS y Fargate
-
Configuración del Equilibrador de carga de aplicación para soporte de WebSocket
-
Configuración de grupos de seguridad y redes de VPC
-
Supervisión y registros de CloudWatch
-
Prácticas recomendadas para las implementaciones de producción
La arquitectura multiagente es un patrón muy utilizado para diseñar asistentes de IA que gestionan tareas complejas. En un asistente de voz con tecnología de Nova 2 Sonic, esta arquitectura coordina varios agentes especializados, donde cada agente opera de forma independiente para permitir el procesamiento paralelo, el diseño modular y las soluciones escalables.
Nova Sonic actúa como orquestador en un sistema multiagente y lleva a cabo dos funciones clave:
Administración del flujo de conversación: garantiza que se recopile toda la información necesaria antes de continuar con el siguiente paso de la conversación.
Clasificación de la intención: analiza las consultas de los usuarios y las dirige al subagente especializado correspondiente.
En el diagrama anterior, se muestra un asistente de voz bancario que utiliza una arquitectura multiagente. El flujo de la conversación comienza con un saludo y una recopilación del nombre del usuario, y luego gestiona las consultas relacionadas con la banca o las hipotecas a través de subagentes especializados.
Ejemplo de flujo de conversación:
-
El usuario se conecta al asistente de voz.
-
Nova 2 Sonic: “¡Hola! ¿Cómo se llama?”
-
Usuario: “Me llamo John”
-
Nova 2 Sonic: “Hola, John: ¿en qué puedo ayudarlo hoy?”
-
Usuario: “Quiero comprobar el saldo de mi cuenta”
-
Nova 2 Sonic: [dirige al agente de autenticación]
-
Agente de autenticación: “Proporcione su ID de cuenta”
-
Usuario: “12345”
-
Agente de autenticación: [verifica la identidad]
-
Nova 2 Sonic: [dirige al agente bancario]
-
Agente bancario: “Su saldo actual es de 5431,10 USD”
Si bien en este ejemplo se muestra cómo los subagentes utilizan el marco Strands Agents implementado en Amazon Bedrock AgentCore, la arquitectura es flexible. Puede elegir:
-
Su marco de agentes preferido
-
Cualquier proveedor de LLM
-
Opciones de alojamiento personalizadas
-
Diferentes patrones de orquestación
Ventajas:
-
Modularidad: cada agente se centra en un dominio específico, lo que facilita el mantenimiento y la actualización del sistema.
-
Escalabilidad: agregue nuevos agentes sin modificar los existentes, lo que permitirá que su sistema crezca a la par de sus necesidades.
-
Procesamiento paralelo: varios agentes pueden trabajar simultáneamente, lo que mejora los tiempos de respuesta para consultas complejas.
-
Especialización: cada agente se puede optimizar para su tarea específica mediante las herramientas y bases de conocimiento más adecuadas.
-
Aislamiento de errores: si un agente falla, otros continúan funcionando, lo que mejora la fiabilidad general del sistema.
Consulte este blog
Visite el laboratorio multiagente del taller de Nova Sonic
Amazon Nova 2 Sonic se integra con los proveedores de telefonía para permitir el acceso a las aplicaciones de voz basadas en IA mediante llamadas telefónicas. En esta guía, se cubre la integración con Twilio, Vonage y otros sistemas basados en SIP para crear soluciones de centros de contacto y agentes de voz.
Twilio: plataforma de comunicaciones en la nube con capacidades programables de transmisión de voz y multimedia.
Vonage: API de comunicaciones globales con voz, transmisión de audio por WebSocket y conectividad SIP.
AWS proporciona un ejemplo completo de implementación que muestra a Nova Sonic en un entorno de centro de contacto con integración de telefonía y análisis en tiempo real.
Repositorio: muestra de centro de contacto de Sonic con telefonía