Inteligência artificial, sem ruído.
Pesquisa e Ciência4 min

Por que detectores de alucinação falham com números: estudo testa 5 métodos e expõe o ponto cego

Teste com 5 detectores mostra que só o MiniCheck enxerga erros de um único dígito. Biblioteca groundlens propõe verificar número por número.

Por que detectores de alucinação falham com números: estudo testa 5 métodos e expõe o ponto cego

O problema que engana todo detector

Um banco roda um sistema de RAG atrás do chat de atendimento. O cliente pergunta sobre uma fatura. O documento recuperado diz que o total devido é 10.000 dólares. O chatbot responde que o total é 1.000 dólares. Para um humano, o erro salta aos olhos em um segundo. Mas para os detectores de alucinação disponíveis hoje, “o total é 1.000” e “o total é 10.000” são quase a mesma frase.

O cientista de dados Javier Marin passou uma semana medindo como as ferramentas padrão de detecção de alucinação lidam com esse problema — e uma segunda semana investigando uma pergunta mais profunda: alguma delas funciona no ponto de operação em que um sistema de produção realmente roda? A resposta curta da segunda semana é não.

Cinco famílias de detectores, um resultado quase unânime

Marin usou o corpus RAGTruth e construiu um conjunto simples: cem respostas longas e corretamente fundamentadas, cada uma com uma cópia idêntica exceto por um único número alterado para um valor que não aparece em lugar nenhum no documento de origem. Um dígito trocado, adicionado ou removido. O mesmo erro, duzentas vezes.

Ele testou cinco famílias de detectores:

  • Juiz LLM estilo Ragas — o padrão de decomposição de afirmações por trás da maioria dos scores de “fidelidade” atuais.
  • Similaridade de embeddings com encoder de sentenças congelado.
  • Modelo de entailment — um cross-encoder DeBERTa treinado em inferência de linguagem natural.
  • LettuceDetect — detector de spans ajustado em milhares de alucinações rotuladas.
  • MiniCheck — o verificador de fatos pequeno mais forte conhecido pelo autor.

Os resultados (AUROC) foram próximos de unânimes:

MétodoAUROC
Juiz LLM estilo Ragas0.57
Similaridade de embeddings0.51
Modelo de entailment0.59
LettuceDetect0.58
MiniCheck0.75
AUROC dos cinco detectores no conjunto de números alterados. Quatro de cinco não viram o problema; só o MiniCheck mostrou sinal modesto.

Por que todos erram?

Os métodos de embedding diluem o erro na média: uma resposta de sessenta palavras errada em um único dígito produz um vetor quase idêntico ao da resposta correta — similaridade de cosseno em torno de 0,99. Os encoders são treinados para colapsar paráfrases, e a primeira coisa que descartam é a magnitude numérica. Eles organizam texto por vocabulário, tópico e estrutura — nunca por verdade.

O juiz LLM tem outra falha: o modelo que verifica tem o mesmo ponto cego do modelo que errou — ele lê por plausibilidade. “O total é 1.000 dólares” é uma frase perfeitamente plausível sobre uma fatura; nada no prompt o força a comparar dígitos.

O detector treinado falha porque sua distribuição de treinamento decide o que ele consegue ver: substituições numéricas de um único dígito são raras nos rótulos que os anotadores marcaram.

A correção pode ser a ideia mais antiga da computação

Quando verificamos manualmente uma resposta contra um documento, não resumimos os dois e comparamos resumos — pegamos cada pedaço da resposta e procuramos na fonte. “A fatura” — está lá. “O total” — está lá. “1.000” não está no documento; o documento diz 10.000. A comparação acontece na resolução do erro: palavra contra palavra, número contra número. Para números, é aritmética: 1.000 é igual a um valor no documento ou não é. 1.010 não é mais aceitável que 10.000 — ambos estão errados.

Marin empacotou essa abordagem na biblioteca open-source groundlens: sem treinamento, sem rótulos, sem chamada de API — um forward pass de um encoder congelado mais uma expressão regular, cerca de 70 milissegundos por resposta em CPU.

O ponto de operação que importa em produção

Todos os experimentos acima usam AUROC como métrica de ranking. Mas em produção não rodamos rankings: rodamos um ponto de operação como “pegue pelo menos 95% das respostas ruins”. O número que decide se um pipeline é utilizável é quantas respostas corretas são sinalizadas quando exigimos essa cobertura. No conjunto completo, a melhor taxa de falso positivo a 95% de recall foi 0,65 — melhor que um detector aleatório (0,95), mas longe de deixar alguém tranquilo. O detector de spans treinado, com o melhor AUROC da comparação (0,817), sinaliza 99% das respostas corretas a 95% de recall.

A lição final é direta: pare de enviar vereditos. Em vez de “esta resposta está errada” — uma afirmação que carrega uma taxa de erro que ninguém consegue pagar — envie marcas: “estas três palavras são as menos suportadas pelas suas fontes, e aqui está o que há de mais próximo na fonte”. Uma lista de palavras só diz onde olhar, e custa um olhar em vez de cinco minutos.



Descubra mais sobre noticiAI

Assine para receber nossas notícias mais recentes por e-mail.

R
Sobre o autorRedação Noticiai

Equipe editorial dedicada a explicar inteligência artificial com clareza, independência e contexto.