Construir uma aplicação bem-sucedida baseada em LLM começa com a definição clara dos seus critérios de sucesso e, em seguida, com o design de avaliações para medir o desempenho em relação a eles. Esse ciclo é central para a engenharia de prompts.
Defina seus critérios de sucesso
Bons critérios de sucesso são:
Específicos: Defina claramente o que você quer alcançar. Em vez de "bom desempenho", especifique "classificação precisa de sentimento".
Mensuráveis: Use métricas quantitativas ou escalas qualitativas bem definidas. Números fornecem clareza e escalabilidade, mas medidas qualitativas podem ser valiosas se aplicadas de forma consistente junto com medidas quantitativas.
Até mesmo tópicos "nebulosos" como ética e segurança podem ser quantificados:
Critérios de segurança
Ruim
Saídas seguras
Bom
Menos de 0,1% das saídas em 10.000 testes sinalizadas como tóxicas pelo nosso filtro de conteúdo.
Alcançáveis: Baseie suas metas em benchmarks do setor, experimentos anteriores, pesquisas de IA ou conhecimento de especialistas. Suas métricas de sucesso não devem ser irrealistas em relação às capacidades atuais dos modelos de fronteira.
Relevantes: Alinhe seus critérios com o propósito da sua aplicação e as necessidades dos usuários. Alta precisão de citações pode ser crítica para aplicativos médicos, mas menos importante para chatbots casuais.
Critérios de sucesso comuns
Aqui estão alguns critérios que podem ser importantes para o seu caso de uso. Esta lista não é exaustiva.
A maioria dos casos de uso precisará de avaliação multidimensional ao longo de vários critérios de sucesso.
Construa avaliações
Princípios de design de avaliações
Seja específico à tarefa: Projete avaliações que espelhem a distribuição de tarefas do mundo real. Não se esqueça de considerar casos extremos!
Automatize quando possível: Estruture as perguntas para permitir avaliação automatizada (por exemplo, múltipla escolha, correspondência de string, avaliação por código, avaliação por LLM).
Priorize volume sobre qualidade: Mais perguntas com avaliação automatizada de sinal ligeiramente menor é melhor do que menos perguntas com avaliações manuais humanas de alta qualidade.
Exemplos de avaliações
Escrever centenas de casos de teste pode ser difícil de fazer manualmente! Peça ao Claude para ajudar você a gerar mais a partir de um conjunto base de casos de teste de exemplo.
Se você não sabe quais métodos de avaliação podem ser úteis para avaliar seus critérios de sucesso, você também pode fazer um brainstorm com o Claude!
Avalie suas avaliações
Ao decidir qual método usar para avaliar as avaliações, escolha o método mais rápido, mais confiável e mais escalável:
Avaliação baseada em código: Mais rápida e confiável, extremamente escalável, mas também carece de nuances para julgamentos mais complexos que exigem menos rigidez baseada em regras.
Correspondência exata: output == golden_answer
Correspondência de string: key_phrase in output
Avaliação humana: Mais flexível e de alta qualidade, mas lenta e cara. Evite se possível.
Avaliação baseada em LLM: Rápida e flexível, escalável e adequada para julgamentos complexos. Teste primeiro para garantir confiabilidade e depois escale.
Dicas para avaliação baseada em LLM
Tenha rubricas detalhadas e claras: "A resposta deve sempre mencionar 'Acme Inc.' na primeira frase. Se não mencionar, a resposta é automaticamente avaliada como 'incorreta'."
Um determinado caso de uso, ou até mesmo um critério de sucesso específico para esse caso de uso, pode exigir várias rubricas para uma avaliação holística.
Empírica ou específica: Por exemplo, instrua o LLM a gerar apenas 'correto' ou 'incorreto', ou a julgar em uma escala de 1 a 5. Avaliações puramente qualitativas são difíceis de avaliar rapidamente e em escala.
Incentive o raciocínio: Peça ao LLM para pensar primeiro antes de decidir uma pontuação de avaliação e, em seguida, descarte o raciocínio. Isso aumenta o desempenho da avaliação, particularmente para tarefas que exigem julgamento complexo.