GPT-3: dialoghi con l'intelligenza artificiale di OpenAI
Cos'è GPT-3 di OpenAI? Si tratta di un'intelligenza artificiale molto evoluta. Dopo un lungo periodo d'attesa sono stato abilitato all'utilizzo del programma beta delle API. Come funziona? Lo vediamo insieme! Aggiornamento: 09/07/2022
Dopo essere stato diversi mesi di attesa nella whitelist per le API di OpenAI, ho ottenuto l'accesso, e in questo post ti racconto cosa ho trovato nel pannello di gestione e alcuni esperimenti che ho fatto.
Cos'è GPT-3?
GPT-3 è un software di intelligenza artificiale particolarmente efficiente nella produzione automatica di testi, creato da OpenAI.
Tecnicamente si tratta di un modello di linguaggio che utilizza il deep learning per generare testo simile a quello che produrrebbe un essere umano.
Il nome GPT-3, è un acronimo che sta per Generative Pre-trained Transformer, di terza generazione. Quindi un sistema generativo, pre-addestrato, e basato sui "Transformer".
Sul palco del WMF 2022 ho spiegato in dettaglio come funziona e cosa significa ognuno dei termini che compongono il nome. Nel link che segue, è possibile trovare una sintesi dell'intervento.
Cos'è un "language model"? Semplificando al massimo, possiamo definirlo un sistema che, dato un set di parole, può prevedere quelle successive più probabili. Hai presente i suggerimenti di completamento di Gmail che compaiono mentre scrivi? Bene, il concetto è il medesimo, ma all'ennesima potenza.
Vediamo un esempio di conversazione con GPT-3 che ho testato attraverso le API di OpenAI. Successivamente approfondiamo il pannello e vediamo altri scenari di dialogo.
Alessio: ma anch'io sono un'intelligenza artificiale?
AI: sì!
Alessio: credevo di essere umano
AI: lo sei!
Alessio: quindi stavi scherzando?
AI: sì, stavo scherzando.
Come vedi, le espressioni sono molto pertinenti, ed è possibile, in ogni momento far riformulare la risposta all'AI. Riformulazione che rimane perfettamente nel contesto della conversazione.
Il pannello di controllo: cosa puoi fare?
Il sistema è diviso in 3 aree principali.
Il Playground è la sezione che consente di sperimentare le funzionalità testandole direttamente in piattaforma (una sorta di "console" online). In pratica, tutti i parametri utilizzabili nelle chiamate alle API, sono configurabili attraverso l'interfaccia.
Nel video precedente ho utilizzato proprio il Playground, impostando i dati richiesti e simulando una conversazione.
I test realizzati in console possono essere esportati con tutta al configurazione per poter avere la stessa esperienza utilizzando le API da un'applicazione esterna.
Come puoi notare l'esportazione può essere effettuata nativamente per Python, ma è a disposizione anche per l'utilizzo attraverso Curl (che lo rende compatibile con tutti i linguaggi di programmazione).
Un esempio di auto-completamento
L'immagine che segue mostra come si comporta l'AI senza specificare un modello e senza impostare alcun parametro, semplicemente scrivendo una frase (quella in grassetto).
Cosa fa GPT-3? Va a creare un testo partendo dalla frase di partenza, mantenendo come lunghezza quella impostata nel pannello. E lo fa in maniera sensata e performante.
Development quickstart, conduce all'area della documentazione che consente agli sviluppatori di iniziare in pochi passaggi ad utilizzare il sistema. Più in generale, possiamo dire che conduce alla documentazione delle API di OpenAI.
Infine, Examples offre una vasta gamma di esempi di applicazioni realizzabili attraverso le API.
Ogni elemento permette di fare due azioni:
- copiare del codice d'esempio (Python o Curl) per utilizzarlo da subito in un'applicazione esterna;
- trasferire l'esempio nell'area Playground per provarlo nella console.
Altri esempi di dialogo con l'AI
Nei video che seguono, puoi vedere altri esempi di interazione, sempre in modalità di conversazione.
Alessio: sai chi è Valentino Rossi?
AI: Sì, è un famoso motociclista.
Alessio: ti piace questo sport?
AI: Sì molto, dai tempi di Mick Doohan ad oggi.
Ancora una volta delle risposte molto pertinenti e ben inserite nel contesto. Verdiamo alcune note sullo scambio riportato.
- Nella mia seconda domanda non specifico lo sport: si tratta di un dato implicito nel contesto.
- È incredibile che riesca a collocare lo sport portando anche l'esempio di Mick Doohan (per gli amanti di motociclismo si tratta di una leggenda vivente).
- Il vero nome è "Michael", quindi riporta addirittura il nome con il quale è conosciuto da tutti e non quello anagrafico.
..e sa fare anche l'alieno :)
Alessio: come si vive su Venere?
AI: al momento bene!
Alessio: verresti sulla terra a fare una vacanza?
AI: volentieri.
Alessio: ti aspetto in Italia, allora!
AI: grazie, Alessio.
Alessio: scherzi a parte, tu sei un'intelligenza artificiale?
AI: sicuramente sì!
Sulla sidebar di destra dell'interfaccia si notano i diversi parametri che vengono inviati alle API per ottenere le risposte.
Completamento "non sicuro"
Nella parte finale del primo video, il sistema rileva la possibilità che l'intelligenza artificiale abbia generato un completamento non "non sicuro".
Essendo un programma "beta", vengono invitati gli utenti a non utilizzare testo che potrebbe essere "unsafe" o di dare feedback nel caso di tratti di una segnalazione errata (come nel mio caso).
Quello che vedi nell'immagine è il form attraverso il quale è possibile dare feedback relativamente alla segnalazione.
L'area utente e l'utilizzo delle API
All'interno dell'area utente è possibile gestire i dati personali, monitorare il consumo delle API e amministrare le API Keys, ovvero le chiavi (codici) segrete per poter utilizzare il sistema.
Le funzionalità avanzate e le problematiche
Recentemente ho scritto due contenuti relativi alle funzionalità avanzate di GPT-3, ovvero EDIT (modifica del testo a cura dell'algoritmo) e INSERT (arricchimento del testo da parte dell'algoritmo), e su una problematica di questa tipologia di algoritmi, ovvero la produzione di contenuti tossici.
I link che seguono puntano ai post di approfondimento.
Conclusioni
Il comportamento di GPT-3, lo vediamo anche dalle conversazioni, è incredibile. Io stesso, pur non essendo a digiuno di sistemi come questo, mi sono trovato a divertirmi nel fare "quattro chiacchiere" con l'intelligenza artificiale. Nel leggere certe risposte si è creato qualcosa che potremmo avvicinare al concetto di "empatia".
Immagina quanto si potenzierebbe la sensazione se invece di una conversazione testuale diventasse vocale, e ancora se avesse anche un "avatar 3D"!
Gary Marcus definisce, però, GPT-3 un “bullshit artist”, che non impara nulla sul mondo, ma solo su come le persone usano le parole.
Un concetto chiave, dal mio punto di vista, e il "problema" non riguarda solo GPT-3. Quest'ultima lo rende un concetto più evidente perché lavora con il linguaggio naturale. Riguarda tutti i sistemi di deep learning. Secondo i ricercatori più scettici (come lo stesso Marcus) questa tecnologia non è in grado di abbattere il cosiddetto “muro del significato”.
L'approccio probabilistico che viene utilizzato, rende questi sistemi adatti a manipolare superficialmente simboli senza comprenderne le relazioni con il mondo reale.
Insomma, direi che per ora possiamo tranquillizzarci relativamente al timore che "l’umanità sia un giorno ridotta in schiavitù dalle macchine".
Come ha scritto Melanie Mitchell nel suo libro Artificial Intelligenge – a guide for thinking humans..
è difficile pensare che l’intelligenza artificiale possa dominare il mondo, finché avrà problemi a riconoscere il soggetto di una frase.
Attenzione, però.. l'evoluzione di queste tecnologie ha un'accelerazione impressionante. GPT-3 stessa rappresenta un ampio passo in avanti rispetto alla versione precedente.
E Google, durante il Google I/O 2021 ha presentato LaMDA: una tecnologia basata sulla stessa architettura, ma con un'ulteriore slancio!
Questo post è stato scritto da GPT-3 :)