o problema
Até 2021 a receita para melhorar um modelo de linguagem era aumentar o modelo. Funcionava para quase tudo — menos para as tarefas que exigiam vários passos encadeados. Aritmética de problema de enunciado, senso comum, manipulação de símbolos: nessas, a curva de escala era plana. Um modelo dez vezes maior acertava praticamente o mesmo, e ninguém sabia dizer se era limite de arquitetura, de dados ou de outra coisa.
Havia duas saídas conhecidas, cada uma com um defeito grande. A primeira era treinar ou finetunar o modelo para produzir a solução passo a passo — o que exige um dataset de milhares de raciocínios escritos à mão, muito mais caro que pares de entrada e saída. A segunda era few-shot prompting no estilo do GPT-3: barato, um único checkpoint serve para tudo, mas justamente nas tarefas de raciocínio ele ia mal e não melhorava com escala. No GSM8K, o melhor resultado publicado era um GPT-3 finetunado com um verificador treinado por cima, 55% de acurácia.
a ideia
O prompt few-shot padrão é uma lista de pares: pergunta, resposta. A proposta é trocar isso por trios: pergunta, cadeia de raciocínio, resposta. Nada mais. Você escreve à mão, uma vez, oito exemplos em que a resposta vem precedida das contas e das frases que levam até ela, e cola isso na frente da pergunta de teste. O modelo imita o formato e passa a produzir a própria cadeia antes de responder.
Nenhum modelo foi finetunado em nenhum experimento do paper. O que se aprende aqui é que a capacidade já estava no modelo pré-treinado e o prompt padrão simplesmente não a alcançava.
como funciona
Os oito exemplos são triviais e nem foram otimizados. Um deles, no prompt real do paper:
Q: Leah had 32 chocolates and her sister had 42. If they ate 35,
how many pieces do they have left in total?
A: Originally, Leah had 32 chocolates. Her sister had 42. So in total
they had 32 + 42 = 74. After eating 35, they had 74 - 35 = 39.
The answer is 39.
O mesmo conjunto de oito foi usado em todos os benchmarks de matemática, exceto o AQuA, que é múltipla escolha e recebeu quatro. Decodificação gulosa, sem amostragem.
Os números do GSM8K: PaLM 540B vai de 17,9% para 56,9%; GPT-3 175B (text-davinci-002), de 15,6% para 46,9%; Codex, de 19,7% para 63,1%. O LaMDA 137B sai de 6,5% para 14,3%. Abaixo de 10B parâmetros o efeito inverte — o LaMDA 420M cai de 2,6% para 0,4%.
A parte que sustenta a tese são as ablações, todas no GSM8K com LaMDA 137B contra baseline de 6,5%. Pedir só a equação, sem o texto: 5,4% — pior que a baseline. Pedir uma sequência de pontos do mesmo comprimento da equação, para dar ao modelo o mesmo orçamento de tokens sem conteúdo: 6,4%. Pedir a cadeia depois da resposta: 6,1%. Nenhum dos três substitutos funciona. O ganho não vem de compute extra nem de ativar conhecimento pelo texto; vem de a resposta ser gerada condicionada aos passos.
Fora da aritmética, o efeito se repete. Em sports understanding, PaLM 540B chega a 95,4% contra 84% de um entusiasta de esportes. Na concatenação de últimas letras, com exemplos de nomes de duas palavras e teste em nomes de três, o prompting padrão fica em 0,2% e o chain-of-thought em 94,8% — generalização para sequências mais longas que as vistas nos exemplos.
o que isso custou
A emergência é o preço central: o método só existe em modelos de ~100B parâmetros para cima, o que o torna caro de servir. Os próprios autores listam isso como limitação aberta.
Prompt engineering continua importando, e mais do que a narrativa de robustez sugere. Trocar o anotador da cadeia move o coin flip de 99,6% para 71,4%. Numa tarefa de inverter uma lista de cinco itens, dois coautores não conseguiram escrever um prompt que funcionasse e um terceiro conseguiu. Os ganhos também não transferem entre modelos: no CSQA e no StrategyQA com GPT-3, o chain-of-thought piora.
E não há garantia nenhuma de que a cadeia esteja certa. Na análise manual de 50 erros do LaMDA 137B no GSM8K, 46% das cadeias estavam quase corretas — erro de conta, de mapeamento de símbolo, um passo faltando — e 54% tinham falha grave de compreensão ou coerência. Em tarefas binárias e de múltipla escolha é comum chegar à resposta certa por um caminho errado, o que corrói o argumento da interpretabilidade. O paper é explícito ao dizer que isso não responde se a rede está “raciocinando”.
onde isso aparece hoje
O próprio texto já aponta duas continuações imediatas: um interpretador Python como calculadora externa aplicado às equações da cadeia (o LaMDA 137B no GSM8K vai de 14,3% para 17,8% assim) e self-consistency, que amostra várias cadeias e vota na resposta final majoritária. As duas viraram padrão.
“Pense passo a passo” deixou de ser truque e virou comportamento embutido: os modelos de raciocínio atuais geram tokens intermediários antes de responder por construção, sem precisar de exemplos no prompt. Vale reter o desconforto que a ablação dos pontinhos deixa aí — neste setup, gastar tokens sem conteúdo não comprava nada.