Integrações
O Amazon Nova 2 Sonic pode ser integrado a vários frameworks e plataformas para criar aplicações de IA conversacional. Essas integrações fornecem componentes pré-criados e APIs simplificadas para casos de uso comuns.
Strands Agents
O Strands Agents é um SDK simples, porém robusto, que adota uma abordagem baseada em modelos para a criação e execução de agentes de IA. De simples assistentes de conversação a fluxos de trabalho autônomos complexos, do desenvolvimento local à implantação da produção, o Strands Agents escala de acordo com as suas necessidades.
Para obter uma documentação abrangente sobre o framework do Strands, acesse a documentação oficial do Strands
O Strands BidiAgent fornece interação de áudio e texto em tempo real por meio de conexões de streaming persistentes. Diferentemente dos padrões tradicionais de solicitação-resposta, esse agente mantém conversas de longa duração com suporte para interrupções, processamento simultâneo e respostas contínuas de áudio.
Pré-requisitos:
-
Python 3.8 ou superior instalado.
-
Credenciais da AWS configuradas com acesso ao Amazon Bedrock
-
Conhecimento básico da sintaxe async/await do Python
Exemplo de código:
Instalação:
Instale os pacotes obrigatórios:
pip install strands-agents strands-agents-tools
Execute este exemplo:
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: a principal classe de agente que orquestra conversas bidirecionais
-
BidiAudioIO: gerencia a entrada e saída de áudio para interações de fala
-
BidiTextIO: fornece saída de texto para transcrições e respostas
-
BidiNovaSonicModel: o wrapper do modelo Nova 2 Sonic
-
Calculadora: uma ferramenta pré-criada para operações matemáticas
audio_io = BidiAudioIO(audio_config={}) text_io = BidiTextIO()
O BidiAudioIO gerencia a entrada do microfone e a saída do alto-falante, enquanto o BidiTextIO exibe transcrições e respostas de texto no console.
model = BidiNovaSonicModel(region="us-east-1")
Crie uma instância do modelo Nova Sonic. O parâmetro de região especifica a região da AWS em que o modelo é implantado.
async with BidiAgent(model=model, tools=[calculator]) as agent: await agent.run( inputs=[audio_io.input()], outputs=[audio_io.output(), text_io.output()] )
O agente é criado com:
-
Modelo: o modelo Nova 2 Sonic a ser usado
-
Ferramentas: lista de ferramentas que o agente pode chamar (como a calculadora)
-
Entradas: entrada de áudio do microfone
-
Saídas: saída de áudio para alto-falantes e saída de texto para console
Integrações do framework
O Amazon Nova 2 Sonic pode ser integrado a vários frameworks e plataformas para criar aplicações de voz sofisticadas. Os exemplos a seguir demonstram padrões de integração com frameworks populares.
O Amazon Bedrock AgentCore fornece um ambiente de runtime gerenciado para a implantação de aplicações do Nova 2 Sonic com segurança e escalabilidade de nível empresarial. O AgentCore simplifica a implantação de aplicações de IA de voz em tempo real ao lidar com infraestrutura, autenticação e conectividade WebSocket.
Principais atributos:
-
Streaming bidirecional: suporte nativo para a interface de streaming full-duplex do Nova Sonic com processamento de eventos em tempo real e comunicação de baixa latência.
-
Infraestrutura do WebSocket: servidores WebSocket prontos para produção com escalabilidade automática, gerenciamento de conexões e recuperação de erros.
-
Implantação de contêineres: implante aplicações do Nova Sonic como contêineres na infraestrutura gerenciada com escalabilidade horizontal e versionamento independente.
-
Segurança empresarial: autenticação refinada via IAM e SigV4, isolamento de VPC e registro em log de auditoria abrangente.
A arquitetura mostra como as aplicações do cliente se conectam ao AgentCore Runtime via WebSocket com autenticação SigV4. O ambiente conteinerizado inclui o servidor WebSocket, a lógica da aplicação e o cliente Nova Sonic, todos se comunicando com o Nova Sonic por meio da API de streaming bidirecional.
Benefícios:
-
Operações simplificadas: concentre-se na lógica da aplicação enquanto o AgentCore gerencia a infraestrutura, a escalabilidade e a confiabilidade.
-
Segurança empresarial: recursos integrados de autenticação, autorização e conformidade para implantações de produção.
-
Econômico: pague somente pelo que você usa com escalabilidade automática e otimização de recursos.
-
Produtividade do desenvolvedor: reduza o tempo de produção com a infraestrutura gerenciada do WebSocket e a implantação de contêineres.
Casos de uso
-
Assistentes de voz de atendimento ao cliente com autenticação segura
-
Aplicações de voz empresariais que exigem integração com o IAM
-
Plataformas de voz multilocatárias com implantações isoladas
-
Aplicações habilitadas por voz que exigem trilhas de auditoria e de conformidade
Para obter documentação detalhada sobre a implantação do Nova Sonic com o AgentCore, acesse a documentação do Amazon Bedrock AgentCore.
O LiveKit é uma plataforma de código aberto para criar aplicações de áudio e vídeo em tempo real. A integração com o Amazon Nova 2 Sonic permite que os desenvolvedores criem interfaces de voz conversacionais sem gerenciar pipelines de áudio complexos ou protocolos de sinalização.
Para exemplos detalhados de implementação e exemplos de código, acesse a documentação da integração da AWS para o LiveKit.
Como funciona:
-
Camada de cliente: aplicações web, móveis ou de desktop se conectam usando os SDKs de cliente LiveKit, que lidam com captura de áudio, streaming e reprodução do WebRTC.
-
Servidor LiveKit: atua como um hub de comunicação em tempo real, gerenciando conexões WebRTC, roteando fluxos de áudio e gerenciando o estado da sessão com otimização de baixa latência.
-
Agente LiveKit: agente baseado em Python que recebe áudio do servidor, o processa por meio do plug-in Nova Sonic e transmite as respostas de volta. Inclui recursos integrados, como detecção de atividade de voz e gerenciamento de turnos.
-
Amazon Nova 2 Sonic: processa o fluxo de áudio por meio da API de streaming bidirecional, realizando reconhecimento de voz, compreensão da linguagem natural e gerando respostas conversacionais com voz sintetizada.
O Pipecat é um framework para criar aplicações de IA conversacional de voz e multimodais. Ele fornece uma arquitetura modular baseada em pipelines que orquestra vários componentes para criar aplicações de voz inteligentes com o Amazon Nova Sonic e outros serviços da AWS.
Para exemplos detalhados de implementação e exemplos de código, acesse a documentação de integração da AWS para o PipeCat
Principais atributos:
-
Arquitetura de pipeline: framework modular baseado em Python para compor componentes de IA de voz, incluindo ASR, NLU, TTS e muito mais.
-
Fluxos do Pipecat: framework de gerenciamento de estado para criar lógica conversacional complexa e execução de ferramentas.
-
Suporte a WebRTC: integração integrada com o Daily e outros provedores WebRTC para streaming de áudio em tempo real.
-
Integração da AWS: suporte nativo para o Amazon Bedrock, Amazon Transcribe e Amazon Polly.
A arquitetura inclui:
-
Transporte WebRTC: streaming de áudio em tempo real entre dispositivos cliente e servidor de aplicações.
-
Detecção de atividade de voz (VAD): Silero VAD com detecção de fala configurável e supressão de ruído.
-
Reconhecimento de voz: Amazon Transcribe para conversão precisa e em tempo real de fala em texto.
-
Compreensão da linguagem natural: Amazon Nova Pro no Bedrock com inferência otimizada para latência.
-
Execução da ferramenta: Pipecat Flows para integração de API e chamadas de serviço de backend.
-
Geração de respostas: Amazon Nova Pro para respostas coerentes e sensíveis ao contexto.
-
Conversão de texto em fala: Amazon Polly com vozes generativas para uma saída de fala realista.
Implante suas aplicações do Nova Sonic na AWS usando a infraestrutura como código com o AWS CDK (Cloud Development Kit). Essa abordagem fornece implantações reproduzíveis e controladas por versão com as melhores práticas incorporadas.
Opções de implantação
-
Amazon ECS (Elastic Container Service): orquestração de contêineres totalmente gerenciada com integração com o Application Load Balancer, ajuste de escala automático e execução do Fargate sem servidor.
-
Amazon EKS (Elastic Kubernetes Services): Kubernetes gerenciado para orquestração complexa, redes avançadas, implantações em várias regiões e amplo ecossistema de ferramentas.
-
AWS CDK: o AWS CDK permite que você defina a infraestrutura de nuvem usando linguagens de programação familiares.
Para ver um exemplo completo e pronto para produção da implantação do Nova Sonic com o AWS CDK, consulte o exemplo de conversão de fala em fala do CDK
-
Configuração completa da infraestrutura do CDK com TypeScript
-
Implementação do servidor WebSocket para comunicação em tempo real
-
Implantação de contêineres com o ECS e Fargate
-
Configuração do Application Load Balancer para suporte do WebSocket
-
Configuração de grupos de segurança e redes da VPC
-
Monitoramento e registro em log do CloudWatch
-
Práticas recomendadas para implantações de produção
A arquitetura multiagente é um padrão amplamente usado para projetar assistentes de IA que lidam com tarefas complexas. Em um assistente de voz desenvolvido pelo Nova 2 Sonic, essa arquitetura coordena vários agentes especializados, em que cada agente opera de forma independente para permitir processamento paralelo, design modular e soluções escaláveis.
O Nova Sonic atua como o orquestrador em um sistema multiagente, executando duas funções principais:
Gerenciamento do fluxo de conversas: garante que todas as informações necessárias sejam coletadas antes de prosseguir para a próxima etapa da conversa.
Classificação de intenção: analisa as consultas dos usuários e as encaminha para o subagente especializado apropriado.
O diagrama acima mostra um assistente de voz bancário que usa uma arquitetura multiagente. O fluxo da conversa começa com uma saudação e a coleta do nome do usuário e, em seguida, trata de consultas relacionadas a bancos ou hipotecas por meio de subagentes especializados.
Exemplo de fluxo de conversa:
-
O usuário se conecta ao assistente de voz.
-
Nova 2 Sonic: “Olá! Qual é o seu nome?”
-
Usuário: “Meu nome é John”
-
Nova 2 Sonic: “Oi John, como posso ajudá-lo hoje?”
-
Usuário: “Quero verificar o saldo da minha conta”
-
Nova 2 Sonic: [Rotas para o agente de autenticação]
-
Agente de autenticação: “Por favor, forneça o ID da sua conta”
-
Usuário: “12345”
-
Agente de autenticação: [Verifica a identidade]
-
Nova 2 Sonic: [Rotas para o agente bancário]
-
Agente bancário: “Seu saldo atual é de USD 5.431,10”
Embora este exemplo demonstre subagentes usando o framework Strands Agents implantado no Amazon Bedrock AgentCore, a arquitetura é flexível. É possível escolher:
-
Seu framework de agente de preferência
-
Qualquer provedor de LLM
-
Opções de hospedagem personalizadas
-
Padrões de orquestração diferentes
Benefícios:
-
Modularidade: cada agente se concentra em um domínio específico, facilitando a manutenção e a atualização do sistema.
-
Escalabilidade: adicione novos agentes sem modificar os existentes, permitindo que seu sistema cresça de acordo com suas necessidades.
-
Processamento paralelo: vários agentes podem trabalhar simultaneamente, melhorando os tempos de resposta para consultas complexas.
-
Especialização: cada agente pode ser otimizado para sua tarefa específica, usando as ferramentas e bases de conhecimentos mais adequadas.
-
Isolamento de falhas: se um agente falhar, outros continuarão funcionando, melhorando a confiabilidade geral do sistema.
Consulte este blog
Consulte o Nova Sonic Workshop Multi-Agent Lab
O Amazon Nova 2 Sonic se integra aos provedores de telefonia para permitir que aplicações de voz baseadas em IA sejam acessíveis por meio de chamadas telefônicas. Este guia aborda a integração com Twilio, Vonage e outros sistemas baseados em SIP para criar soluções de central de atendimento e agentes de voz.
Twilio: plataforma de comunicação em nuvem com recursos programáveis de streaming de voz e mídia.
Vonage: APIs de comunicação global com voz, streaming de áudio WebSocket e conectividade SIP.
A AWS fornece um exemplo abrangente de implementação demonstrando o Nova Sonic em um ambiente de central de atendimento com analytics em tempo real e integração de telefonia.
Repositório: Exemplo de central de atendimento do Sonic com telefonia