Porque não existe uma resposta guardada esperando você perguntar. A IA monta o texto de novo a cada vez, escolhendo uma palavra por vez, e em cada passo existe mais de uma palavra que faz sentido. Ela não pega sempre a mais provável: ela sorteia entre as de cima. Duas execuções, dois sorteios, dois textos.
Isso não é instabilidade e não é defeito. É o mesmo mecanismo que faz ela acertar o resto do tempo, funcionando exatamente como foi projetado. Quem entende isso para de tentar consertar a variação e passa a trabalhar com ela, que é uma mudança de postura com consequência prática direta no que você escreve e no que você confere.
Leve o mapa mental desta aula com você
O vídeo tem um apoio visual desenhado à mão, o mesmo que aparece na abertura e no fecho da aula. Está disponível pra download em Excalidraw, e abre arrastando o arquivo pra dentro do excalidraw.com, de graça, sem instalar nada.
O contexto, em três linhas
Sou engenheiro de software sênior e passei os últimos anos colocando modelos de linguagem em produção, em sistema que outras pessoas usam.
A pergunta que abre este texto é a que mais aparece quando um time começa a usar IA de verdade, e quase sempre ela vem embrulhada em desconfiança: se muda toda vez, dá pra confiar? Dá, mas não do jeito que a pergunta sugere.
Ela não recupera texto, ela produz texto

A intuição errada é imaginar um arquivo enorme de respostas, com a máquina procurando a certa. Não tem arquivo. O que existe é um padrão aprendido, e o padrão é aplicado do jeito mais simples possível: ela olha tudo que veio antes e escolhe o pedaço mais provável de vir depois. Só isso, repetido.
Repare no detalhe que muda tudo: a palavra que ela acabou de escolher volta pra entrada, junto com a sua pergunta, antes da escolha seguinte. Cada palavra é decidida com uma entrada ligeiramente diferente da anterior. Uma escolha diferente lá no começo muda o terreno de todas as outras, e é por isso que dois textos podem divergir cada vez mais conforme avançam.
Em cada passo cabe mais de uma palavra, e todas fazem sentido

Se você começa uma frase com “o café”, cabe um “é”, cabe um “tem”, cabe um “foi”. As três continuam a frase de um jeito perfeitamente aceitável, e o modelo enxerga isso como uma lista de candidatas com pesos diferentes, não como uma resposta única. A pergunta que sobra é qual delas sai.
E aqui está a parte que quase ninguém conta: se ela pegasse sempre a candidata mais provável, o texto ficaria correto e insuportável. Repetitivo, previsível, colado no lugar comum. A variação existe porque um pouco de acaso na escolha é o que faz o texto soar escrito por alguém.
O sorteio é o projeto, não a falha

Na maioria das ferramentas esse grau de acaso tem um controle, e ele costuma aparecer com o nome de temperatura. Temperatura baixa aperta a escolha em volta das candidatas mais prováveis e o texto fica mais previsível e mais repetitivo. Temperatura alta abre o leque e o texto fica mais variado e mais arriscado. Não existe valor certo: existe valor certo pra tarefa.
A variação não é a máquina mudando de ideia. É a mesma máquina, com o mesmo padrão, tirando outro resultado no sorteio.
Isso explica de graça uma coisa que costuma assustar quem está começando: pedir de novo, sem mudar nada, às vezes resolve. Não é teimosia funcionando, e não é a IA “se esforçando mais”. É outra amostra do mesmo processo. O que muda de verdade a qualidade não é insistir, é mudar o que ela lê antes de responder.
Se a resposta muda de figura quando você repete a pergunta sem mudar nada, aquilo era chute com letra bonita.
Onde a variação atrapalha de verdade
Em texto solto, variação é bônus. Em sistema, ela vira problema em três lugares específicos, e vale conhecer os três antes de descobrir na produção.
O primeiro é formato. Se você espera um objeto com campos fixos e a saída às vezes vem embrulhada em uma frase de cortesia, o seu parser quebra em um dia qualquer, e não no dia do teste. O segundo é teste automatizado: comparar a saída com um texto esperado, caractere por caractere, é escrever um teste que falha sozinho. O terceiro é cache, que passa a devolver uma amostra congelada de algo que era pra variar.
Nos três casos o conserto é o mesmo em espírito: parar de exigir que ela seja determinística e passar a restringir o espaço em que ela pode variar. Você não precisa da mesma saída, você precisa da mesma forma de saída, e essas duas exigências têm custos completamente diferentes.
O critério que eu uso agora
Quatro regras, na ordem em que eu aplico.
- Decida se a tarefa quer variação. Escrever, sugerir e explorar querem. Extrair, classificar e formatar não querem. A primeira pergunta não é qual valor usar, é de que lado a tarefa está.
- Restrinja a forma, não a criatividade. Peça um formato explícito e dê um exemplo do formato. Restringir o formato tira quase toda a variação que machuca, sem tirar a que ajuda.
- Teste por propriedade, nunca por igualdade. Verifique que os campos existem, que os tipos batem e que os valores estão na faixa. Comparar o texto inteiro com um texto esperado é um teste que vai falhar sem que nada tenha quebrado.
- Use a variação como sinal. Rode a mesma pergunta três vezes. Se as três respostas concordam no essencial, o modelo tem base. Se cada uma conta uma história, ele está preenchendo, e aí o problema não é a temperatura: é que falta informação na entrada.
A quarta é a que mais me economizou tempo, porque ela transforma o comportamento que parecia um defeito em um instrumento de medida barato.
Onde tudo isso fica registrado
Escrevo tudo o que aprendo aqui neste blog, que roda num plano de quatro anos da Hostinger, que eu recomendo.
O vídeo lá em cima é a primeira aula de um curso gratuito de fundamentos de inteligência artificial, com aulas curtas e um conceito por vez. A variação que este texto explica é consequência direta do mecanismo que a aula mostra, e o curso segue por token, janela de contexto e o motivo de ela inventar resposta com a mesma cara de certeza.
O que eu faria diferente se começasse hoje
Eu pararia de tratar a variação como bug a ser eliminado. Eu escreveria o formato esperado antes de escrever o pedido. E eu rodaria três vezes qualquer resposta que fosse virar decisão, antes de qualquer outra checagem.
No fundo esse nem é um assunto de IA. É o mesmo erro de raciocínio que a gente comete quando trata um sistema probabilístico como se fosse determinístico, e depois culpa o sistema por não ser o que ele nunca foi. Cache que expira, rede que oscila, teste que depende de ordem: em todos eles a saída é a mesma, e é parar de exigir garantia onde só existe distribuição.
A newsletter sai todo domingo, com o bastidor do que eu estou construindo, incluindo o que não deu certo.
