Prompt engineering: come dare input corretti all’AI

⏱️Si legge in 3 minuti

Il prompt engineering è la disciplina che consente di sviluppare ed ottimizzare i prompt di interfaccia con i modelli linguistici di grandi dimensioni (LLM come GPT-3, GPT-3.5 e GPT-4 di OpenAI, o PaLM di Google, usato in Bard), al fine di ottenere un’ampia varietà di output.

In altri termini, il prompt engineering disciplina gli input testuali che vengono utilizzati per comunicare con gli LLM e guidare un’attività di AI generativa.

Approfondiamo e facciamo degli esempi.

Dalla semplice domanda al prompt engineering

Da poco più di un anno a questa parte, comunicare in modo diretto con ChatGPT o Bard o altre AI generative è un’attività che chiunque abbia un buon livello di alfabetizzazione digitale riesce a svolgere: dagli studenti per le ricerche scolastiche a chi ha bisogno di una traduzione, una perifrasi o qualsiasi altra informazione strutturata.

Non si tratta in questo caso di ingegnerizzazione dei prompt vera e propria, quanto più di un uso base, semplice ma utile ai diversi scopi, che si struttura in domande mirate come input per l’AI.

È uno degli sviluppi della democratizzazione dell’uso dell’AI, resa possibile da OpenAI nel 2023, che ha “aperto al mondo” il proprio modello GPT.

Ovviamente, ricercatori e sviluppatori utilizzano il prompt engineering a livelli di consapevolezza ben più approfonditi, al fine di migliorare la capacità degli LLM su un’ampia gamma di attività comuni e complesse, come la risposta alle domande e il ragionamento aritmetico. 

Ma esiste anche un uso consapevole e non del tutto basico, sempre più diffuso anche tra figure professionali non tecniche, come ad esempio grafici, designer, copywriter, che possono essere in grado di progettare prompt efficaci per istruire l’AI ad eseguire un determinato compito.

Come strutturare un prompt

Effettivamente si può ottenere molto anche con prompt semplici, ma la qualità dei risultati dipende dalla quantità e qualità delle informazioni inserite all’interno del prompt. 
Oltre all’istruzione o alla domanda, è utile includere includere altri elementi come contesto, esempi, obiettivi e simili.
Ecco uno schema strutturale generale.

Istruzione

Un compito o un’istruzione specifica che il modello deve eseguire.

Esempio: “Descrivi le principali cause della Rivoluzione Francese.”

Qui l’istruzione è chiara e diretta, chiedendo al modello di concentrarsi su un argomento storico specifico.

Contesto

Tutte le informazioni utili che ruotano attorno alla richiesta specifica. Un contesto ampio e ben circostanziato può influenzare notevolmente la qualità e la pertinenza delle risposte del modello.

Esempio: “Considerando l’evoluzione della tecnologia negli ultimi 20 anni, quali sono le principali innovazioni nel campo dell’intelligenza artificiale?”

In questo caso, il contesto è dato dall’evoluzione della tecnologia in un determinato lasso di tempo, guidando il modello a concentrarsi su cambiamenti specifici e rilevanti nell’AI.

Dati in input

Possono variare da semplici domande a informazioni più complesse, come frammenti di testo, dati numerici o anche immagini, a seconda delle capacità del modello.

Esempio: “Data questa equazione matematica x2−4x+4=0, puoi risolverla?”

Qui, il dato in input è un’equazione matematica, e la richiesta è specifica: risolvere l’equazione.

Indicatore dell’output

Il tipo o il formato dell’output.

Esempio: “Elabora una lista di 5 suggerimenti per migliorare la concentrazione durante lo studio, in formato bullet point.”

Questo prompt specifica che l’output desiderato è una lista in bullet point, dando al modello una direzione chiara sul formato della risposta.

Suggerimenti generali per il prompt engineering

Il prompt engineering è un processo molto creativo e flessibile. 

A seconda dell’obiettivo, infatti, i prompt possono essere formulati in modi diversi per esplorare le varie capacità del modello.

Iterazione per raffinare il prompt engineering

La creazione di prompt efficaci richiede un processo iterativo, in cui i prompt sono raffinati in base ai feedback ottenuti dalle risposte del modello. 

Pertanto, nel caso in cui la risposta iniziale non corrisponda alle aspettative, si raccomanda di modificare e affinare il prompt. Spesso, è necessario un processo di sperimentazione per formulare in modo ottimale la richiesta.

Si può iniziare con prompt semplici ed aggiungere altri elementi e contesti man mano che si punta a ottenere risultati migliori. Per questo motivo è fondamentale modificare i suggerimenti durante il percorso.

Chiarezza e concisione

È essenziale utilizzare un linguaggio chiaro e preciso, specificando dettagliatamente l’oggetto della richiesta attraverso informazioni sempre pertinenti, senza sovraccaricare con dettagli superflui che potrebbero generare confusione, ma anche evitando di essere troppo sintetici. 

L’ambiguità deve essere evitata per garantire che il modello interpreti correttamente la richiesta.

È utile utilizzare comandi specifici per indicare al modello ciò che si desidera ottenere, come “Classifica”, “Riassumi”, “Traduci”, “Ordina”, ecc.

Stile e tone of voice

Nel caso si desideri che la risposta sia redatta in uno stile particolare (come formale, informale, tecnico, creativo), è opportuno specificarlo nel prompt per orientare il tone of voice della risposta.

Considerazione dei limiti del modello AI

È importante tenere presente che i modelli di linguaggio, pur essendo avanzati, presentano delle limitazioni.

Non sono dei motori di ricerca che attingono alle informazioni dell’intera Internet in tempo reale: il loro database informativo è aggiornato fino a un determinato periodo temporale (nel caso di GPT-4 fino ad aprile 2023).

Questo articolo è stato scritto da:
Picture of Francesca Cappabianca
Francesca Cappabianca

Innovation Content Specialist

TI è PIACIUTO L'ARTICOLO?

Condividi su Linkedin
Condividi su Twitter
Condividi su Whatsapp

altri articoli che potrebbero interessarti