Home
“Non possiamo aspettarci di delegare l’originalità all’AI”: Sergio Sentinelli e Alessandro Placa, autori di Fare la domanda giusta, spiegano il prompt engineering

02 Febbraio 2024

“Non possiamo aspettarci di delegare l’originalità all’AI”: Sergio Sentinelli e Alessandro Placa, autori di Fare la domanda giusta, spiegano il prompt engineering

di

Sembra appena arrivata, eppure l’intelligenza artificiale generativa già si evolve nelle modalità di utilizzo e così gli skill richiesti agli operatori.

Fai del prompt il tuo migliore assistente digitale

Apogeonline: A che punto è la figura professionale del prompt engineer?

Sergio Sentinelli e Stefano Placa: La figura del Prompt Engineer cresce ed evolve, parallelamente al contesto all’interno del quale opera e agli strumenti a disposizione. Oggi questo ruolo richiede una fusione di competenze multidisciplinari, tra cui la linguistica, la psicologia e la tecnologia, spesso applicate ad un contesto verticale specifico.

L’obiettivo dei Prompt Engineer continua ad essere l’ottimizzazione delle istruzioni (input) che vengono fornite ai modelli di linguaggio, orientata ad esigenze specifiche e guidata da criteri di efficienza, efficacia e affidabilità; se fino ieri però il lavoro del Prompt Engineer si concentrava soprattutto sul prompt, oggi il punto di equilibrio si è spostato verso le Custom Instructions e la personalizzazione di versioni specializzate del modello GPT-4 (Custom GPTs).

Un buon Prompt Engineer è oggi in grado di creare, in pochi minuti, una Custom GPT orientata ad uno specifico obiettivo, addestrata ad elaborare gli input ricevuti secondo schemi e modelli specifici, e a restituire un output strutturato e stabilmente coerente con le istruzioni e gli esempi forniti, superando la necessità di utilizzare prompt altamente curati. Si tratta di agenti, sempre più competenti e autonomi nello svolgimento di compiti complessi, dotati oggi anche della possibilità di interagire, attraverso chiamate API, con software e database di terze parti.

Ci aspettiamo che nei prossimi mesi il lavoro dei Prompt Engineers si concentri proprio sullo sviluppo di questi strumenti: recentemente OpenAI ha inaugurato il Marketplace dei Custom GPT, un ulteriore passo in avanti nello sviluppo della piattaforma e dell’ecosistema che ruota attorno al modello GPT. Vedremo però nei prossimi mesi quante e quali opportunità di monetizzazione si concretizzeranno per i creatori e i curatori: la rapidità e la facilità con la quale è possibile sviluppare e integrare questo tipo di soluzioni da un lato mantiene molto basse le barriere all’entrata, dall’altro rende difficile difendere e capitalizzare intuizioni, modelli e pratiche vincenti, prima che vengano copiati dai competitor, o integrati nativamente all’interno della successiva versione del modello. La terra promessa sembra essere a un passo: relativamente facile da conquistare, ma quasi impossibile da difendere.

In certe situazioni – per esempio gli affari legali – l’inaffidabilità di base di ChatGpt crea problemi importanti. C’è modo di limitare il problema con un uso accorto dei prompt?

Escludendo errori macroscopici nell’impostazione del prompt, possiamo dire che esiste un margine di manovra, anche che si tratta di uno spazio limitato. Agire esclusivamente sul prompt (o, in generale, sulle istruzioni fornite al modello, nel contesto di una Chat) non è la strada giusta per ridurre l’inaffidabilità e le cosiddette allucinazioni.

L’approccio più promettente richiede di uscire dalla Sandbox di ChatGPT ed utilizzare GPT insieme a strumenti come i Vector Store, che permettono di indicizzare documenti di grandi dimensioni (come uno specifico corpus normativo) e procedere a identificare, estrarre e utilizzare le informazioni contenute all’ interno come contesto e riferimento degli input e degli output della nostra conversazione.

Attraverso l’utilizzo di schemi ricorsivi di controllo delle informazioni prodotte, attraverso il confronto con i riferimenti estratti dalla letteratura di riferimento, si riescono a ridurre drasticamente errori ed inesattezze, ma non è ancora (e forse mai sarà) possibile garantire l’accuratezza assoluta.

La nostra opinione è che si debba procedere con maggiore cautela e con una costante guida umana, in tutti quei settori e in quelle applicazioni non-forgiving, nei quali le conseguenze degli errori si pagano a caro prezzo, limitando la nostra ossessione per le apparenti capacità predittive dell’AI (la cui affidabilità, in contesti caratterizzati da evoluzioni inedite, è tutta da dimostrare) e rivolgendo invece maggiore interesse all’aspetto generativo, creativo, psicologico ed onirico di questa innovazione epocale, che (non dimentichiamocelo) riguarda l’informatica applicata al linguaggio.

ChatGpt scrive in italiano, ma pensa in inglese e poi traduce. Un prompt in italiano è sempre sufficiente o in certe situazioni è più opportuno procedere in inglese?

Sappiamo bene che ChatGPT non pensa affatto, ma si limita a predire il token (frammento di parola) successivo più probabile, questo non solo in virtù del nostro input, ma anche in base ad una serie di istruzioni e routine nascoste che costituiscono la sua salsa segreta (e che, ad esempio, spiegano la variabilità nelle sue performance a distanza di tempo, anche con l’utilizzo dello stesso modello). Queste istruzioni vengono fornite in inglese, tipicamente insieme alla richiesta di rispondere all’utente nella stessa lingua utilizzata per l’input (cosa che, tra l’altro, rende ChatGPT un formidabile traduttore).

Dopo che il nostro input è stato vettorializzato (cioè convertito in vettori numerici) l’intelligenza artificiale non lo analizza dal punto di vista semantico o grammaticale, ma in termini statistici. Possiamo sicuramente affermare che la dimensione e la varietà delle informazioni disponibili in quella stessa lingua, all’interno del dataset utilizzato per il training del modello, influisce sull’accuratezza delle risposte (come in parte dimostra il grafico sottostante). Se ci troviamo in una situazione nella quale pensiamo che la quasi totalità della letteratura di riferimento sia disponibile in una lingua specifica, e siamo in grado di formulare efficacemente il nostro prompt in quella lingua, è quindi una buona idea provare a farlo, e poi comparare i risultati.

Nella nostra esperienza recente, tuttavia, le differenze sono sempre più sottili e hanno più a che fare con la duttilità del linguaggio utilizzato per la risposta, piuttosto che con una maggiore o minore efficacia di una lingua, rispetto ad un’altra. Personalmente, ho trovato sorprendenti i dati relativi all’accuratezza del modello, interrogato in lingua italiana. Dopo l’inglese (per il quale possiamo ipotizzare che esista una base dati molto più vasta) l’italiano è la seconda lingua che garantisce le risposte più accurate. Un’ipotesi ragionevole è che ogni lingua porti con sé un patrimonio di sfumature, assonanze e analogie che la possono rendere più o meno performante, rispetto a specifici obiettivi.

Banalizzando: se devo sviluppare una procedura, potrei preferire l’inglese, se devo descrivere l’atmosfera di un borgo medievale, o il carattere di un vino, l’italiano potrebbe essere la scelta migliore. La differenza non è tanto legata alla performance del modello nella lingua specifica (marginale, per le lingue più diffuse) ma alla natura del linguaggio stesso. In un certo senso, possiamo pensare alle lingue come se fossero pennelli, ognuno dotato di un tratto unico e caratteristico; in questo contesto, l’intelligenza artificiale è una stampante in grado di replicare qualsiasi tratto, con una tecnica digitale originale e un’accuratezza crescente. Sta però a noi decidere se vogliamo realizzare un ritratto a carbone, un disegno tecnico o un dipinto ad olio.

Da persona bilingue, di madrelingua italiana, ammetto di aver usato per diversi mesi ChatGPT scrivendo i miei prompt in inglese; ad un certo punto, però, mi sono accorto che la differenza tra l’accuratezza con la quale ero in grado di esprimere le mie richieste in italiano, rispetto all’inglese era di gran lunga maggiore, rispetto alla differenza tra la qualità delle risposte fornite dal sistema nelle due lingue. In altre parole: non era un problema di qualità dell’output, ma di qualità dell’input. Il consiglio, quindi, è articolare i vostri prompt nella lingua a noi più familiare, eventualmente chiedendo a ChatGPT di tradurre l’output, qualora il compito dovesse richiederlo.

Quando una serie di domande inizia a ricevere risposte che mostrano segni di stanchezza o disorientamento da parte di ChatGpt, c’è modo di aiutarlo a recuperare oppure è meglio ripartire da zero, magari con un prompt iniziale modificato rispetto a prima?

I segni di stanchezza e disorientamento da parte di ChatGPT sono sempre o comunque sintomo che la conversazione non è stata gestita al meglio dall’utente. Questo succede sia con utenti esperti che con utenti meno esperti. La conversazione può avere una deriva esattamente come succede tra persone. Si può ripartire da zero su una nuova chat, con un prompt ottimizzato in base agli elementi emersi nella conversazione deragliata oppure ripartire modificando il prompt intermedio che ha causato il deragliamento.

Il consiglio in questi casi è di non focalizzarsi su un processo che non si rivela efficace, ma di approcciare la sfida da una prospettiva diversa, cercando di focalizzare e articolare l’obiettivo, scomporre il problema e ragionare passo dopo passo (step by step) insieme a GPT.

È importante ricordare che (sebbene sia stato esteso considerevolmente per i nuovi modelli) esiste un limite alla memoria del sistema. Man mano che la conversazione avanza GPT potrebbe essere costretto a sintetizzare (dietro le quinte) la conversazione, per fare spazio ai nuovi input, perdendo per strada dettagli importanti. Alcune analisi hanno ad esempio dimostrato che la capacità di ritrovare e richiamare dettagli all’interno di un testo particolarmente lungo dipende non solo dalla lunghezza del testo stesso, ma anche dalla posizione relativa del frammento di informazione, con una performance migliore per le informazioni posizionate agli estremi (finale e iniziale) del testo stesso.

C’è spazio per lavorare sui prompt allo scopo di sollevare dalla media l’output di ChatGpt quando si affrontano lavori con un contenuto creativo?

Decisamente sì, a patto di definire il proprio tone of voice e tratteggiare le logiche che stanno alla base del nostro processo creativo. Se non lo facciamo, limitandoci a chiedere, ad esempio, di sviluppare una campagna per un prodotto scarsamente caratterizzato, otterremo risposte banali, apparentemente coerenti, ma dall’intenso retrogusto di plastica.

Non possiamo aspettarci di delegare l’originalità all’intelligenza artificiale, mantenendo la paternità del risultato. Non funziona, non è onesto, né sostenibile. Se è facile, possono farlo tutti, e se possono farlo tutti, il nostro contributo perde di valore. Attenzione, però: chiedere a ChatGPT di fare X per Y, non è la stessa cosa che chiedere a ChatGPT di fare X (considerando K, Z e Q) per Y, con lo scopo di massimizzare R e minimizzare T. È la stessa differenza che ritroviamo tra l’approccio ai problemi di un esperto, e quello di un principiante. È quasi sempre nella conoscenza e nella considerazione degli elementi peculiari che caratterizzano un problema che si trova la chiave per la sua risoluzione, non nella bruta potenza di calcolo.

Nella vostra esperienza, lo stesso prompt applicato alle versioni gratuita e a pagamento di ChatGpt produce risposte sensibilmente differenti?

Quello che cambia è il modello utilizzato, mentre la versione free utilizza il modello GPT-3.5, la versione a pagamento utilizza il modello GPT-4. La qualità delle risposte può variare sensibilmente: tendenzialmente, possiamo affermare che il modello GPT-4 è più preciso, evoluto e performante, ma anche più lento e meno stabile, rispetto al modello GPT 3.5.

Per quanto riguarda l’utilizzo di ChatGPT, il modello di pricing proposto segue la logica freemium; la scelta è relativamente semplice, tra un prodotto gratuito, con funzionalità standard, ed un prodotto premium, offerto ad un prezzo fisso, con funzionalità allo stato dell’arte. Le differenze di costo tra i due modelli diventano particolarmente rilevanti per quegli ambiti di utilizzo che prevedono l’impiego delle API. In questo caso, il costo per token del modello GPT 4 è circa 30 volte superiore a quello del modello GPT 3.5, fattore che incentiva fortemente gli sviluppatori a non utilizzare il modello più evoluto, quando non strettamente necessario. La politica di OpenAI prevede che ad ogni nuova release di un nuovo modello di frontiera, il modello precedente venga stabilizzato, consolidato e reso drasticamente più economico, in modo da incentivarne la diffusione e l’utilizzo su larga scala.

Quali sono a livello di prompt gli errori più frequenti tra chi sta imparando a comunicare con ChatGPT? E tra gli esperti?

Gli errori più comuni nei prompt tra chi sta imparando a comunicare con ChatGPT includono:

  • Mancanza di chiarezza e specificità: i nuovi utenti spesso non forniscono dettagli sufficienti o formulano domande vaghe, rendendo difficile per il modello comprendere e rispondere con precisione.
  • Aspettative irragionevoli: alcuni utenti possono avere aspettative irrealistiche riguardo alle capacità di ChatGPT, come richiedere risposte a domande estremamente complesse o richiedere azioni al di fuori delle sue possibilità.
  • Errori nella formulazione delle domande: mancanza di chiarezza o errori grammaticali nelle domande possono portare a risposte non accurate o fuori contesto.
  • Non specificare il contesto: a volte gli utenti non forniscono il contesto necessario per una risposta adeguata, specialmente in domande che riguardano argomenti avanzati.

Tra gli utenti esperti, gli errori possono includere:

  • Sovrastimare le capacità di comprensione del modello: anche gli utenti esperti a volte possono aspettarsi che ChatGPT comprenda complessi riferimenti impliciti o sottintesi, che possono sfuggire al modello.
  • Uso eccessivo di un gergo tecnico specifico: mentre gli utenti esperti sono spesso capaci di formulare domande precise, a volte possono utilizzare un linguaggio troppo tecnico o di nicchia che può confondere il modello, in questo caso sarebbe necessario implementare un processo di fine tuning per permettere al modello di poter rispondere anche su argomenti non propriamente conosciuti.
  • Assumere che il modello abbia accesso a informazioni aggiornate: gli utenti esperti possono a volte dimenticare che ChatGPT ha una data di taglio conoscenze e non può accedere a informazioni o eventi successivi a quella data.
  • Eccessiva complessità nelle richieste: creare prompt eccessivamente complessi o richieste multisfaccettate che possono risultare in risposte incomplete o frammentarie.

È successo in passato che certi prompt attivassero cambiamenti anche drastici nel modo di rispondere di ChatGPT. Ultimamente ha suscitato attenzione un caso nel quale è stato chiesto al chatbot di ripetere una certa parola per sempre e il software, a un certo punto, ha iniziato a restituire blocchi di dati grezzi usati internamente per il suo addestramento. È una situazione frequente, che potrebbe capitare anche a noi, o si tratta di situazioni improbabili che finiscono sulle cronache proprio per la loro improbabilità?

Si tratta di bug ed exploit, ricercati attivamente da una vasta ed attiva community e prontamente affrontati dal team di sviluppo e risolti attraverso aggiornamenti ed evoluzioni del sistema. Negli ultimi mesi l’attenzione a questo tipo di tecnologia è quanto mai alta, il fermento è elevatissimo e di conseguenza anche le notizie che seguono eventi singolari sono a volte sovraccaricate, distorte ed in extremis inventate di sana pianta. Purtroppo c’è molta asimmetria informativa e spesso chi scrive e divulga notizie non ha piena prontezza delle possibili cause o conseguenze che veramente entrano in gioco in questi eventi.

In termini di qualità e valore del risultato, quanto potrebbe contare una ottima padronanza del prompt engineering contro una composizione approssimativa delle domande? ChatGPT perdona inesattezze o genericità?

Da una parte possiamo dire che ChatGPT perdona sempre di più inesattezze ed errori, tanto che viene da chiedersi se questa capacità di approssimare e intendere input estremamente disorganizzati e destrutturati non finirà nel tempo per intaccare la nostra capacità di articolare il discorso in maniera organica e coerente. Rimane però il punto sollevato in precedenza: un input generico porta ad un output generico; un buon Prompt Engineer può personalizzare una GPT in modo tale che essa aggiunga, agli input forniti, una serie di informazioni e istruzioni che possono aumentare sensibilmente la qualità delle risposte, ma se mancano, all’interno di questi input, le informazioni di base, necessarie per caratterizzare e differenziare il caso o il problema in questione, la qualità dell’output rimarrà scarsa.

Così come avviene con un interlocutore umano, la competenza del soggetto che abbiamo di fronte può supplire solo fino ad un certo punto alla carenza di informazioni: anche il miglior dottore del mondo non sarà in grado di effettuare una buona diagnosi, se omettiamo dettagli cruciali sui nostri sintomi e sulle nostre abitudini, limitandoci a lamentare un vago malessere.

L’AI attuale genera effettive situazioni di vantaggio competitivo o è un elemento di livellamento che bisogna avere per offrire il minimo comune denominatore rispetto alla domanda del mercato? Dove c’è vantaggio competitivo, quanto conta dominare l’arte di scrivere prompt?

Come abbiamo ribadito più volte nei vari capitoli del nostro libro, l’utilizzo di chatGPT deve essere visto a supporto delle attività quotidiane con l’obiettivo di poter svolgere più compiti in minor tempo oppure lavorare un tempo minore. Chi utilizza l’AI per supportare il proprio lavoro quotidiano ha sicuramente dei costi ridotti e una potenza di fuoco maggiore e questo è un grandissimo vantaggio competitivo rispetto a chi non la usa. È come dire avere oggi uno smartphone o non averlo, la differenza è abissale per chi svolge attività professionali di qualunque genere.

Fare la domanda giusta

I principali framework e le tecniche da seguire per costruire la corretta successione di domande per ricevere le risposte di cui si ha bisogno.

Occorre inoltre distinguere tra il Prompt Engineering, una competenza che può (e a nostro avviso deve) diffondersi in maniera trasversale, tra i settori e le professioni che caratterizzano l’economia della conoscenza, e le competenze informatiche necessarie per integrare e applicare l’intelligenza artificiale su larga scala. A nostro avviso la vera fonte del vantaggio competitivo a lungo termine, in questo ambito, sarà la disponibilità ad investire su competenze, risorse e strumenti di livello, e la capacità di impiegarli per sviluppare soluzioni realmente innovative e orientate alla creazione di valore.

Immagine di apertura originale della Redazione di Apogeonline.

L'autore

  • Sergio Sentinelli
    Sergio Sentinelli è ingegnere informatico e project manager, coordinatore di team di sviluppo software ed esperto in problem solving. Ha affrontato temi legati all'Intelligenza Artificiale in diversi ambiti quali il rischio sismico e l'ottimizzazione dei magazzini industriali. Ha trovato in ChatGPT un fido alleato per affrontare le innumerevoli sfide quotidiane.
  • Alessandro Placa
    Alessandro Placa, laureato in International Business Management, ha maturato un'esperienza in ambito digital marketing e sales. Ha sviluppato processi e soluzioni caratterizzate dall'uso dell'intelligenza artificiale applicata a database relazionali. Oggi collabora con il Gruppo Guanxi utilizzando l'AI per facilitare la digitalizzazione delle PMI italiane.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.

Libri che potrebbero interessarti

Tutti i libri

Fare la domanda giusta

L'arte di lavorare con ChatGPT e le AI

23,50

33,99€ -31%

19,00

20,00€ -5%

13,99

di Sergio Sentinelli, Alessandro Placa