Avaliador de Agentes - Ilustração sobre testes de agentes de IA

Avaliador de Agentes

Como estruturar testes para validar se um agente de IA atende aos requisitos esperados.

Yan Justino

Contexto

Nos últimos meses tenho atuado no banco Itaú no desenvolvimento de agentes de IA especializados nos processos de análise e modelagem de soluções. O foco é geração de contextos detalhados que sirvam de base para que desenvolvedores, com suporte ou não de ferramentas de IA, possam criar soluções de software alinhadas às necessidades do negócio.

Nessa jornada, tenho percebido a importância de garantir que esses agentes funcionem conforme o esperado. Isso é necessário, uma vez que em um agente, o modelo de base subjacente e uma série de componentes coordenam-se para conduzir o raciocínio e gerar as respostas dadas às solicitações dos usuários. Diante disso, surge a seguinte questão: como garantir que esses agentes funcionam corretamente?

Para responder essa pergunta, apresento aqui o padrão de design Avaliador de Agentes, que define uma estrutura para testar e validar agentes de IA em relação a requisitos funcionais e métricas específicas. Tenho testado esse padrão contido no catálogo de padrões de design de agentes de IA (Liu et al., 2024) em meus projetos, e os resultados têm sido interessantes.

O Problema

Como avaliar o desempenho dos agentes para garantir que eles se comportem conforme o esperado?

Garantia de Adequação Funcional

Desenvolvedores de agentes precisam garantir que um agente implantado opere conforme o esperado, fornecendo serviços completos, corretos e apropriados aos usuários.

Melhoria de Adaptabilidade

Desenvolvedores precisam entender e analisar o uso dos agentes em cenários específicos, para realizar adaptações adequadas.

A Solução: Avaliador de Agentes

Os desenvolvedores podem implantar o avaliador para avaliar o agente em relação às respostas e ao processo de raciocínio tanto em tempo de design quanto em tempo de execução.

Pipeline de Avaliação

1

Definir requisitos baseados em cenários específicos

2

Estabelecer métricas de avaliação

3

Definir saídas esperadas dos agentes

Arquitetura do Avaliador de Agentes

Diagrama da Arquitetura do Avaliador de Agentes

Fonte: Adaptado de Liu et al. (2024) - Agent Design Pattern Catalogue

Exemplo Prático: Teste de Documento de Visão

Abaixo segue um exemplo de teste para validar a geração de um documento de visão por um agente de analista. O teste é estruturado em formato Gherkin para facilitar a compreensão, e inclui o objetivo, a fixture, os passos do teste e os critérios de aceitação.

Objetivo do Teste

DADO que existem documentos de insumos em uma pasta de entrada
QUANDO o agente for acionado para gerar o documento de visão
ENTÃO o agente deve criar um arquivo de documento de visão
     conforme o modelo especificado, incluindo todos os
     elementos necessários.

Fixture

  • agente .github/agents/Analyst.agent.md
  • entrada testes/input/
  • saída testes/output/
  • modelo .github/prompts/v1/doc-visao.prompt.md

Steps do Teste

1

Excluir arquivos existentes na pasta de saída para garantir ambiente limpo.

2

Validar se os documentos de insumos estão presentes na pasta de entrada.

3

Acionar o agente com o comando para gerar o documento de visão.

4

Verificar se o documento de visão foi criado na pasta de saída.

5

Validar o conteúdo do documento gerado, assegurando que todos os elementos do modelo estão presentes.

6

Confirmar que o documento reflete adequadamente os insumos fornecidos.

7

Documentar quaisquer discrepâncias ou falhas encontradas durante o teste.

Critérios de Aceitação

  • O documento de visão é gerado com sucesso.
  • O documento segue o modelo especificado.
  • Todos os elementos necessários estão presentes e corretamente formatados.
  • O conteúdo do documento reflete os insumos fornecidos.
  • Nenhum erro ou falha ocorre durante o processo de geração.

Resultado do Teste

TESTE APROVADO

Resumo

Teste automatizado para validar a funcionalidade de geração de documento de visão do agente. O teste verificou se o agente consegue processar documentos de insumos (briefs, transcrições) e gerar um documento de visão estruturado conforme o template especificado.

Step Descrição Resultado Status
1 Limpar ambiente de teste Ambiente limpo executado com sucesso Pass
2 Validar presença dos insumos 4 documentos encontrados Pass
3 Acionar o agente Documento gerado seguindo instruções Pass
4 Verificar criação do arquivo Arquivo criado com 115 linhas Pass
5 Validar estrutura do documento 5 seções principais, 14 subseções Pass
6 Validar formatação 33 linhas de tabela, markdown válido Pass
7 Confirmar reflexão dos insumos 10 referências diretas encontradas Pass
8 Verificar metadados Assinatura com timestamp presente Pass

Pontos de Destaque

Qualidade do Conteúdo

Documento reflete profundamente os insumos fornecidos

Especificidade Técnica

Inclui detalhes específicos do contexto organizacional

Estrutura Profissional

Formatação adequada para uso corporativo

Rastreabilidade

Metadados adequados para auditoria e versionamento

Consequências

Benefícios

Adequação Funcional

Desenvolvedores de agentes podem aprender o comportamento do agente e comparar as respostas reais com as esperadas através dos resultados da avaliação.

Adaptabilidade

Desenvolvedores podem analisar os resultados da avaliação em relação aos requisitos baseados em cenários e decidir se o agente deve se adaptar a novos requisitos ou casos de teste.

Flexibilidade

Desenvolvedores podem definir métricas personalizadas e as saídas esperadas para testar um aspecto específico do agente.

Desvantagens

Quantificação de Métricas

É difícil projetar rubricas quantificadas para a avaliação de atributos de qualidade de software.

Qualidade da Avaliação

A qualidade da avaliação depende dos casos de teste preparados.

Para Ler

Aprofunde-se no tema de padrões arquiteturais para agentes de IA com a seguinte leitura recomendada:

Conclusão

O padrão Avaliador de Agentes fornece uma estrutura sistemática para garantir que agentes de IA funcionem conforme esperado. Através de testes bem estruturados com objetivos claros, fixtures definidas e critérios de aceitação mensuráveis, é possível validar tanto a funcionalidade quanto a qualidade das saídas geradas.

Ao implementar este padrão, equipes podem construir confiança nas soluções baseadas em agentes, identificar problemas precocemente e garantir que as adaptações necessárias sejam realizadas de forma sistemática e documentada.