Buscar

Critério verificável no prompt: o que a IA consegue cumprir

Critério verificável no prompt é a regra que dá para conferir na resposta. Exemplos antes e depois e como trocar instrução decorativa por checagem.

Gabriel Pedroso9 min de leitura
critério verificável em prompt de inteligência artificial

O texto que você está lendo saiu de um briefing com regras como estas: título com no máximo 60 caracteres, descrição entre 120 e 160, zero travessão na prosa, palavra-chave entre 9 e 11 vezes no corpo. Antes de publicar, um script de poucas linhas lê o arquivo e responde se passa ou se reprova.

O mesmo briefing poderia pedir "escreva de forma envolvente". Nenhum script confere isso, e dois revisores humanos dificilmente concordariam sobre o resultado. A primeira regra tem um critério verificável. A segunda tem só boa intenção.

A diferença parece detalhe de quem escreve prompt por hobby. Ela decide se você consegue testar o que pediu à IA, ou se vai descobrir o problema quando o texto já estiver no ar.

Se você não consegue conferir a regra na resposta, ela funciona como enfeite: o modelo trata como sugestão e ninguém cobra. Instrução com critério verificável vira teste, e teste dá para repetir e corrigir.

1Pedidoo que você quer, em texto livre
2Critérioa regra que dá para conferir
3Respostao modelo entrega
4Checagempessoa ou script testa a regra
5Ajusteo critério falho é reescrito
O ciclo completo. Repare que a checagem só existe porque o critério foi escrito antes da resposta.

Instrução decorativa e instrução que dá para conferir

Pegue um pedido comum: "faça um resumo claro e objetivo deste relatório". O modelo vai devolver um resumo, e ele vai parecer claro e objetivo para quem pediu, porque a pessoa não definiu o que isso significa. Se o resumo vier com 400 palavras, ninguém pode dizer que a regra foi violada.

Agora a versão com critério verificável: "resuma em até 5 tópicos, cada um com no máximo 20 palavras, e cite a página do relatório de onde saiu cada informação". Dá para contar tópicos, contar palavras e abrir a página citada. Se o resumo falhar, você sabe exatamente onde.

A documentação da OpenAI chama a primeira forma de descrição "fofa" e imprecisa. O exemplo que ela dá é direto: em vez de pedir uma descrição "razoavelmente curta, poucas frases", peça "um parágrafo de 3 a 5 frases". A central de ajuda da OpenAI lista isso como regra própria, separada da recomendação geral de clareza.

O teste mental é simples. Imagine duas pessoas lendo a mesma resposta com a sua regra na mão. Se elas podem discordar sobre o cumprimento, a regra é decorativa. Se as duas chegam ao mesmo veredito, você escreveu um critério verificável.

As técnicas gerais, como exemplos, papel e cadeia de raciocínio, estão no guia de engenharia de prompts. Este texto trata de um ponto só: como escrever regras que você consegue cobrar.

Exemplos antes e depois

Instrução decorativaVersão com critérioComo conferir
Seja concisoResponda em no máximo 120 caracterescontar caracteres, por script ou planilha
Seja precisoNão cite número sem a URL da fonte ao ladoprocurar número sem link
Use um formato organizadoResponda só com JSON neste schemavalidar o JSON contra o schema
Escreva de forma envolventeAbra com uma situação concreta, sem pergunta retóricaler a primeira frase
Não seja repetitivoNão use a mesma palavra-chave em duas frases seguidasbusca de texto

A coluna do meio é mais longa porque cada linha troca um adjetivo por algo que tem contagem, presença ou formato, e é essa troca que permite cobrar a regra.

Repare na última linha. "Não seja repetitivo" e a versão da direita são proibições, e só uma delas dá para conferir. Proibição bem escrita costuma ser verificável: "nunca use travessão" tem resposta binária. O pedido vago, positivo ou negativo, costuma ser decorativo.

Por que a instrução negativa às vezes falha

Quem escreve prompt aprende rápido que "não faça X" nem sempre funciona. Os dois maiores provedores dizem o mesmo na documentação oficial, cada um com seu exemplo.

A Anthropic, na página de boas práticas de prompt do Claude, recomenda dizer ao modelo o que fazer em vez do que não fazer. No lugar de "não use markdown na resposta", a sugestão é pedir uma resposta composta de parágrafos de prosa corrida. A OpenAI tem a mesma regra com outro exemplo: em vez de "NÃO PEÇA USUÁRIO OU SENHA", indicar para onde mandar o usuário quando o assunto aparecer.

O motivo é fácil de entender sem entrar em arquitetura. A proibição diz o que evitar e deixa em aberto o que entra no lugar. O modelo precisa preencher esse vazio com alguma coisa, e às vezes preenche com a coisa proibida escrita de outro jeito.

A mesma página da Anthropic traz um segundo ponto útil: explicar o motivo da regra. O exemplo deles é uma resposta que vai ser lida por um sintetizador de voz. "Nunca use reticências" funciona pior do que avisar que o texto vai ser lido em voz alta e que o sintetizador não sabe pronunciar reticências. Com o motivo, o modelo generaliza para casos que você não listou.

Proibição, alternativa e checagem

A saída não exige abandonar a proibição. A regra "zero travessão" é útil justamente porque é binária. O que resolve é escrever a proibição como critério verificável e acompanhá-la de outras peças.

  1. A proibição, com limite claro. "Não use travessão na prosa. Em título pode."
  2. A alternativa. "Onde usaria travessão, use vírgula, dois-pontos, ponto ou parênteses."
  3. O motivo, quando ele ajuda a generalizar. "O texto passa por uma revisão de estilo que reprova travessão."
  4. A checagem fora do modelo. Uma busca pelo caractere no arquivo final. Se encontrar, o texto volta.

O quarto item fica fora do prompt e é o que mais gente esquece. Pedir ao modelo que confira a própria resposta ajuda, mas o modelo também erra a conferência. Um grep, uma contagem de caracteres ou um validador de JSON dão sempre o mesmo resultado para o mesmo arquivo.

Quando o critério verificável vira código

Formato é o caso em que a checagem já vem pronta. A OpenAI tem um recurso chamado Structured Outputs, e a documentação de saídas estruturadas diz que ele garante respostas que seguem o JSON Schema fornecido. O mesmo texto faz a distinção que interessa: o modo JSON comum produz JSON válido, mas não confere contra o schema.

Isso mostra até onde o critério verificável pode chegar. "Responda em JSON" é um pedido. Um schema com campos obrigatórios, tipos e valores permitidos é um contrato que a própria plataforma faz cumprir. Entre os dois existe a versão intermediária, que serve para quem usa o chat: colar o schema no prompt e validar a resposta depois, numa ferramenta qualquer.

Para quem monta agente, isso pesa ainda mais. Um agente que devolve saída fora do formato quebra a etapa seguinte, ou segue com dado errado sem avisar, o problema descrito em falha silenciosa de agente de IA. Critério conferido por código é a forma mais barata de transformar falha silenciosa em erro visível.

O que não dá para verificar (e o que fazer com isso)

Nem toda qualidade cabe em contagem. Tom, argumento e pertinência de exemplo pedem leitura. Para esses casos existe um degrau intermediário entre a regra decorativa e a contagem.

A Anthropic tem uma página sobre como definir critérios de sucesso para avaliar aplicações com modelo. Ela pede critérios específicos e mensuráveis, e aceita escalas qualitativas desde que aplicadas de forma consistente. O exemplo ruim da página é "o modelo deve classificar bem os sentimentos". O bom tem métrica, conjunto de teste e linha de base.

Para texto, a tradução é uma rubrica curta. Em vez de "seja envolvente", três perguntas com sim ou não: a abertura descreve uma situação concreta? Cada seção traz pelo menos um exemplo? O texto termina num fato? Ainda depende de leitura, mas cada pergunta funciona como um critério verificável: duas pessoas tendem a concordar na resposta.

Vale o mesmo para pedir opinião ao modelo. "Seja honesto na avaliação" é decorativo, e o modelo tende a concordar com você, comportamento detalhado em IA bajuladora. "Liste três problemas concretos antes de qualquer elogio" dá para conferir.

Como reescrever um prompt hoje

  1. Separe o prompt em frases e marque cada adjetivo de qualidade: claro, preciso, conciso, profissional, envolvente.
  2. Para cada adjetivo, pergunte o que você conferiria na resposta para dizer que ele foi cumprido. A resposta vira a nova regra.
  3. Se a regra é uma proibição, escreva a alternativa ao lado e, quando fizer diferença, o motivo.
  4. Para formato, troque a descrição por um exemplo ou um schema. Se a ferramenta aceitar saída estruturada, use.
  5. Escreva a checagem antes de rodar o prompt: um script, uma busca de texto ou uma rubrica de perguntas com sim ou não.
  6. Rode com cinco entradas diferentes e confira todas. Regra que passa numa entrada e falha em outra precisa de reescrita.
  7. Guarde o prompt e a checagem juntos. Se o procedimento se repete, ele pode virar uma Agent Skill com as regras e o script de conferência no mesmo pacote.

O ponto que fica

A pergunta que separa uma regra de um enfeite cabe em uma linha: como eu vou saber se a resposta cumpriu isso? Quando a resposta é "lendo e achando", a regra precisa de reescrita. Quando é contando, validando ou procurando, você tem um critério verificável e pode testá-lo quantas vezes quiser.

O briefing deste texto tem sete checagens automáticas, entre elas tamanho do título, tamanho da descrição, contagem da palavra-chave e proporção de frases longas. O arquivo só foi aceito quando o script imprimiu PASSA nas sete.

Ferramentas citadas neste post

  • DSPy: Framework em Python para programar modelos de linguagem com módulos e otimizadores em vez de prompts escritos à mão, para quem constrói sistemas com LLM.