Entendendo o Gateway de IA
Um gateway de IA funciona como um padrão arquitetural intermediário que potencializa a disponibilidade, segurança e observabilidade de modelos de linguagem grandes (LLMs). Diferentemente de uma conexão direta aos modelos, um gateway centraliza múltiplas necessidades organizacionais em um único ponto.
Usuários finais buscam baixa latência e experiências fluidas. Desenvolvedores precisam de arquiteturas flexíveis e extensíveis. Equipes de segurança necessitam governança para proteger informações e garantir disponibilidade. Engenheiros de sistemas requerem soluções de monitoramento e observabilidade. Gerentes de produtos precisam de dados sobre desempenho com usuários. E gestores de orçamento exigem controles de custo. Uma solução de gateway adequada precisa atender a todos esses públicos simultaneamente.
A Proposta da AWS com AppSync Events
A AWS apresenta uma arquitetura baseada em AppSync Events que oferece websockets seguros e escaláveis. O diferencial está na propagação de eventos com baixa latência entre modelos de IA generativos e usuários individuais, um requisito crítico para experiências conversacionais responsivas.
A solução inclui capacidades essenciais para um gateway de IA em produção:
- Identidade – Autenticação e autorização de usuários a partir de diretórios internos, corporativos e provedores de identidade externa como Amazon, Google e Facebook
- APIs – Acesso de baixa latência para aplicações e usuários aos modelos de IA generativa
- Autorização – Controle granular sobre quais recursos cada usuário pode acessar na aplicação
- Limitação de taxa e medição – Mitigação de tráfego bot, bloqueio de acesso e gerenciamento de consumo de modelos para controle de custos
- Acesso a modelos diversos – Suporte a múltiplos modelos base, agentes e salvaguardas para proteger usuários
- Logging – Observabilidade, troubleshooting e análise do comportamento das aplicações
- Analytics – Extração de valor dos logs para construção de insights significativos
- Monitoramento – Rastreamento de métricas-chave que permitem reação rápida a eventos
- Cache – Redução de custos através da detecção de consultas comuns e retorno de respostas predeterminadas
Arquitetura: Identidade e APIs
A arquitetura proposta segue um fluxo específico de comunicação entre cliente, autenticação e modelos:
A aplicação cliente obtém identidade e autorização do usuário através do Amazon Cognito. Em seguida, o cliente se inscreve em um canal do AppSync Events para receber eventos como respostas em streaming do Amazon Bedrock. Uma função Lambda específica (SubscribeHandler) anexada ao namespace de Mensagens de Saída valida se o usuário está autorizado a acessar aquele canal.
Quando o cliente publica uma mensagem (como uma pergunta ao modelo), a função ChatHandler recebe a mensagem e verifica autorização para publicação. Em seguida, ela chama a API Amazon Bedrock ConverseStream usando AWS Lambda e aguarda a resposta. As mensagens de resposta são encaminhadas para o canal de Mensagens de Saída do usuário, que retorna os eventos ao websocket aguardando mensagens.
A organização utiliza namespaces e canais como blocos construtivos. Cada namespace pode ter integrações diferentes de publicação e subscrição. Os canais são estruturados para proporcionar comunicação um-para-um entre usuário e servidor:
Inbound-Messages / ${sub}
Outbound-Messages / ${sub}
O atributo “sub” (subject) chega como contexto do Cognito nas funções Lambda e representa um identificador de usuário único e imutável dentro do pool de usuários. Isso permite segmentação segura dos nomes de canais.
Implementação de Autorização
A identidade é estabelecida pelo Cognito, mas a autorização ainda precisa ser implementada. A função SubscribeHandler valida se o primeiro segmento do canal corresponde ao “sub” do usuário. Se não corresponder, a subscrição é rejeitada com uma mensagem de erro. Se corresponder, retorna None indicando sucesso.
O mesmo padrão é aplicado na função ChatHandler para garantir que usuários apenas publiquem em seus próprios canais de entrada. Este modelo simples demonstra como regras de autorização complexas podem ser implementadas com funções Lambda para controlar acesso aos canais.
Controle de Taxa e Medição de Tokens
Entender e controlar o número de tokens consumidos é crítico para muitos clientes. Tokens de entrada e saída são o mecanismo de preço primário para LLMs baseados em texto no Bedrock. A solução usa a API Converse do Amazon Bedrock para acesso aos modelos, que fornece uma interface consistente funcionando com diferentes modelos.
Parte dessa interface é um evento de metadados de stream emitido ao final de cada transmissão, fornecendo contagem de tokens consumidos:
{
"metadata": {
"usage": {
"inputTokens": 1062,
"outputTokens": 512,
"totalTokens": 1574
},
"metrics": {
"latencyMs": 4133
}
}
}
A solução implementa dois tipos de limites: um limite mensal estático (reset mensal) e um limite diário em janela móvel de 10 minutos. Amazon DynamoDB oferece contadores atômicos, acesso em tempo real aos contadores por usuário e remoção automática de dados antigos através de TTL (Time To Live).
A tabela DynamoDB utiliza dois atributos-chave:
- Chave de partição – user_id (String), identificador único do usuário do atributo “sub”
- Chave de ordenação – period_id (String), identificador do período com ordenação lexicográfica
Exemplos de chaves de ordenação:
10min:2025-08-05:16:40
10min:2025-08-05:16:50
monthly:2025-08
Cada registro mantém colunas de contadores de input_tokens e output_tokens (incrementados com operação ADD atômica do DynamoDB), timestamp de criação/atualização e ttl para remoção automática em 24 horas.
Para verificação de uso, consultas de range exploram as chaves ordenadas naturalmente para recuperar apenas registros dos últimos 24 horas. O cálculo mensal é mais simples — recupera o registro específico do mês atual e compara contra limites.
Acesso a Múltiplos Modelos
O código de exemplo usa a API Converse do Amazon Bedrock, mas muitos modelos estão inclusos para exploração rápida. A inovação não para nos modelos AWS. Existem múltiplas formas de desenvolver soluções de IA generativa em cada nível de abstração.
A AWS disponibiliza recursos como Strands Agents (um SDK de agentes de IA open source) e Amazon Bedrock AgentCore, um conjunto de serviços de nível empresarial que ajuda desenvolvedores a implantar e operar agentes de IA em escala usando um framework e modelo hospedado no Bedrock ou em outro lugar. Para aprofundamento em arquiteturas de agentes, existe referência técnica disponível sobre Strands Agents SDK com foco em arquiteturas de agentes e observabilidade.
Logging e Observabilidade
Múltiplas partes interessadas precisam de logs. Desenvolvedores querem entender funcionamento das aplicações. Engenheiros de sistema necessitam acompanhar disponibilidade e planejamento de capacidade. Líderes de negócios querem analytics e tendências para decisões melhores.
O Amazon CloudWatch Logs centraliza logs de sistemas, aplicações e serviços AWS em um único serviço altamente escalável. Permite visualização, busca por códigos de erro ou padrões, filtragem por campos específicos e arquivamento seguro para análise futura.
A arquitetura de gateway de IA integra CloudWatch Logs em múltiplos níveis:
- Logging da API AppSync Events – Configurado com nível ERROR para capturar problemas em nível de API, falhas de autenticação e questões críticas
- Logging estruturado em funções Lambda – Usa AWS Lambda Powertools para logging estruturado. A função ChatHandler implementa classe MessageTracker que fornece contexto para cada conversa, rastreando identificadores de usuário, conversa, modelo, tokens consumidos e timestamps
- ID de correlação – Cada função Lambda define um ID de correlação para rastreamento de requisição, facilitando seguir uma solicitação única pelo sistema
O CloudWatch Logs Insights permite consultas tipo SQL nos dados de log, ajudando a rastrear padrões de uso de tokens por modelo ou usuário, monitorar tempos de resposta, detectar padrões de erro e criar métricas customizadas com alarmes.
Analytics e Inteligência de Negócios
CloudWatch Logs fornece observabilidade operacional, mas para inteligência de negócios, a AWS oferece múltiplos serviços de analytics. A arquitetura de gateway de IA transforma dados sem requerer infraestrutura dedicada.
O fluxo de dados segue: a função ChatHandler transmite dados de log estruturado para um stream de entrega do Amazon Data Firehose ao final de cada resposta de usuário. O Firehose gerencia escalabilidade automática, eliminando necessidade de provisionamento.
Os dados são armazenados automaticamente em formato Parquet no Amazon S3, melhorando performance de consulta e reduzindo custos comparado a logs JSON brutos. Os dados são particionados por ano, mês e dia.
O AWS Glue Data Catalog define esquema para os dados de analytics com atributos como user_id, conversation_id, model_id, contagens de tokens e timestamps. Partições são adicionadas conforme novos objetos são armazenados pelo Firehose.
Com Amazon Athena, analistas podem usar SQL familiar para extração de insights. O Athena é serverless e cobrado por consulta baseado em dados escaneados, ideal para análise única sem infraestrutura de banco de dados:
-- Exemplo: Uso de tokens por modelo
SELECT model_id,
SUM(input_tokens) as total_input_tokens,
SUM(output_tokens) as total_output_tokens,
COUNT(*) as conversation_count
FROM firehose_database.firehose_table
WHERE year='2025' AND month='08'
GROUP BY model_id
ORDER BY total_output_tokens DESC;
Esta pipeline serverless transforma eventos em tabelas estruturadas e consultáveis com mínima sobrecarga operacional. Com dados catalogados no AWS Glue, você acessa a suíte completa de serviços de analytics e machine learning AWS como Amazon Quick Sight e Amazon SageMaker Unified Studio.
Monitoramento e Métricas
AppSync Events e funções Lambda enviam métricas para CloudWatch permitindo monitoramento de performance, troubleshooting e otimização de operações da API. Para um gateway de IA, informações adicionais sobre consumo de tokens e latência dos modelos são críticas.
A aplicação de exemplo inclui chamadas a métricas CloudWatch para registrar consumo de tokens e latência do LLM ao final de cada turno de conversa, fornecendo visibilidade em tempo real aos operadores. As métricas incluem o identificador do modelo como dimensão, permitindo rastreamento de consumo e latência por modelo.
Além de métricas, consultas CloudWatch Logs Insights sobre dados formatados em JSON permitem análise de logs para monitoramento. Exemplos práticos incluem identificação de usuários com mais conversas em uma janela de tempo ou computação de usuários únicos em intervalos de 5 minutos.
Cache de Respostas Preparadas
Muitos gateways de IA implementam mecanismo de cache para situações onde múltiplos usuários fazem exatamente a mesma pergunta. Exemplo apropriado: “Vai chover em São Paulo hoje?” — todos devem ver a mesma resposta. Exemplo inadequado: “Quantas horas de férias tenho?” — informação privada que não deve ser compartilhada em cache.
A implementação calcula hash da mensagem do usuário para consulta em tabela DynamoDB com respostas armazenadas. Se existe mensagem disponível para aquele hash, a aplicação retorna o texto, registra cache hit em CloudWatch e passa evento ao AppSync Events notificando conclusão de resposta. Este comportamento fica encapsulado na estrutura de evento que a aplicação compreende.
Instalação e Custos
O código de exemplo está disponível no repositório GitHub. Consulte o arquivo README no GitHub para instruções de instalação. Tanto implantação quanto remoção são conduzidas por comando único usando o AWS Cloud Development Kit (AWS CDK).
A tabela de custos estimados para uso leve em ambiente de desenvolvimento fornece referência mensal entre $35–55, variando conforme padrões de uso específicos de sua organização. Serviços incluem taxas por operações de API, conexões, armazenamento, requisições e duração de computação.
Conclusão
Conforme o cenário de IA generativa evolui, você necessita de infraestrutura que se adapte com a mesma velocidade dos modelos. Uma arquitetura centralizada em AppSync Events com padrões serverless – incluindo autenticação por Cognito, medição por DynamoDB, observabilidade por CloudWatch e analytics por Athena – fornece fundação que cresce com suas necessidades.
A aplicação de exemplo oferece ponto de partida demostrando padrões do mundo real, permitindo desenvolvedores explorar integração de IA, arquitetos desenhar soluções empresariais e líderes técnicos avaliar abordagens. O código-fonte completo e instruções de implantação estão disponíveis no repositório GitHub. Para começar, implante a aplicação de exemplo e explore as arquiteturas em ação. Você pode customizar lógica de autorização conforme requisitos de sua organização e estender seleção de modelos para incluir seus modelos preferidos no Amazon Bedrock.
Fonte
Build a serverless AI Gateway architecture with AWS AppSync Events (https://aws.amazon.com/blogs/machine-learning/build-a-serverless-ai-gateway-architecture-with-aws-appsync-events/)