La diffusione dei sistemi di Intelligenza Artificiale Generativa è stata principalmente trainata dai Large Language Models (LLM), modelli linguistici con centinaia di miliardi di parametri, addestrati su enormi data set. Le capacità degli LLM sono indubbiamente impressionanti, ma le loro dimensioni enormi portano a svantaggi significativi in termini di efficienza, costi e personalizzazione. Queste limitazioni hanno aperto le porte a una nuova classe di modelli emergenti: gli Small Language Models (SLM).
Cosa sono gli Small Language Models
Gli Small Language Models (SLM) sono delle versioni ridotte dei Large Language Models. Gli SLM hanno un numero significativamente inferiore di parametri, che in genere vanno da pochi milioni a qualche miliardo, rispetto agli LLM che ne hanno invece centinaia di miliardi o addirittura trilioni. GPT-4, ad esempio, ha 1 trilione di parametri, contro i 175 miliardi di GPT-3.
In generale, i modelli linguistici sono sistemi di Intelligenza Artificiale che possono generare testo, rispondere a domande, sintetizzare e tradurre documenti. Questi modelli vengono addestrati su vasti set di dati. Nonostante non esista una cifra universalmente accettata che definisca la grandezza del set di dati ottimale, un LLM possiede tipicamente almeno un miliardo di parametri.
I parametri, nell’ambito del Machine Learning, indicano le variabili apprese durante l’addestramento utilizzate dal modello per generare nuovi contenuti. La dimensione di un modello è quindi determinata dal numero di parametri che possiede: più è elevato il numero di parametri, più è complesso il modello e maggiore è la sua capacità di apprendere e generalizzare da nuovi dati.
Con l’aumento delle dimensioni del modello, si assiste anche a un fenomeno noto come “emergenza”, per cui modelli iniziano a mostrare capacità o comportamenti che non erano evidenti o previsti nelle versioni più piccole o meno complesse.
Come funzionano gli Small Language Models
Come i Large Language Models, anche gli Small Language Models sono addestrati su vasti set di dati di testo. Tuttavia, per ottenere dimensioni ridotte vengono impiegate diverse tecniche:
- Distillazione della conoscenza: questa tecnica consiste nel trasferire la conoscenza da un LLM pre-addestrato a un modello più piccolo, mantenendo le capacità essenziali ma eliminando parte della complessità;
- Potatura e quantizzazione: queste tecniche implicano l’eliminazione delle parti superflue del modello e la riduzione della precisione dei parametri, diminuendo così le dimensioni;
- Architetture efficienti: i ricercatori sviluppano costantemente nuove architetture di modello specificamente progettate per gli SLM, con un focus sull’ottimizzazione di prestazioni ed efficienza.
Gli Small Language Models sono dunque modelli più leggeri ed efficienti ma con prestazioni e accuratezza ridotti rispetto ai Large Language Models.
L’esperto Akash Takyar precisa che SLM e LLM rappresentano due approcci distinti, ciascuno adatto a esigenze e vincoli specifici. Mentre gli LLM, esemplificati da GPT-4 e simili, sono in grado di svolgere compiti complessi con alti livelli di precisione, gli SLM operano su una scala più modesta, offrendo soluzioni pratiche per ambienti con risorse limitate.
Differenze tra Small Language Models e Large Language Models
Le principali differenze tra Small Language Models e Large Language Models possono essere sintetizzate in quattro punti:
- Dimensione e complessità: mentre gli LLM si basano su architetture complesse con miliardi di parametri, gli SLM utilizzano architetture semplificate, con meno parametri.
- Tempo di addestramento: l’addestramento degli LLM può richiedere diversi mesi o persino anni. Gli SLM possono essere addestrati in periodi molto più brevi, talvolta solo alcune settimane.
- Prestazioni e capacità di Elaborazione del Linguaggio Naturale (NLP): gli LLM offrono prestazioni superiori e capacità avanzate di Elaborazione del linguaggio Naturale e sono capaci di gestire compiti più complessi, con maggiore accuratezza, creatività e comprensione del contesto. Al contrario, gli SLM mostrano un livello inferiore di precisione e meno sfumature nelle risposte.
- Costi e personalizzazione: la personalizzazione di un LLM implica maggiori costi e difficoltà, oltre a sollevare questioni legate alla proprietà intellettuale e ai diritti d’autore. Gli SLM, d’altra parte, sono più facilmente personalizzabili e adattabili, con costi ridotti e minori sfide legali.
I vantaggi degli Small Language Models
Le dimensioni ridotte degli Small Language Model offrono diversi vantaggi significativi:
- Utilizzo efficiente delle risorse: uno dei principali vantaggi degli Small Language Models è l’uso efficiente delle risorse computazionali. Essendo di dimensioni inferiori rispetto ai Large Language Models, gli SLM consumano meno energia e possono operare su hardware meno potenti. La loro capacità di processare dati localmente li rende ideali per dispositivi edge nell’ambito dell’Internet of Things (IoT). Inoltre, le dimensioni contenute facilitano l’implementazione su dispositivi mobili. Per esempio, Apple ha annunciato i suoi Efficient Language Models (ELM), che opereranno localmente sui dispositivi dell’azienda senza necessità di connessione a Internet. Queste funzionalità di Intelligenza Artificiale saranno disponibili sugli iPhone con l’introduzione del sistema operativo iOS 18, prevista per giugno 2024.
- Applicazione in domini specifici: gli SLM offrono un livello di personalizzazione e facilità d’uso che i modelli linguistici più grandi potrebbero non fornire. A differenza degli LLM, che tendono ad avere un approccio più generico, gli SLM possono essere ottimizzati per specifici domini o compiti, migliorando così le prestazioni in quelle aree particolari.
- Sicurezza: le dimensioni contenute degli Small Language Models permettono alle aziende di esercitare un controllo maggiore sui dati, aumentando la sicurezza. Inoltre, avendo basi di codice più piccole e minori superfici d’attacco per le violazioni, gli SLM sono meno vulnerabili agli attacchi informatici.
I limiti
Gli Small Language Models presentano alcuni limiti rispetto ai Large Language Models, principalmente a causa del loro minor numero di parametri. I principali limiti sono:
- livelli inferiori di accuratezza e sfumature nelle risposte, dovuti a una comprensione limitata del linguaggio e del contesto;
- prestazioni ridotte in attività complesse;
- creatività e originalità limitate;
- difficoltà nel seguire le istruzioni e nell’apprendere dipendenze a lungo termine.
Sebbene gli Small Language Models offrano vantaggi in termini di efficienza, generalmente non eguagliano i livelli di precisione e prestazione dei modelli linguistici più grandi, soprattutto in compiti di elaborazione del linguaggio naturale che richiedono una comprensione più approfondita del linguaggio. Il compromesso tra accuratezza ed efficienza rappresenta un fattore importante nella scelta del modello linguistico più adatto per le proprie esigenze.
Verso un futuro “Small”
Gli Small Language Models presentano sia vantaggi che limiti. Il compromesso tra accuratezza ed efficienza è un fattore cruciale: questi modelli sono più leggeri, di rapida implementazione e meno esigenti dal punto di vista computazionale. Tuttavia, non raggiungono il livello di accuratezza dei modelli di grandi dimensioni.
Nonostante ciò, gli Small Language Models rappresentano una tecnologia molto promettente, che sta suscitando notevole interesse, soprattutto per la loro idoneità all’implementazione in dispositivi personali come smartphone e laptop. Recentemente, Apple ha annunciato i suoi Efficient Language Models (ELM), destinati ai suoi dispositivi, tra cui l’iPhone. Allo stesso modo, Microsoft ha lanciato Phi-3, il suo modello più piccolo di sempre. Google, nel dicembre del 2023, ha introdotto Gemini Nano, descritto come il modello più efficiente per attività on-device e, più recentemente, ha lanciato Gemma, una serie di modelli open source leggeri progettati per applicazioni aziendali che possono funzionare direttamente su laptop o computer per sviluppatori.
Se l’intenzione delle grandi aziende tecnologiche è integrare sempre più l’Intelligenza Artificiale nella nostra quotidianità, gli Small Language Models rappresentano una soluzione promettente per raggiungere questo obiettivo.