Se você já trabalhou com agentes de IA, sabe que aquele momento de alívio depois de um demo bem-sucedido pode ser bem curto.
O agente impressionou todo mundo nos testes, passou por todos os cenários simulados e parecia pronto para o mundo real.
Aí chegou a produção, e a história mudou completamente. 😅
Usuários reais encontraram chamadas de ferramentas erradas, respostas inconsistentes e falhas que ninguém tinha imaginado durante o desenvolvimento.
Esse gap entre o comportamento esperado e a experiência do usuário real é um dos maiores desafios de quem trabalha com modelos de linguagem hoje em dia.
E o problema tem uma raiz bem específica: LLMs são não-determinísticos.
Isso significa que a mesma consulta de um usuário pode gerar seleções de ferramentas diferentes, caminhos de raciocínio distintos e outputs completamente variáveis dependendo da execução. Um único teste passando com sucesso mostra o que pode acontecer, não o que tipicamente acontece. Sem medição sistemática dessas variações, as equipes ficam presas em ciclos de testes manuais e debugging reativo, queimando custos de API sem saber ao certo se as mudanças estão realmente melhorando o agente.
Foi exatamente para resolver isso que a AWS desenvolveu o Amazon Bedrock AgentCore Evaluations, um serviço totalmente gerenciado focado em avaliação de desempenho de agentes ao longo de todo o ciclo de vida, do desenvolvimento até a produção.
Neste artigo, você vai entender como esse serviço funciona na prática, quais abordagens ele usa para medir a qualidade dos seus agentes e como ele pode transformar a forma como times de IA tomam decisões baseadas em dados reais, não em achismos. 🚀
Por que a avaliação de agentes de IA exige uma abordagem completamente nova
Antes de falar sobre a solução, vale entender melhor o problema. Quando um usuário envia uma solicitação para um agente, múltiplas decisões acontecem em sequência. O agente determina quais ferramentas chamar, executa essas chamadas e gera uma resposta com base nos resultados. Cada etapa introduz pontos potenciais de falha: selecionar a ferramenta errada, chamar a ferramenta certa com parâmetros incorretos ou sintetizar os outputs das ferramentas em uma resposta final imprecisa.
Diferente de aplicações tradicionais, onde você testa a saída de uma única função, a avaliação de agentes requer medir a qualidade ao longo de todo esse fluxo de interação. Isso cria desafios específicos para desenvolvedores de agentes que podem ser enfrentados da seguinte forma:
- Definir critérios de avaliação sobre o que constitui uma seleção correta de ferramenta, parâmetros válidos, uma resposta precisa e uma experiência útil para o usuário.
- Construir datasets de teste que representem solicitações reais de usuários e comportamentos esperados.
- Escolher métodos de pontuação que consigam avaliar qualidade de forma consistente ao longo de execuções repetidas.
Cada uma dessas definições determina diretamente o que o sistema de avaliação mede, e errar nelas significa otimizar para os resultados errados. Sem esse trabalho fundamental, o gap entre o que os times esperam que seus agentes façam e o que conseguem provar que eles fazem se torna um risco real de negócio.
Preencher esse gap exige um ciclo contínuo de avaliação. As equipes constroem casos de teste, executam contra o agente, pontuam os resultados, analisam falhas e implementam melhorias. Cada falha se torna um novo caso de teste, e o ciclo continua a cada iteração do agente. Porém, rodar esse ciclo de ponta a ponta exige infraestrutura significativa além da lógica de avaliação em si. Times precisam curar datasets, selecionar e hospedar modelos de pontuação, gerenciar capacidade de inferência e limites de API, construir pipelines de dados que transformem traces do agente em formatos prontos para avaliação e criar dashboards para visualizar tendências.
Para organizações rodando múltiplos agentes, esse overhead se multiplica com cada um. O resultado é que os times acabam gastando mais tempo mantendo ferramentas de avaliação do que agindo com base no que elas informam. Esse é exatamente o problema que o Amazon Bedrock AgentCore Evaluations foi construído para resolver.
O que é o Amazon Bedrock AgentCore Evaluations
Lançado inicialmente em preview público no AWS re:Invent 2025, o serviço agora está disponível de forma geral. Ele gerencia os modelos de avaliação, infraestrutura de inferência, pipelines de dados e escalabilidade para que as equipes possam focar em melhorar a qualidade dos agentes em vez de construir e manter sistemas de avaliação. Para avaliadores built-in, a quota de modelo e capacidade de inferência são totalmente gerenciadas. Isso significa que organizações avaliando muitos agentes não estão consumindo suas próprias quotas nem provisionando infraestrutura separada para workloads de avaliação.
O AgentCore Evaluations examina o comportamento do agente de ponta a ponta usando traces OpenTelemetry (OTEL) com convenções semânticas de IA generativa. O OTEL é um padrão open source de observabilidade para coletar traces distribuídos de aplicações. As convenções semânticas de IA generativa estendem esse padrão com campos específicos para interações com modelos de linguagem, incluindo prompts, completions, chamadas de ferramentas e parâmetros de modelo. Por ser construído sobre esse padrão, o serviço funciona de forma consistente com agentes construídos com qualquer framework, como Strands Agents ou LangGraph, instrumentados com OpenTelemetry e OpenInference.
As avaliações podem ser configuradas com diferentes abordagens:
- LLM-as-a-Judge — onde um LLM avalia cada interação do agente contra rubricas estruturadas com critérios claramente definidos.
- Avaliação baseada em Ground Truth — que compara as respostas do agente contra datasets pré-definidos ou simulados.
- Avaliadores de código customizado — onde você pode trazer uma função Lambda como avaliador com seu próprio código.
Na abordagem LLM-as-a-Judge, o modelo juiz examina todo o contexto da interação, incluindo histórico de conversa, ferramentas disponíveis, ferramentas utilizadas, parâmetros passados e instruções do sistema, e fornece raciocínio detalhado antes de atribuir uma pontuação. Cada pontuação vem com uma explicação. As equipes podem usar essas pontuações para verificar julgamentos, entender exatamente por que uma interação recebeu uma classificação específica e identificar o que deveria ter acontecido de diferente.
Três princípios guiam a abordagem do serviço para avaliação:
- Desenvolvimento orientado por evidências — substitui a intuição por métricas quantitativas, para que as equipes possam medir o impacto real das mudanças.
- Avaliação multidimensional — avalia diferentes aspectos do comportamento do agente de forma independente, tornando possível identificar exatamente onde melhorias são necessárias.
- Medição contínua — conecta as linhas de base de desempenho estabelecidas durante o desenvolvimento diretamente ao monitoramento em produção.
Avaliação ao longo do ciclo de vida do agente
A jornada de um agente do protótipo à produção cria duas necessidades distintas de avaliação. Durante o desenvolvimento, equipes precisam de ambientes controlados onde possam comparar alternativas, testar o agente em datasets curados, reproduzir resultados e validar mudanças antes que cheguem aos usuários. Depois que o agente está no ar, o desafio muda para monitorar interações do mundo real em escala, onde usuários encontram edge cases e padrões de interação que nenhuma quantidade de testes pré-deploy conseguiu antecipar.
O AgentCore Evaluations mapeia duas abordagens complementares para essas fases do ciclo de vida:
Avaliação online para monitoramento em produção
A avaliação online monitora interações ao vivo do agente por meio de amostragem contínua de uma porcentagem configurável de traces, pontuando-os contra os avaliadores escolhidos. Você define quais avaliadores aplicar, configura regras de amostragem que controlam qual fração do tráfego de produção é avaliada e define filtros apropriados. O serviço cuida de ler os traces, rodar as avaliações e apresentar os resultados no dashboard de Observabilidade do AgentCore, alimentado pelo Amazon CloudWatch.
Se você já está coletando traces para observabilidade, a avaliação online adiciona pontuações de qualidade com explicação ao lado das suas métricas operacionais existentes, sem exigir mudanças de código ou re-deploys.
Problemas de qualidade em produção frequentemente aparecem de formas que o monitoramento tradicional não captura. Dashboards operacionais podem mostrar tudo verde em latência e taxas de erro enquanto a experiência do usuário degrada silenciosamente porque o agente começa a selecionar ferramentas erradas ou fornecer respostas menos úteis. A pontuação contínua de qualidade captura essas falhas silenciosas ao rastrear métricas de avaliação junto com as métricas operacionais. Como a observabilidade do AgentCore roda no CloudWatch, você pode criar dashboards customizados e configurar alarmes para ser alertado no momento em que pontuações caírem abaixo dos seus limites.
Avaliação sob demanda para desenvolvimento
A avaliação sob demanda é uma API em tempo real projetada para workflows de desenvolvimento e CI/CD. As equipes usam para testar mudanças antes do deploy, rodar suítes de avaliação como parte de pipelines CI/CD, fazer testes de regressão entre builds e bloquear deploys com base em limites de qualidade.
Os desenvolvedores selecionam uma sessão completa e especificam spans exatos ou traces fornecendo seus IDs. O serviço considera a conversa completa da sessão e pontua spans e traces individuais contra os mesmos avaliadores usados em produção. Casos de uso comuns incluem validar mudanças de prompt, comparar performance de modelos entre alternativas e prevenir regressões de qualidade.
Como ambos os modos usam os mesmos avaliadores, o que você testa no CI/CD é o que você monitora em produção, garantindo padrões de qualidade consistentes ao longo de todo o ciclo de desenvolvimento. Juntos, os dois modos formam um loop contínuo de feedback entre desenvolvimento e produção.
Como o AgentCore avalia o seu agente
O AgentCore Evaluations organiza as interações do agente em uma hierarquia de três níveis que determina o que pode ser avaliado e com qual granularidade:
- Sessão — representa uma conversa completa entre um usuário e o agente, agrupando todas as interações relacionadas de um único usuário ou workflow.
- Trace — captura tudo que acontece durante uma única troca. Quando um usuário envia uma mensagem e recebe uma resposta, esse round trip produz um trace contendo cada passo que o agente tomou para gerar sua resposta.
- Span — representa ações individuais específicas que o agente realizou, como invocar uma ferramenta, recuperar informação de uma base de conhecimento ou gerar texto.
O serviço oferece 13 avaliadores built-in pré-configurados organizados nesses três níveis, cada um medindo um aspecto distinto do comportamento do agente:
Nível de sessão
Goal Success Rate — avalia se todos os objetivos do usuário foram concluídos dentro de uma conversa.
Nível de trace
Inclui avaliadores como Helpfulness, Correctness, Coherence, Conciseness, Faithfulness, Harmfulness, Instruction Following, Response Relevance, Context Relevance, Refusal e Stereotyping. Esses avaliadores medem qualidade de resposta, precisão, segurança e eficácia de comunicação.
Nível de ferramenta
Tool Selection Accuracy e Tool Parameter Accuracy — avaliam as decisões de seleção de ferramenta e a precisão na extração de parâmetros.
Entendendo as distinções entre avaliadores
Alguns avaliadores naturalmente interagem entre si, então as pontuações devem ser lidas juntas em vez de isoladamente. Avaliadores que soam similares frequentemente medem coisas fundamentalmente diferentes:
- Correctness verifica se a resposta é factualmente precisa, enquanto Faithfulness verifica se é consistente com o histórico da conversa. Um agente pode ser fiel a um material fonte incorreto e ainda assim estar errado.
- Helpfulness pergunta se a resposta avança o usuário em direção ao seu objetivo, enquanto Response Relevance pergunta se ela responde o que foi originalmente perguntado. Um agente pode responder a pergunta errada de forma completa.
- Coherence checa contradições internas no raciocínio, enquanto Context Relevance checa se o agente tinha a informação certa disponível. Um revela um problema de geração, o outro um problema de recuperação.
Algumas dependências também são importantes: Tool Parameter Accuracy só faz sentido quando o agente selecionou a ferramenta correta, então uma baixa Tool Selection Accuracy deve ser resolvida primeiro. Correctness frequentemente depende de Context Relevance porque um agente não consegue gerar respostas precisas sem a informação certa. E Conciseness e Helpfulness muitas vezes entram em conflito porque respostas breves podem omitir contexto que os usuários precisam.
Avaliadores customizados e baseados em código
Além dos avaliadores built-in, o serviço suporta avaliadores customizados usando LLM-as-a-Judge com seus próprios modelos, instruções, critérios e esquemas de pontuação. Eles são particularmente valiosos para avaliações específicas de indústria, como verificação de conformidade em saúde ou serviços financeiros, consistência de voz de marca ou cumprimento de padrões de qualidade organizacionais.
Os avaliadores baseados em código permitem trazer uma função AWS Lambda para realizar as avaliações. Esse tipo de avaliador é ideal quando você tem métodos de pontuação heurísticos que não exigem compreensão de linguagem para verificar. Um avaliador LLM pode julgar se uma resposta soa correta, mas não consegue confirmar de forma confiável que um valor específico de contracheque aparece literalmente na resposta, ou que um ID de requisição segue um formato específico. Para essas verificações determinísticas, código customizado é mais rápido, mais barato e mais confiável.
Quatro situações onde avaliadores baseados em código são especialmente úteis:
- Validação exata de dados — quando o agente deve retornar valores específicos de uma fonte de dados, como saldos, IDs de transação ou preços.
- Conformidade de formato — quando respostas devem seguir restrições estruturais, como limites de tamanho, frases obrigatórias ou schemas de saída.
- Cumprimento de regras de negócio — políticas que exigem interpretação precisa, como aplicação correta de regras de desconto ou citação da cláusula regulatória certa.
- Monitoramento de produção em alto volume — invocações Lambda custam uma fração da inferência LLM, tornando avaliadores baseados em código a escolha certa quando toda sessão de produção precisa ser pontuada continuamente em escala.
Avaliando agentes com Ground Truth
A pontuação via LLM-as-a-Judge diz se as respostas parecem corretas e úteis pelos padrões de um modelo de linguagem de propósito geral. A avaliação com Ground Truth vai além, permitindo que você especifique a resposta esperada, as ferramentas que deveriam ter sido chamadas e os resultados que a sessão deveria ter alcançado.
O AgentCore Evaluations suporta três tipos de inputs de referência Ground Truth, cada um consumido por um conjunto específico de avaliadores:
- expected_response — usado pelo avaliador Builtin.Correctness para medir similaridade entre a resposta do agente e a resposta correta conhecida.
- expected_trajectory — usado pelos avaliadores de correspondência de trajetória para verificar se o agente chamou as ferramentas certas na sequência correta.
- assertions — usado pelo Builtin.GoalSuccessRate para verificar se a sessão satisfez um conjunto de declarações em linguagem natural sobre resultados esperados.
Esses inputs são opcionais e independentes. Avaliadores que não requerem Ground Truth, como Builtin.Helpfulness e Builtin.ResponseRelevance, podem ser incluídos na mesma chamada que avaliadores de Ground Truth, e cada avaliador lê apenas os campos que precisa.
Boas práticas para avaliação de agentes
Os critérios de sucesso para o seu agente tipicamente combinam três dimensões: a qualidade das respostas, a latência com que os usuários as recebem e o custo de inferência. O AgentCore Evaluations foca na dimensão de qualidade, enquanto métricas operacionais como latência e custo estão disponíveis através da Observabilidade do AgentCore no CloudWatch.
Desenvolvimento orientado por evidências
- Estabeleça uma baseline do desempenho do seu agente com dados sintéticos e do mundo real. Meça antes e depois de cada mudança para que melhorias sejam baseadas em evidências, não em intuição.
- Rode testes A/B com rigor estatístico para cada mudança. Seja atualizando um prompt do sistema, trocando um modelo ou adicionando uma ferramenta, compare performance usando o mesmo conjunto de avaliadores antes e depois do deploy.
- Execute testes repetidos — pelo menos 10 por pergunta — organizados por categoria para medir confiabilidade. A variação entre execuções repetidas revela onde seu agente é consistente e onde precisa de trabalho.
Avaliação multidimensional
- Defina como o sucesso se parece desde cedo, usando critérios multidimensionais que reflitam o propósito real do agente.
- Avalie cada passo no workflow do agente, não apenas os resultados finais. Medir seleção de ferramenta, precisão de parâmetros e qualidade de resposta de forma independente dá a precisão diagnóstica para corrigir problemas onde eles realmente ocorrem.
- Envolva especialistas no assunto no design das suas métricas e na definição de cobertura de tarefas. O input de especialistas mantém seus avaliadores ancorados em expectativas do mundo real e captura pontos cegos que a pontuação automatizada sozinha pode não perceber.
- Comece com avaliadores built-in para estabelecer medições de baseline, depois crie avaliadores customizados conforme suas necessidades amadurecem.
Medição contínua
- Detecte drift comparando o comportamento em produção com suas baselines de teste. Configure alarmes no CloudWatch em métricas-chave para capturar regressões antes que atinjam uma base ampla de usuários.
- Lembre-se que seu dataset de teste evolui com o agente, seus usuários e os cenários adversários que você encontra. Atualize-o regularmente conforme edge cases emergem em produção e requisitos mudam.
Diagnosticando padrões comuns de avaliação
Entender como interpretar os resultados de avaliação é tão importante quanto configurar o serviço. Aqui estão alguns padrões específicos que você pode encontrar conforme escala sua aplicação:
- Pontuações baixas em todos os avaliadores — o problema tipicamente é fundamental. Comece revisando pontuações de Context Relevance para determinar se o agente tem acesso à informação que precisa. Verifique o prompt do sistema quanto à clareza e completude.
- Pontuações inconsistentes para interações similares — geralmente aponta para problemas de configuração de avaliação em vez de problemas do agente. Se estiver usando avaliadores customizados, verifique se suas instruções são específicas o suficiente e se cada nível de pontuação tem definições claras e distinguíveis.
- Alta Tool Selection Accuracy mas baixo Goal Success Rate — o agente seleciona ferramentas apropriadas mas falha em completar os objetivos do usuário. Esse padrão sugere que pode ser necessário adicionar ferramentas para lidar com certas solicitações, ou que o agente tem dificuldade com tarefas que requerem múltiplas chamadas sequenciais de ferramentas.
- Avaliações lentas ou falhando por throttling — reduza sua taxa de amostragem para avaliar uma porcentagem menor de sessões. Reduza a quantidade de avaliadores. Para avaliadores customizados, solicite aumentos de quota ou troque para um modelo com quotas padrão mais altas.
O impacto real para times que trabalham com IA
Para equipes que estão escalando o uso de agentes de IA dentro das suas organizações, o maior benefício do Amazon Bedrock AgentCore Evaluations não é apenas tecnológico, é cultural. Ter uma infraestrutura de avaliação confiável muda a forma como o time toma decisões. Em vez de depender da intuição de quem desenvolveu o agente ou de feedbacks esparsos de usuários, as decisões passam a ser guiadas por métricas objetivas que todos podem acompanhar e discutir. Isso reduz conflitos internos, acelera o ciclo de iteração e aumenta a confiança do time nas mudanças que está fazendo.
Do ponto de vista de negócio, a avaliação de desempenho contínua também ajuda a justificar investimentos em modelos de linguagem mais avançados ou em melhorias na arquitetura do agente. Quando você consegue mostrar com dados que uma mudança específica aumentou a acurácia das respostas ou reduziu o número de chamadas de ferramentas incorretas, fica muito mais fácil conseguir aprovação para continuar evoluindo o produto. Isso é especialmente relevante em ambientes corporativos onde a adoção de IA ainda enfrenta ceticismo e onde resultados concretos fazem toda a diferença.
Com avaliação sob demanda ancorando o workflow de desenvolvimento e avaliação online fornecendo visibilidade contínua em produção, qualidade se torna uma propriedade mensurável e melhorável ao longo de todo o ciclo de vida do agente. Os relacionamentos entre avaliadores e os padrões diagnósticos oferecem um framework não apenas para pontuar agentes, mas para entender onde e por que problemas de qualidade ocorrem e onde concentrar os esforços de melhoria.
No final das contas, é a experiência do usuário que determina o sucesso ou o fracasso de qualquer agente de IA em produção. Não adianta ter o modelo mais sofisticado do mercado se ele não consegue responder às perguntas reais dos seus usuários de forma consistente e confiável. O AgentCore Evaluations existe exatamente para garantir que esse padrão de qualidade seja mensurável, rastreável e continuamente melhorado, transformando o desenvolvimento de agentes de uma arte baseada em intuição para uma disciplina baseada em evidências. 💡
