🧠 Chain-of-Thought: Pense em voz alta com IA
📌 Pra que serve
Chain-of-Thought (CoT) é uma técnica que força o modelo de IA a "pensar em voz alta", quebrando problemas complexos em passos intermediários antes de dar a resposta final. Aumenta muito a precisão em tarefas de raciocínio matemático, lógica e resolução de problemas — estudos mostram ganhos de até 40% em benchmarks como GSM8K (matemática).
🛠️ Passo a passo
1. Sem CoT (ruim):
Pergunta: Uma caixa tem 15 maçãs. Pedro tira 3 e come a metade. Quantas sobram?
Resposta do modelo: [frequentemente erra]2. Com CoT (bom):
Pergunta: Uma caixa tem 15 maçãs. Pedro tira 3 e come a metade. Quantas sobram?Instruções: Pense passo a passo:
1. Quantas maçãs Pedro tirou? 3
2. Ele comeu a metade. Metade de 3 = 1,5 ≈ 1 ou 2 maçãs (especifique)
3. Sobram na caixa: 15 - 3 = 12
4. Resposta final: 12
3. Zero-shot CoT (mais simples):
Simplesmente adicione ao fim do prompt: "Vamos pensar passo a passo."
Exemplo com Claude ou ChatGPT:
Resolva: "2 + 2 × 3 = ?"
Instruções: "Vamos pensar passo a passo"O modelo automaticamente enumerará: "Primeiro aplicamos ordem das operações..."
4. Na prática com código (Python + API OpenAI/Anthropic):
prompt = """
Problema: João ganha 5 reais por hora, trabalhou 8 horas, teve 10% de desconto. Quanto recebe?Resolva passo a passo:
1. Calcule ganho bruto
2. Calcule desconto
3. Calcule valor final
"""
Envie para seu modelo favorito
💡 Dica: CoT funciona MELHOR em modelos maiores (GPT-4, Claude 3.5). Em modelos menores pode aumentar erros. Também não vale para tarefas simples (perguntas factuais rápidas) — use seletivamente pra economizar tokens.
🔗 Links e instalação
- Leia o paper original: Wei et al. (2022) no arXiv: https://arxiv.org/abs/2201.11903
- Teste agora: Cole seu prompt em https://claude.ai ou https://chatgpt.com com "Let's think step-by-step"
- Implementação pronta (Python com Anthropic
pip install anthropic
import anthropic
client = anthropic.Anthropic()
msg = client.messages.create(
model="claude-opus-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Seu prompt com CoT aqui"}]
)
print(msg.content)