LLMs realmente raciocinam?
Raciocínio em LLM é o conjunto de técnicas que fazem o modelo produzir passos intermediários antes da resposta final, em vez de responder de uma vez. A mais conhecida é o chain-of-thought, mas existem cinco famílias, e elas diferem no que fazem com esses passos. Faz parte do repertório de engenharia de prompts, e em alguns casos já vem embutido no próprio modelo de raciocínio.
A pergunta do título não tem resposta limpa, e vale dizer isso logo. Modelos resolvem problemas de vários passos que não estavam no treino, o que é mais que memorização. E falham em variações triviais de problemas que acertam, o que é menos que raciocínio robusto. Escolher um lado do debate rende menos que entender onde a coisa funciona e onde quebra.
O que dá para dizer com número é mais estreito e mais útil. Escrever os passos muda a taxa de acerto, o efeito depende do tamanho do modelo, e a cadeia que aparece na tela nem sempre é o que determinou a resposta. As três coisas foram medidas, e as três estão abaixo.
Por que escrever os passos muda o resultado
O mecanismo é mais simples do que parece, e não envolve o modelo “pensar melhor”.
Um LLM gera um token por vez, e cada token gerado entra no contexto dos seguintes. Quando o modelo escreve “primeiro, 47 × 3 = 141”, esse “141” passa a existir no contexto. O resto da resposta é condicionado a ele, em vez de precisar recalcular tudo dentro de uma única passagem pela rede.
Cada token sai de uma passagem de profundidade fixa. O modelo não tem como gastar mais computação num token difícil do que num token fácil, porque a arquitetura não tem esse botão. O que ele tem é a possibilidade de gastar mais tokens. Escrever dez passos é rodar dez vezes mais passagens sobre o mesmo problema. A técnica não compra inteligência por passo, compra passos.
Um pedido com 47 itens a R$ 3 cada, com 12% de desconto e R$ 25 de frete, ilustra a diferença. A resposta direta precisa produzir “149,08” de uma vez. Com passos, ela produz 141, depois 124,08, depois 149,08, e cada um desses números fica escrito onde o próximo consegue ler.
O rascunho vira memória de trabalho. É por isso que a técnica ajuda em problema de vários passos e não ajuda em pergunta de fato único: não há passo intermediário para guardar. E é por isso que um rascunho errado pesa tanto quanto um certo, já que o passo seguinte lê os dois do mesmo jeito.
O trabalho que popularizou isso mediu um detalhe importante: o ganho aparece em modelos grandes e some nos pequenos1. Abaixo de um certo tamanho, pedir passos produz passos ruins, e passos ruins levam a respostas piores que a resposta direta. No topo da escala o efeito era grande: com oito exemplos contendo passos, um modelo de 540 bilhões de parâmetros chegou ao estado da arte no GSM8K, o benchmark de problemas de matemática em texto, à frente de um GPT-3 ajustado com verificador1. Oito exemplos no prompt superando um treino inteiro é o que fez a técnica pegar.
As cinco famílias
Linear é a cadeia de passos direta. Chain-of-thought e suas variantes. Uma tentativa, um caminho, e todos os passos saem como tokens de resposta que você paga e pode ler. É o ponto de partida razoável para qualquer problema cujos passos você conseguiria escrever à mão se tivesse tempo.
Ramificada explora vários caminhos e escolhe. Self-consistency gera N cadeias independentes com temperatura acima de zero e vota na resposta final mais frequente2. O paper original reportou ganho de 17,9% no GSM8K, 11,0% no SVAMP, 12,2% no AQuA, 6,4% no StrategyQA e 3,9% no ARC-challenge. A condição para funcionar é ter o que contar: a resposta precisa ser número ou rótulo, porque em texto livre duas cadeias corretas nunca coincidem palavra por palavra. Tree of thoughts vai além e poda caminhos ruins no meio do percurso, o que ajuda quando o espaço de busca é grande e a maior parte dos ramos morre cedo.
Iterativa produz uma resposta, critica e refaz. Serve para formato e completude. Tem um limite honesto: o modelo não descobre erro factual que ele próprio não sabe reconhecer. E tem um segundo, menos citado: sem sinal externo as revisões convergem rápido, e da terceira em diante ele mexe em estilo. Com sinal externo a família muda de patamar. Um compilador, uma bateria de testes ou um validador de schema dizem que está errado sem depender de o modelo perceber, e aí iterar vira o arranjo mais forte da lista.
Verificada gera perguntas de conferência sobre a própria resposta e as responde isoladamente, antes de revisar. A separação é o que faz funcionar: responder a pergunta de verificação sem olhar o rascunho evita que o modelo apenas confirme o que já escreveu. Custa três chamadas onde havia uma, e a terceira é a que decide se valeu.
Delegada não raciocina: escreve código e deixa o interpretador executar. Para aritmética e manipulação de dados é a família mais confiável, porque troca uma capacidade fraca do modelo por uma ferramenta que não erra conta. “Quantos dias úteis entre 3 de março e 12 de setembro” é o tipo de pergunta em que a cadeia mais caprichada perde para quatro linhas de Python. O preço é infraestrutura: você precisa de um sandbox, e sandbox é um sistema, não uma linha de configuração.
Chain-of-thought pedido e raciocínio treinado
As duas coisas produzem passos e são diferentes o bastante para mudar o que você escreve no prompt.
No chain-of-thought você pede, e os passos aparecem na resposta. Você lê, audita, corta o que não interessa e paga por eles como tokens de saída. O controle é todo seu, exercido por texto: pedir mais detalhe rende mais passos, pedir concisão rende menos.
No modelo de raciocínio o processo foi treinado para acontecer antes da resposta, e três coisas mudam de lugar. O controle sai do texto e vai para um parâmetro, quando a API expõe um: você regula o esforço, não a redação. Os tokens gastos nesse processo entram na conta como saída, mesmo quando a resposta final tem três linhas, então pedir uma resposta curta não deixa a chamada barata. E instruir “pense passo a passo” por cima costuma atrapalhar, porque você empilha um segundo processo sobre um que já existe.
Há uma consequência de auditoria que vale registrar. Em julho de 2026, boa parte das APIs que expõem esse raciocínio devolve um resumo dele, e resumo de cadeia não é a cadeia. Para depurar onde o passo saiu errado, um chain-of-thought comum ainda mostra mais.
A escolha entre os dois segue o tipo de tarefa mais que a preferência. Problema com resposta verificável, como matemática e código, é onde o raciocínio treinado rende. Extração e formatação costumam não render nada, e é onde a conta da próxima seção dói mais.
Onde quebra
Quatro modos de falha, e reconhecer qual está agindo decide se a correção é de prompt ou de arquitetura.
Raciocínio infiel. A cadeia exibida não é necessariamente o que determinou a resposta. Um trabalho de 2023 inseriu uma pista enviesada no prompt, como reordenar as alternativas de múltipla escolha para que a correta fosse sempre a “(A)”, e mediu queda de até 36% de exatidão em 13 tarefas do BIG-Bench Hard. Os modelos raramente mencionavam a pista na explicação: a cadeia justificava a nova resposta como se ela tivesse saído do raciocínio3. Os modelos testados eram de 2023 e a magnitude provavelmente mudou; o que não mudou é a implicação. A cadeia serve para localizar onde o raciocínio saiu do rumo, e não vale como prova de por que a resposta foi aquela.
Erro que se propaga. Se o passo 2 sai errado, os cinco seguintes serão coerentes com ele. A resposta final vem com aparência de rigor e um erro embutido. É a falha mais perigosa porque a forma parece correta. É também o motivo pelo qual a família ramificada funciona: cadeias amostradas de forma independente raramente erram o mesmo passo intermediário do mesmo jeito, e o voto descarta o caminho contaminado sem precisar saber onde ele quebrou.
Excesso de passos. Em problema simples, pedir raciocínio pode piorar. O modelo constrói uma justificativa elaborada para algo que responderia certo de primeira, e classificação intuitiva é onde isso mais aparece: pedir a justificativa antes do rótulo dá ao modelo espaço para se convencer do rótulo errado. Vale especialmente em modelo de raciocínio, onde instruir chain-of-thought por cima do processo interno costuma atrapalhar.
Fora da distribuição. Troque os números de um problema que o modelo acerta e o acerto às vezes some. Troque os nomes, a ordem das cláusulas ou as unidades e acontece o mesmo. É o sinal mais claro de que parte do desempenho vem de padrão memorizado, não de procedimento generalizado, e é o teste que separa uma avaliação que significa alguma coisa de uma que só confirma o que o benchmark já dizia.
Quanto custa raciocinar
Passos são tokens de saída, e token de saída custa um múltiplo do token de entrada em praticamente todo provedor. Os números abaixo são de ordem de grandeza, com as premissas à vista.
Suponha classificar 100 mil tickets de suporte em cinco categorias. A resposta direta é um rótulo: cinco tokens de saída, 500 mil no total. Com uma cadeia curta de 250 tokens antes do rótulo, são 25 milhões. A mesma tarefa, cinquenta vezes a conta de saída. Se você ainda ligar self-consistency com dez amostras, multiplique por dez de novo: 250 milhões de tokens para o mesmo trabalho.
A latência anda junto. Geração roda na ordem de dezenas de tokens por segundo, o que põe uma cadeia de 250 tokens na casa de segundos, contra uma fração de segundo para o rótulo direto. Numa fila que processa em lote isso é irrelevante. Num campo de busca onde alguém espera, é o produto inteiro.
Em modelo de raciocínio a conta tem uma parte que você não vê: os tokens gastos antes da resposta entram como saída e o número não está sob o seu controle direto. Uma resposta de três linhas pode ter custado milhares de tokens.
Onde não compensa é onde a resposta direta já acerta: volume alto, item de valor baixo, caminho interativo. Onde compensa é o inverso, volume baixo e custo do erro alto, com resposta verificável. A forma de decidir é rodar as duas versões nos mesmos cinquenta casos e comparar exatidão contra fatura. Custa uma tarde e substitui a discussão.
O que fazer com isso
- Comece sem pedir raciocínio. Muita tarefa não precisa, e passos custam tokens e latência. Se a versão direta já acerta nos seus casos, terminou aqui.
- Se o problema tem passos, peça os passos. Em modelo comum, isso é chain-of-thought. Em modelo de raciocínio, não peça: ele já faz, e pedir por cima atrapalha.
- Se a resposta varia entre chamadas, gere várias e vote. É o caso de self-consistency, e ele exige resposta comparável, número ou rótulo. O ganho de exatidão custa N chamadas.
- Se envolve aritmética ou data, delegue para código. Não gaste esforço fazendo o modelo calcular melhor do que um interpretador.
- Peça o rótulo antes da justificativa quando a tarefa for de classificação. Inverter a ordem tira do modelo a chance de argumentar até o rótulo errado.
- Teste com os números trocados. Se o acerto some, você está medindo memorização e não capacidade.
O passo 6 é o mais informativo e o menos feito. Ele custa cinco minutos e muda completamente a leitura de qualquer resultado.
Footnotes
-
Wei et al. (2022) mediram o efeito em tarefas de aritmética, senso comum e raciocínio simbólico, mostraram que o ganho depende da escala do modelo e reportaram estado da arte no GSM8K com um modelo de 540B e oito exemplos com passos, à frente de um GPT-3 ajustado com verificador. ↩ ↩2
-
Wang et al. (2022) apresentaram a amostragem de múltiplas cadeias com voto de maioria sobre a resposta final, e reportaram ganho em cinco benchmarks de aritmética e senso comum. ↩
-
Turpin et al. (2023) demonstraram cadeias que justificam uma resposta sem mencionar o fator que de fato a determinou, com queda de até 36% de exatidão em 13 tarefas do BIG-Bench Hard sob pistas enviesadas no prompt. ↩
Perguntas frequentes
- LLMs raciocinam de verdade ou só imitam?
- Depende do que você chama de raciocinar. Eles resolvem problemas de vários passos que não estavam no treino, o que é mais que memorização. Mas falham em variações triviais de problemas que acertam, o que é menos que raciocínio robusto. A resposta útil é medir na sua tarefa, não escolher lado no debate.
- Por que escrever os passos melhora a resposta?
- Porque cada token gerado entra no contexto dos seguintes. Ao escrever um passo intermediário, o modelo passa a condicionar o resto da resposta naquele resultado em vez de precisar chegar à conclusão em uma única passagem. O rascunho vira memória de trabalho.
- Qual a diferença entre chain-of-thought e modelo de raciocínio?
- Chain-of-thought é uma técnica de prompt: você pede os passos e eles aparecem na resposta. Modelo de raciocínio faz isso internamente, treinado para tal, antes de responder. Nele, pedir chain-of-thought explicitamente costuma atrapalhar em vez de ajudar.
- O raciocínio que o modelo mostra é o que ele realmente usou?
- Nem sempre. Há casos documentados em que a resposta foi influenciada por uma pista que a cadeia não menciona. A cadeia serve para auditar formato e localizar o passo errado, mas não é prova do processo interno que gerou a resposta.
- Quando pedir raciocínio piora o resultado?
- Em tarefas simples e em tarefas intuitivas de classificação, onde verbalizar introduz erro que a resposta direta não teria. E em modelo de raciocínio, que já faz o trabalho internamente. A regra prática é testar as duas versões nos mesmos casos.
- Raciocínio custa mais caro?
- Sim, em duas frentes. Os passos são tokens de saída cobrados normalmente, e em modelo de raciocínio há tokens internos que também entram na conta. Além disso a latência sobe. Em tarefa que não precisa, é custo puro sem retorno.
Referências
- Wei, J. et al.. Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (2022)arXiv:2201.11903
- Turpin, M. et al.. Language Models Don't Always Say What They Think (2023)arXiv:2305.04388
- Wang, X. et al.. Self-Consistency Improves Chain of Thought Reasoning in Language Models (2022)arXiv:2203.11171