Prompting e prática · Leitura de 8 min

Pedir à IA que 'pense passo a passo' e por que isso melhora as respostas

Um modelo apressado erra em contas simples. Obrigá-lo a raciocinar em voz alta o torna mais certeiro. O motivo é curioso.

Dei a um modelo uma conta de escola primária: "Um trem leva 17 passageiros. Na primeira parada descem 8 e sobem 5. Na segunda descem 3 e sobem 12. Quantos vão no final?". Respondeu, rápido e seguro: "22". A resposta correta é 23. Não era um modelo burro nem uma conta difícil. Era um modelo apressado. Então apaguei tudo e acrescentei quatro palavras ao final da pergunta: "vamos pensar passo a passo". A mesma máquina, sem mudar mais nada, escreveu as quatro subtrações e somas em ordem e chegou a 23.

Essa diferença de um dígito esconde uma das ideias mais úteis e mais estranhas do prompting. Chama-se chain of thought (cadeia de pensamento) e consiste em algo que soa quase como truque de criança: em vez de pedir a resposta ao modelo, você pede que ele mostre o caminho. O curioso não é que funcione. O curioso é por quê.

01 · o caminhoO que é chain of thought e por que o modelo precisa do espaço

Comecemos pela resposta direta. Chain of thought prompting é a técnica de pedir a um modelo que escreva os passos intermediários do seu raciocínio antes de dar a resposta final. Em vez de saltar do problema ao resultado, o modelo desdobra uma cadeia: primeiro isto, depois aquilo, portanto o outro. A resposta cai no final, como consequência do caminho, e não como um salto.

Para entender por que isso ajuda é preciso lembrar como trabalha um modelo de linguagem: ele não pensa e depois fala. Pensar e falar são, para ele, a mesma ação. Gera uma palavra, acrescenta ao que já escreveu e, sobre esse texto ampliado, gera a seguinte. Cada palavra que produz vira o chão para a próxima. Não há um quadro secreto onde ele calcule à parte e depois nos dite o resultado limpo. O texto que você vê é o cálculo.

O modelo não raciocina em segredo e depois escreve. Escrever é a única forma que ele tem de raciocinar.

Pense nisso como geometria. Ir do problema à resposta num único salto é traçar uma reta entre dois pontos muito distantes: qualquer tremor mínimo no ângulo de saída te deixa longíssimo do destino. Já pedir passos intermediários é colocar pontos de apoio no trajeto. Cada passo curto é fácil de acertar, e cada um corrige a mira do seguinte. A cadeia não deixa o modelo mais inteligente: ela lhe dá lugares onde firmar o pé.

Figura 1 · o salto longo diante dos passos curtos
problema "22" (errado) um só salto: um erro cedo desvia tudo problema "23" (certo) passos curtos: cada apoio corrige a mira do seguinte
A resposta não mudou porque o modelo soubesse mais. Mudou porque você lhe deu trechos curtos onde cada passo sustenta o seguinte. Um erro num salto longo arruína tudo; um erro num trecho curto é mais visível e mais fácil de não cometer.

02 · a descobertaA frase de seis palavras que destravou o raciocínio

Até 2022, a sabedoria comum era que os modelos de linguagem simplesmente não serviam para raciocínio de vários passos: aritmética, enigmas de lógica, problemas com enunciado. Falhavam e pronto. Dois trabalhos quase simultâneos mudaram essa ideia, e o fizeram sem tocar no modelo: só mudaram o que pediam a ele.

O primeiro, de Jason Wei e colegas no Google, mostrou que se no prompt você dá ao modelo uns poucos exemplos resolvidos com os passos à vista (não só pergunta e resposta, mas o raciocínio completo do meio), o modelo imita esse formato e passa a resolver problemas novos também passo a passo. Seu acerto em problemas de matemática do ensino médio deu um salto grande, e o efeito crescia com o tamanho do modelo: em modelos pequenos quase não aparecia, nos grandes ficava notável [1].

A segunda descoberta foi ainda mais nua. Takeshi Kojima e sua equipe testaram algo quase provocador: não dar nenhum exemplo, apenas acrescentar ao final do problema a frase "Let's think step by step" (vamos pensar passo a passo). Sem exemplos, sem treinamento extra, seis palavras. E o acerto em vários problemas de raciocínio subiu de forma marcada. Ao modo sem exemplos chamaram zero-shot chain of thought [2].

Por que uma frase tão boba funciona

O modelo aprendeu com milhões de textos humanos, e nesses textos, quando alguém anuncia "vamos pensar passo a passo", o que segue é quase sempre uma explicação ordenada e correta. A frase não invoca magia: coloca o modelo na vizinhança de texto onde vive o raciocínio cuidadoso, e dali ele gera o que corresponde a esse estilo. Você mudou a companhia dele, não o cérebro.

Cabe um aviso honesto, porque aqui se infiltra muito mito: a cadeia de texto que o modelo escreve não é garantia de que ele "pensou" assim por dentro. Às vezes a explicação soa impecável e a resposta mesmo assim sai errada. Os passos ajudam de verdade, os números confirmam, mas são uma ferramenta para acertar com mais frequência, não uma janela transparente para a sua mente. Trate-os como andaime útil, não como confissão.

03 · a práticaComo pedir isso bem (e quando não se incomodar)

A boa notícia é que aplicar isso não exige nada técnico. É questão de como você redige a pergunta. Três formas, da que menos à que mais exige esforço.

A frase mágica. Ao final de um problema de lógica, contas ou vários passos, acrescente algo como "raciocine passo a passo antes de responder" ou "explique seu raciocínio e depois dê a resposta". É de graça e costuma bastar para destravar o erro do salto longo.

O exemplo resolvido. Se o problema tem um formato repetido, mostre primeiro um resolvido com todos os passos à vista, e depois peça o seu. O modelo copia a forma do raciocínio, não só a do resultado. Isso é chain of thought com exemplos, e é o que o trabalho de Wei mediu.

A ordem explícita. Peça que ele primeiro liste os dados, depois o plano, depois os cálculos, e no final (e só no final) a resposta. Forçar essa ordem evita que ele dispare o resultado antes de ter em que apoiá-lo.

Figura 2 · dois prompts, dois resultados
Prompt A: "Quantos passageiros vão no final? Responda só o número." → 22 ✗
Prompt B: "Resolva passo a passo: escreva cada parada e só no final o total." → 17−8+5=14; 14−3+12=23 → 23 ✓
O mesmo modelo, a mesma conta. A única coisa que mudou foi a instrução: pedir o número seco versus pedir o caminho. Os passos intermediários lhe deram onde apoiar cada operação.

Agora as letras miúdas, porque isto não é pólvora para tudo. Pedir passos gasta mais: o modelo escreve mais texto, então a resposta demora mais e, se você paga por uso, custa mais tokens. Para perguntas simples (uma definição, um dado, um sim ou não), acrescentar "raciocine passo a passo" não melhora nada e só infla a resposta. A cadeia de pensamento brilha onde há vários passos encadeados: aritmética com enunciado, lógica, planejamento, comparações com várias condições. Para o resto, deixe que ele responda direto.

Não peça o caminho quando o destino está ao lado. Peça-o quando o salto é longo.

Há um detalhe final que vale a pena guardar. Muitos dos modelos mais novos, os chamados modelos de raciocínio, já fazem isso sozinhos: foram treinados para desdobrar sua cadeia de passos por dentro antes de responder, sem que você peça. Nesses casos, escrever "passo a passo" é redundante. Mas entender a ideia continua servindo, porque explica o que esses modelos estão fazendo quando "levam o seu tempo": estão colocando pontos de apoio entre a sua pergunta e a sua resposta, exatamente como o trem que, contado com calma, leva 23.

Fontes

  1. Wei, J., Wang, X., Schuurmans, D., Bosma, M., Ichter, B., Xia, F., Chi, E., Le, Q. & Zhou, D. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. Advances in Neural Information Processing Systems (NeurIPS) 35. arXiv:2201.11903.
  2. Kojima, T., Gu, S. S., Reid, M., Matsuo, Y. & Iwasawa, Y. (2022). Large Language Models are Zero-Shot Reasoners. Advances in Neural Information Processing Systems (NeurIPS) 35. arXiv:2205.11916. (Origem de "Let's think step by step".)
  3. Nye, M., Andreassen, A. J., Gur-Ari, G., et al. (2021). Show Your Work: Scratchpads for Intermediate Computation with Language Models. arXiv:2112.00114. (Antecedente: escrever passos intermediários melhora o cálculo.)

Aprenda mais sobre IA

Ver tudo Aprenda IA