
Il chain of thought prompting ha un problema nel 2026 che le guide più diffuse ignorano: lo stesso trucco che rendeva i modelli più intelligenti nel 2022 oggi può silenziosamente peggiorare un modello di reasoning. Wei et al. lo hanno introdotto nel 2022, e migliorava l'accuratezza su matematica e logica complesse spingendo i modelli a mostrare i propri passaggi di ragionamento. C'era un problema: funzionava solo una volta superati circa 100 miliardi di parametri. Oggi i modelli o-series e GPT-5 reasoning fanno quel ragionamento internamente, quindi dirgli di "ragionare passo dopo passo" spesso serve solo a bruciare token. Quando conviene ancora usarlo, e quando conviene saltarlo?
Punti chiave:
- Il chain of thought prompting mostra i passaggi di ragionamento di un modello e migliora l'accuratezza su matematica, logica e codice multi-step.
- È una capacità emergente: aiuta pochissimo i modelli piccoli, e i modelli di reasoning lo fanno già internamente.
- Su o-series, GPT-5 reasoning e Claude extended thinking, il classico "ragiona passo dopo passo" scritto a mano è spesso ridondante.
- Usa ancora il CoT manuale su modelli non-reasoning e open source locali, o quando ti serve un percorso di ragionamento verificabile.
Cos'è il Chain of Thought Prompting?
Il chain of thought (CoT) prompting (letteralmente "prompting a catena di pensiero") è una tecnica che chiede a un modello linguistico di affrontare un problema attraverso passaggi intermedi espliciti prima di dare una risposta finale. Introdotta da Wei et al. nel 2022, migliora l'accuratezza su compiti di matematica, logica e buon senso multi-step, e rende visibile il ragionamento del modello.
Chiedi a un modello semplice di risolvere un problema a parole a freddo, e spesso sparerà il numero sbagliato. Chiedigli di ragionare prima, e le probabilità salgono. Prendi questo esempio: "Uno scaffale ha 3 scatole da 7 libri ciascuna; ne tolgo 5. Quanti ne restano?" A freddo, un modello piccolo potrebbe rispondere "21". Aggiungi "Ragioniamo passo dopo passo" e scrive: 3 x 7 = 21, poi 21 - 5 = 16. Stesso modello, risposta migliore, e puoi vedere dove ha sbagliato se succede. Il CoT è uno strumento tra i tanti della nostra guida al prompt engineering; questo articolo si concentra solo su questo.
Come Funziona (e Perché Ha Iniziato a Funzionare Solo su Larga Scala)
Il CoT funziona facendo generare al modello un percorso di ragionamento in linguaggio naturale token per token, così ogni conclusione intermedia condiziona la successiva. Wei et al. (2022) hanno scoperto che si tratta di una capacità emergente: aiuta pochissimo i modelli piccoli e produce guadagni di accuratezza rilevanti solo superati circa 100 miliardi di parametri.
Pensala come mostrare i passaggi in un compito di matematica. Un modello predice un token alla volta, e ogni parola che scrive diventa parte dell'input per la parola successiva. Quando scrive "21" come risultato intermedio, quel "21" resta nel contesto e guida il passaggio finale verso "16". Salta i passaggi e il modello deve arrivare dritto alla risposta senza nulla su cui appoggiarsi. La parte curiosa è che questo vantaggio si manifesta solo su larga scala. Nel paper originale, il team di Wei ha scoperto che i modelli piccoli ottenevano un miglioramento quasi nullo, e a volte peggioravano. Ecco perché lo stesso prompt che fallisce su un modello locale da 7B può trasformare un modello di frontiera.
Le Tre Varianti: Zero-Shot, Few-Shot e Self-Consistency
Esistono tre varianti principali di CoT. Lo zero-shot CoT si limita ad aggiungere "Ragioniamo passo dopo passo" (Kojima et al., 2022). Il few-shot CoT mostra prima esempi di ragionamento già svolti. La self-consistency (Wang et al., 2022) campiona diversi percorsi di ragionamento e sceglie la risposta a maggioranza: la più affidabile e anche la più costosa delle tre.
Lo zero-shot è il trucco magico pigro. Aggiungi una sola frase e il modello ragiona senza alcun esempio. Kojima et al. hanno dimostrato che la sola frase "Ragioniamo passo dopo passo" trasforma un modello grande in un discreto ragionatore zero-shot.
# Zero-shot CoT: append the trigger phrase. Best on non-reasoning models.
# Model names change fast, so treat the string below as a placeholder.
from openai import OpenAI
client = OpenAI()
prompt = (
"Q: A shelf holds 3 boxes. Each box has 7 books. "
"I remove 5 books. How many are left?\n"
"A: Let's think step by step."
)
resp = client.chat.completions.create(
model="your-non-reasoning-model",
messages=[{"role": "user", "content": prompt}],
)
print(resp.choices[0].message.content)Il few-shot CoT va oltre: dai al modello due o tre esempi già risolti così copia lo schema di ragionamento nel tuo dominio. La self-consistency è la manopola dell'accuratezza. Invece di fidarti di una sola catena, ne campioni cinque a una temperatura più alta e le lasci votare. Wang et al. hanno scoperto che la risposta di maggioranza è di solito corretta anche quando singole catene divagano.
# Self-consistency: sample N reasoning paths, majority-vote the answer.
# More accurate, more expensive. Wang et al., 2022.
from collections import Counter
def self_consistency(prompt, n=5, temperature=0.7):
answers = []
for _ in range(n):
resp = client.chat.completions.create(
model="your-non-reasoning-model",
messages=[{"role": "user", "content": prompt}],
temperature=temperature, # diversity across paths
)
answers.append(extract_final_answer(resp.choices[0].message.content))
return Counter(answers).most_common(1)[0][0] # majority voteVuoi quel ragionamento come JSON pulito invece che testo libero? Abbina il CoT ai pattern della nostra guida agli output strutturati, così un passaggio a valle può interpretarlo.
La Svolta del 2026: i Modelli di Reasoning Hanno Cambiato le Regole
I modelli di reasoning, ovvero le o-series e GPT-5 reasoning di OpenAI, l'extended thinking di Claude e DeepSeek R1, fanno chain of thought internamente prima di rispondere. La documentazione ufficiale di OpenAI dice esplicitamente che dire a questi modelli di "ragionare passo dopo passo" è superfluo, e che chiedere a un modello di reasoning di ragionare di più può addirittura peggiorare le prestazioni. L'impalcatura è già incorporata.
Questa è la parte che le guide più datate fingono di ignorare. Un modello di reasoning produce una catena di pensiero privata prima ancora di mostrarti una risposta, quindi il passo-dopo-passo che una volta scrivevi a mano ora avviene sotto il cofano. Le best practice di reasoning di OpenAI lo dicono senza mezzi termini: "Evita i prompt chain-of-thought: dato che questi modelli eseguono il ragionamento internamente, chiedere loro di 'ragionare passo dopo passo' o 'spiegare il proprio ragionamento' è superfluo." La loro guida al prompting per o3/o4-mini va oltre: "Chiedere a un modello di reasoning di ragionare di più può in realtà peggiorare le prestazioni."
L'extended thinking di Anthropic è la stessa idea diventata prodotto. Dai a Claude un budget di pensiero invece di uno script passo-passo, e i modelli più recenti decidono da soli quanto approfondire il ragionamento. Su questa classe di modelli regoli reasoning_effort o il budget di pensiero, non la formulazione del prompt. Per il lato dei modelli di reasoning open, incluso DeepSeek R1, guarda il nostro confronto Qwen vs DeepSeek vs GLM.
Quando il CoT Manuale Aiuta Ancora e Quando Si Ritorce Contro
Il CoT manuale aiuta ancora sui modelli non-reasoning e su quelli piccoli o open source locali, oppure quando ti serve una struttura di ragionamento specifica o una traccia verificabile. Si ritorce contro sui modelli di reasoning nativi (ridondante e più lento), sui compiti semplici a un solo passaggio e sui percorsi sensibili a latenza o costo, dove brucia solo token senza alcun guadagno di accuratezza.
| Il CoT manuale aiuta ancora quando | Il CoT manuale si ritorce contro quando |
|---|---|
| Usi un modello non-reasoning (GPT più vecchi, Llama base) | Usi un modello di reasoning (o-series, GPT-5 reasoning, Claude thinking) |
| Usi un modello piccolo o open source locale | Il compito è una ricerca a un passaggio, una classificazione o un cambio di formato |
| Ti serve una struttura di ragionamento fissa e verificabile | Sei su un percorso sensibile alla latenza, in tempo reale |
| Il compito è matematica, logica o pianificazione multi-step | Sei su un endpoint ad alto volume, sensibile ai costi |
| Vuoi una traccia visibile che puoi ispezionare o cercare con grep | Il modello ragiona già internamente, quindi i passaggi si ripetono soltanto |
Ecco un esempio concreto di casa nostra. La pipeline a 12 agenti che ha scritto questo articolo gira su modelli Claude, e non diciamo mai deliberatamente a quegli agenti di "ragionare passo dopo passo", perché i modelli ragionano già internamente e sarebbe solo rumore in più. Quello che scriviamo a mano sono impalcature di ragionamento rigide e verificabili con grep. Il nostro agente validatore applica una rubrica fissa da 100 punti (50 qualità, 50 SEO) più otto controlli sequenziali. Il traduttore segue una checklist fissa: far combaciare il numero di H2 con la fonte, eseguire un grep sui caratteri diacritici che deve restituire più di zero, e restare in una banda dell'80-120% sul conteggio delle righe. Il publisher esegue controlli pre e post pubblicazione che verificano con regex la data publishedAt, poi interrogano il CMS per confermare che il corpo del testo non sia vuoto.
Niente di tutto questo riguarda un ragionamento più profondo. È un percorso fisso e verificabile che possiamo ispezionare e cercare con grep, esattamente il caso in cui "il CoT manuale aiuta ancora". Abbiamo aggiunto quei controlli per un motivo preciso: un valore publishedAt con solo la data, senza orario, una volta ha nascosto silenziosamente un intero articolo dall'indice del nostro blog, quindi la sequenza rigida di passaggi esiste ora per impedire al modello di saltare una verifica. Una precisazione onesta: questa è un'osservazione operativa, non un benchmark. Non abbiamo condotto un A/B controllato sull'accuratezza tra "ragiona passo dopo passo" e nessuna istruzione, quindi trattala come una lezione su struttura e verificabilità, non come un dato numerico.
Fai girare modelli locali dove il CoT manuale paga ancora? La nostra rassegna sui migliori LLM open source del 2026 copre il campo. E se mai mostri agli utenti la catena di pensiero di un modello, trattala come output non affidabile; la nostra guida alla prevenzione del prompt injection spiega perché.
Il Costo Nascosto: Token, Latenza e la Tua Bolletta
Il CoT non è gratis. Ogni passaggio di ragionamento è composto da token di output che paghi, e generazioni più lunghe alzano la latenza. I modelli di reasoning fatturano token di ragionamento nascosti oltre alla risposta visibile. Su endpoint ad alto volume o in tempo reale, forzare un output passo-passo può moltiplicare silenziosamente i costi, quindi mettilo a budget o limitalo con reasoning_effort.
Ogni "passo 1, passo 2, passo 3" che il modello scrive sono token di output, e i token di output sono quelli costosi. Una catena cinque volte più lunga della risposta secca costa circa cinque volte tanto su quella chiamata, e torna in streaming più lentamente. I modelli di reasoning aggiungono una variante: fatturano token di ragionamento per il pensiero interno che non vedi mai, quindi una risposta finale breve può nascondere una catena lunga e già pagata. Su un endpoint a basso volume è rumore di fondo; su uno ad alto traffico si accumula in fretta. Due abitudini tengono tutto sotto controllo. Metti in cache le parti stabili del tuo contesto così non paghi per rileggerle ogni volta (la nostra guida al prompt caching mostra come fare), e misura se i token extra comprano davvero accuratezza prima di estendere il CoT ovunque. La nostra guida alle valutazioni LLM copre questa misurazione, così non paghi per un ragionamento che non sposta il punteggio.
Come Usare il CoT nel 2026: una Checklist Decisionale
Prima di tutto, identifica la classe del tuo modello. Su un modello di reasoning, salta il CoT manuale e regola invece reasoning_effort o il budget di pensiero. Su un modello non-reasoning o locale, aggiungi lo zero-shot "Ragioniamo passo dopo passo", passa al few-shot per compiti di dominio specifico, e aggiungi la self-consistency solo quando l'accuratezza conta più del costo in token.
Ecco l'intera decisione in cinque passaggi:
- Identifica la classe del tuo modello. Modello di reasoning o no? Questo unico fatto decide tutto il resto.
- Su un modello di reasoning, non scrivere il CoT a mano. Regola invece
reasoning_efforto il budget di pensiero, e lascia che il modello ragioni internamente. - Su un modello non-reasoning o locale, aggiungi lo zero-shot "Ragioniamo passo dopo passo." È una riga sola e costa poco provarla.
- Per compiti specifici di un dominio, passa al few-shot CoT con due o tre esempi già risolti. Aggiungi la self-consistency solo quando l'accuratezza vale più del costo in token.
- Se esponi il ragionamento, misuralo con delle valutazioni e tratta la catena visibile come output non affidabile.
La frase trigger di solito vive nel tuo system prompt. I nostri esempi di system prompt mostrano dove va inserita e come formularla.
# On a reasoning model, don't hand-write CoT. Tune the effort instead.
# Param names and levels change per provider and version, so check current docs.
resp = client.responses.create(
model="your-reasoning-model",
reasoning={"effort": "medium"}, # e.g. low | medium | high
input="Prove that the square root of 2 is irrational.",
)
# Anthropic equivalent: an extended-thinking budget.
# budget_tokens MUST be less than max_tokens.
# thinking = {"type": "enabled", "budget_tokens": 4000}Collegare tutto questo a uno stack di produzione è più complicato di quanto un esempio da blog lasci intendere. Se preferisci non regolare tu stesso i budget di reasoning e le infrastrutture di valutazione, il nostro team costruisce queste pipeline end-to-end. Guarda AI integration oppure mettiti in contatto.
Sull'Autore
Mert Batur Gurbuz è co-fondatore di Techsy.io, dove il team costruisce agenti AI, sistemi di automazione e pipeline voice/SDR per clienti B2B. Studia alla University of Birmingham e scrive sullo stack di strumenti LLM che il team Techsy usa realmente in produzione.
Co-Fondatore, Techsy.io, University of Birmingham. Connettiti su LinkedIn.
Domande Frequenti
Il chain of thought prompting è ancora rilevante nel 2026?
Sì, ma il suo ruolo si è ridotto. Sui modelli non-reasoning e su quelli piccoli o open source locali, il CoT manuale migliora ancora l'accuratezza sui compiti multi-step. Sui modelli di reasoning è per lo più ridondante. L'uso più forte che gli resta è forzare un percorso di ragionamento fisso e verificabile che puoi ispezionare.
Il chain of thought prompting funziona sui modelli di reasoning come GPT-5, o3 o Claude?
Questi modelli ragionano già internamente, quindi il CoT manuale è di solito ridondante e a volte dannoso. La documentazione di OpenAI dice che chiedere loro di "ragionare passo dopo passo" è superfluo, e che chiedergli di ragionare di più "può in realtà peggiorare le prestazioni." Regola l'effort di reasoning invece di scrivere i passaggi.
Cos'è lo zero-shot chain of thought prompting?
Lo zero-shot CoT consiste nell'aggiungere una frase trigger, di solito "Ragioniamo passo dopo passo", senza fornire prima alcun esempio già risolto. Kojima et al. (2022) hanno dimostrato che questo da solo trasforma un modello grande in un discreto ragionatore. È la variante di CoT più economica: una riga sola, nessuna cura di esempi, veloce da testare.
Cos'è la self-consistency nel chain of thought prompting?
La self-consistency, di Wang et al. (2022), campiona diverse catene di ragionamento indipendenti a una temperatura più alta, poi sceglie la risposta finale a maggioranza. È la variante di CoT più accurata perché le catene sbagliate raramente concordano tra loro, ma paghi ogni percorso campionato, quindi è anche la più costosa.
Qual è la differenza tra chain of thought e few-shot prompting?
Il few-shot prompting mostra al modello coppie di esempio input-output. Il chain of thought si concentra sul ragionamento tra input e output. Si combinano bene: il few-shot CoT fornisce esempi già risolti che includono i passaggi di ragionamento, così il modello copia il tuo schema di ragionamento, non solo il formato della risposta.
Chain of thought, prompt chaining e tree of thought: qual è la differenza?
Il chain of thought ragiona all'interno di un solo prompt. Il prompt chaining divide un compito su più chiamate separate al modello, passando avanti gli output. Il tree of thought esplora più rami di ragionamento e taglia quelli deboli. Il CoT è un unico percorso lineare; gli altri due aggiungono struttura esterna attorno al modello.
Chi ha inventato il chain of thought prompting?
Il chain of thought prompting è stato introdotto da Jason Wei e colleghi di Google nel paper del 2022 "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models." Kojima et al. hanno poi aggiunto lo zero-shot CoT, e Wang et al. hanno aggiunto la self-consistency, entrambi anch'essi nel 2022.
Il chain of thought prompting funziona per la generazione di codice?
Sì, sui modelli non-reasoning. Chiedere al modello di pianificare la logica prima di scrivere il codice individua i casi limite e riduce i bug sui compiti complessi. Sui modelli di reasoning la pianificazione avviene internamente, quindi un'istruzione semplice di solito funziona meglio di un prefisso scritto a mano come "ragiona passo dopo passo".