Meta ha annunciato di avere reso disponibile in modalità open source la nuova generazione del modello linguistico Meta Llama 3 e ha condiviso importanti aggiornamenti che riguardano Meta AI, uno dei principali assistenti AI al mondo, che dopo il lancio negli Stati Uniti ora sarà disponibile in inglese anche in nuovi Paesi, tra cui Australia, Canada, Ghana, Giamaica, Malawi, Nuova Zelanda, Nigeria, Pakistan, Singapore, Sudafrica, Uganda, Zambia e Zimbabwe. Lo ha annunciato direttamente Mark Zuckerberg attraverso Facebook.
Meta Llama 3
Questa versione presenta modelli linguistici pre-addestrati e ottimizzati per seguire istruzioni con 8B e 70B parametri, in grado di supportare un’ampia gamma di applicazioni d’uso.
Llama 3 ha dimostrato di essere in grado di fornire prestazioni all’avanguardia su un’ampia gamma di benchmark di settore e presenta nuove capacità, tra cui un miglior ragionamento.
In linea con l’approccio open source, Meta vuole mettere Llama 3 a disposizione della collettività.
I modelli di Llama 3 saranno presto disponibili su AWS, Databricks, Vertex AI di Google Cloud, Hugging Face, Kaggle, IBM WatsonX, Microsoft Azure, NVIDIA e Snowflake, con il supporto delle piattaforme hardware offerte da AMD, AWS, Dell, Intel, NVIDIA e Qualcomm.
Meta si è impegnata a sviluppare Llama 3 in modo responsabile e sta offrendo diverse risorse per aiutare le persone a utilizzarlo in modo altrettanto responsabile, tra cui nuovi strumenti di protezione e sicurezza con Llama Guard 2, Code Shield e CyberSec Eval 2.
Nei prossimi mesi, Meta prevede di introdurre nuove funzionalità, finestre contestuali più lunghe, ulteriori dimensioni del modello e prestazioni più elevate e ha anche avviato l’addestramento di Llama 3 su un modello con 400B parametri.
Le novità di Meta AI
Meta AI è l’assistente virtuale, disponibile su WhatsApp, Instagram, Messenger, Facebook, sugli occhiali smart Ray-Ban Meta e presto anche su Quest 3.
Meta AI è un assistente personale che può aiutare a rispondere alle domande e a svolgere attività in modi più creativi. Può aiutare, ad esempio, a risolvere un dibattito in una chat di gruppo, a creare l’immagine giusta per esprimere uno stato d’animo o a organizzare un viaggio.
![](https://img.ai4business.it/wp-content/uploads/2024/04/19120232/image-19.png)
Le novità di Meta AI:
- Cerca o chiedi a Meta AI: ora è possibile porre una domanda a Meta AI direttamente dalle funzioni di ricerca di Facebook, Instagram, WhatsApp e Messenger. Basta iniziare a digitare e Meta AI fornirà suggerimenti oppure si potrà digitare una domanda per esteso. Le risposte riguardanti sport, intrattenimento ed eventi attuali sono fornite dai principali motori di ricerca.
- Versione web: è disponibile una versione web dell’assistente AI tramite meta.ai, perfetto per l’assistenza via e-mail, le ricerche e tutto ciò che si fa al computer.
- Disponibile in più paesi: Meta AI è attualmente disponibile in inglese negli Stati Uniti e con l’aggiornamento di oggi è disponibile in nuovi Paesi, tra cui Australia, Canada, Ghana, Giamaica, Malawi, Nuova Zelanda, Nigeria, Pakistan, Singapore, Sudafrica, Uganda, Zambia e Zimbabwe, e altri ancora sono in arrivo.
Gli obiettivi di Llama 3
I modelli basati sul testo appena rilasciati sono i primi della collezione di modelli di Llama 3. L’obiettivo nel prossimo futuro è quello di aumentare il numero di modelli che verranno rilasciati e di rendere Llama 3 multilingue e multimodale, di avere un contesto più lungo e di continuare a migliorare le prestazioni complessive delle funzionalità fondamentali di LLM, come il ragionamento e la codifica.
Prestazioni all’avanguardia
I nuovi modelli Llama 3 a 8B e 70B parametri rappresentano un grande balzo in avanti rispetto a Llama 2 e stabiliscono un nuovo stato dell’arte per i modelli LLM a queste scale. Grazie ai miglioramenti apportati al preaddestramento e al post-addestramento, i nostri modelli preaddestrati e perfezionati con le istruzioni sono i migliori modelli esistenti oggi alla scala dei parametri 8B e 70B. I miglioramenti apportati alle procedure di post-training hanno ridotto in modo sostanziale il tasso di falsi rifiuti, migliorato l’allineamento e aumentato la diversità delle risposte dei modelli. Meta ha anche migliorato notevolmente capacità come il ragionamento, la generazione di codice e il seguire le istruzioni, rendendo Llama 3 più governabile.
![Meta Llama3](https://img.ai4business.it/wp-content/uploads/2024/04/19102805/image-18-1920x1080.jpg)
Nello sviluppo di Llama 3 sono state esaminate le prestazioni del modello su benchmark standard e ottimizzato le prestazioni in scenari reali. A tal fine è stato sviluppato un nuovo set di valutazione umana di alta qualità. Questo set di valutazione contiene 1.800 domande che coprono 12 casi d’uso chiave: chiedere consigli, fare brainstorming, classificare, rispondere a domande chiuse, codificare, scrivere in modo creativo, estrarre, entrare in un personaggio/persona, rispondere a domande aperte, ragionare, riscrivere e riassumere.
Il grafico che segue mostra i risultati aggregati delle valutazioni umane di queste categorie e di queste richieste rispetto a Claude Sonnet, Mistral Medium e GPT-3.5.
![](https://img.ai4business.it/wp-content/uploads/2024/04/19103459/image-18-1-1722x1080.jpg)
Le classifiche di preferenza degli annotatori umani, basate su questo set di valutazione, evidenziano le ottime prestazioni del modello 70B per la sequenzialità delle istruzioni rispetto a modelli concorrenti di dimensioni comparabili in scenari reali.
Il modello preaddestrato stabilisce anche un nuovo stato dell’arte per i modelli LLM a queste dimensioni.
![](https://img.ai4business.it/wp-content/uploads/2024/04/19103652/image-18-2-1920x1080.jpg)
Meta ha adottato questa filosofia di progettazione per tutto il progetto Llama 3, concentrandosi su quattro ingredienti chiave: l’architettura del modello, i dati di pre-training, la scalabilità del pre-training e la messa a punto delle istruzioni.
Architettura del modello
In linea con la filosofia di progettazione, in Llama 3 si è optato per un’architettura di trasformatori relativamente standard per il solo decodificatore. Rispetto a Llama 2, sono stati apportato diversi miglioramenti fondamentali. Llama 3 utilizza un tokenizer con un vocabolario di 128K tokens che codifica il linguaggio in modo molto più efficiente, il che porta a un sostanziale miglioramento delle prestazioni del modello.
Per migliorare l’efficienza dell’inferenza dei modelli di Llama 3 è stata adottata l’attenzione di query raggruppate (GQA) sia per le dimensioni 8B che 70B. I modelli sono stati addestrati su sequenze di 8.192 token, utilizzando una maschera per garantire che l’auto-attenzione non attraversi i confini dei documenti.
Dati di addestramento
Per addestrare il miglior modello linguistico, è fondamentale la cura di un set di dati di addestramento ampio e di alta qualità. In linea con i principi di progettazione, si è investito molto nei dati di preaddestramento. Llama 3 è stato preaddestrato su oltre 15T di token, tutti raccolti da fonti pubbliche. Il set di dati per l’addestramento è sette volte più grande di quello utilizzato per Llama 2 e comprende un numero di codice quattro volte superiore. Per prepararsi ai prossimi casi d’uso multilingue, oltre il 5% del dataset di pre-addestramento di Llama 3 è costituito da dati non inglesi di alta qualità che coprono oltre 30 lingue.
Per garantire che Llama 3 sia addestrato su dati della massima qualità è stata sviluppata una serie di pipeline di filtraggio dei dati. Queste pipeline includono l’uso di filtri euristici, filtri NSFW, approcci di deduplicazione semantica e classificatori di testo per prevedere la qualità dei dati. I progettisti hanno scoperto che le precedenti generazioni di Llama sono sorprendentemente brave a identificare i dati di alta qualità, quindi hanno usato Llama 2 per generare i dati di addestramento per i classificatori di qualità del testo che alimentano Llama 3. Hanno anche eseguito numerosi esperimenti per valutare la qualità dei dati e per valutare il modo migliore di mescolare i dati provenienti da fonti diverse nel set di dati di preaddestramento finale. Questi esperimenti hanno permesso di selezionare un mix di dati che garantisce a Llama 3 buone prestazioni in tutti i casi d’uso, tra cui le domande di curiosità, le materie STEM, il coding, le conoscenze storiche, ecc.
Scalare il preaddestramento
Per sfruttare efficacemente i dati di preformazione nei modelli di Llama 3, i progettisti si sono impegnati per aumentare il pretraining. In particolare, hanno sviluppato una serie di leggi di scala dettagliate per le valutazioni di benchmark a valle. Queste leggi di scalatura permettono di selezionare un mix di dati ottimale e di prendere decisioni informate su come utilizzare al meglio il calcolo di addestramento.
È importante notare che le leggi di scala permettono di prevedere le prestazioni dei nostri modelli più grandi su compiti chiave (per esempio, la generazione di codice valutata nel benchmark HumanEval – vedi sopra) prima di addestrare effettivamente i modelli. Questo aiuta a garantire prestazioni elevate dei modelli finali in una varietà di casi d’uso e di funzionalità.
Durante lo sviluppo di Llama 3 sono state fatte diverse nuove osservazioni sul comportamento in scala. Ad esempio, mentre la quantità ottimale di calcolo per l’addestramento di un modello a 8B parametri corrisponde a ~200B token, si è scoperto che le prestazioni del modello continuano a migliorare anche dopo che il modello è stato addestrato su due ordini di grandezza di dati in più. Sia il modello a 8B che quello a 70B parametri hanno continuato a migliorare in modo logico dopo essere stati addestrati fino a 15T di token. Modelli più grandi possono eguagliare le prestazioni di questi modelli più piccoli con meno calcoli per l’addestramento, ma i modelli più piccoli sono generalmente preferiti perché sono molto più efficienti durante l’inferenza.
Per addestrare i modelli Llama 3 più grandi sono stati combinati tre tipi di parallelizzazione:
- parallelizzazione dei dati
- parallelizzazione del modello
- parallelizzazione della pipeline.
L’implementazione più efficiente raggiunge un utilizzo del calcolo di oltre 400 TFLOPS per GPU quando viene addestrato su 16K GPU contemporaneamente. L’addestramento è stato eseguito su due cluster di 24.000 GPU costruiti su misura. Per massimizzare i tempi di attività delle GPU, abbiamo sviluppato un nuovo stack di addestramento avanzato che automatizza il rilevamento, la gestione e la manutenzione degli errori. Migliorata anche l’affidabilità dell’hardware e i meccanismi di rilevamento della corruzione silenziosa dei dati e sviluppato nuovi sistemi di archiviazione scalabili che riducono i costi di checkpoint e rollback. Questi miglioramenti hanno portato a un tempo di addestramento effettivo complessivo di oltre il 95%. Insieme, questi miglioramenti è aumentata l’efficienza della formazione di Llama 3 di circa tre volte rispetto a Llama 2
Messa a punto delle istruzioni
Per sfruttare appieno il potenziale dei modelli preaddestrati nei casi d’uso delle chat, è stato innovato anche l’approccio alla messa a punto delle istruzioni. L’approccio al post-training è una combinazione di fine-tuning supervisionato (SFT), campionamento di rifiuto, ottimizzazione delle politiche prossimali (PPO) e ottimizzazione diretta delle politiche (DPO). La qualità dei suggerimenti utilizzati in SFT e delle classifiche di preferenza utilizzate in PPO e DPO ha un’influenza notevole sulle prestazioni dei modelli allineati. Alcuni dei maggiori miglioramenti nella qualità dei modelli sono stati ottenuti grazie all’attenta cura di questi dati e all’esecuzione di più cicli di assicurazione della qualità sulle annotazioni fornite da annotatori umani.
Anche l’apprendimento dalle classifiche di preferenza tramite PPO e DPO ha migliorato notevolmente le prestazioni di Llama 3 nei compiti di ragionamento e codifica. Si è scoperto che se si pone a un modello una domanda di ragionamento a cui fatica a rispondere, a volte il modello produrrà la traccia di ragionamento giusta: il modello sa come produrre la risposta giusta, ma non sa come selezionarla. L’addestramento sulle classifiche di preferenza permette al modello di imparare a selezionarla.
Costruire con Llama 3
La visione di Meta è quella di consentire agli sviluppatori di personalizzare Llama 3 per supportare casi d’uso rilevanti e rendere più facile l’adozione di best practice e il miglioramento dell’ecosistema aperto. Con questa versione vengono forniti nuovi strumenti per la fiducia e la sicurezza, tra cui componenti aggiornati con Llama Guard 2 e Cybersec Eval 2, e l’introduzione di Code Shield, un guardrail a tempo di inferenza per filtrare il codice insicuro prodotto dagli LLM.
Meta ha anche co-sviluppato Llama 3 con torchtune, la nuova libreria nativa di PyTorch per creare, perfezionare e sperimentare facilmente gli LLM. torchtune fornisce ricette di addestramento efficienti dal punto di vista della memoria e modificabili, scritte interamente in PyTorch. La libreria è integrata con piattaforme popolari come Hugging Face, Weights & Biases ed EleutherAI e supporta anche Executorch per consentire l’esecuzione di un’inferenza efficiente su un’ampia gamma di dispositivi mobili ed edge.
Per tutto ciò che riguarda il prompt engineering e l’utilizzo di Llama 3 con LangChain, una guida completa per iniziare porta dal download di Llama 3 fino all’implementazione su scala dell’applicazione di AI generativa.
Un approccio alla responsabilità a livello di sistema
Meta ha progettato i modelli di Llama 3 per essere il più possibile utili, garantendo al contempo un approccio leader del settore alla loro distribuzione responsabile. Per raggiungere questo obiettivo, ha adottato un nuovo approccio a livello di sistema per lo sviluppo e la distribuzione responsabile di Llama. I modelli Llama sono parte di un sistema più ampio che mette lo sviluppatore al posto di guida e saranno un elemento fondamentale di un sistema che gli sviluppatori progetteranno tenendo conto dei loro obiettivi finali.
![Meta Llama 3](https://img.ai4business.it/wp-content/uploads/2024/04/19105019/image-18.png)
La messa a punto delle istruzioni svolge anche un ruolo importante nel garantire la sicurezza dei modelli. I modelli perfezionati con le istruzioni sono stati sottoposti a red-teaming (test di sicurezza) attraverso iniziative interne ed esterne. L’approccio di red-teaming si avvale di esperti umani e di metodi di automazione per generare richieste avversarie che cercano di suscitare risposte problematiche. Tutti questi sforzi sono iterativi e vengono utilizzati per informare la messa a punto della sicurezza dei modelli che vengono rilasciati.
I modelli di Llama Guard sono destinati a costituire una base per la sicurezza immediata e di risposta e possono essere facilmente perfezionati per creare una nuova tassonomia a seconda delle esigenze applicative. Come punto di partenza, il nuovo Llama Guard 2 utilizza la tassonomia MLCommons, annunciata di recente, nel tentativo di sostenere l’emergere di standard industriali in questo importante settore. Inoltre, CyberSecEval 2 amplia il suo predecessore aggiungendo misure della propensione di un LLM a consentire l’abuso del suo interprete di codice, delle capacità offensive di cybersecurity e della suscettibilità agli attacchi di tipo prompt injection (per saperne di più, consultate il nostro documento tecnico).
Infine, Meta sta introducendo Code Shield, che aggiunge il supporto per il filtraggio in tempo di inferenza del codice insicuro prodotto dagli LLM. Ciò consente di ridurre i rischi legati ai suggerimenti di codice insicuro, alla prevenzione degli abusi dell’interprete di codice e all’esecuzione sicura dei comandi.
Meta sta anche aggiornando la Guida all’uso responsabile (RUG) che fornisce una guida completa allo sviluppo responsabile con gli LLM. Come indicato nella RUG, si raccomanda che tutti gli input e gli output siano controllati e filtrati in base alle linee guida sui contenuti appropriate all’applicazione. Inoltre, molti fornitori di servizi cloud offrono API di moderazione dei contenuti e altri strumenti per una distribuzione responsabile, e si incoraggiano gli sviluppatori a considerare anche queste opzioni.
Distribuzione di Llama 3 su scala
Llama 3 sarà presto disponibile su tutte le principali piattaforme, compresi i fornitori di cloud, i fornitori di API di modello e molto altro. Llama 3 sarà ovunque.
I benchmark dimostrano che il tokenizer offre una maggiore efficienza dei token, producendo fino al 15% di token in meno rispetto a Llama 2. Inoltre, il Group Query Attention (GQA) è stato aggiunto anche a Llama 3 8B. Di conseguenza, nonostante il modello abbia 1B parametri in più rispetto a Llama 2 7B, la migliore efficienza del tokenizer e la GQA contribuiscono a mantenere l’efficienza dell’inferenza alla pari con Llama 2 7B.
Per esempi su come sfruttare tutte queste capacità, si può consultare Llama Recipes, che contiene tutto il codice open source che può essere utilizzato per qualsiasi cosa, dalla messa a punto all’implementazione, fino alla valutazione del modello.
Quali sono le prossime novità di Llama 3?
I modelli Llama 3 8B e 70B segnano l’inizio di ciò che Meta intende rilasciare per Llama 3.
Nei prossimi mesi saranno rilasciati diversi modelli con nuove funzionalità, tra cui la multimodalità, la capacità di conversare in più lingue, una finestra di contesto molto più lunga e capacità generali più forti. Una volta terminato l’addestramento di Llama 3, sarà pubblicato anche un documento di ricerca dettagliato.
Ecco alcune istantanee dell’andamento del modello LLM più grande.
Si noti che questi dati si basano su un primo checkpoint di Llama 3 ancora in fase di addestramento e che queste funzionalità non sono supportate dai modelli appena rilasciati.
![meta llama 3](https://img.ai4business.it/wp-content/uploads/2024/04/19105431/image-19-1920x1080.jpg)
Meta AI è costruito con la tecnologia Llama 3 ed è disponibile in più Paesi attraverso le app. Si può utilizzare Meta AI su Facebook, Instagram, WhatsApp, Messenger e sul web per fare cose, imparare, creare e connettersi con le cose che interessano. Per saperne di più sull’esperienza di Meta AI, visitate il sito web di Llama 3, anche per scaricare i modelli e consultare la Guida introduttiva per l’elenco aggiornato di tutte le piattaforme disponibili.