Enviamos uma Página em Branco para 184 Motores de OCR. Alguns Deles Leram Mesmo Assim.
A imagem de teste não poderia ser mais simples. Tratava-se de um retângulo digital com 800 pixels de largura por 1.000 pixels de altura. Cada pixel individual era RGB puro (255, 255, 255). Não havia poeira, traços fracos de lápis, artefatos soltos de scanner nem marcas d'água ocultas. Era uma imensidão de vazio digital.
Quando enviamos essa imagem para o Gemini 3.1 Flash-Lite da Google, o modelo não hesitou. Ele não retornou um código de erro nem uma string vazia. Em vez disso, retornou três palavras: "REDUCE / REUSE / RECYCLE".
Executamos o teste novamente. Dessa vez, o modelo leu: "THE END OF THE CHAPTER". Em outra tentativa, transcreveu um trecho intitulado "THE WONDER OF IT ALL BY DR. BENJAMIN E. MAYS", completo com um prefácio inventado pelo Dr. Martin Luther King Jr. Tanto no endpoint nativo da API da Google quanto no endpoint compatível com a OpenAI, o motor encarou o vazio digital e enxergou uma biblioteca.

A descoberta começou por acaso, durante o teste de uma correção para omissões silenciosas (silent dropouts). O Gemini 3.1 Flash-Lite vinha retornando ocasionalmente texto vazio em documentos perfeitamente legíveis, embora informasse sucesso à chamada — problema que o OpenOCR resolveu em todos os motores no início desta semana (leia o comunicado à parte). Ao verificar essa correção com uma imagem de controle em branco, nossa equipe esperava silêncio. Em vez disso, o modelo começou a escrever redações.
Isso motivou um teste mais amplo. Se um motor multimodal popular alucinava documentos inteiros a partir do nada, como o restante do mercado se comportaria? Para descobrir, executamos o HallucinationBench. Reunimos 184 motores de reconhecimento óptico de caracteres disponíveis no OpenOCR com preço igual ou inferior a um centavo por página, abrangendo softwares clássicos de OCR, pipelines de documentos em nuvem e modelos modernos de visão e linguagem (VLMs). Cada motor recebeu exatamente a mesma imagem em branco três vezes consecutivas: 552 chamadas no total, com um custo de cerca de 75 centavos em nossa conta de benchmark.
Os resultados foram surpreendentes. Dos 183 motores que concluíram suas execuções, 24 motores — cerca de 13% — inventaram texto pelo menos uma vez. Onze motores alucinaram em absolutamente todas as chamadas concluídas.

Não se tratava de protótipos obscuros de pesquisa. Os motores que fabricaram texto incluíam modelos de produção da Google, OpenAI, Mistral, da família Qwen da Alibaba e da NVIDIA. Enquanto isso, todos os motores clássicos de OCR que testamos — incluindo AWS Textract, Azure Document Intelligence, Google Document AI, IBM Docling e referências de código aberto como Tesseract e OCRmyPDF — retornaram silêncio absoluto. Eles olharam para uma folha branca vazia e não viram nada.
Modelos de fronteira com capacidade de raciocínio também passaram com dignidade. A família Claude 4.5 da Anthropic (Haiku, Sonnet e Opus), o GPT-4.1 e o GPT-4o padrão da OpenAI, e o Nova Lite e Nova Pro da Amazon olharam para a imagem e retornaram um resultado vazio ou educadamente apontaram que a página estava em branco. As alucinações vieram quase que exclusivamente da categoria de modelos que as empresas cada vez mais escolhem para processamento rápido e econômico de documentos: os modelos de linguagem multimodais pequenos e rápidos.
As saídas inventadas não eram sequências aleatórias de letras ou códigos de caracteres corrompidos. Eram documentos coesos, formatados e gramaticalmente articulados que soavam como documentações autênticas.

O Mistral Large produziu algumas das criações mais impressionantes. Em sua primeira execução, entregou um currículo profissional completo para um "Dr. John Doe" residente na 1234 Elm Street em Anytown, EUA, incluindo um Bachelor of Science em Biologia com GPA de 3.8 e honras Summa Cum Laude. Em outra execução, retratou o Dr. John Doe como um médico em exercício, gerando uma ficha de admissão de paciente para uma mulher chamada Jane Smith, completa com data de nascimento, ID do paciente e diagnósticos clínicos de hipertensão e diabetes tipo 2.
Em uma terceira tentativa, o Mistral Large recorreu à história, redigindo uma carta formal endereçada ao Dr. J. Allen Hynek no Center for UFO Studies em Evanston, Illinois. "Dear Dr. Hynek", começava a carta, "I am writing to you in regards to a sighting of a U.F.O. that I had on the night of June 15, 1976." Mais tarde no teste, produziu o capítulo de abertura de uma história de Sherlock Holmes narrada pelo Dr. Watson.
O GPT-4.1 Mini da OpenAI teve suas próprias obsessões distintas. Em uma execução, produziu uma triagem biométrica de saúde completa em espanhol para um paciente chamado Pablo Gonzalo Huerta Estrada, registrando seu peso em 74,5 quilos, altura em 1,66 metro e índice de massa corporal em 27,03. Em outro checkpoint, transcreveu um guia de laboratório universitário para coloração de tecido do córtex cerebral de ratos, detalhando reagentes químicos como Sudan black B, substância de Nissl, Methylene blue e Toluidine blue. Em uma terceira tentativa, gerou um formulário completo de consentimento de medicação para uma escola de ensino fundamental imaginária.
Outros modelos criaram histórias igualmente vívidas. O Qwen 3.6 Flash da Alibaba produziu citações de repertórios jurídicos britânicos da década de 1860, citando disputas vitorianas como Brewster v. Moxon, 7 Jur. N.S. 589 e Brickell v. Smithson. O Mistral Small 2506 exibiu as palavras "MARINE CORPS" dez vezes dentro de um bloco de código markdown, como um cântico militar. O Inkling Small da Thinking Machines elaborou um white paper de engenharia aeronáutica intitulado "JETCUSSION: Energy Conservation through APPROPRIATE Maintenance". O Ling 3.0 Flash VL da InclusionAI viu uma lata de sopa Campbell's Healthy Request. O Nemotron 3.5 Content Safety da NVIDIA olhou para o vazio em branco e tranquilizou com a certificação: "User Safety: safe".
Para ver como os diferentes motores lidaram com o silêncio, veja como os onze alucinadores consistentes se compararam a uma seleção de motores que nunca inventaram texto. Todas as saídas são públicas: clique em qualquer motor para ler exatamente o que ele retornou em todas as três tentativas.
| Engine | Hallucinated | Clean | Tries | Observed Behavior |
|---|---|---|---|---|
| google-gemini-3.1-flash-lite | 3 | 0 | 3 | Anúncios comerciais, testes de matemática, "REDUCE / REUSE / RECYCLE" |
| google-gemini-3.1-flash-lite-preview | 3 | 0 | 3 | Formatação decorativa e páginas de título |
| mistral-mistral-large-2512 | 3 | 0 | 3 | Currículos profissionais, solicitações de biblioteca em espanhol |
| mistral-mistral-large-latest | 3 | 0 | 3 | Registros de pacientes, cartas de OVNI de 1976, ficção de Sherlock Holmes |
| openai-gpt-4.1-mini | 3 | 0 | 3 | Gráficos biométricos de pacientes, formulários de consentimento de medicação escolar |
| openai-gpt-4.1-mini-2025-04-14 | 3 | 0 | 3 | Inventários de coloração histológica de cérebro de rato, texto codificado em hex |
| openrouter-google-gemini-3.1-flash-lite | 3 | 0 | 3 | Avisos de linha de apoio contra crises 988 |
| openrouter-inclusionai-ling-3.0-flash-vl | 3 | 0 | 3 | Rótulos de sopa Campbell's Healthy Request |
| openrouter-mistralai-mistral-small-3.1-24b-instruct | 2 | 0 | 2 | Blocos de código markdown numerados |
| openrouter-nvidia-nemotron-3.5-content-safety | 3 | 0 | 3 | Certificações "User Safety: safe" |
| openrouter-thinkingmachines-inkling-small | 3 | 0 | 3 | White papers de manutenção aeronáutica, entradas de catálogo de produtos químicos |
| aws-textract | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| azure-doc-intel | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| google-doc-ai | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| ibm-docling-hosted | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| local-tesseract | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| openocr-ocrmypdf | 0 | 3 | 3 | Silêncio absoluto (resposta vazia) |
| anthropic-claude-haiku-4.5 | 0 | 3 | 3 | Informou explicitamente que a imagem estava em branco |
| anthropic-claude-sonnet-4.5 | 0 | 3 | 3 | Informou explicitamente que a imagem estava em branco |
| openai-gpt-4o-2024-08-06 | 0 | 3 | 3 | Informou explicitamente que a imagem estava em branco |
| openrouter-amazon-nova-lite-v1 | 0 | 3 | 3 | Informou explicitamente que a imagem estava em branco |
Por que isso acontece? A resposta está em como as arquiteturas multimodais modernas diferem dos scanners clássicos de documentos. O reconhecimento óptico de caracteres clássico depende de algoritmos de visão computacional projetados para detectar limites de contraste, bordas e glifos de caracteres. Se não houver marcas de tinta no papel, os extratores de características não detectam nada e o pipeline é interrompido.
Os modelos de visão e linguagem funcionam sob um princípio completamente diferente. Eles processam uma imagem dividindo-a em uma grade de patches, projetando esses patches em embeddings numéricos contínuos e alimentando-os em um decodificador transformer autorregressivo. A parte do modelo de linguagem é treinada em bilhões de tokens para prever a próxima palavra provável em um documento.
Quando uma imagem contém texto impresso nítido, os tokens visuais guiam o modelo de linguagem. Quando a imagem é um vazio branco sem nada, os embeddings visuais não fornecem orientação alguma. Em vez de parar e emitir imediatamente um token de fim de sequência (end-of-sequence), o decodificador se encontra em um estado latente ambíguo no qual seus priors linguísticos assumem o controle. Se a probabilidade matemática pender ligeiramente para um cabeçalho de documento ou título, o modelo gera uma única palavra. Uma vez que essa primeira palavra existe, o transformer faz o que faz de melhor: prevê o próximo token lógico, gerando um documento plausível inteiro até atingir um ponto de parada.
É uma pareidolia computacional. O cérebro humano olha para nuvens e enxerga rostos. Um pequeno modelo multimodal olha para 800.000 pixels brancos idênticos e enxerga o currículo de um médico.

Em um cenário de benchmark, ver uma IA alucinar uma carta sobre OVNIs de 1976 é divertido. No processamento de documentos em produção, é perigoso.
Páginas em branco estão em toda parte na papelada comercial. Scanners duplex de alta velocidade fotografam rotineiramente o verso em branco de faturas, contratos, recibos e prontuários médicos. Pacotes de PDF com várias páginas frequentemente contêm folhas separadoras em branco, contracapas não impressas e campos de assinatura vazios.
Quando um motor processa uma página em branco e retorna silêncio, os sistemas downstream sabem o que fazer. A página é ignorada ou sinalizada para revisão. Mas quando um modelo de visão preenche uma página vazia com um prontuário médico sintético, um precedente jurídico falso ou uma lista de despesas corporativas, o software downstream não tem como detectar facilmente a fraude. O texto chega devidamente formatado, pontuado com precisão e sem erros de digitação. Ele passa direto pelas regras de validação e entra nos bancos de dados como informação verificada.
Vale ressaltar os limites da nossa avaliação. O HallucinationBench concentrou-se estritamente em motores de produção de alto volume que custam um centavo ou menos por página. Modelos de fronteira premium com preços bem acima desse patamar, incluindo o OpenAI o1 e toda a linha Gemini Pro, não foram testados aqui. O comportamento deles diante de páginas vazias permanece não testado neste conjunto de dados.
O HallucinationBench agora é parte permanente dos rankings do OpenOCR. Cada motor testado possui uma pontuação de Blank page de 0 a 100, um modelo que inventa texto perde até 15 pontos de sua Qualidade geral e a página de cada modelo mostra exatamente o que ele retornou nas três tentativas. Veja os resultados de página em branco de cada motor nos rankings do OpenOCR. Ou pule direto para a parte divertida: veja exatamente o que cada modelo alucinou.

Se você processa centenas de milhares de páginas digitalizadas por mês, velocidade e baixo custo importam. Mas antes de enviar seus documentos para um motor que promete ambos, vale a pena verificar se ele consegue olhar para uma folha de papel em branco e admitir que não há nada ali. Se ele insistir em ler para você uma decisão judicial vitoriana, você não adquiriu um motor de OCR. Você contratou um escritor de ficção.
Coautoria de Ben Hain. Este artigo teve um pouco mais de supervisão de Ben Hain do que o artigo típico do OpenOCR.
Apêndice: todos os motores que alucinaram
Estes são os motores que inventaram texto em uma página em branco pelo menos uma vez. Clique em qualquer um deles para ver a página em branco ao lado de exatamente o que ele "leu", em cada tentativa.
| Engine | Tentativas com texto inventado |
|---|---|
| Gemini 3.1 Flash Lite | 3 de 3 |
| Gemini 3.1 Flash Lite Preview | 3 de 3 |
| Google: Gemini 3.1 Flash Lite | 3 de 3 |
| NVIDIA: Nemotron 3.5 Content Safety | 3 de 3 |
| Thinking Machines: Inkling Small | 3 de 3 |
| gpt-4.1-mini | 3 de 3 |
| gpt-4.1-mini-2025-04-14 | 3 de 3 |
| inclusionAI: Ling 3.0 Flash VL | 3 de 3 |
| mistral-large-2512 | 3 de 3 |
| mistral-large-2512 | 3 de 3 |
| Mistral: Mistral Small 3.1 24B | 2 de 2 |
| ByteDance: UI-TARS 7B | 2 de 3 |
| Google: Gemini 3.1 Flash Image Preview (Gemini 3.1 Flash Image Preview) | 2 de 3 |
| Meta: Llama 4 Maverick | 2 de 3 |
| OpenAI: GPT-4.1 Mini | 2 de 3 |
| Qwen: Qwen3.6 Flash | 2 de 3 |
| Google: Gemini 2.5 Flash | 1 de 3 |
| Google: Gemini 3.1 Flash Lite Preview | 1 de 3 |
| MoonshotAI Kimi Latest | 1 de 3 |
| MoonshotAI: Kimi K2.6 | 1 de 3 |
| Qwen: Qwen3.6 27B | 1 de 3 |
| SpaceXAI: Grok 4.6 | 1 de 3 |
| Xiaomi: MiMo-V2.6-Flash | 1 de 3 |
| mistral-small-2506 | 1 de 3 |
Todos os outros motores não retornaram nada ou indicaram que a página estava em branco. Seus resultados estão nos rankings do OpenOCR.