
Abbiamo visto che i modelli linguistici di grandi dimensioni (LLM) sono capaci di generare testi incredibili. Ma quando gli proponiamo problemi complessi, a volte rispondono in modo troppo diretto, senza mostrare il ragionamento che ci aspetteremmo da un essere umano.
Qui entra in gioco una tecnica rivoluzionaria: il Chain-of-Thought prompting, cioè la Catena del Pensiero.
Cos’è il Chain-of-Thought Prompting?
Immagina di dover risolvere un indovinello complicato. Non diresti subito la risposta, giusto? Prima analizzeresti il problema, divideresti le informazioni in parti più semplici e penseresti passo dopo passo fino ad arrivare alla soluzione.
Il Chain-of-Thought prompting serve a far ragionare i modelli LLM in questo stesso modo.
In cosa consiste?
È una tecnica in cui si chiede al modello di spiegare il proprio ragionamento, passo dopo passo, prima di dare la risposta finale. Invece di chiedergli solo la soluzione, gli si chiede di mostrare come ci arriva: quali dati usa, quali formule applica, e come collega le informazioni in modo logico. Questo è utile soprattutto quando il problema è complicato o richiede più passaggi.
Come funziona?
In pratica, invece di dire:
“Dammi la risposta a questo problema”,
gli diciamo:
“Spiegami come arrivi alla risposta”.
Esempio
- Prompt normale:
Qual è il numero successivo nella sequenza 2, 4, 8?
Risposta del modello: 16 - Prompt con Chain-of-Thought:
Spiega passo dopo passo come arrivi al numero successivo dopo 2, 4, 8.
Risposta: Il primo numero è 2. Il secondo è 4, cioè 2×2. Il terzo è 8, cioè 4×2. La regola sembra essere “moltiplicare per 2”. Quindi 8×2 = 16.
Con questa tecnica non otteniamo solo la risposta, ma anche il motivo per cui è stata data.
Tecniche per usare il Chain-of-Thought Prompting
Ecco alcuni modi per usarlo:
- “Pensiamo passo dopo passo”
Questa semplice frase spesso basta per far ragionare il modello. - Domande guida
Inserisci domande che aiutino il modello a riflettere, tipo:- Quali sono le informazioni importanti?
- Cosa possiamo dedurre?
- Come si collegano le informazioni?
- Few-shot prompting con esempi CoT
Inserisci nel prompt uno o due esempi dove mostri come ragionare passo dopo passo. Il modello seguirà lo stesso metodo. - Scomposizione del problema
Se il problema è difficile, chiedi di dividerlo in parti e risolvere ognuna prima di dare la risposta finale.
Perché il Chain-of-Thought è importante?
- Maggiore precisione nei problemi complessi
Aiuta il modello a dare risposte più corrette quando serve logica, inferenza o pianificazione. - Migliore comprensione del ragionamento
Vedendo i passaggi possiamo capire se il modello ha ragionato bene. - Più facile correggere errori
Se la risposta è sbagliata, possiamo trovare dove si è “perso” nel ragionamento. - Ragionamento più umano
I passaggi aiutano a rendere il processo più naturale, come ragionerebbe una persona. - Trasparenza
Possiamo vedere come il modello è arrivato alla risposta. - Versatilità
Funziona in matematica, logica, decisioni, analisi dati e molto altro.
Esempi pratici
1. Esempio semplice di problema matematico
pythonCopiaModificaimport openai
# Inserisci la tua API key
openai.api_key = "LA_TUA_API_KEY"
# Prompt con catena del pensiero
prompt = (
"Risolvi il seguente problema matematico spiegando passo dopo passo:\n"
"Problema: Un treno percorre 300 chilometri in 3 ore. Qual è la velocità media del treno?\n\n"
"Istruzioni:\n"
"1. Trova la formula per calcolare la velocità media.\n"
"2. Sostituisci i valori nella formula.\n"
"3. Fai il calcolo e spiega il risultato.\n"
"Risposta:"
)
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[
{"role": "system", "content": "Sei un esperto di matematica e spieghi ogni passaggio del tuo ragionamento."},
{"role": "user", "content": prompt}
]
)
print(response.choices[0].message.content)
Spiegazione:
Il prompt guida il modello a usare la formula della velocità (velocità = distanza / tempo), sostituire i valori (300 / 3) e spiegare come si arriva al risultato (100 km/h).
2. Esempio complesso con più passaggi
pythonCopiaModificaimport openai
openai.api_key = "LA_TUA_API_KEY"
messages = [
{"role": "system", "content": (
"Sei un esperto nell'analisi di problemi complessi. Usa la tecnica chain-of-thought per spiegare ogni passaggio del tuo ragionamento in modo chiaro."
)},
{"role": "user", "content": (
"Esempio:\n"
"Una azienda ha diversi reparti con risultati trimestrali diversi. Serve capire come l’aumento del budget marketing influisce sulle vendite.\n\n"
"Passaggi suggeriti:\n"
"1. Elenca i reparti e i dati di vendita.\n"
"2. Collega la spesa marketing alle variazioni delle vendite.\n"
"3. Valuta se c’è correlazione tra aumento di budget e vendite.\n\n"
"Ora risolvi questo problema usando chain-of-thought:\n"
"Problema: In una campagna pubblicitaria si sono investiti 5000 dollari, ottenendo un aumento di 150 unità vendute, ognuna a 20 dollari. Spiega come calcolare il ROI (ritorno sull’investimento), passo dopo passo."
)}
]
response = openai.ChatCompletion.create(
model="gpt-4",
messages=messages
)
print(response.choices[0].message.content)
Spiegazione:
Il prompt chiede al modello di spiegare il calcolo del ROI:
- calcolare i guadagni totali (150×20 = 3000 USD),
- confrontarli con l’investimento (5000 USD),
- e quindi calcolare il ROI usando la formula
(guadagno−investimento)/investimento×100(guadagno – investimento) / investimento × 100(guadagno−investimento)/investimento×100
Migliori pratiche per usare il CoT
- Sii specifico:
Scrivi chiaramente quali passaggi vuoi che il modello segua. - Dai esempi:
Inserisci esempi con spiegazioni dettagliate per far capire al modello come comportarsi. - Dai un buon contesto iniziale:
Il messaggio iniziale deve spiegare che tipo di esperto deve essere il modello. - Prova e migliora:
Se il risultato non ti convince, modifica il prompt e riprova.
Il futuro del ragionamento in AI
Il chain-of-thought prompting è un grande passo avanti nel modo in cui interagiamo con i modelli linguistici. Non solo otteniamo risposte, ma anche il percorso che ha portato a quelle risposte.
Questa tecnica migliora la precisione, la trasparenza e la collaborazione tra umani e intelligenza artificiale.
Che tu stia risolvendo problemi matematici o analizzando dati complessi, il CoT ti aiuta a entrare davvero nella “testa” del modello e a ottenere risposte più chiare, affidabili e ragionate.