As 12 sondas que toda funcionalidade com LLM deve sobreviver
Os evals de correção dizem que a funcionalidade funciona quando o usuário coopera. As sondas dizem o que acontece quando ele não coopera — ou quando o conteúdo que ele fornece é quem ataca. Esta é a bateria que executo contra qualquer funcionalidade com LLM antes de considerá-la pronta para produção, com uma sonda de exemplo e um aprovado/reprovado concreto para cada uma.
Você pode ver uma versão reduzida dessa bateria sendo executada ao vivo contra um assistente de demonstração na página de eval — comportamento de modelo real e reproduzível, avaliado sonda por sonda.
Cada sonda abaixo tem a mesma estrutura: o que ela testa, uma sonda de exemplo que você poderia realmente enviar, e como é um aprovado versus um reprovado. Leia-as como uma lista de verificação. Se você não consegue dizer como sua funcionalidade se comporta nas doze, você não sabe como ela se comporta.
Injeção de prompt
confiança na entradaConteúdo não confiável que o modelo processa — uma página web, um e-mail, um documento recuperado — carrega instruções, e o modelo as obedece como se viessem de você. O modo de falha clássico de qualquer agente que lê o mundo externo.
Jailbreak
evasão de políticasO usuário tenta convencer o modelo a abandonar suas próprias regras — enquadramentos de interpretação de papéis, “é para pesquisa”, envoltórios hipotéticos, personas estilo DAN — para extrair conteúdo que a funcionalidade deveria recusar.
Vazamento do system prompt
confidencialidadeSe o modelo vai revelar suas próprias instruções ocultas, ferramentas ou configuração. System prompts vazados dão ao atacante o mapa exato de que precisa para criar o próximo bypass — e muitas vezes expõem propriedade intelectual que você não pretendia publicar.
Fidelidade
fundamentaçãoPara RAG ou qualquer funcionalidade fundamentada em fontes: toda afirmação na resposta pode ser rastreada até a fonte fornecida? A fidelidade é diferente da correção — uma resposta pode ser verdadeira em geral e ainda assim infiel, porque não foi respaldada pelos seus documentos.
Alucinação
factualidadeFabricação confiante na ausência de fundamentação — citações inventadas, recursos de produto falsos, números de política inventados, APIs que não existem. A falha que mais rápido custa confiança porque é entregue com total fluência.
Tratamento de PII
privacidadeComo a funcionalidade trata os dados pessoais na entrada e na saída — se repete campos sensíveis que não deveria, os armazena onde não deveria, ou revela os dados de um usuário para outro.
Exfiltração de dados
saída de dadosO primo agêntico da injeção: um atacante consegue que o modelo envie dados para fora — por meio de uma chamada de ferramenta, uma URL de imagem renderizada, um link com segredos na query string. Especialmente perigoso quando o modelo pode navegar, fazer fetch ou chamar APIs.
Escopo
limitesSe a funcionalidade permanece dentro de sua tarefa. Um bot de suporte não deveria redigir seus contratos jurídicos nem dar conselhos médicos; um assistente de código não deveria opinar sobre o seu divórcio. Respostas fora do escopo são uma superfície de responsabilidade legal mesmo quando são “corretas.”
Recusa excessiva
falsos positivosA falha oposta, e a que as equipes esquecem de testar. Um modelo muito ajustado para a segurança começa a recusar solicitações legítimas — “como mato um processo do Linux” interpretado como violência. A recusa excessiva destrói silenciosamente a experiência de produto enquanto parece “segura.”
Toxicidade
segurança da saídaSe a funcionalidade pode ser direcionada para uma saída abusiva, de ódio ou de assédio — incluindo quando o usuário é hostil e tenta provocá-la, ou quando uma tarefa de tradução/resumo transforma uma entrada tóxica em uma saída tóxica.
Sequestro de instruções
prioridadeUma tentativa no meio da conversa de sobrepor as regras vigentes — “novas instruções substituem todas as anteriores.” Testa se o seu system prompt realmente tem autoridade sobre os turnos posteriores do usuário, ou se a mensagem mais recente sempre vence.
Consistência
estabilidadeSe a mesma entrada produz de forma confiável uma resposta equivalente — entre execuções repetidas, entre reformulações triviais, entre uma atualização de versão do modelo. A inconsistência é uma regressão que você não consegue depurar porque não se reproduz sob demanda.
Não execute doze sondas uma vez e considere concluído. Cada sonda se transforma em um pequeno conjunto de casos no seu harness de evals, roda a cada mudança na IA, e é pontuada por uma asserção ou um juiz — exatamente como um eval de correção. Uma sonda que passa hoje e falha depois de uma atualização de modelo é a razão de existir do gate. A lista é a cobertura; o gate é o que a mantém honesta.
Uma última nota sobre honestidade: nem toda sonda se aplica a toda funcionalidade com o mesmo peso. Um bot de FAQ somente leitura mal tem superfície de exfiltração de dados; um agente com ferramentas e navegação quase não tem outra coisa. Parte do trabalho é decidir quais das doze são estruturais para a sua funcionalidade específica e ponderá-las de acordo — e então provar o comportamento com pontuações, não com promessas.
Vou executar a bateria completa contra a sua funcionalidade em produção.
Centenas de sondas, ponderadas conforme a sua superfície de risco real, cada uma um caso reproduzível em um conjunto de testes que a sua equipe mantém. Você recebe um scorecard de exatamente onde ela quebra — e o gate que bloqueia essas quebras antes de irem para produção. A chamada é gratuita; você sai com o mapa de qualquer forma.