19 pontos por GN⁺ 2025-04-03 | 1 comentários | Compartilhar no WhatsApp
  • Aplicações baseadas em LLMs (modelos de linguagem de grande porte) são difíceis de avaliar adequadamente com métodos de teste tradicionais por causa da natureza não determinística das saídas
  • Por isso, métodos de avaliação dedicados (evals) são essenciais para manter e melhorar o desempenho de sistemas com LLM

Por que evals são importantes

  • Estabelecer critérios de desempenho: oferecem direcionamento sobre o desempenho do modelo e definem benchmarks comparáveis
  • Garantir consistência e confiabilidade: permitem detectar e controlar antecipadamente saídas imprevisíveis
  • Indicar caminhos de melhoria: deixam claros os pontos de degradação de desempenho, permitindo melhorias direcionadas
  • Permitir testes de regressão: verificam se o desempenho foi mantido após mudanças, garantindo estabilidade

Elementos centrais da avaliação antes do deploy

Por que a avaliação pré-deploy é importante

  • Permite medir o desempenho cedo e compará-lo
  • Permite detectar com antecedência problemas de regressão quando houver mudanças em código, prompts ou parâmetros

Como realizar a avaliação

1. Criar um dataset de Ground Truth

  • É necessário um dataset composto por pares de pergunta e resposta elaborados por especialistas
  • É importante incluir cenários diversos que reflitam os tipos de perguntas de usuários reais
Um LLM pode gerar o Ground Truth?
  • Um LLM pode ajudar, mas não é recomendado usá-lo sozinho para gerar isso
    • Falta compreensão do comportamento do usuário
    • Perguntas e respostas adequadas ao contexto exigem revisão humana
    • A validação humana é indispensável para garantir aderência ao domínio e qualidade

2. Escolher métricas de avaliação

  • Answer relevancy: se fornece uma resposta direta e significativa para a pergunta
  • Coherence: fluxo lógico e clareza da resposta
  • Contextual relevance: o quanto considera bem o contexto da conversa
  • Responsibility: se a saída é responsável em termos de ética, toxicidade e viés

3. Métricas de avaliação para RAG

  • Métricas de geração:
    • Faithfulness: se é fiel aos fatos
    • Answer relevancy: adequação da resposta
  • Métricas de recuperação:
    • Context precision: proporção entre sinal relevante e ruído nas informações recuperadas
    • Context recall: se recuperou bem as informações necessárias para chegar à resposta correta

4. Métricas específicas por tarefa

  • São necessárias métricas personalizadas para cada tarefa específica
    • Ex.: em sumarização, Fluency, Coherence, Consistency, Relevance

5. Calcular pontuações e ajustar o sistema

  • Para cada métrica, calcula-se uma pontuação comparando a saída real com o Ground Truth
  • Ex.:
    • Recall baixo: reduzir o chunk size
    • Precision baixa: considerar a introdução de reranking
  • Exemplos de bibliotecas de avaliação: DeepEval, Relari-ai

Técnica de avaliação LLM-as-Judge

  • Avaliação sem Ground Truth usando um LLM como o GPT-4
  • Exemplos: framework G-eval, artigos sobre Vicuna e QLoRA
  • Desvantagens:
    • Algumas métricas (ex.: Context Recall) não podem ser medidas sem Ground Truth
    • Em precisão e granularidade, a avaliação humana é superior
  • Conclusão: o ideal é combinar LLM-as-Judge com Ground Truth

Como integrar avaliação na etapa de deploy

  • Integrar a automação da avaliação ao pipeline de deploy
    • Executar testes automáticos antes de um commit de código ou do deploy
    • Ex.: uso do Giskard para testes automáticos de toxicidade e detecção de alucinações
  • Também é preciso incluir testes para as etapas de pré-processamento e coleta de dados

Avaliação pós-deploy e o data flywheel

Monitoramento em produção

  • Rastreamento em tempo real de entradas e saídas
  • Sessões periódicas de avaliação com especialistas do domínio
  • Garantir canais de feedback dos usuários

Estratégia de data flywheel

  • Construir um loop contínuo de melhoria aproveitando dados e feedback gerados em produção
    • Ex.: analisar padrões de perguntas dos usuários → melhorar o método de recuperação
    • Ajustar prompts, parâmetros de inferência e método de recuperação com base em métricas
  • Também pode ser necessário mudar as métricas conforme o comportamento dos usuários e os cenários de falha

Conclusão: a estratégia “Evals First” é a base de produtos com LLM confiáveis

  • É preciso adotar uma mentalidade orientada à avaliação desde o início do desenvolvimento de aplicações com LLM
  • O ponto central é definir corretamente as métricas e os critérios desde cedo e usá-los como referência para desenvolvimento e deploy
  • A avaliação deve ser tratada não como uma atividade posterior, mas como um processo central de desenvolvimento para construir sistemas de IA confiáveis e centrados no usuário

1 comentários

 
winterjung 2025-04-03

Pela minha experiência, e como também aparece em outros casos como https://blog.lawrencejones.dev/ai-mvp/, os modelos mais recentes não garantem necessariamente resultados melhores. Sempre que se ajusta o modelo ou o prompt, é preciso fazer uma avaliação com um conjunto de dados, e é até um pouco irônico que, por mais que o LLM ajude no julgamento, a pessoa ainda tenha que criar manualmente, um por um, o conjunto de dados de ground truth para o modelo de LLM rsrs