Come funziona effettivamente ChatGPT?

Come funziona ChatGPT?

Google, Wolfram Alpha e ChatGPT interagiscono tutti con gli utenti tramite un campo di inserimento di testo su una singola riga e forniscono risultati testuali. Google restituisce risultati di ricerca, una lista di pagine web e articoli che (si spera) forniscono informazioni correlate alle query di ricerca. Wolfram Alpha fornisce generalmente risposte matematiche e relative all’analisi dei dati.

Inoltre: Come utilizzare ChatGPT: tutto ciò che devi sapere

Caratteristica speciale

L’ascesa dell’IA generativa

Una nuova ondata di strumenti di intelligenza artificiale ha conquistato il mondo e ci ha offerto una visione di un nuovo modo di lavorare e trovare le informazioni che possono semplificare il nostro lavoro e la nostra vita. Ti mostriamo come strumenti come ChatGPT e altri software di IA generativa stanno avendo un impatto sul mondo, come sfruttarne il potere e i potenziali rischi.

ChatGPT, al contrario, fornisce una risposta basata sul contesto e l’intento dietro la domanda dell’utente. Non puoi, ad esempio, chiedere a Google di scrivere una storia o chiedere a Wolfram Alpha di scrivere un modulo di codice, ma ChatGPT può fare queste cose.

Fondamentalmente, il potere di Google risiede nella capacità di effettuare enormi ricerche nel database e fornire una serie di corrispondenze. Il potere di Wolfram Alpha sta nella capacità di analizzare domande legate ai dati e eseguire calcoli basati su tali domande. 

Il potere di ChatGPT sta nella capacità di analizzare le query e produrre risposte complete e risultati basati sulla maggior parte delle informazioni testuali accessibili digitalmente nel mondo – almeno le informazioni esistenti al momento del suo addestramento prima del 2021.

In questo articolo, esamineremo come ChatGPT può produrre queste risposte complete. Inizieremo esaminando le principali fasi di funzionamento di ChatGPT, per poi coprire alcuni dei componenti principali dell’architettura di intelligenza artificiale che rendono tutto questo possibile. 

Inoltre: Come utilizzare il rilevatore di truffe gratuito basato sull’IA di Norton

Oltre alle fonti citate in questo articolo (molte delle quali sono i paper di ricerca originali di ciascuna tecnologia), ho utilizzato ChatGPT stesso per aiutarmi a creare questa panoramica. Gli ho fatto molte domande. Alcune risposte sono parafrasate nel contesto generale di questa discussione.

Le due fasi principali di funzionamento di ChatGPT

Usiamo di nuovo Google come analogia. Quando chiedi a Google di cercare qualcosa, probabilmente sai che non va — nel momento in cui chiedi — a cercare in tutto il web le risposte. Invece, Google cerca nel suo database le pagine che corrispondono a quella richiesta. Google ha effettivamente due fasi principali: la fase di indicizzazione e raccolta dati, e la fase di interazione/ricerca dell’utente.

Inoltre: I migliori chatbot di intelligenza artificiale: ChatGPT e altre alternative divertenti da provare

In termini approssimativi, ChatGPT funziona allo stesso modo. La fase di raccolta dati si chiama pre-training, mentre la fase di risposta all’utente si chiama inferenza. La magia dietro l’IA generativa e il motivo per cui è improvvisamente esplosa è che il modo in cui funziona il pre-training si è dimostrato improvvisamente estremamente scalabile. Tale scalabilità è stata resa possibile dalle recenti innovazioni nella tecnologia hardware a prezzi accessibili e nell’elaborazione in cloud.

Come funziona il pre-training dell’IA

In generale (perché entrare nei dettagli richiederebbe volumi), le IA si pre-addestrano utilizzando due approcci principali: supervisionato e non supervisionato. Per la maggior parte dei progetti di IA precedenti all’attuale generazione di sistemi di IA generativa come ChatGPT, veniva utilizzato l’approccio supervisionato.

Il pre-addestramento supervisionato è un processo in cui un modello viene addestrato su un dataset etichettato, in cui ogni input è associato a un output corrispondente.

Inoltre: Come fare in modo che ChatGPT fornisca fonti e citazioni

Ad esempio, un’IA potrebbe essere addestrata su un dataset di conversazioni di assistenza clienti, in cui le domande e le lamentele dell’utente sono etichettate con le risposte appropriate del rappresentante del servizio clienti. Per addestrare l’IA, domande come “Come posso reimpostare la mia password?” verrebbero fornite come input dell’utente, e risposte come “Puoi reimpostare la tua password visitando la pagina delle impostazioni dell’account sul nostro sito web e seguendo le istruzioni” verrebbero fornite come output.

In un approccio di addestramento supervisionato, il modello complessivo viene addestrato per imparare una funzione di mappatura che può mappare gli input agli output con precisione. Questo processo viene spesso utilizzato in compiti di apprendimento supervisionato, come classificazione, regressione e etichettatura delle sequenze.

Come potreste immaginare, ci sono dei limiti su come questo può essere scalato. Gli addestratori umani dovrebbero andare molto lontano nel prevedere tutti gli input e gli output. L’addestramento potrebbe richiedere molto tempo e essere limitato nell’esperienza della materia.

Inoltre: I 10 migliori plugin ChatGPT (e come trarne il massimo)

Ma come abbiamo imparato, ChatGPT ha pochissimi limiti nell’esperienza della materia. Puoi chiedergli di scrivere un curriculum per il personaggio Chief Miles O’Brien di Star Trek, fargli spiegare la fisica quantistica, scrivere un pezzo di codice, scrivere un breve racconto e confrontare gli stili di governo dei presidenti degli Stati Uniti precedenti.

Sarebbe impossibile prevedere tutte le domande che potrebbero essere fatte, quindi non c’è davvero modo che ChatGPT possa essere stato addestrato con un modello supervisionato. Invece, ChatGPT utilizza un addestramento pre-supervisionato, ed è qui che sta il cambiamento di gioco.

L’addestramento pre-supervisionato è il processo mediante il quale un modello viene addestrato su dati in cui non è associato alcun output specifico a ciascun input. Invece, il modello viene addestrato per apprendere la struttura sottostante e i modelli dei dati di input senza alcun compito specifico in mente. Questo processo viene spesso utilizzato in compiti di apprendimento non supervisionato, come clustering, rilevamento delle anomalie e riduzione della dimensionalità. Nel contesto della modellazione del linguaggio, l’addestramento pre-supervisionato può essere utilizzato per addestrare un modello a comprendere la sintassi e la semantica del linguaggio naturale, in modo da poter generare testo coerente e significativo in un contesto di conversazione.

Inoltre: Come utilizzare ChatGPT per creare un’app

È qui che diventa possibile la conoscenza apparentemente illimitata di ChatGPT. Poiché gli sviluppatori non hanno bisogno di conoscere gli output che derivano dagli input, tutto ciò che devono fare è caricare sempre più informazioni nel meccanismo di addestramento pre-supervisionato di ChatGPT, chiamato modellazione del linguaggio con trasformatore di base.

Architettura del trasformatore

L’architettura del trasformatore è un tipo di rete neurale utilizzato per elaborare dati di linguaggio naturale. Una rete neurale simula il modo in cui funziona il cervello umano elaborando le informazioni attraverso strati di nodi interconnessi. Pensate a una rete neurale come a una squadra di hockey: ogni giocatore ha un ruolo, ma passano il puck avanti e indietro tra giocatori con ruoli specifici, tutti lavorando insieme per segnare un gol.

L’architettura del trasformatore elabora sequenze di parole utilizzando l'”auto-attenzione” per valutare l’importanza delle diverse parole in una sequenza durante la previsione. L’auto-attenzione è simile al modo in cui un lettore potrebbe tornare indietro a una frase o a un paragrafo precedente per il contesto necessario per capire una nuova parola in un libro. Il trasformatore guarda tutte le parole in una sequenza per capire il contesto e le relazioni tra le parole.

Inoltre: Ho chiesto a ChatGPT di scrivere un plugin WordPress di cui avevo bisogno. L’ha fatto in meno di 5 minuti

Il trasformatore è composto da diversi strati, ognuno con più sottolivelli. I due principali sottolivelli sono il livello di auto-attenzione e il livello di feedforward. Il livello di auto-attenzione calcola l’importanza di ogni parola nella sequenza, mentre il livello di feedforward applica trasformazioni non lineari ai dati di input. Questi strati aiutano il trasformatore a imparare e comprendere le relazioni tra le parole in una sequenza.

Durante l’addestramento, al trasformatore viene fornito un dato di input, come una frase, e gli viene chiesto di fare una previsione basata su tale input. Il modello viene aggiornato in base a quanto bene la sua previsione corrisponde all’output effettivo. Attraverso questo processo, il trasformatore impara a comprendere il contesto e le relazioni tra le parole in una sequenza, rendendolo uno strumento potente per compiti di elaborazione del linguaggio naturale come la traduzione del linguaggio e la generazione di testo.

Inoltre: 7 suggerimenti avanzati per la scrittura di prompt ChatGPT che devi conoscere

Una cosa da tenere presente è che ci sono problemi legati alla possibilità che questi modelli generino contenuti dannosi o di parte, in quanto potrebbero apprendere modelli e pregiudizi presenti nei dati di addestramento. Le aziende che implementano questi modelli stanno cercando di fornire “guardie” ma quelle stesse guardie possono causare problemi. Questo perché le persone hanno prospettive diverse e un tentativo di prevenire i pregiudizi basati su una scuola di pensiero potrebbe essere considerato un pregiudizio da un’altra scuola di pensiero. La progettazione di un chatbot universale diventa difficile, data la complessità della società nel suo complesso.

Discutiamo prima dei dati che vengono inseriti in ChatGPT, e poi diamo un’occhiata alla fase di interazione con l’utente di ChatGPT e al linguaggio naturale.

Set di dati di addestramento di ChatGPT

Il set di dati utilizzato per addestrare ChatGPT è enorme. ChatGPT si basa sull’architettura GPT-3 (Generative Pre-trained Transformer 3). In realtà, è qui che dobbiamo fare chiarezza. La versione gratuita di ChatGPT è stata addestrata su CPT-3. Se paghi $20 al mese per ChatGPT Plus, hai la possibilità di utilizzare il set di dati di addestramento GPT-3 o un set di dati GPT-4 più esteso.

Inoltre: GPT-3.5 vs GPT-4: vale la pena sottoscrivere ChatGPT Plus?

Ora, l’abbreviazione GPT ha senso, vero? È generativo, il che significa che genera risultati, è pre-addestrato, il che significa che si basa su tutti questi dati che assorbe, e utilizza l’architettura del trasformatore che valuta gli input testuali per comprendere il contesto.

GPT-3 è stato addestrato su un set di dati chiamato WebText2, una libreria di oltre 45 terabyte di dati testuali. Quando puoi acquistare un hard disk da 16 terabyte per meno di $300, un corpus di 45 terabyte potrebbe non sembrare così grande. Ma il testo occupa molto meno spazio di archiviazione rispetto alle immagini o ai video.

Inoltre: Come (e perché) sottoscrivere ChatGPT Plus

Questa enorme quantità di dati ha permesso a ChatGPT di apprendere modelli e relazioni tra parole e frasi nel linguaggio naturale su una scala senza precedenti, ed è uno dei motivi per cui è così efficace nel generare risposte coerenti e contestualmente rilevanti alle query degli utenti.

Sebbene ChatGPT si basi sull’architettura GPT-3, è stato ottimizzato su un set di dati diverso e ottimizzato per casi d’uso conversazionali. Ciò gli consente di offrire un’esperienza più personalizzata e coinvolgente agli utenti che interagiscono con esso attraverso un’interfaccia di chat.

Ad esempio, OpenAI (sviluppatori di ChatGPT) ha rilasciato un set di dati chiamato Persona-Chat che è appositamente progettato per addestrare modelli di intelligenza artificiale conversazionale come ChatGPT. Questo set di dati consiste in oltre 160.000 dialoghi tra due partecipanti umani, con ciascun partecipante assegnato una persona unica che descrive il proprio background, interessi e personalità. Ciò consente a ChatGPT di imparare come generare risposte personalizzate e pertinenti al contesto specifico della conversazione.

Inoltre: Come utilizzare ChatGPT nel tuo browser con le estensioni corrette

Oltre a Persona-Chat, sono stati utilizzati molti altri set di dati conversazionali per ottimizzare ChatGPT. Ecco alcuni esempi:

  • Corpus di dialoghi di film Cornell: Un set di dati che contiene conversazioni tra personaggi in sceneggiature di film. Include oltre 200.000 scambi conversazionali tra più di 10.000 coppie di personaggi di film, che coprono una vasta gamma di argomenti e generi.
  • Corpus di dialoghi di Ubuntu: Una raccolta di dialoghi multi-turn tra utenti che cercano supporto tecnico e il team di supporto della comunità di Ubuntu. Contiene oltre 1 milione di dialoghi, rendendolo uno dei set di dati di ricerca sui sistemi di dialogo più grandi disponibili pubblicamente.
  • DailyDialog: Una collezione di dialoghi umani in una varietà di argomenti, che vanno da conversazioni sulla vita quotidiana a discussioni su questioni sociali. Ogni dialogo nel set di dati è composto da diversi turni e viene etichettato con un insieme di informazioni sull’emozione, il sentimento e l’argomento.

Oltre a questi set di dati, ChatGPT è stato addestrato su una grande quantità di dati non strutturati trovati su Internet, tra cui siti web, libri e altre fonti di testo. Ciò ha permesso a ChatGPT di apprendere la struttura e i modelli del linguaggio in modo più generale, che poi possono essere ottimizzati per applicazioni specifiche come la gestione del dialogo o l’analisi del sentiment.

ChatGPT è un modello distinto che è stato addestrato utilizzando un approccio simile alla serie GPT, ma con alcune differenze nell’architettura e nei dati di addestramento. ChatGPT ha 1,5 miliardi di parametri, che è inferiore ai 175 miliardi di parametri di GPT-3.

Inoltre: I migliori generatori di arte AI da provare

In generale, i dati di addestramento utilizzati per ottimizzare ChatGPT sono tipicamente di natura conversazionale e appositamente selezionati per includere dialoghi tra esseri umani, il che consente a ChatGPT di imparare come generare risposte naturali e coinvolgenti in un formato di conversazione.

Pensa all’addestramento non supervisionato di ChatGPT in questo modo: gli sono stati forniti molti dati e lasciato libero di trovare modelli e dare un senso a tutto ciò. Questo è il meccanismo che ha permesso ai nuovi sistemi di intelligenza artificiale generativa di scalare così rapidamente.

Mentre il grosso del lavoro per l’IA generativa di ChatGPT viene svolto dal pre-training, deve anche essere in grado di comprendere le domande e costruire risposte da tutti quei dati. Ciò avviene nella fase di inferenza, che consiste in elaborazione del linguaggio naturale e gestione del dialogo.

E per quanto riguarda il coinvolgimento umano nel pre-training?

Nonostante la scalabilità intrinseca del pre-training non supervisionato, ci sono evidenze che l’assistenza umana possa essere stata coinvolta nella preparazione di ChatGPT per l’uso pubblico.

La grande rivelazione è avvenuta in un articolo su TIME Magazine che parlava dell’uso di “etichettatori di dati” umani che guadagnavano tra $1,32 e $2 all’ora in Kenya. Secondo il rapporto di TIME, spettava a questi lavoratori esaminare contenuti Internet spaventosi ed esplicitamente sessuali per segnalarli al fine del training di ChatGPT.

Inoltre: Come accedere a migliaia di audiolibri gratuiti, grazie all’IA di Microsoft e a Project Gutenberg

Un altro articolo, pubblicato su Martechpost, una newsletter sull’IA, afferma che il grande modello linguistico è stato addestrato utilizzando un processo chiamato Apprendimento Rinforzato dal Feedback Umano (RLHF). Secondo l’articolo, “Il processo di addestramento ha coinvolto un modello iniziale raffinato utilizzando l’apprendimento supervisionato, con formatori umani che si sono alternati nei ruoli di utente e assistente IA”.

Ci sono alcune sfumature quando si parla di cosa significa la parola “addestramento”. Secondo lo stesso ChatGPT, “OpenAI non mi ha addestrato utilizzando l’apprendimento rinforzato con feedback umano. Invece, sono stato pre-addestrato utilizzando una combinazione di tecniche di apprendimento non supervisionato e supervisionato, come la modellazione del linguaggio, la codifica automatica e la previsione delle sequenze. Il mio addestramento ha comportato l’elaborazione di enormi quantità di dati testuali provenienti da Internet, il che mi ha permesso di imparare i modelli e le relazioni tra parole e frasi.”

L’IA continua: “Tuttavia, una volta pre-addestrato, i ricercatori e gli sviluppatori possono utilizzare l’apprendimento rinforzato con feedback umano per perfezionarmi per compiti o domini specifici, come rispondere a domande o generare testo. In questi casi, gli esseri umani possono fornire feedback sotto forma di ricompense o penalità, che possono essere utilizzate per aggiornare i miei parametri e migliorare le mie prestazioni in compiti simili in futuro.”

Inoltre: Ho chiesto a ChatGPT, Bing e Bard cosa li preoccupa. L’IA di Google si è trasformata in Terminator per me

Questo sembra essere in linea con i rapporti di Marktechpost e TIME, nel senso che il pre-addestramento iniziale è stato non supervisionato, consentendo di alimentare il sistema con una quantità enorme di dati. Ma nella costruzione delle risposte al dialogo che comunicano con gli utenti (più su questo in seguito), i motori di risposta sembrano essere stati addestrati sia sui tipi di risposte, che a filtrare materiale inappropriato, e tale addestramento sembra essere stato assistito da esseri umani.

Ho contattato OpenAI (il produttore di ChatGPT) per chiarimenti, ma non ho ancora ricevuto una risposta. Se l’azienda mi risponderà (al di fuori di ChatGPT stesso), aggiornerò l’articolo con la sua risposta.

Elaborazione del linguaggio naturale

L’elaborazione del linguaggio naturale (NLP) si concentra sull’abilitazione dei computer a comprendere, interpretare e generare il linguaggio umano. Con la crescita esponenziale dei dati digitali e l’uso sempre più diffuso di interfacce di linguaggio naturale, l’NLP è diventata una tecnologia cruciale per molte aziende.

Le tecnologie NLP possono essere utilizzate per una vasta gamma di applicazioni, tra cui l’analisi dei sentimenti, i chatbot, il riconoscimento vocale e la traduzione. Sfruttando l’NLP, le aziende possono automatizzare compiti, migliorare il servizio clienti e ottenere informazioni preziose dai feedback dei clienti e dai post sui social media.

Inoltre: Come scrivere promemoria migliori per ChatGPT

Una delle principali sfide nell’implementazione dell’NLP è affrontare la complessità e l’ambiguità del linguaggio umano. Gli algoritmi di NLP devono essere addestrati su grandi quantità di dati per riconoscere i modelli e imparare le sfumature del linguaggio. Devono anche essere continuamente raffinati e aggiornati per tenere il passo con i cambiamenti nell’uso e nel contesto del linguaggio.

La tecnologia funziona suddividendo gli input di linguaggio, come frasi o paragrafi, in componenti più piccoli e analizzando i loro significati e le relazioni per generare informazioni o risposte. Le tecnologie NLP utilizzano una combinazione di tecniche, tra cui la modellazione statistica, l’apprendimento automatico e l’apprendimento profondo, per riconoscere i modelli e imparare da grandi quantità di dati al fine di interpretare e generare il linguaggio in modo accurato.

Gestione del dialogo

Potresti aver notato che ChatGPT può fare domande di approfondimento per chiarire la tua intenzione o comprendere meglio le tue esigenze, e fornire risposte personalizzate che tengono conto di tutta la cronologia della conversazione.

È così che ChatGPT può avere conversazioni a più turni con gli utenti in modo naturale e coinvolgente. Coinvolge l’uso di algoritmi e tecniche di apprendimento automatico per comprendere il contesto di una conversazione e mantenerlo durante scambi multipli con l’utente.

Come utilizzare: Midjourney | Bing Image Creator | Craiyon | Stable Diffusion

La gestione del dialogo è un aspetto importante dell’elaborazione del linguaggio naturale perché consente ai programmi informatici di interagire con le persone in modo simile a una conversazione piuttosto che a una serie di interazioni isolate. Ciò può aiutare a costruire fiducia e coinvolgimento con gli utenti e, alla fine, portare a risultati migliori sia per l’utente che per l’organizzazione che utilizza il programma.

I marketer, naturalmente, vogliono ampliare il modo in cui viene costruita la fiducia, ma questa è anche un’area che potrebbe risultare spaventosa perché è un modo in cui un’intelligenza artificiale potrebbe manipolare le persone che la utilizzano.

Uno sguardo all’interno dell’hardware che alimenta ChatGPT

Microsoft ha recentemente pubblicato un video che illustra come Azure viene utilizzato per creare una rete per eseguire tutti i calcoli e lo storage necessari per ChatGPT. È una visione affascinante, sia per la discussione su Azure sia per la progettazione dell’intelligenza artificiale in un hardware reale.

Domande frequenti

In che cosa si differenzia l’IA generativa di ChatGPT dai chatbot tradizionali?

I chatbot tradizionali operano in base a regole predefinite e alberi decisionali, rispondendo a input specifici degli utenti con risposte predefinite. ChatGPT, d’altra parte, utilizza l’IA generativa, consentendo di produrre risposte uniche comprendendo contesto e intento, rendendo le interazioni più dinamiche e simili a quelle umane.

Perché l’apprendimento non supervisionato in fase di pre-training è considerato un elemento rivoluzionario per modelli di IA come ChatGPT?

L’apprendimento non supervisionato consente ai modelli di IA di apprendere da grandi quantità di dati non annotati. Questo approccio aiuta il modello a comprendere le sfumature del linguaggio senza limitarsi a compiti specifici, consentendogli di generare risposte più diverse e rilevanti dal punto di vista contestuale.

Ci sono limitazioni alla capacità di ChatGPT di comprendere e rispondere alle richieste degli utenti?

Sì. ChatGPT si basa sui dati su cui è stato addestrato, il che significa che potrebbe non avere sempre informazioni su argomenti molto recenti o su argomenti di nicchia. Inoltre, le sue risposte vengono generate in base ai pattern presenti nei dati, quindi potrebbe occasionalmente produrre risposte errate dal punto di vista dei fatti o carenti di contesto. Inoltre, i dati su cui è addestrato potrebbero essere errati o addirittura manipolati per essere fuorvianti.

E ora lo sai

Anche se abbiamo superato le 3.200 parole, questa è ancora una panoramica molto rudimentale di tutto ciò che avviene all’interno di ChatGPT. Detto questo, forse ora capisci un po’ meglio perché questa tecnologia è esplosa negli ultimi mesi. La chiave di tutto ciò è che i dati stessi non sono “supervisionati” e l’IA è in grado di prendere ciò che le viene fornito e dargli un senso.

Inoltre: non siamo pronti per l’impatto dell’IA generativa sulle elezioni

Abbastanza impressionante, davvero.

Per concludere, ho alimentato ChatGPT con una bozza di tutto questo articolo e ho chiesto all’IA di descrivere l’articolo in una frase. Ecco a te:

ChatGPT è come il cugino intelligente di Google e Wolfram Alpha, in grado di fare cose che loro non possono fare, come scrivere storie e moduli di codice.

ChatGPT dovrebbe essere una tecnologia senza ego, ma se questa risposta non ti dà almeno un po’ i brividi, significa che non hai prestato attenzione.

Cosa ne pensi? Stai usando ChatGPT? Quali domande hai ancora su come funziona? Condividile con noi nei commenti qui sotto.


Puoi seguire gli aggiornamenti giornalieri sul mio progetto sui social media. Assicurati di seguirmi su Twitter su @DavidGewirtz, su Facebook su Facebook.com/DavidGewirtz, su Instagram su Instagram.com/DavidGewirtz e su YouTube su YouTube.com/DavidGewirtzTV.