7 min read

Anatomia di un Prompt: Introduzione

Immagine di una figura umanoide su una roccio con sfondo una specie di sole con degli ingranaggi
Prompt: solar punk, illustration for a blog post called "AI prompt", white background, Art by Maxfield Parrish. --ar 3:2

Cosa è un prompt?

I modelli di intelligenza artificiale generativa si interfacciano con l'utente attraverso input prevalentemente testuali. Dici al modello cosa fare attraverso un'interfaccia testuale e il modello cerca di portare a termine l'attività. Quello che dici al modello di fare in senso lato è il prompt.

Nel caso di modelli AI di generazione di immagini come DALLE-2 / Midjourney /  Stable Diffusion, il prompt è principalmente una descrizione dell'immagine che si desidera generare.

Raccolta di prompt di Midjourney su Notion.so
Ecco il link al mio Notion. Il modo migliore per avere spunti su cosa chiedere a Midjourney.

Nel caso di large language model (LLM) come GPT-3 ( e ChatGPT), il prompt può contenere qualsiasi cosa, da una semplice domanda ("Chi è il presidente degli Stati Uniti?") a un problema complicato con tutti i tipi di dati inseriti nel prompt (si noti che è anche possibile inserire un file CSV con dati grezzi come parte dell'input).

Può anche essere un'affermazione vaga come “Raccontami una barzelletta. Oggi sono giù.”.

Ovviamente NON sono gli unici tipi di prompt ma in questo articolo ci focalizziamo su questo.

Elementi di un prompt

In generale, e ad alto livello, un prompt deve avere almeno uno dei seguenti elementi:

  • Istruzioni    
  • Domanda    

e opzionalmente uno o più di questi

  • Dati in input (opzionale)
  • Esempi (opzionale)

In generale se il vostro modello di comunicazione si basa sul Modello STAR, siate già a buon punto.

Esempi di prompt

Domanda

"Cosa dovrei scrivere in un articolo sui prompt?"

Domanda + Istruzioni

Passo successivo è fare la domanda e includere nel prompt alcune istruzioni su come preferisci la risposta. Spesso le risposte di ChatGPT sono già comprensive di alcune istruzioni.

"Cosa dovrei scrivere in un articolo sui prompt, suggeriscimi 6 temi di cui dovrei parlare e alcune domande tipiche che le persone hanno, suggeriscimi 6 prompt interessanti"

Istruzioni + Dati di ingresso

Il passo dopo è chiedere direttamente l'articolo direttamente. Sul fatto che

  1. Vi beccano perché ci sono tool che dicono se un articolo è fatto da una AI (vedi GPTZero )
  2. Eticamente non è il massimo
  3. Google non vi ranka

Ne parliamo in altra sede. Veniamo al prompt

"Sono un blogger e parto a persone interessate ma non tecniche scrivimi un articolo da 300 parole  sui prompt, livello della comunicazione come uno studente delle superiori"

Domanda + Esempio

Possiamo dare degli esempi per avere un sistema di consigli.
"Mi piacciono molto gli Isekai e i LitRPG. Tra i miei preferiti He who fight with monsters, Defiance of the fall, Omniscient Reader View, Solo Levelling, The beginning before the end. Non mi è piaciuto The Land. Quali altri libri potrebbero piacermi dello stesso genere?"

Il mio prompt era abbastanza complesso, data la nicchia di mercato su cui ho chiesto consigli: dovrei chiedere qualcosa scritto in inglese.

Suggerimenti per avere risposte miglori:

chiedere all'AI la catena di pensiero

Nella catena di suggerimenti, incoraggiamo esplicitamente il modello a essere fattuale/corretto costringendolo a seguire una serie di passaggi nel suo "ragionamento".

Nell'esempio seguente, utilizzo il prompt:
"chi ha vinto i mondiali di calcio l'anno che gli ha ospitati la spagna? Usa questo Formato: "Domanda: Risposta: Usiamo una catena di pensieri; quindi la risposta è" numera tutti i passaggi necessari"

Altra domanda con stesso formato di risposta, senza spiegarglielo ancora:

"Usa il formato sopra per dirmi la somma delle età di Sylvester Stallone + Van Damme + Schwarzenegger"

Continuiamo quindi: "possiamo chiamare questo formato come "Formato 1" ?"

Testiamolo: "usando il formato 1 mi dici la somma quanti anni fa è caduto l'impero romano?"

Fact Checking

Testo tra INIZIO e FINE è un esempio
INIZIO
blah blah blah
FINE
dato questo articolo mi scrivi qualcosa (500 parole) che ha una tesi contraria?

oppure

Testo tra INIZIO e FINE è un esempio
Puoi trovare evidenze scientifiche con fonti su quello che c'è scritto?

Role Playing

Puoi chiedere alle Ai di impersonare qualcuno

"Rispondimi come se avessi lavorato 16 ore di seguito... come va?"

rispondimi come se avessi lavorato 16 ore e davanti te ne aspettano altre 16, ad alzar mattoni. Come va la vita, pirlone?

Con il roleplaying si può fare MOLTO di più, ma al momento lo tengo per me.

In cos'altro si può usare ChatGPT (applicazioni)

Prompt: Ancient Blueprint

Finita la sezione teoria guardiamo qualche applicazione. Ricordiamoci che al momento ChatGPT è un chatbot, non ha accesso a internet, è stato istruito su un numero molto limitato di siti (lo puoi scoprire quando chiedi le fonti delle dichiarazioni).

Prompt Engineering Midjourney - Come creare espressioni facciali
Midjourney Ecco come si può creare la stessa immagine con diverse emozioni (o che guarda in divese direzioni) - Prompt Engineering Tricks

Questo non vuol dire che non sia utile. vuol dire che dobbiamo stare attenti (vedi sotto nella sezione Limitazioni.

Ricordiamo che ChatGPT non è stato ottimizzato per nessuno di questi usi. Tuttavia, alcuni dei risultati su quei compiti specifici sono stati piuttosto notevoli, il che ha dato a molte persone un sussulto su ciò che potrebbe accadere presto.

Matematica

Al momento Chat GPT conosce cosa sia l'argomento "fare di conto", ma ovviamente NON è stato nutrito di libri di matematica e insalate cibernetica e quindi non possiamo pretendere che sia capace di farlo al pari di un calcolatore, al momento.

E' vero che possiamo insegnargli la matematica in qualche, ma al momento non possiamo avere pretese che funzioni bene - ed è anche sciocco farlo, quando un calcolatore da risultati migliori

Avendo parlato di matematica è adesso ora di parlare de

Limiti nelle risposte

ChatGPT, come tutti gli LLM della sua generazione, non è bravo nel recupero di informazioni fattuali da solo. Questo perchè i dati che fornisce sono dati dalla frequenza con cui questi dati appaiono insieme.

Oltre a questo bisogna anche capire che NON tutti i dati sono corretti e che questo problema (fake news che nutrono le AI) in futuro potrebbe davvero essere grave.

Gli LLM come ChatGPT al momento non hanno costruito un sistema di autorevolezza e affidabilitò del contenuto e della fonte. Immagina che un LLM come ChatGPT sia stato formato sulla migliore letteratura medica, ma anche sui thread di Reddit che discutono di problemi di salute.

L'intelligenza artificiale a volte può rispondere recuperando e facendo riferimento a informazioni di alta qualità, ma altre volte può rispondere utilizzando le informazioni Reddit completamente inaffidabili.

Per questo motivo possono facilmente, e con molta sicurezza, "allucinare" le risposte alle domande combinando informazioni inaffidabili su cui sono state addestrate. Si il termine che si usa è proprio "allucinare" avere le allucinazioni.

Se l'informazione non è disponibile nella letteratura medica, è molto più probabile che inventi una risposta.

Questa è una delle cose più pericolose: suonerà ancora "autorevole", in particolare perché è "generalmente corretto"... che già non va bene per un navigatore, ma è assolutamente un NO per un'ai che dovrebbe aiutarci.

Sono sicuro che uno dei motivi per cui Google non è uscito ancora un la sua versione del ChatGPT sia proprio questo.

Informazioni aggiornate

ChatGpt Non ha informazioni aggiornate, cosa che invece hanno oggetti molto meno impressionati come Siri, Alexa o Google Assistant.

Come migliorare a scrivere i prompt?

Ora sappiamo cos'è un prompt, ne abbiamo visti alcuni esempi, discutiamo come si può migliorare a scrivere prompt

Questa disciplina viene chiamata prompt engineering e ha l'obiettivo di progettare il prompt ottimale dato un modello generativo e un obiettivo.

Ogni modello ha le sue particolarità (Modelli diversi risponderanno in modo diverso allo stesso tipo di suggerimento), ma se possiamo fare affidamento della direzione che questi saranno sempre più simili a come parla un essere umano a noi resta la parte del pensiero:

Come posso determinare i risultati positivi e quelli negativi?

Poi - al momento - si può andare a tentoni. Personalmente:

  1. Ho un File Notion con prompt e Risultati per il text-to-image di Midjourney
  2. Ho un file Obsidian per quelli testuali
  3. Leggo tutorial.
  4. Faccio molti test. (ecco per esempio una guida visuale ai prompt di Midjourney)
  5. Scrivo questi articoli perché mi permettono (mi obbligano) a operare a un livello di pensiero diverso per poter spiegare quello che credo di sapere.