LLM a 1 bit: cosa sono?

Immagine di copertina

Il mondo dell’intelligenza artificiale generativa sta correndo a velocità massima e il nuovo arrivato in questo campo è il primo LLM a 1 bit. Potresti non crederci, ma questo potrebbe essere un punto di svolta non banale per aiutare a eliminare alcune delle maggiori sfide associate all’uso dei LLM, in particolare alle loro dimensioni.

Come funziona un modello

In uno scenario generico (non sempre), i pesi di qualsiasi modello, sia esso LLM o semplificemente di regressione logistica, vengono archiviati come virgola mobile a 32 bit o virgola mobile a 16 bit.

Supponiamo quindi di avere un LLM “MioCustomGPT” che ha 7 miliardi di parametri (come avviene in maniera simile in Mistral o Llama-7B) utilizzando una precisione a 32 bit (4 byte).

Questo modello occuperà:

Memoria totale = Dimensione di un peso * Numero di pesi
Memoria totale = 4 byte * 7.000.000.000
Memoria totale = 28.000.000.000 di byte
Convertendolo in gigabyte, otteniamo:
Memoria totale = 28.000.000.000 byte / 1024³ byte per GB
Memoria totale ≈ 26,09 GB

La dimensione è più che notevole: questo è il motivo principale per cui non siamo in grado di utilizzare modelli come GPT o altri modelli più grandi in locale, poiché hanno grandi dimensioni a causa dell’elevata precisione del valore dei pesi.

LLM a 1 bit

Nei LLM a 1 bit, solo 1 bit (che quindi permette di memorizzare o 0 o 1) viene utilizzato per memorizzare i parametri di peso rispetto ai 32/16 bit degli LLM tradizionali.

Ciò riduce le dimensioni complessive di una grande percentuale consentendo quindi anche ai dispositivi più “smart” o con risorse ridotte di utilizzare LLM.

Assumiamo quindi di avere una variante LLM a 1 bit di “MioCustomlGPT”. Questa volta la memoria occupata sarà di:

Memoria totale = Dimensione di un peso * Numero di pesi
Memoria totale = 0,125 byte * 7.000.000.000
Memoria totale = 875.000.000 di byte
Convertendolo in gigabyte, otteniamo:
Memoria totale = 875.000.000 byte / 1024³ byte per GB
Memoria totale ≈ 0,815 GB

Un risparmio davvero notevole, in termini di dimensioni.

LLM 1 bit vs Quantizzazione

C’è chi parla di quantizzazione, anche se in realtà siamo abbastanza distanti da questa idea: nel caso della quantizzazione, si riduce la precisione dei pesi e delle informazioni, mentre in un LLM a 1 bit gni peso verrà rappresentato dall’operatore binario (0,1) e nient’altro, quindi un modello ancora più ridotto.

Infatti, la quantizzazione è una tecnica che consente di ridurre i requisiti di memoria e di calcolo di questi modelli, aprendo la strada alla loro esecuzione su tutti i tipi di dispositivi, dai telefoni ai computer più piccoli, ma con un meccanismo di compressione notevole, dal momento che andiamo a perdere di precisione.

Ad esempio, un parametro i cui valori con precisione completa a 32 bit erano 3,456776867 verrà salvato con precisione inferiore sull’intero 3 (8 bit INT). Ciò riduce significativamente le dimensioni del modello, consentendogli di funzionare più velocemente su dispositivi con memoria limitata, come CPU o persino smartphone.

BitNet b1.58

Questo primo LLM a 1 bit è unico nel suo genere, in quanto utilizza 1.58 bit per peso, permettendo di avere 3 valori possibili, ossia -1, 0 e 1. Questo vuol dire anche che fornisce velocità di elaborazione più elevate e utilizza meno memoria GPU rispetto ai modelli tradizionali.

Include una funzione di quantizzazione per l’ottimizzazione a livello di sistema e integra componenti come RMSNorm e SwiGLU simili a LLaMA.

Ad oggi, il modello non è ancora stato reso pubblico e quindi non è stato testato in ambiente fuori da quelli di ricerca, ma è chiaro che il futuro dei chatbot, e di strumenti come ChatGPT o simili, potrebbe essere a 1 bit.


🔗 Leggi anche:

Conosci meglio chi ha scritto questo articolo

Serena Sensini

Ciao! Mi chiamo Serena Sensini e sono la creatrice di @ TheRedCode.it. Ho aperto questo blog nel 2021 per raccontare il mio lavoro e il mondo dell’informatica a parole semplici, in piccole pillole e alla portata di tutte le persone.

Sono un’ingegnera informatica specializzata in ambito AI & NLP. Di giorno lavoro come CTO @ Welyk e come Innovation & Emerging Technologies Leader @ Dedalus, mentre di notte scrivo e sono autrice di 5 libri -per ora-. 🖊️

Foto di Serena Sensini

Partners

Community, aziende e persone che supportano attivamente il blog

Vuoi diventare tech content creator? 🖊️

Se ti va di raccontare la tua esperienza nel mondo tech, questo è il posto giusto.

Cerchiamo voci autentiche, esempi pratici e punti di vista utili per chi legge.

Scrivici a collaborazioni[at]theredcode.it con una proposta: idea, taglio del contenuto e una breve presentazione. Non vediamo l'ora di leggere la tua esperienza!

Invia la tua idea