LLM e SLM a confronto
Sia i modelli linguistici di grandi dimensioni (LLM) che quelli di piccole dimensioni (SLM) sono tipi di sistemi di intelligenza artificiale (IA) addestrati a interpretare il linguaggio umano, compresi i linguaggi di programmazione. In genere, le differenze principali sono la dimensione dei set di dati su cui sono addestrati, i diversi processi utilizzati per addestrarli e i costi e benefici di inizio per diversi scenari di utilizzo.
Come suggeriscono i loro nomi, sia gli LLM che gli SLM sono addestrati su set di dati composti da linguaggio, che li distingue dai modelli addestrati su immagini (come DALL·E) o video (come Sora). Alcuni esempi di set di dati basati sul linguaggio includono testi di pagine web, codice per sviluppatori, email e manuali.
Una delle applicazioni più note degli SLM e LLM è l'intelligenza artificiale generativa (IA gen), che può generare, come suggerisce il nome, risposte di contenuto spontanee a molte query diverse e imprevedibili. Gli LLM, in particolare, sono divenuti ben noti tra il grande pubblico grazie al modello fondativo GPT-4 e a ChatGPT, un chatbot di conversione addestrato su massicci set di dati che utilizza bilioni di parametri per rispondere a una vasta gamma di query umane. Sebbene l'IA gen sia ampiamente diffusa, esistono anche applicazioni non generative degli LLM e SLM, come l'intelligenza artificiale predittiva.
Gli LLM e gli SLM sono solitamente addestrati su set di dati diversi
L'ambito di applicazione di GPT-4/ChatGPT è un valido esempio che dimostra una differenza comune tra LLM e SLM: i set di dati su cui sono addestrati.
Di solito, gli LLM sono destinati a emulare l'intelligenza umana a un livello molto ampio e sono quindi addestrati su un'ampia gamma di set di dati di grandi dimensioni. Nel caso di GPT-4/ChatGPT, questi dati includono l'intero Internet pubblico fino a una certa data. È in questo modo che ChatGPT si è diffuso per il suo modo di interpretare e rispondere a una così vasta gamma di query da parte degli utenti generici. Tuttavia, questo è anche il motivo per cui a volte è stato oggetto di attenzione per le risposte potenzialmente errate, chiamate colloquialmente "allucinazioni": non dispone del fine tuning e dell'addestramento in ambiti specifici per poter rispondere con precisione a ogni query specifica di un settore o di un particolare dominio.
Gli SLM, invece, sono solitamente addestrati su set di dati più piccoli, su misura per specifici settori o aree di competenza. Ad esempio, un fornitore di servizi sanitari potrebbe utilizzare un chatbot basato su un SLM addestrato su set di dati medici per infondere conoscenze specifiche settoriali alla query di un utente senza esperienza sulla propria salute, arricchendo la qualità della domanda e della risposta. In questo caso, il chatbot basato su SLM non ha bisogno di essere addestrato su tutti i contenuti di Internet, inclusi ogni articolo di blog, romanzo o poesia esistenti, perché sarebbero irrilevanti per lo scenario di utilizzo del settore sanitario.
In breve, gli SLM generalmente sono di grande efficacia in ambiti specifici, ma rispetto agli LLM sono meno adatti nei campi della conoscenza generale e della comprensione globale del contesto.
Risorse da Red Hat
Processi di addestramento differenti per SLM e LLM
La dimensione e l'ambito di applicazione dei set di dati non sono gli unici fattori che distinguono SLM e LLM; di fatto, è possibile considerare un modello come un SLM anche se viene addestrato sugli stessi set di dati di un LLM, perché ogni modello è definito dai parametri di addestramento e dal processo complessivo, e non solo dal volume di dati utilizzato. Vale a dire che non è importante solo la quantità di dati utilizzata per l'addestramento del modello, ma anche la finalità dell'apprendimento da quei dati.
Parametri
Nel machine learning, i parametri rappresentano le variabili interne che determinano le previsioni che il modello effettuerà, ovvero le modalità con cui il modello deciderà di trattare il materiale non elaborato contenuto nel set di dati. Nel corso dell'addestramento, un modello di IA adatta costantemente i propri parametri per migliorare le previsioni, come sintonizzare una stazione radio in ricerca manuale. In questo processo complesso, oltre al numero totale dei parametri vanno considerati altri fattori, ad esempio il modo con cui i parametri sono stratificati nel modello, il peso che hanno gli uni rispetto agli altri e se vengono ottimizzati per riconoscere gli schemi o per la semplice memorizzazione.
Nel settore, non esiste una definizione univoca del numero di parametri che determina se un modello linguistico è un SLM o LLM. In linea di massima, gli SLM contengono molti meno parametri rispetto agli LLM perché gli scenari di utilizzo interessano principalmente ambiti di conoscenze specifiche. L'LLM di GPT-4/ChatGPT, ad esempio, è stato addestrato con migliaia di miliardi di parametri, per renderlo in grado di rispondere a qualsiasi input dell'utente. In ogni caso, GPT-4 è un esempio di LLM di dimensioni eccezionalmente grandi. Esistono numerosi esempi di LLM di dimensioni inferiori (anche se non sono SLM), come i modelli Granite open source di IBM, la cui dimensione va dai 3 ai 35 miliardi di parametri. In genere, gli SLM hanno meno parametri (a volte sempre nell'ordine dei miliardi), perché le applicazioni previste sono più limitate.
Fine tuning
Un altro aspetto dell'addestramento dei modelli che può differenziare SLM e LLM è il fine tuning, ovvero il processo di adattamento e aggiornamento di un modello preaddestrato con i nuovi dati, il cui obiettivo è quello di personalizzare il modello per uno scenario di utilizzo specifico. Ciò implica l'aggiunta di nuovi set di dati per verificare se i parametri esistenti possono ancora produrre risultati accettabili in un nuovo contesto. Maggiore è il numero dei parametri contenuti in un modello, più complesso ed esigente in termini di tempo e risorse sarà il fine tuning; la gestione degli LLM è quindi più laboriosa di quella degli SLM.
Oltre che nei parametri e nel fine tuning, i processi di addestramento di SLM e LLM differiscono anche per tipologia e complessità. È necessario un elevato livello di esperienza in data science per comprendere i diversi tipi di addestramento dei modelli, come ad esempio i "meccanismi di autoattenzione" o gli "schemi encoder-decoder". Sostanzialmente, l'addestramento di SLM e LLM differisce nel fatto che per gli SLM si utilizzano approcci con un consumo più efficiente delle risorse e incentrati su scenari di utilizzo specifici.
Bias
Sebbene ogni modello di IA venga sottoposto a una qualche forma di fine tuning, l'ambito della maggior parte degli LLM rende impossibile evitare qualsiasi inferenza. Inoltre, gli LLM sono addestrati con set di dati apertamente accessibili, come Internet, mentre per gli SLM si utilizzano in genere set di dati specifici del settore o della singola azienda. Questo approccio può introdurre bias, o pregiudizi, ovvero rappresentazioni parziali o non accurate di alcuni gruppi o concetti o inesattezze relative ai fatti. Trattandosi di modelli linguistici, LLM e SLM possono acquisire anche i pregiudizi di linguaggio correlati a dialetti, posizioni geografiche e grammatica.
Qualsiasi modello linguistico può ereditare pregiudizi ma, in considerazione della loro dimensione, le possibilità di perpetuare distorsioni e bias sono di gran lunga superiori negli LLM. È invece più semplice mitigare i pregiudizi che inevitabilmente contengono anche gli SLM, perché sono addestrati con set di dati più piccoli.
LLM e SLM richiedono risorse differenti
Qualunque sia lo scenario di utilizzo in azienda, il processo di addestramento dei modelli è caratterizzato dall'utilizzo elevato di risorse, soprattutto nel caso degli LLM. Per GPT-4, 25.000 GPU NVIDIA A100 sono state eseguite in modo simultaneo e continuativo per 90-100 giorni. Ricordiamo che nella gamma degli LLM, GPT-4 si colloca tra i più grandi. Altri LLM, come Granite, non esigono così tante risorse. Anche l'addestramento di un SLM richiede risorse di elaborazione significative, benché in misura nettamente inferiore a quelle richieste da un LLM.
Requisiti in termini di risorse per l'addestramento e per l'inferenza
È importante anche notare la differenza tra addestramento e inferenza dei modelli. L'addestramento, come descritto in precedenza, è la prima fase per lo sviluppo di un modello di IA. L'inferenza è il processo che esegue un modello di IA addestrato per elaborare previsioni a partire da nuovi dati. Quando un utente pone una domanda a ChatGPT, ad esempio, ChatGPT restituisce all'utente una previsione. Il processo che genera tale previsione è un'inferenza.
Alcuni LLM preaddestrati, come quelli della famiglia Granite, possono generare inferenze utilizzando le risorse di una singola workstation con capacità elevate (i modelli Granite possono occupare una GPU2 V100-32GB), sebbene molti richiedano più unità di elaborazione in parallelo per generare i dati. Più alto è il numero di utenti che accedono simultaneamente a un LLM e più lenta sarà l'esecuzione delle inferenze da parte del modello. Gli SLM invece sono in genere progettati per generare inferenze utilizzando le risorse di uno smartphone o di altri dispositivi mobili.
Costi e benefici di LLM e SLM a confronto
Non esiste un modello migliore di un altro, ma esiste il modello più appropriato ai piani, alle risorse, all'esperienza, alle tempistiche e ad altri fattori specifici di un'azienda. È importante anche stabilire se il proprio scenario di utilizzo richiede l'addestramento di un modello da zero o il fine tuning di un modello preaddestrato. Alcune considerazioni utili su LLM e SLM includono:
Costo
In generale, le risorse richieste dagli LLM per l'addestramento, il fine tuning e le inferenze sono più elevate, ma va ricordato che l'addestramento non è un investimento così frequente. Le risorse di elaborazione sono necessarie solo durante l'addestramento del modello, un'attività intermittente e non continua. L'esecuzione delle inferenze è invece un costo continuo che può aumentare in funzione del numero di utenti che lo utilizzano. Nella maggior parte dei casi, serviranno risorse di cloud computing su vasta scala, significativi investimenti in risorse on premise, o entrambi.
Gli SLM sono spesso ritenuti più adatti agli scenari a bassa latenza, come l'edge computing, perché possono funzionare con le sole risorse disponibili in un singolo dispositivo mobile, senza richiedere una connessione stabile e continua a risorse più significative.
Esperienza
Alcuni tra i più diffusi LLM preaddestrati, come Granite, Llama e GPT-4, offrono un'opzione di tipo "plug-and-play" che consente alle organizzazioni di introdurre l'IA. Sono adatti a chi intende iniziare a fare pratica con l'IA perché non devono essere progettati e addestrati da zero dai data scientist. Per il fine tuning ottimale dei set di dati di ambiti molto specifici degli SLM è invece necessaria un'esperienza specializzata sia in data science che nei domini delle competenze settoriali.
Sicurezza
Uno dei potenziali rischi degli LLM è l'esposizione di dati sensibili tramite le interfacce di programmazione delle applicazioni (API). Il fine tuning di un LLM con i dati di un'organizzazione richiede molta attenzione alle policy aziendali e di conformità. Offrendo un livello di controllo più alto, negli SLM il rischio di perdita di dati è inferiore.
Perché scegliere Red Hat?
Red Hat AI offre funzionalità di IA generativa e predittiva, insieme al supporto MLOps, per creare soluzioni di IA scalabili e affidabili negli ambienti di cloud ibrido. Favorisce l'adozione dell'IA, alleviando le difficoltà della distribuzione delle soluzioni di IA, e garantisce sviluppo e distribuzione flessibili, ovunque si trovino i dati.
Insieme all'infrastruttura di cloud ibrido e aperto di Red Hat, Red Hat AI permette di creare soluzioni personalizzate, di gestire modelli e cicli di vita dell'applicazione, di assecondare la necessità dell' accelerazione hardware, e di distribuire, eseguire e gestire carichi di lavoro critici da una sola piattaforma.
Guida introduttiva al machine learning e all'IA
Se stai muovendo i primi passi con i modelli di ML e AI, puoi provare InstructLab, una soluzione realizzata dalla community per l'addestramento dei modelli LLM che ti permette di acquisire pratica e contribuire direttamente allo sviluppo dei tuoi modelli di IA in modo gratuito.
Accesso facilitato ai modelli della famiglia Granite di IBM
Se vuoi passare alla fase successiva, Red Hat® Enterprise Linux® AI è una piattaforma per modelli fondativi concepita per sviluppare, testare ed eseguire gli LLM del portfolio Granite per applicazioni aziendali. Granite è una famiglia di modelli di IA con licenza open source completamente supportati e tutelati da Red Hat. L'approccio open source stimola l'innovazione dell'IA generativa garantendo al tempo stesso affidabilità e sicurezza.
Scalabilità per l'azienda
Red Hat® OpenShift® AI è una piattaforma in grado di supportare la scalabilità dei modelli negli ambienti cloud, che permette di addestrare, eseguire il fine tuning dei prompt, ottimizzare e gestire i modelli di IA per adeguarli a scenari di utilizzo e dati specifici.
Nel complesso, questi prodotti forniscono una soluzione unificata che consente la collaborazione tra data scientist e sviluppatori, in modo che i team possano far avanzare rapidamente i modelli dalla fase di sperimentazione agli ambienti di produzione.
Ecosistema di partner
Inoltre, le integrazioni dei partner di Red Hat danno accesso a un ecosistema in crescita di strumenti di IA affidabili e compatibili con piattaforme open source.
Il blog ufficiale di Red Hat
Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.