o problema
O chain-of-thought resolveu metade do problema: fez o modelo escrever os passos intermediários antes da resposta, e isso sozinho destravou aritmética e senso comum em modelos grandes. A outra metade ficou de pé. A decodificação continuava gulosa — um único caminho, montado token a token por escolha local. Se o modelo erra uma subtração no terceiro passo, não existe mecanismo de recuperação: o erro se propaga até “The answer is” e a resposta sai errada com uma justificativa impecável em volta.
A saída conhecida na época era cara. Cobbe et al. treinaram um verificador de 175 bilhões de parâmetros para ranquear soluções de um GPT-3 de 175 bilhões já ajustado com 7.500 exemplos. Thoppilan et al. coletaram anotação humana adicional para treinar um re-ranker. Ambos os caminhos exigem dado rotulado, treino extra e um modelo auxiliar por tarefa. A pergunta que este trabalho faz é se dá para extrair o mesmo sinal do próprio modelo, sem nada disso.
a ideia
Um problema que exige deliberação costuma admitir várias rotas até a mesma resposta certa. Uma rota errada, por outro lado, erra do seu jeito particular. Então: em vez de decodificar o caminho mais provável, amostre vários caminhos diferentes, jogue fora o raciocínio e conte as respostas. A que aparecer mais vezes vence.
O nome que os autores dão é self-ensemble, e a distinção importa. Um ensemble clássico treina modelos diferentes e agrega. Aqui é o mesmo modelo, o mesmo prompt, consultado várias vezes com temperatura. O raciocínio vira variável latente: ele existe para produzir a resposta e depois é marginalizado.
como funciona
Três passos. Primeiro, prompt few-shot com exemplares de chain-of-thought escritos à mão — os mesmos oito de Wei et al. para as tarefas aritméticas. Segundo, trocar greedy por amostragem: T = 0,5 com top-k = 40 para UL2-20B e LaMDA-137B, T = 0,7 com k = 40 para PaLM-540B, T = 0,7 sem truncamento para o GPT-3. Quarenta amostras por questão. Terceiro, um parser dependente da tarefa extrai o que vem depois de “The answer is” e o argmax da contagem devolve a resposta.
A tabela 1 do paper testa se vale ponderar o voto pela probabilidade da geração. A soma ponderada normalizada pelo comprimento chega a 74,1 no GSM8K; o voto simples, 74,4. Empate. A soma não normalizada cai para 59,9, e a média ponderada normalizada desaba para 22,1. Ou seja: a única variante que sobrevive é a mais burra.
Nos números principais, PaLM-540B vai de 56,5 para 74,4 no GSM8K, e code-davinci-002 de 60,1 para 78,0 — os dois +17,9. SVAMP +11,0, AQuA +12,2, StrategyQA +6,4, ARC-challenge +3,9. Também funciona com zero-shot CoT: 43,0 para 69,2 no PaLM.
o que isso custou
Quarenta forward passes completos por pergunta. Os próprios autores recomendam começar com 5 ou 10 caminhos, porque a curva satura rápido e a maior parte do ganho já está ali.
O método exige conjunto de respostas fixo. Aritmética, múltipla escolha e sim/não entram; geração aberta não, a menos que alguém defina uma métrica de concordância entre textos.
E o limite mais desconfortável: o raciocínio amostrado pode ser lixo mesmo quando a resposta está certa. No exemplo de StrategyQA da tabela 4, o modelo cita populações de Albany que não conferem e mesmo assim conclui corretamente. A cadeia não é explicação auditável — é andaime. Modelos pequenos ganham pouco (UL2-20B sai de 4,1 para 7,3 no GSM8K), e prompts que produzem cadeias curtas ganham quase nada: com raciocínio em forma de equação, LaMDA-137B vai de 5,0 para 6,5, porque cadeia curta não tem onde variar.
onde isso aparece hoje
Amostrar k respostas e votar virou linha de base padrão em avaliação de raciocínio. A generalização estrutural veio na Tree of Thoughts, que troca o conjunto plano de caminhos independentes por uma busca com ramificação e poda.
O eixo maior é outro: este é um dos primeiros resultados a mostrar que gastar compute na hora da inferência compra acurácia sem tocar nos pesos — ideia depois estudada de frente em Scaling LLM Test-Time Compute e materializada nos modelos que raciocinam longamente antes de responder, como o DeepSeek-R1. A própria seção de trabalhos futuros aponta para lá ao sugerir usar self-consistency para gerar dados de treino melhores e internalizar o ganho num único passe.