Sapevamo che anche Apple, da tempo, era entrata nell’agone dei Large Language Model (LLM). La novità di grande rilevanza, tuttavia, è che questa volta la Mela ha reso disponibile un modello generativo open source capace di funzionare in locale su dispositivi quali iPhone e iPad. Si chiama OpenELM, acronimo di Open-source Efficient Language Models, ed è frutto degli sforzi di ricerca svolti dagli ingegneri di Cupertino nel campo dell’intelligenza artificiale.
Cos’è e come funziona il modello OpenELM: lavora in locale su iPhone e iPad
OpenELM è disponibile in quattro varianti: 270M (con 270 milioni di parametri), 450M (con 450 milioni di parametri), 1_1B (con 1,1 miliardi di parametri) e 3B (con 3 miliardi di parametri).
Nei modelli generativi, i parametri si riferiscono ai valori appresi durante il processo di addestramento del modello, poi utilizzati per generare output. Anche in OpenELM, i parametri rappresentano i pesi delle connessioni tra i neuroni nelle diverse parti del modello.
Pur essendo più piccolo rispetto a modelli come OpenAI GPT-4, Claude 3 di Anthropic e Meta Llama, OpenELM è progettato per evidenziare costi di esecuzione ridotti ed è ottimizzato per funzionare su smartphone e laptop.
Una caratteristica chiave di OpenELM è l’utilizzo della tecnica chiamata “layer-wise scaling“, che assegna efficientemente i parametri in tutto il modello modificando il numero di parametri in ciascuno strato dei Transformer.
La tecnica layer-wise scaling nel dettaglio
Nei modelli basati su Transformer, come appunto OpenELM, i componenti fondamentali utilizzano i cosiddetti parametri latenti: si tratta dei pesi appresi durante l’addestramento del modello, per calcolare le rappresentazioni dei token che compongono l’input.
La tecnica layer-wise scaling fa sì che la dimensionalità dei parametri latenti sia ridotta nei primi strati del modello, quelli più vicini all’input del testo, e aumentata man mano che ci si avvicina all’output. Ciò significa che i primi strati poggiano su un numero inferiore di parametri rispetto agli strati successivi, che invece possono utilizzarne di più per catturare informazioni più complesse.
Poiché i modelli hanno un numero finito di parametri, è importante allocare in modo efficiente questi parametri in modo che ciascuno strato del modello abbia un numero adeguato di parametri per svolgere il proprio compito. La riduzione della dimensionalità nei primi strati consente di risparmiare parametri, che possono essere assegnati a strati successivi dove sono più necessari per catturare informazioni complesse.
OpenELM, un modello leggero e preciso che ha richiesto un volume limitato di dati di addestramento
Secondo il team di ricerca Apple, quando addestrato solo su dataset pubblici, OpenELM ha ottenuto una maggiore precisione rispetto a modelli aperti con un numero simile di parametri. Ad esempio, OpenELM, con circa 1,1 miliardi di parametri, è risultato più preciso del 2,36% rispetto a OLMo, un modello con circa 1,2 miliardi di parametri, nonostante richieda la metà dei dati di addestramento di OLMo.
La fase di Instruction Tuning, che fornisce istruzioni al modello per eseguire una specifica attività e lo addestra appositamente per tale compito, ha consentito il miglioramento della precisione di OpenELM di circa l’1-2%.
Secondo Apple, inoltre, l’Instruction Tuning non solo ha accresciuto le capacità di comprensione del linguaggio da parte di OpenELM ma ha ottimizzato le performance nello svolgimento di attività molto specifiche. Inoltre, OpenELM può applicare metodi di fine-tuning efficienti in termini di parametri come Low-Rank Adaptation (LoRA) e Decomposed Low-Rank Adaptation.
Abbinando OpenELM con le librerie MLX (Machine Learning Accelerator) di Apple, gli utenti possono eseguire qualunque variante del modello in modo efficiente su iPhone e iPad.
Dove trovare OpenELM e come utilizzarlo
OpenELM, sviluppato come prodotto open source, è ospitato sulla piattaforma di IA online Hugging Face. Per massimizzare i possibili scenari di utilizzo di OpenELM, il team di ricerca Apple fornisce non soltanto i pesi del modello ma anche il codice di addestramento, i log generati nella prima fase, più checkpoint, il dataset pubblico utilizzato per addestrare il modello, i parametri dettagliati e il codice per effettuare la conversione in una libreria MLX.
La Mela non ha ancora rivelato come intenda utilizzare OpenELM in futuro ma è altamente probabile che possa essere integrato con iOS e iPadOS al fine di gestire al meglio tutti i compiti legati alla gestione del testo, come la composizione di email, sui dispositivi Apple.
Credit immagine in apertura: Copilot Designer.