Agentes e pipelines agênticos estão sendo criados e lançados em um ritmo acelerado como nunca antes. Mas como podemos determinar se eles são bons?
Por que a avaliação de agentes de IA é importante
Pense em um agente de IA como um rastreador de condicionamento físico. O rastreador sempre funciona, nunca diz "Não foi possível obter dados precisos" e sempre fornecerá uma leitura quando você pressionar o botão, mas, na maioria das vezes, essas leituras não são precisas. O mesmo vale para os agentes: cada equipe tem um para seu caso de uso específico, e eles sempre geram uma resposta. Mas poucos sabem qual é o desempenho deles em cenários do mundo real. Presumimos que eles funcionam, mas não sabemos realmente o quanto.
O desenvolvimento de estruturas robustas de avaliação de agentes de IA tornou-se essencial por vários motivos convincentes:
-
- Qualidade garantia: À medida que os agentes de IA se tornam mais autônomos e lidam com tarefas críticas, a avaliação sistemática garante que eles atendam aos padrões de confiabilidade antes da implementação
- Desempenho benchmarking: As métricas objetivas permitem o acompanhamento consistente do desempenho em todas as iterações do modelo e a comparação com os padrões do setor
- Direcionado aprimoramento: A análise detalhada identifica pontos fracos específicos, permitindo a alocação eficiente de recursos de desenvolvimento
- Alinhamento verificação: Garante que os agentes ajam de acordo com as intenções do projeto e não desenvolvam comportamentos inesperados em casos extremos
- Conformidade e risco gerenciamento: Facilita a documentação dos recursos e das limitações do agente para requisitos regulatórios e legais
- Investimento justificativa: Fornece evidências quantitativas do valor e da melhoria do sistema de IA para as partes interessadas e os tomadores de decisão
Detalhamento do processo de avaliação de agentes
A avaliação de um agente, seja ele um chatbot, um sistema de geração aumentada de recuperação (RAG) ou um LLM que usa ferramentas, requer uma abordagem sistemática para garantir que o modelo seja preciso, confiável e robusto. Vamos examinar as etapas típicas de como um fluxo de trabalho agêntico pode ser avaliado:
-
- Preparar a verdade básica: Use conjuntos de dados públicos se eles se adequarem ao seu caso de uso ou, de preferência, gere dados sintéticos adaptados à funcionalidade do seu agente
- Executar o agente no conjunto de dados: Alimentar cada entrada/consulta do conjunto de dados para o agente
- Registre todas as atividades do agenterespostas finais, chamadas de ferramentas, resultados e etapas de raciocínio, se aplicável
- Criar e realizar um experimento: Avaliar as respostas do agente. Comparar as respostas do agente com as respostas esperadas/referência. Lidar com correspondências parciais, saídas aninhadas ou dados estruturados usando lógica de comparação personalizada, se necessário. Agregar resultados e calcular métricas de avaliação (precisão, taxa de sucesso, etc.).
- Resultados persistentes: Armazenar os resultados da avaliação para que possam ser reproduzidos e consultados posteriormente. Identificar pontos de falha a partir das métricas

Um fluxo de trabalho modular ideal usando a estrutura
Preparar a verdade básica
Um dos principais desafios na avaliação de sistemas agênticos é a disponibilidade da verdade básica, ou seja, referências com as quais você compara as respostas do agente para avaliá-lo. Para avaliar um agente típico de forma eficaz, você precisa de dados abrangentes de verdade básica que cubram chamadas de ferramentas, parâmetros de ferramentas, saídas de ferramentas e respostas finais. A coleta e a rotulagem de todos esses dados de verdade básica consomem muito tempo e exigem uma grande quantidade de contribuição humana.
Se não tivermos os recursos para preparar uma verdade básica com curadoria para a avaliação, temos duas opções. Podemos aproveitar os conjuntos de dados de avaliação disponíveis publicamente ou gerar dados sintéticos que possam ser usados como verdade fundamental.
Um gerador de dados sintéticos lida com a criação de verdades básicas selecionadas a partir de documentos brutos, sendo que documentos brutos se referem a qualquer documento que contenha informações sobre o caso de uso do agente. Por exemplo, se o agente for um planejador de viagens, um documento que contenha todos os locais, juntamente com informações sobre o local, pode ser fornecido como entrada para o gerador de dados que gera um conjunto de pares de perguntas e respostas que podem ser usados para avaliar esse agente. Você pode gerar consultas de salto único (consultas que podem ser respondidas a partir de uma única instância de dados) ou consultas de salto múltiplo (só podem ser respondidas a partir de várias fontes).
Uma amostra da saída do gerador:
1 2 3 4 5 6 |
{ "pergunta": "Como as regras da casa para níveis de ruído variam entre as opções de aluguel disponíveis em Hell's Kitchen, Manhattan?", "resposta": [ "As regras da casa para níveis de ruído entre ......." ], } |
Mas essa solução tem suas próprias desvantagens: os dados gerados são inditerminados e sempre conterão algum tipo de ruído. Além disso, é necessário um LLM realmente bom para gerar as melhores amostras, e esses LLMs são, em sua maioria, caros e consomem muitos recursos.
Executar o agente na verdade terrestre
Quando a verdade básica estiver pronta, a próxima etapa é executar o agente nesse conjunto de dados. Execute o agente nos pares pergunta-resposta criados pelo gerador ou nas verdades básicas de referência anotadas manualmente e recupere a saída de estado, em que cada estado do agente está no seguinte formato (esse estado é registrado por padrão se você estiver usando estruturas populares como o LangGraph):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "pergunta": "Qual é o preço do cobre?", "agent_responses": [ "O preço atual do cobre é de $0,0098 por grama." ], "agent_tool_calls": [ { "name" (nome): "get_price", "args": { "item": "cobre" } } ], "agent_tool_outputs": [ "$0.0098" ], }, |
Passe essa saída do agente para o modelo de dados (Conjunto de dados de avaliação) para criar um conjunto de dados dourados (o conjunto de dados dourado aqui se refere ao conjunto de dados que contém todos os dados necessários para a avaliação, ou seja, a combinação da saída do agente e a verdade básica na qual o agente foi executado). A estrutura inclui uma classe LoadOperator para envolver e manter esses dados. Ela garante que os conjuntos de dados sintéticos sejam:
-
- Validado em relação ao esquema
- Versão automática
- Armazenado no Couchbase com um dataset_description
Um componente essencial na recuperação e no armazenamento de dados é o LoadOperator. Ele lida com a ingestão, o armazenamento e a recuperação de conjuntos de dados de avaliação, abstraindo os detalhes do armazenamento do Couchbase e expondo uma interface limpa para o restante da estrutura. Você pode carregar e recuperar o conjunto de dados de avaliação de e para o armazenamento KV do Couchbase usando a função dataset_id.
Criar e realizar um experimento
Quando tivermos as respostas do sistema agêntico (o conjunto de dados dourados), iniciamos um experimento (uma instância única e gerenciada de avaliação realizada no conjunto de dados golden) usando a estrutura com os dados de avaliação e um conjunto de opções de experimento que consiste nas métricas (mais sobre métricas na próxima seção) a serem usadas e outras informações sobre o seu sistema agêntico.
O gerenciamento de experimentos em nossa estrutura vai além do simples registro de resultados, ele fornece um sistema abrangente e automatizado para rastrear todos os aspectos de uma execução de avaliação. Cada experimento é anexado a um conjunto de dados identificado de forma exclusiva, carregado e versionado com metadados descritivos e registros de data e hora. Isso garante que cada conjunto de dados, seja ele sintético ou real, possa ser rastreado e reutilizado com total transparência. Parâmetros configuráveis (por exemplo, pontos de verificação do modelo, versões de prompt, cadeias de ferramentas) também são armazenados junto com os resultados, criando uma trilha de metadados para cada execução.
O gerenciador de experimentos também oferece a possibilidade de iniciar uma cadeia de experimentos, com cada experimento sucessivo rastreando as alterações no agente a partir do experimento principal. Os experimentos são versionados usando o Git, faça o commit do seu código e execute o experimento para desenvolver iterativamente seus agentes e comparar as avaliações realizadas no mesmo agente entre as versões. Os metadados de cada experimento contêm registros de diferenças de código, métricas médias e configurações que podem ser usadas para analisar se uma alteração melhorou ou não o sistema agêntico. Além disso, todos os conjuntos de dados e experimentos usados em nossa estrutura são versionados, consultáveis e dimensionáveis. Podemos armazenar grandes conjuntos de avaliação, recuperar subconjuntos para análise direcionada e rastrear metadados como carimbos de data/hora e descrições de conjuntos de dados, um enorme aprimoramento em relação a fluxos de trabalho baseados em arquivos simples, planilhas ou documentos na memória.
Persistir os resultados no Couchbase
A saída de um experimento consiste em arquivos json e csv com instâncias de dados e as pontuações correspondentes. Um exemplo de resultado para uma conversa com um único agente (instância de dados individual) é mostrado abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
[ { "user_input": "Qual é o preço do cobre?", "retrieved_contexts" (contextos recuperados): nulo, "resposta": nulo, "referência": nulo, "agent_responses": [ "", "O preço atual do cobre é de $0,0098 por grama." ], "agent_tool_calls": [ { "name" (nome): "get_metal_price", "args": { "nome_do_metal": "cobre" } } ], "agent_tool_outputs": [ "0.0098" ], "reference_tool_calls": [ { "name" (nome): "get_metal_price", "args": { "nome_do_metal": "cobre" } } ], "gt_answers": [ "", "O preço atual do cobre é de $0,0098 por grama." ], "gt_tool_outputs": [ "0.0098" ], "answer_faithfulness" (resposta_fidelidade): 3, "logical_coherence" (coerência lógica): 1.0, "agent_response_correctness" (correção da resposta do agente): 0.5 }, ] |
Os resultados são armazenados no repositório KV do Couchbase com um ID de experimento. Os experimentos podem ser recuperados usando a função LoadOperatorpermitindo que você consulte e compare experimentos realizados durante uma sessão diferente.
Em resumo, com a estrutura, a execução de um experimento não é apenas uma execução única de script. É um processo gerenciado:
-
- Você carrega ou gera um conjunto de dados de verdade terrestre, que é versionado e descrito
- Configure o agente e os parâmetros de avaliação, que são todos registrados
- Você executa a avaliação, e a estrutura armazena automaticamente os resultados, juntamente com todos os metadados relevantes
- Posteriormente, você pode recuperar qualquer experimento, ver exatamente quais foram as alterações feitas no sistema e compará-lo com outras execuções
- Esse nível de gerenciamento de experimentos é o que transforma a avaliação de uma "caixa preta" em um processo transparente, repetível e colaborativo
Como isso funciona?

Uma arquitetura de nível médio da estrutura
No centro da estrutura, há quatro componentes principais que trabalham juntos para produzir os resultados finais.
Gerador de dados sintéticos
O gerador de dados cria pares sintéticos de perguntas e respostas a partir de documentos. Esses pares de perguntas e respostas podem ser usados como verdade básica para avaliar seu sistema agêntico usando nossa estrutura. O gerador de dados recebe documentos (CSV, JSON ou texto simples) e utiliza um prompt de poucos disparos LLM com ajuste fino para gerar os pares. O processo de geração é o seguinte:
-
- Os documentos ingeridos são limpos e pré-processados
- A REBEL é usado para extrair relacionamentos entre entidades de cada documento. REBEL, um seq2seq modelo baseado no BART que realiza a extração de relações de ponta a ponta para mais de 200 tipos de relações diferentes
- Um mapa de entidade-relação é criado para cada documento. Cada um desses mapas de entidade-relação é incorporado usando o modelo de incorporação MiniLM-V2 (384 dim embeddings),
- Os embeddings de cada documento são agrupados usando algoritmos de agrupamento de embedding, como HDBSCAN para obter "n" grupos de documentos semanticamente semelhantes
- Esses clusters de documentos são fornecidos ao LLM para gerar pares de respostas de consultas com vários saltos

Arquitetura do gerador de dados sintéticos
Informações adicionais e instruções personalizadas também podem ser fornecidas se o usuário quiser gerar a consulta e as respostas em um formato ou estilo específico.
Conjunto de dados de avaliação
Estrutura de dados principal para gerenciar dados de verdade terrestre. O Conjunto de dados de avaliação recebe os dados da verdade terrestre e as saídas do agente (chamadas de ferramentas, respostas do agente etc.) e estrutura os dados brutos em um formato fácil de processar para o processo de validação que se segue. Ela transforma o conjunto de dados dourado (conjunto de dados que contém a verdade básica e as respostas do agente para o mesmo) em uma lista de atributos que são importantes para a avaliação e podem ser facilmente processados pelo mecanismo de validação. O conjunto de dados de avaliação criado tem um ID de conjunto de dados que pode ser usado para extrair o conjunto de dados do armazenamento de valores-chave do Couchbase, eliminando a necessidade de armazenar e gerenciar o conjunto de dados localmente.
Mecanismo de validação
Processa o conjunto de dados de avaliação e realiza a avaliação no mesmo. Conectado a um catálogo de métricas que fornece aos usuários um conjunto completo de métricas para avaliar cada parte do sistema agêntico/RAG. O catálogo de métricas também é integrado ao RAGAS, proporcionando aos usuários a flexibilidade de usar as métricas do RAGAS, se necessário. O mecanismo de validação calcula as métricas para o conjunto de dados de avaliação e combina os resultados para formar um quadro de dados interpretável, juntamente com um índice médio que fornece aos usuários uma ideia da qualidade do sistema geral.
Gerente de experimentos
Módulo central que conecta todos os outros componentes. Cria e gerencia experimentos de avaliação. Um experimento é uma instância individual de avaliação, que consiste em uma saída detalhada e metadados, juntamente com recursos de rastreamento de código para fornecer aos usuários uma visão das alterações feitas em seu sistema agêntico entre dois experimentos.
O gerenciador de experimentos recebe os dados de avaliação e um conjunto de opções de experimentos que consistem nas métricas a serem usadas e em outras informações relacionadas ao seu sistema agêntico e se conecta ao mecanismo de validação para avaliar o conjunto de dados e obter as pontuações calculadas. Em seguida, as pontuações são processadas e formatadas para produzir um relatório de avaliação juntamente com metadados do experimento, o que permite inferir a avaliação e comparar diferentes experimentos.
O gerenciador de experimentos também oferece aos usuários a capacidade de iniciar uma cadeia de experimentos, com cada experimento sucessivo rastreando as alterações no agente a partir do experimento principal. Permite que os usuários desenvolvam seus agentes de forma iterativa e comparem as avaliações realizadas no mesmo agente entre as versões. Os metadados de cada experimento contêm registros de diferenças de código, métricas médias e configurações que podem ser usadas para analisar se uma alteração melhorou ou não o sistema agêntico.
Escolhendo as métricas certas para seu sistema agêntico
Ao avaliar um sistema agêntico, é fundamental selecionar as métricas corretas para avaliar com precisão seu desempenho. A escolha da métrica influencia diretamente a forma como você interpreta o resultado e faz melhorias iterativas. Para sistemas de IA, as métricas devem ser escolhidas com base nas seguintes considerações:
Sistema Tipo
-
- Sistemas RAG: Foco em métricas de recuperação (precisão, recall) e métricas de geração (fidelidade, correção da resposta)
- Sistemas agênticos: Priorizar a precisão da chamada da ferramenta, a coerência lógica e a fidelidade da resposta
Uso Caso Requisitos
-
- Resposta à pergunta: Enfatizar a correção e a relevância das respostas
- Recuperação de informações: Foco na precisão e na recuperação do contexto
- Tarefas de raciocínio: Priorizar a coerência lógica e a fidelidade
Técnica Considerações
-
- Custo de computação: As métricas baseadas em incorporação são mais pesadas do que as baseadas em tokens
- Dependências de API: As métricas do LLM-as-judge exigem acesso à API
- Processamento em lote: Algumas métricas oferecem suporte à avaliação eficiente de lotes
Para facilitar o processo acima, estas são as cinco métricas que fornecem a melhor visão geral do desempenho do seu sistema agêntico:
-
- Ferramenta ctodos precisão: Avalia se o agente usa as ferramentas certas com os parâmetros certos.
- Ferramenta precisão: Compara os resultados da ferramenta com os resultados da ferramenta de verdade. Mede a precisão das ferramentas.
- Agente resposta correção: Avalia a correção das respostas do agente em comparação com a verdade básica. Mede a qualidade da resposta geral do agente.
- Lógico coerência: Avalia o fluxo lógico e o raciocínio nas respostas do agente, ajuda a analisar a cadeia de comando entre os agentes em um sistema e como cada agente trabalha em conjunto para responder à consulta do usuário.
- Resposta fidelidade: Verifica se a resposta do agente é consistente com as saídas de ferramentas obtidas pelo agente.
O estágio final é a análise: agregação de resultados, métricas de computação e, principalmente, compreensão de onde e por que o agente falhou. É aqui que a falta de padronização e automação nas etapas anteriores volta a assombrar o desenvolvedor. A depuração de incompatibilidades, o rastreamento de erros até sua origem e a iteração no agente ou nos dados são lentos e propensos a erros.
Aprofundamento: interpretação eficaz dos resultados
Agora que você selecionou as métricas apropriadas, executou o experimento e obteve os resultados, o que vem a seguir? Como dar sentido aos números aparentemente aleatórios que você coletou? Interpretar esses resultados é uma etapa crucial para entender o comportamento e o desempenho de seu sistema. Há várias estratégias eficazes para analisar os resultados, descobrir insights e avaliar o impacto das alterações que você fez. Essa etapa transforma as métricas brutas em conhecimento acionável sobre os pontos fortes e fracos de seu agente e as áreas que precisam ser aprimoradas.
Técnicas de análise comparativa
Ao comparar duas implementações ou versões diferentes de agentes:
Comparação de métricas lado a lado
-
- Média de cada métrica em todos os casos de teste para ambos os agentes
- Calcule a melhoria relativa entre os sistemas (por exemplo, "O Agente B mostra uma melhoria de 12% na precisão da chamada da ferramenta em relação ao Agente A")
- Use gráficos de radar para visualizar o cenário de desempenho multidimensional
- Identificar pontos fortes complementares (por exemplo, "o Agente A é excelente na seleção de ferramentas, enquanto o Agente B produz respostas mais fiéis")
Análise pareada
-
- Comparar o desempenho em consultas idênticas para identificar diferenças sistemáticas
- Calcule a porcentagem de consultas em que um agente supera o outro
- Identificar os tipos de consulta em que as diferenças de desempenho são mais acentuadas
Exemplo de interpretação: "Embora o Agente B tenha maior precisão média de chamadas de ferramentas (0,87 vs. 0,79), o Agente A tem melhor desempenho em tarefas complexas de raciocínio em várias etapas, sugerindo que o Agente B pode usar padrões mais simples, porém mais confiáveis."
Abordagens de análise de distribuição
Compreender a distribuição das pontuações de métricas fornece uma visão mais profunda do que apenas as médias:
Análise de histograma
-
- Trace a distribuição de pontuações para cada métrica
- Identificar se o desempenho segue uma distribuição normal ou se apresenta agrupamento/bimodalidade
- Comparar o spread (variação) entre diferentes implementações
Análise de quartis
-
- Examine os percentis 25, 50 (mediana) e 75
- Uma grande diferença entre a mediana e o 75º percentil indica um desempenho inconsistente
- Concentrar os esforços de aprimoramento no aumento do quartil inferior
Exemplo de interpretação: "A precisão da chamada de ferramenta do Agente A tem uma distribuição bimodal com picos de 0,4 e 0,9, indicando que ele tem um desempenho muito bom em alguns tipos de consulta, mas tem dificuldades significativas em outros. O Agente B apresenta uma distribuição mais estreita centrada em 0,75, indicando um desempenho mais consistente, mas menos excepcional."
Análise baseada em limites
A definição de limites de desempenho ajuda a quantificar as taxas de sucesso:
Cálculo da taxa de sucesso
-
- Definir limites aceitáveis para cada métrica (por exemplo, precisão da chamada da ferramenta > 0,85)
- Calcule a porcentagem de amostras que excedem cada limite
- Identificar quais limites são mais difíceis de serem atingidos
Análise multicritério
-
- Definir sucesso como o cumprimento de limites em várias métricas simultaneamente
- Calcule a porcentagem de amostras que atendem a todos os critérios
- Identificar os pontos de falha mais comuns
Exemplo de interpretação: "Embora 78% das respostas do Agente A atendam ao nosso limite de precisão de ferramenta de 0,9, apenas 62% atendem simultaneamente ao nosso limite de fidelidade de resposta de 0,85. Isso sugere que o agente ocasionalmente produz resultados corretos por meio de caminhos de raciocínio incorretos."
Ao aplicar essas abordagens analíticas às métricas do agente, você pode desenvolver uma compreensão razoável do desempenho do seu sistema, tomar decisões de aprimoramento e estabelecer padrões de qualidade confiáveis para a implantação. Essa análise sistemática ajuda a ir além das métricas simples para compreender de fato os recursos e as limitações do agente em diferentes contextos.
Exemplo: avaliação de um agente de análise de dados
Testamos essa estrutura em um agente de conversação projetado para responder a consultas com base em dados armazenados no Couchbase. O agente recebe as perguntas do usuário, encaminha a pergunta para uma ferramenta NL2SQL++ que gera consultas SQL++ para buscar os documentos correspondentes no armazenamento e gera uma resposta detalhada e um relatório de análise para a pergunta do usuário usando os documentos recuperados.
Para nossa avaliação, o agente foi executado em um conjunto de dados de listagens do AirBNB que contém os detalhes das listagens do AirBNB nos Estados Unidos. Geramos perguntas e respostas de referência nas instâncias de dados usando o Gerador de dados sintéticos. Abaixo está um exemplo de conjunto de pares de respostas de consulta gerados pelo gerador de dados sintéticos:
1 2 3 4 5 6 7 8 9 10 |
[ { "pergunta": "Que tipo de quarto é oferecido no \"Clean and quiet apt home by the park\"? "resposta": "O tipo de quarto oferecido no \"Apto limpo e tranquilo perto do parque\" é um quarto privativo. Essa conclusão se baseia nos dados recuperados dos anúncios do Airbnb, em que a entrada específica para esse nome de anúncio foi consultada para determinar o tipo de acomodação oferecida. Os dados indicam claramente que o anúncio está classificado no tipo \"Quarto privativo\", o que significa que os hóspedes terão um espaço privativo em uma propriedade compartilhada." }, { "pergunta": "Qual é a política de cancelamento para o \"Skylit Midtown Castle\"? "resposta": "A política de cancelamento do \"Skylit Midtown Castle\" é moderada. Essa conclusão é tirada dos dados recuperados dos anúncios do Airbnb, em que a entrada específica para esse nome de anúncio foi consultada para determinar os termos de cancelamento. Os dados indicam que o anúncio segue uma política de cancelamento moderada, que normalmente permite mais flexibilidade em comparação com políticas rígidas, oferecendo aos hóspedes a possibilidade de cancelar dentro de um determinado período de tempo antes da data de check-in para obter um reembolso total." } ] |
Um conjunto de 40 pares de documentos de consulta foi gerado para esse experimento específico. O agente foi executado nessas consultas geradas e a saída foi registrada para criar o conjunto de dados de avaliação.
O conjunto de dados de avaliação (golden dataset) consiste em:
-
- Perguntas: Perguntas geradas no conjunto de dados
- Respostas da verdade básica: As respostas de referência (corretas) para as perguntas geradas
- Contexto de referência: A fonte de verdade a partir da qual as consultas foram geradas (resultados da ferramenta de verdade terrestre)
- Contexto recuperado: Os documentos recuperados usando a ferramenta NL2SQL++ executada nas consultas geradas (resultados da ferramenta)
- Respostas do agente: As respostas do agente, considerando a consulta e o contexto recuperado
Um experimento foi criado nesse conjunto de dados de avaliação usando três métricas: similaridade semântica, precisão do contexto e relevância da resposta. A similaridade semântica mede a similaridade de incorporação entre os contextos recuperados e de referência. A precisão do contexto mede a precisão dos contextos recuperados com relação à consulta e ao contexto de referência. A relevância da resposta mede a relevância da resposta do agente para a consulta do usuário e o contexto recuperado.
As pontuações médias de métricas, juntamente com os metadados do experimento para esse experimento específico, são fornecidas abaixo. Aqui, "média" refere-se à média de cada métrica nos pontos de dados do conjunto de dados de avaliação:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
{ "experiment_id":"experiment5", "timestamp" (registro de data e hora):"2025-03-20T11:17:46.411457", "llm_model":"gpt-4o", "métricas":["semantic_similarity" (semelhança semântica), "context_precision", "answer_relevancy" (relevância da resposta)], "dataset_size":40, "dataset_id":"11b2d36a-4f00-40d2-bbe7-e614f4a77f1f", "avg_metrics":{ "semantic_similarity" (semelhança semântica):0.85, "context_precision":0.99, "answer_relevancy" (relevância da resposta):0.90, } } |
Uma tabela de análise de qualidade de métrica pode nos ajudar a analisar o desempenho do agente geral em todo o conjunto de dados de avaliação, usando um limite para cada métrica e o número de pontos de dados que produziram uma pontuação acima do limite determinado.
S.No | Métrico | Limite | Amostras acima do limite | Número total de amostras | Precisão (%) |
1 | Similaridade semântica | 0.70 | 40 | 40 | 100.00 |
2 | Precisão de contexto | 0.90 | 40 | 40 | 100.00 |
3 | Relevância da resposta | 0.70 | 37 | 40 | 92.50 |
Em nossa avaliação, o NL2SQL++ demonstrou consistentemente um bom desempenho, com todas as 40 amostras de teste atingindo pontuações de similaridade semântica e precisão de contexto acima do limite predefinido. Isso indica que a ferramenta captura de forma confiável a intenção do usuário e traduz com precisão as consultas em linguagem natural para SQL estruturado.
O LLM responsável pela geração das respostas finais também teve um desempenho excepcional. Enquanto 37 das 40 respostas excederam o limite da métrica, as 3 restantes ficaram um pouco abaixo. Essa pequena variação é esperada, pois os LLMs geram inerentemente novas sequências de tokens em vez de replicar o conteúdo de referência linha por linha. Apesar desses desvios, o modelo manteve a alta precisão das respostas em todos os aspectos e, se não tivesse feito isso, teríamos observado quedas métricas mais significativas.
Relatórios detalhados de experimentos estão disponíveis para inspecionar amostras individuais, inclusive aquelas que não atingiram o limite, fornecendo informações sobre o quanto elas se desviaram e os possíveis motivos.
Conclusão
Essa estrutura foi criada com o requisito principal de fornecer aos usuários um método persistente para avaliar sistemas de IA em vários domínios e casos de uso, simplificando a avaliação por meio do uso de um formato consistente para os dados, automatizando o tratamento de dados e criando cenários de exemplo nos quais é difícil coletar dados reais. Ele também rastreia cada etapa realizada por um agente, o que ajuda quando vários agentes trabalham juntos. No futuro, esperamos que essas ferramentas continuem melhorando, atualizando os casos de teste à medida que as necessidades do mundo real mudam, gerando relatórios fáceis de entender para todos e incluindo verificações para detectar tendências ou comportamentos inseguros. Com isso, podemos garantir que os agentes de IA permaneçam confiáveis, transparentes e, o mais importante, alinhados com as necessidades dos desenvolvedores.