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

GPT-3 di OpenAI: dialoghi con l'intelligenza artificiale
GPT-3 di OpenAI: dialoghi con l'intelligenza artificiale

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.

GPT-3 per la SEO: potenzialità, limiti, futuro. Il mio WMF 2022
Quest’anno al WMF, in sala SEO, ho parlato di GPT-3 e di generazione di contenuti attraverso l’intelligenza artificiale. Come funziona? Cosa rappresenta? Qual è il futuro del lavoro aumentati dagli algoritmi? Capire la natura del mezzo, genera il vero vantaggio competitivo.

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.

Dialogo con GPT-3: l'intelligenza artificiale di OpenAI
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 pannello per la gestione delle API beta di OpenAI, per utilizzare GPT-3
Il pannello per la gestione delle API beta di OpenAI, per utilizzare GPT-3

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.

L'esportazione del codice per l'utilizzo delle API a partire da un esperimento in Playground
L'esportazione del codice per l'utilizzo delle API a partire da un esperimento in Playground

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).


Un esempio di come l'intelligenza artificiale completa un testo
Un esempio di come l'intelligenza artificiale completa un testo

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.

L'area degli esempi del pannello delle API beta di OpenAI (GPT-3)
L'area degli esempi del pannello delle API beta di OpenAI (GPT-3)

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.

Un esempio di conversazione l'intelligenza artificiale di GPT-3 (OpenAI)
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.

  1. Nella mia seconda domanda non specifico lo sport: si tratta di un dato implicito nel contesto.
  2. È 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).
  3. 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 :)

Come avviene la conversazione con un'intelligenza artificiale? In questo caso GPT-3 di OpenAI
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".

GPT-3 rileva un completamento che potrebbe essere "non sicuro"
GPT-3 rileva un completamento che potrebbe essere "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).

OpenAI permette di dare feedback in merito al rilevamento di completamento non sicuro
OpenAI permette di dare feedback in merito al rilevamento di completamento non sicuro

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.

La dashboard che permette di consultare i dati di utilizzo delle API di GPT-3 (OpenAI)
La dashboard che permette di consultare i dati di utilizzo delle API di GPT-3 (OpenAI)

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.

GPT-3 ha due nuove funzionalità: modifica e inserimento
GPT-3 possiede due nuove funzionalità: la modifica (edit) e l’inserimento (insert). Consentono rispettivamente di modificare un input in base a delle istruzioni, e di inserire contenuto ad un input in una determinata posizione. Come funzionano? Quanto sono affidabili?
GPT-3 e la generazione di testi “tossici”: i nuovi modelli InstructGPT
Modelli linguistici come GPT-3, oggi sono estremamente potenti e vengono utilizzati per produrre contenuti in diversi ambiti. Tuttavia, un training derivante da materiale presente online, può portare a produrre informazioni tossiche e disinformazione. Cos’è InstructGPT? Vediamo di cosa si tratta!

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.

Il tweet di Gary Marcus che punta al suo post sul blog del MIT

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.

GPT-3 non impara nulla sul mondo, ma su come le persone usano le parole - Gary Marcus
GPT-3 non impara nulla sul mondo, ma su come le persone usano le parole - Gary Marcus

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 :)

Per approfondire

OpenAI
Our first-of-its-kind API can be applied to any language task, and currentlyserves millions of production requests each day.
GPT-3, Generative Pre-trained Transformer: cos’è e come funziona?
GPT-3 (Generative Pre-trained Transformer) è un modello di linguaggio di OpenAI basato sull’intelligenza artificiale particolarmente efficiente nella produzione automatica di testi.