Puntata 114
Puntata 114 — Chain-of-thought
Livello: ✔️✔️ Doppie Spunte Blu · Capitolo 11 · Prompt engineering decente
Quattro parole — “ragiona passo per passo” — hanno cambiato lo stato dell’arte nel 2022. Da allora, sono dentro ogni modello reasoning.
La scoperta che ha cambiato tutto
Gennaio 2022, paper di Google Brain (Wei et al.): aggiungere “Let’s think step by step” a un prompt migliora drasticamente le performance del modello su task di ragionamento matematico, simbolico, logico.
Esempio storico:
- Senza CoT: GPT-3 sul benchmark MATH ~5%.
- Con CoT: GPT-3 sul benchmark MATH ~25%.
Cinque volte meglio, stesso modello, stessi pesi. Solo il prompt cambia.
Da lì è iniziato un cambiamento: prima il prompt engineering, poi modelli costruiti per fare CoT internamente (o-series, Claude extended thinking, DeepSeek-R1).
Cosa fa davvero il chain-of-thought
L’LLM genera token in sequenza autoregressiva (puntata 103). Senza CoT:
Domanda → risposta finale (in 1-2 token)
Il modello deve “indovinare” la risposta. Su task complessi, sbaglia.
Con CoT:
Domanda → passaggio 1 → passaggio 2 → … → passaggio N → risposta
Il modello produce token intermedi che fungono da “scratchpad” — uno spazio dove lavora il problema. Ogni token nuovo è condizionato dai precedenti, quindi può costruire la soluzione progressivamente e correggere strada facendo.
In termini tecnici: CoT permette al modello di usare più computazione per token-rispondi (test-time compute, vedi puntata 268).
Le tre versioni del CoT
1. Zero-shot CoT
“Risolvi il problema. Ragiona passo per passo.”
Una riga. Funziona già su molti modelli moderni.
2. Few-shot CoT
Mostri esempi di soluzione passo-passo:
Problema: Mario ha 5 mele. Ne mangia 2 e ne compra altre 7.
Quante ne ha alla fine?
Ragionamento:
- Mario parte con 5 mele.
- Mangia 2 → 5 - 2 = 3 mele.
- Compra 7 → 3 + 7 = 10 mele.
Risposta: 10 mele.
Problema: Lucia ha 12 caramelle…
Ragionamento:
Il modello apprende il formato del ragionamento dagli esempi.
3. Auto-CoT (avanzato)
Lasci che il modello generi da solo sia il problema “di esempio” sia la sua soluzione passo-passo, poi applica lo schema al problema reale. Tecnica del 2022-23, meno usata oggi che i modelli sono più bravi nativamente.
Cosa migliora davvero
CoT è forte su:
- ✅ Aritmetica multi-step (problemi con più operazioni concatenate).
- ✅ Logica simbolica (puzzle, deduzioni).
- ✅ Ragionamento commonsense complesso.
- ✅ Estrazione strutturata con regole multiple.
- ✅ Risoluzione problemi che richiedono pianificazione.
CoT è debole o inutile su:
- ❌ Fatti puri (“In che anno è nato Manzoni?”): CoT non aiuta, anzi può confondere.
- ❌ Compiti creativi (poesia, brainstorm).
- ❌ Riassunti, traduzioni: il modello produce già “intermedi” naturali, CoT è ridondante.
- ❌ Task molto brevi dove non c’è “passo” da fare.
Esempio reale: problema di matematica
Senza CoT
“Un treno parte alle 14:35 e ci mette 3h 47min. A che ora arriva?”
Modello (a volte sbaglia):
“Alle 18:22.” ✓ ma talvolta: “Alle 17:82.” ✗ (errore di carry)
Con CoT
“Un treno parte alle 14:35 e ci mette 3h 47min. A che ora arriva? Ragiona passo per passo.”
Modello:
“Passo 1: Sommo i minuti. 35 + 47 = 82 minuti = 1h 22min. Passo 2: Sommo le ore. 14 + 3 + 1 (dall’overflow dei minuti) = 18 ore. Passo 3: I minuti residui sono 22. Risposta: 18:22.”
Accurato, verificabile, e se sbaglia un passo te ne accorgi.
CoT + verifica
Combinazione potente per task critici:
Risolvi il problema in 3 fasi:
1. Ragiona passo per passo.
2. Dai la risposta.
3. Ricontrolla: ripeti il calcolo con un metodo diverso, e verifica
se ottieni lo stesso risultato. Se no, segnala il disaccordo.
Il modello fa doppia verifica interna. Riduce gli errori significativamente.
Self-consistency
Variante avanzata: chiedi al modello N percorsi di ragionamento diversi, poi prendi la risposta più frequente.
Risolvi il problema 5 volte, ogni volta con un percorso di
ragionamento diverso. Alla fine, dimmi qual è la risposta che è
emersa più spesso.
Pubblicato da Wang et al. (Google 2022): migliora ulteriormente l’accuratezza, specie su matematica. Costo: ~5x più token. Trade-off classico.
I modelli “reasoning” del 2024-26
Da settembre 2024 (OpenAI o1) e poi DeepSeek-R1, Claude 4 thinking, Gemini 2.5 Deep Think: modelli che fanno CoT internamente di default.
Caratteristica chiave:
- Producono migliaia di token “thinking” prima della risposta.
- Tu vedi (a volte) un riassunto del ragionamento, non tutto.
- Costano di più in tempo e dollari (più token = più $$).
- Migliorano drasticamente matematica, coding, logica.
Su questi modelli, scrivere “ragiona passo per passo” è ridondante — lo fanno già. Anzi, può rallentarli senza beneficio.
Vedi puntata 128 sulla scelta tra reasoning e fast.
CoT trasparente vs CoT nascosto
Trade-off di design:
| Modello | Mostra il thinking? |
|---|---|
| GPT-5 thinking | Riassunto sì, dettaglio no |
| Claude 4.7 extended | Riassunto sì, tutto disponibile via API |
| o3 / o4-mini | Quasi nulla mostrato (proprietary) |
| DeepSeek-R1 | Tutto mostrato (open) |
| Gemini 2.5 Deep Think | Riassunto |
Argomento OpenAI/Anthropic: nascondere il ragionamento evita che terzi distillino il modello. Argomento DeepSeek: trasparenza, debugging, trust.
Per utenti: meno reasoning visibile = meno controllo, ma anche meno rumore. Per developer: thinking visibile è prezioso per debugging.
I limiti onesti
⚠️ Non risolve il problema della verità. CoT migliora il processo, non rende il modello onnisciente. Su domande dove il modello non sa il fatto, CoT produce ragionamenti elaborati su fatti inventati. Vedi puntata 108.
⚠️ Aumenta i token. Se sei in produzione e paghi al token, CoT triplica/quadruplica il costo. Per task semplici, non vale.
⚠️ Può rallentare. Per applicazioni con latenza critica (chatbot real-time), CoT esteso fa aspettare l’utente.
⚠️ Faithfulness dubbia. I modelli non sempre seguono davvero il loro stesso ragionamento. Studi 2023-24 hanno mostrato casi in cui il “thinking” sembra coerente ma la risposta finale arriva da altro. Tema aperto di ricerca.
Quando NON usare CoT
- Task semplici (riassunto breve, traduzione).
- Task creativi (storie, copywriting).
- Quando paghi al token e il task è ad alto volume.
- Quando sei su modello già reasoning (ridondante).
TEST pratico (5 minuti)
Prendi un problema con un po’ di matematica o logica. Esempio:
“Un cliente compra 3 articoli da 24.90€ ciascuno, riceve uno sconto fedeltà del 15%, poi paga in 3 rate. Quanto pagherà per ogni rata? Indica anche l’IVA al 22% se non già inclusa.”
Mandalo:
- Senza CoT a un modello fast (GPT-5 mini, Gemini Flash).
- Con CoT (“ragiona passo per passo”) allo stesso modello.
- Senza CoT a un modello reasoning (o4-mini, Claude 4.7 thinking).
Confronta:
- Quale arriva alla risposta giusta?
- Quale mostra il ragionamento (e tu puoi controllarlo)?
- Quale è il più veloce?
Spesso: modello fast + CoT ≈ modello reasoning senza CoT, con costo simile. Sapere quando scegliere quale è il vero prompt engineering del 2026.
Take-away in una riga
CoT scambia token per accuratezza: dai al modello spazio per ragionare, ottieni risposte migliori. Inutile sui task semplici, indispensabile sui complessi.
➡️ Prossima puntata: Formato output — tabella, JSON, elenco, schema.