I LLM (Large Language Model) alla base di un chatbot come ChatGPT o di qualunque altro prodotto similare, svolgono una serie di elaborazioni prima di restituire una risposta all’utente. Quest’attività di computing può risultare piuttosto ostica da comprendere: così, gli autori del progetto LLM Visualization sono riusciti a realizzare ciò che fino a ieri sembrava complicato anche lontanamente immaginare.
Uno strumento online interamente basato sul Web come LLM Visualization permette di visualizzare in 3D quali parametri sono memorizzati internamente dal modello e quali calcoli vengono gestiti.
Partire da un modello semplice, Nano-GPT, per capire il funzionamento dei LLM
Nano-GPT è una versione ridotta del modello GPT (Generative Pre-trained Transformer), ampiamente utilizzato da OpenAI e giunto alla quarta generazione (GPT-4), con ulteriori avanzamenti che sono già da tempo all’orizzonte. Questo modello più compatto può generare testo in modo simile a GPT, ed è adatto per gestire compiti legati alla generazione di linguaggio naturale seppur su scala ridotta.
Cliccando sul pulsante Continue, nella colonna di sinistra di LLM Visualization, la piattaforma guida passo-passo alla scoperta del funzionamento di un modello come Nano-GPT. Premendo semplicemente la barra spaziatrice, si avanza di paragrafo in paragrafo con la rappresentazione grafica aggiornata in tempo reale nel pannello a destra.
Esplorare la struttura del modello, graficamente
Posizionando il puntatore su un elemento specifico del modello 3D, si può verificare a quale struttura appartiene l’oggetto selezionare o controllare il numero di righe e di colonne. È anche possibile verificare le formule di calcolo e rendersi conto dei corrispondenti risultati. Nel caso delle strutture più complesse, è possibile esaminarle più da vicino effettuando un’operazione di ingrandimento.
La prima volta che si accede a LLM Visualization, l’applicazione Web mostra la struttura del modello Nano-GPT che, nella veste proposta, consta di appena 85.000 parametri. Provate a vedere cosa succede selezionando GPT-2 (small) come modello (formato, in questo caso da oltre 124 milioni di parametri). O ancora, selezionando successivamente GPT-3 che si basa su circa 175 miliardi di parametri.
L’esempio scelto per capire il funzionamento dei LLM
Un modello generativo come Nano-GPT aiuta ad apprezzare meglio i “fondamentali” dei LLM. L’obiettivo del modello proposto da LLM Visualization consiste nel mettere in ordine alfabetico una sequenza di sei lettere: C B A B B C, che rappresentano i token. I token sono singole unità della sequenza e la loro diversità costituisce il vocabolario del modello. Nel caso specifico, per maggiore semplicità, il vocabolario è composto dai soli token A, B e C, con i corrispondenti indici 0, 1 e 2.
La sequenza di lettere è quindi rappresentata numericamente secondo gli indici dei token corrispondenti: 2 1 0 1 1 2. I numeri sono inseriti nel modello come parte integrante dello stesso.
Il modello utilizza un’operazione chiamata “embedding” per trasformare ciascun numero in una rappresentazione vettoriale di 48 elementi. La rappresentazione, elaborata attraverso il modello, consiste in una serie di strati chiamati “transformer“.
L’obiettivo finale del modello è fare una previsione sul token successivo nella sequenza. Reinserendo tale previsione nella parte superiore del modello e ripetendo il processo, il modello continua a previsioni per la successiva lettera nella sequenza, iterando il processo e migliorando il suo comportamento a ogni iterazione.
Credit immagine in apertura: iStock.com/Shutthiphong Chandaeng