Alucinação de IA como reduzir em sistema de produção
Por que modelos de linguagem inventam informação e as técnicas que realmente reduzem isso em produção. Grounding, citação, guardrails e avaliação.
Alucinação acontece porque o modelo é otimizado para gerar texto plausível, não verdadeiro. Reduz-se com grounding (dar a fonte no prompt), obrigatoriedade de citação, recusa explícita quando não há evidência, validação determinística da saída e um conjunto de avaliação com perguntas reais. Nenhuma técnica elimina o problema, mas juntas o tornam gerenciável.
Alucinação acontece porque um modelo de linguagem é otimizado para produzir a continuação mais provável de um texto, não a mais verdadeira. Quando falta a informação, ele não trava: completa a lacuna com algo estatisticamente plausível. Reduzir isso em produção é um problema de arquitetura, não de escolha de modelo.
Cinco camadas fazem a maior parte do trabalho: grounding, citação obrigatória, recusa explícita, validação determinística e avaliação contínua.
Camada 1, grounding: dar a fonte junto com a pergunta
A técnica de maior efeito é a mais simples: não peça ao modelo que se lembre, dê a ele o texto para ler. É isso que RAG faz. A tarefa muda de "recuperar da memória" para "sintetizar a partir deste material", e modelos são muito mais confiáveis na segunda.
Detalhes que fazem diferença no grounding:
- Qualidade da recuperação é o teto. Se o trecho certo não é recuperado, nenhuma instrução salva a resposta. Busca híbrida (vetorial + palavra-chave) e reranker são o que mais melhora esse ponto.
- Menos contexto, melhor contexto. Encher o prompt com 30 trechos "por garantia" dilui o relevante e aumenta o erro. Prefira 3 a 6 trechos bem selecionados.
- Marcação clara das fontes. Delimite cada trecho com identificador e origem, para o modelo poder citar e para você poder rastrear.
- Nada de misturar conhecimento próprio com o do modelo sem sinalizar. Instrua a distinguir o que veio do material.
Camada 2, obrigar citação
Exija que toda afirmação factual venha acompanhada da fonte de onde saiu, no formato que você definir. Isso produz dois efeitos:
- Torna o erro detectável. Quem lê pode conferir em segundos. Sem citação, o erro é indistinguível do acerto.
- Reduz a invenção. Ter que apontar de onde tirou desestimula afirmações sem apoio no material.
Vá além e valide a citação programaticamente: verifique se o identificador citado existe entre os trechos recuperados e, quando possível, se a passagem citada realmente contém a informação afirmada. Citação inventada é um modo de falha comum e fácil de pegar automaticamente.
Camada 3, recusa explícita
Um sistema que nunca diz "não sei" está errando em silêncio. Projete a recusa:
- Limiar de relevância. Se a melhor pontuação de recuperação ficar abaixo de um corte calibrado, não chame o modelo para responder, informe que não há material e ofereça o caminho humano.
- Instrução direta. "Se o material fornecido não contiver a resposta, diga que não encontrou. Não complete com conhecimento geral."
- Escopo declarado. Liste o que o sistema responde e o que não responde. Fora do escopo, recuse.
- Meça as duas direções. Recusar demais é tão ruim quanto responder demais. Acompanhe recusas indevidas junto com as apropriadas.
Camada 4, validação determinística da saída
Tudo que puder ser conferido por regra deve ser conferido por regra, não pelo modelo.
| Tipo de saída | Validação determinística |
|---|---|
| Valor monetário, prazo, percentual | Conferir contra a fonte estruturada (banco, ERP) |
| CNPJ, CPF, código de produto | Dígito verificador e existência no cadastro |
| JSON estruturado | Validação por esquema, com rejeição e nova tentativa |
| Nome de cliente, número de pedido | Cruzar com o registro real |
| Cálculo | Executar em código, nunca aceitar aritmética do modelo |
| Link ou referência | Verificar se existe |
Regra prática: modelo de linguagem é bom em linguagem, não em cálculo nem em memória de identificadores. Toda vez que a resposta contiver um número que importa, esse número deve vir de uma consulta, não da geração.
Camada 5, avaliação contínua
Sem medição, toda melhoria é achismo. Monte um conjunto de avaliação com 50 a 200 perguntas reais, extraídas do histórico de atendimento ou de uso interno, cada uma com:
- a resposta esperada
- a fonte correta
- a classificação de "deveria recusar" quando for o caso
Inclua deliberadamente:
- Perguntas fora do escopo (o sistema deve recusar)
- Perguntas ambíguas (deve pedir esclarecimento)
- Perguntas cuja resposta mudou recentemente (deve pegar a versão vigente)
- Perguntas com identificadores parecidos entre si (testa a recuperação)
Rode esse conjunto a cada mudança de prompt, de chunking, de modelo ou de base. Acompanhe três taxas: resposta correta, fonte correta e recusa apropriada. É a única forma de saber se um ajuste melhorou ou apenas moveu o erro de lugar.
O que ajuda menos do que se imagina
Trocar por um modelo mais novo. Ajuda em raciocínio, não em fatos que o modelo nunca viu. Se a causa é falta de acesso à informação, o modelo novo erra com prosa melhor.
Prompt gigante com muitas proibições. Depois de certo ponto, instruções acumuladas se atrapalham. Instruções curtas, específicas e verificáveis funcionam melhor que um regulamento.
Pedir que o modelo avalie a própria resposta. Autoavaliação capta erros grosseiros de formato, mas o mesmo processo que gerou a alucinação tende a confirmá-la. Um segundo modelo avaliando com o material em mãos funciona melhor, e ainda assim não substitui validação por regra.
Temperatura zero. Deixa a saída consistente, não verdadeira. Você passa a errar sempre igual.
O desenho de um sistema honesto
Um sistema de produção com baixa taxa de alucinação tem uma característica visível: ele admite os limites em vez de escondê-los. Cita a fonte, mostra a data do documento, recusa quando não sabe, oferece o caminho humano e registra tudo para auditoria.
É esse o padrão que aplicamos nos sistemas em produção da Retti Tech, e ele muda a relação do usuário com a ferramenta. Um assistente que erra 5% sem avisar destrói a confiança; um que resolve 80%, recusa 20% com clareza e sempre mostra de onde tirou a resposta é usado todo dia.
Alucinação não é um bug a ser corrigido de uma vez. É uma propriedade da tecnologia, a ser contida por camadas, medida com honestidade e comunicada ao usuário.
Perguntas frequentes
É possível eliminar a alucinação por completo?
Não com a tecnologia atual. Modelos de linguagem geram a continuação mais provável, e plausibilidade não é o mesmo que verdade. O objetivo realista é reduzir a frequência, tornar o erro detectável por citação e validação, e garantir que o caso duvidoso caia em revisão humana.
Aumentar o tamanho do contexto reduz a alucinação?
Nem sempre, e pode piorar. Contexto muito grande dilui a informação relevante e a atenção do modelo se distribui pior, especialmente com material no meio do texto. Poucos trechos bem escolhidos costumam produzir resposta mais fiel que muitos trechos irrelevantes.
A temperatura zero resolve?
Ajuda na consistência, não na veracidade. Temperatura baixa torna a saída mais determinística, mas se a informação correta não estiver no contexto o modelo continua produzindo a resposta plausível errada, apenas sempre a mesma.
Tem um processo que consome o time?
Me conta como funciona hoje. Se der para automatizar, eu te digo por onde começar — a conversa de diagnóstico não é cobrada.
Natiam Gabriel é AI Engineer & Full-Stack Developer e fundador da Retti Tech, estúdio de desenvolvimento de software que atende empresas em todo o Brasil. Constrói sistemas web sob medida, automações e integrações, com ou sem inteligência artificial, do levantamento de requisitos até a operação em produção. Mais de 20 empresas usam em produção os sistemas que desenvolveu.