Apresentamos as avaliações de IA: não adivinhe, meça

A magia do LLM pode nos tentar a pular os testes, mas as avaliações são a chave para o envio com confiança.

Imagine que você está criando um protótipo de um criador de temas baseado na Web. É uma ferramenta divertida: em um aplicativo da Web, um usuário insere um nome da empresa e uma descrição, um público-alvo e um tom e humor. O front-end envia isso para o servidor. O servidor usa um modelo de linguagem grande (LLM) para gerar um lema criativo que corresponda ao tom e ao humor esperados, além de uma paleta de cores acessível alinhada à marca. Ele retorna esses dados como um pequeno objeto JSON.

Vamos chamar esse aplicativo de ThemeBuilder.

Entradas e saídas do ThemeBuilder.
O ThemeBuilder mostra um exemplo de tema para a empresa Midnight Coffee. O aplicativo usa o nome, a descrição, o público e o tom da empresa para gerar um lema e uma paleta de cores.

Você escolhe um LLM de base e itera no comando. Seu designer interno gosta das paletas de cores, e os lemas parecem cativantes.

Agora, você tem as seguintes perguntas:

  1. Está tudo pronto para a produção? Você não sabe se a qualidade da saída do aplicativo é consistente o suficiente. Alguns testadores internos relatam paletas quebradas ou lemas fora da marca. Quando você corrige um caso, mais dois bugs aparecem.
  2. Posso mudar de modelo? Talvez você queira fazer upgrade para a versão mais recente do mesmo LLM para economizar latência ou mudar de um serviço gerenciado para um modelo auto-hospedado para reduzir custos. Você não sabe se isso vai melhorar ou piorar a saída do aplicativo e não tem como testar regressões.
  3. É seguro enviar? Alguém relatou uma saída tóxica uma vez, mas você não consegue reproduzi-la. É um acaso ou você deve bloquear o lançamento?

Sua equipe interrompe o lançamento porque a qualidade da saída do LLM varia muito. É difícil criar confiança para enviar sem testes.

Por que adivinhar em vez de testar?

Ao criar com IA pela primeira vez, é tentador analisar algumas saídas, decidir que elas parecem boas e seguir em frente. Por que você confiaria na intuição em vez de medições e dados?

Os algoritmos determinísticos têm uma saída por entrada. Os algoritmos probabilísticos têm várias saídas possíveis por entrada.

É provável que você faça isso porque os LLMs são probabilísticos em vez de determinísticos. Isso significa que, mesmo quando você fornece o mesmo nome da empresa, descrição, público e tom, o ThemeBuilder pode gerar um lema e uma paleta de cores diferentes.

Não há uma única resposta correta para o que é um lema marcante ou uma paleta de cores da marca.

A criatividade do LLM é ótima. Mas o não determinismo parece estar em desacordo com a ideia de engenharia. Portanto, você pode concluir que os aplicativos baseados em LLM provavelmente não podem ser testados.

Avaliações para o resgate

No mundo do LLM, as práticas recomendadas de desenvolvimento permanecem válidas. Podemos e devemos testar nossos aplicativos baseados em LLM. Só precisamos de técnicas diferentes. Essas técnicas são chamadas de avaliações ou evals, para abreviar. As avaliações envolvem novos fluxos de trabalho, mas sua experiência de teste atual é transferida diretamente para a criação de ótimas avaliações.

As avaliações são testes para seus recursos de IA. Esses testes ajudam a criar um loop de feedback importante: se você criar um pipeline de avaliações robusto, os recursos baseados em LLM vão funcionar bem para seus usuários. Em seguida, sua equipe poderá enviar os recursos com confiança.

Se você estiver criando com LLMs, aprender a implementar avaliações robustas é um dos melhores usos do seu tempo.

Agora, aprenda sobre as avaliações.