Prompt Engineering è l’arte di creare istruzioni ottimali per ottenere il massimo dalle AI basate su modelli di linguaggio, come ChatGPT. Questa disciplina è fondamentale per chiunque voglia sfruttare appieno le capacità di questi strumenti, che spaziano dalla scrittura creativa alla generazione di codice. In questo articolo esploriamo le tecniche principali, spiegandole in modo semplice e pratico, con esempi pronti all’uso.
Zero-shot Learning
Cosa significa?
Zero-shot significa che l’AI risponde senza esempi forniti. Questo approccio è utile per compiti semplici, dove l’istruzione è chiara e ben definita.
Esempio:
Prompt: “Scrivi una recensione positiva per un ristorante italiano immaginario.”
Risultato: L’AI creerà una recensione senza ulteriori dettagli, basandosi solo sull’istruzione.
Few-shot Learning
Cosa significa?
In few-shot, si forniscono alcuni esempi nel prompt per guidare il modello a produrre risultati simili.
Esempio:
Prompt:
“Scrivi recensioni per ristoranti:
- ‘Il Girasole’ – Ottima pizza e personale accogliente.
- ‘La Stella’ – Pesce freschissimo e ambiente elegante.
- Scrivi una recensione per ‘Bella Roma’.”
Risultato: L’AI seguirà lo stile degli esempi forniti.
Potremo insegnare al nostro LLM preferito anche ad utilizzare termini completamente inventati, ad esempio:
A “whatpu” is a small, furry animal native to Tanzania. An example of a sentence that uses the word whatpu is:We were traveling in Africa and we saw these very cute whatpus. To do a “farduddle” means to jump up and down really fast. An example of a sentence that uses the word farduddle is:
Chain-of-Thought Prompting
Cosa significa?
Questo approccio invita il modello a pensare passo passo, utile per problemi complessi.
Esempio:
Prompt:
“Quanti minuti ci sono in 3 ore? Spiega il calcolo.”
Risultato: L’AI risponderà:
“3 ore contengono 60 minuti ciascuna. 3 × 60 = 180 minuti.”
Self-Consistency
Cosa significa?
Si genera la risposta più affidabile confrontando più tentativi dello stesso problema. Anche se non puoi implementarlo direttamente in ChatGPT free, puoi farlo manualmente richiedendo più risposte.
Esempio:
Prompt:
“Qual è la capitale della Francia?”
Chiedi più volte la stessa domanda e verifica la consistenza delle risposte.
Prompt-Generated Knowledge
Cosa significa?
Si utilizza un prompt per generare conoscenze utili, che poi vengono riutilizzate in un secondo momento.
Esempio:
Prompt 1: “Quali sono i vantaggi dell’intelligenza artificiale nel marketing?”
Prompt 2: “In base ai vantaggi elencati, scrivi un articolo SEO sul tema.”
Prompt-Chaining

Cosa significa?
Consiste nel collegare più prompt per creare un flusso logico. È ideale per compiti complessi divisi in passaggi.
Esempio:
- Prompt 1: “Genera un elenco di vantaggi dell’automazione aziendale.”
- Prompt 2: “Per ogni vantaggio, scrivi un esempio concreto di applicazione.”
Tree-of-Thoughts

Cosa significa?
Questa tecnica simula un “albero di pensieri”, dove ogni passo si ramifica. Puoi farlo manualmente costruendo più scenari e valutando le alternative.
Esempio:
Prompt:
“Quali sono i pro e i contro di lavorare da remoto? Esplora ogni aspetto separatamente.”
Risultato: L’AI offrirà ramificazioni dei pro e dei contro.
Prompt:
Chiedi all’utente se preferisce calcolare l’IVA al 10% o al 20%
Se l’utente risponde al 10% vai a #Azione1, se risponde al 20% vai a #Azione2 altrimenti vai a #Azione3
#Azione1: calcola l’IVA al 10% | #Azione2: calcola l’IVA al 20% | #Azione3: rispondi che la richiesta non è valida
Risultato: L’AI offrirà ramificazioni simili a quelle che si ottengono in programmazione con il costrutto if-else.
Prompt-as-Function
Cosa significa?
Un prompt diventa una funzione ripetibile, progettata per risolvere specifici problemi.
Esempio:
Prompt:
“Input: Richiedi all’utente un testo da tradurre.
Funzioni:
#function1: Correggi il testo per renderlo più scorrevole
#function2: Traduci il testo in inglese
Output: il risultato di #function2(function1)”
Risultato: L’AI prima provvederà a correggere il testo, poi in successione alla sua traduzione in inglese. L’elaborazione è simile a quella che si usa in programmazione per creare un costrutto di tipo funzione().
Role-Playing
Far assumere un ruolo specifico all’AI per ottenere risposte mirate.
Esempio: “Sei un nutrizionista. Spiega i benefici di una dieta equilibrata.”
Output Constraints
Imporre vincoli sul formato delle risposte.
Prompt: “Rispondi in massimo 100 parole con punti elenco.”
Iterative Refinement
Chiedere una risposta, poi perfezionarla.
- Prompt 1: “Scrivi un’introduzione su come funziona l’AI.”
- Prompt 2: “Rendi l’introduzione più semplice e adatta ai principianti.”
Sentiment Analysis
Un LLM è in grado di capire se il sentiment è positivo, negativo o neutro.
Frasi di esempio:
- “Questo prodotto è fantastico, lo consiglio vivamente!”
- “Non mi piace affatto il servizio clienti, è stato deludente.”
- “È un oggetto nella media, niente di speciale.”
- “Adoro questa app, è molto utile e facile da usare.”
- “La qualità è terribile, non vale il prezzo.”
Analisi manuale del sentiment:
- Frase 1: Positiva (espressioni come “fantastico”, “consiglio vivamente” indicano entusiasmo).
- Frase 2: Negativa (parole come “non mi piace” e “deludente” denotano insoddisfazione).
- Frase 3: Neutra (tono neutro, senza emozioni forti).
- Frase 4: Positiva (parole come “adoro”, “utile”, “facile da usare” mostrano soddisfazione).
- Frase 5: Negativa (“terribile”, “non vale il prezzo” indicano frustrazione).
Few-Shot Sentiment Classification
La Few-Shot Sentiment Classification con modelli di linguaggio (LLMs) è un metodo per capire se un testo ha un sentimento positivo, negativo o neutro usando pochissimi esempi. È utile quando non abbiamo molti dati già etichettati.
Esempio
Prompt:
Esempio 1: “Questo prodotto è fantastico!” → Sentimento: Positivo
Esempio 2: “Non mi piace per niente.” → Sentimento: Negativo
Testo: “La qualità è davvero ottima.”
Sentimento: ?
Un ultimo consiglio in chiusura di questo articolo: sperimentate, sperimentate e sperimentate per capire quali sono i limiti del vostro LLM preferito!
Andrea
Nerd per passione e per professione da 30 anni, mi occupo di progettazione di ecosistemi software di alto livello come CTO e di docenze in ambito informatico. Mi potete contattare dal mio profilo linkedin a https://www.linkedin.com/in/andreatonin