Intelligenza Artificiale
Tutto quello che devi sapere su Llama 3 | Il modello open source più potente mai realizzato | Concetti per l'utilizzo
Meta è stato recentemente rilasciato lama 3, la prossima generazione del suo modello LLM (Large Language Model) open source all'avanguardia. Basandosi sulle basi gettate dal suo predecessore, Llama 3 mira a migliorare le capacità che hanno posizionato Llama 2 come un significativo concorrente open source di ChatGPT, come delineato nella recensione completa nell'articolo Llama 2: un tuffo nel profondo dello sfidante open source di ChatGPT.
In questo articolo discuteremo i concetti fondamentali alla base di Llama 3, esploreremo la sua architettura innovativa e il processo di formazione e forniremo una guida pratica su come accedere, utilizzare e implementare questo modello rivoluzionario in modo responsabile. Che tu sia un ricercatore, uno sviluppatore o un appassionato di intelligenza artificiale, questo post ti fornirà le conoscenze e le risorse necessarie per sfruttare la potenza di Llama 3 per i tuoi progetti e applicazioni.
L'evoluzione del lama: dal lama 2 al lama 3
Il CEO di Meta, Mark Zuckerberg, ha annunciato il debutto di Llama 3, l'ultimo modello di AI sviluppato da Meta AI. Questo modello all'avanguardia, ora open source, è destinato a migliorare i vari prodotti Meta, tra cui Messenger e Instagram. Zuckerberg ha sottolineato che Llama 3 posiziona Meta AI come il più avanzato assistente AI disponibile gratuitamente.
Prima di parlare delle specifiche di Llama 3, rivisitiamo brevemente il suo predecessore, Llama 2. Introdotto nel 2022, Llama 2 ha rappresentato una pietra miliare significativa nel panorama LLM open source, offrendo un modello potente ed efficiente che potrebbe essere eseguito su hardware consumer .
Tuttavia, sebbene Llama 2 sia stato un risultato notevole, aveva i suoi limiti. Gli utenti hanno segnalato problemi relativi a falsi rifiuti (il modello che si rifiuta di rispondere a suggerimenti benigni), utilità limitata e margini di miglioramento in aree come il ragionamento e la generazione di codice.
Ecco Llama 3: la risposta di Meta a queste sfide e il feedback della community. Con Llama 3, Meta si è posta l'obiettivo di creare i migliori modelli open source alla pari dei principali modelli proprietari disponibili oggi, dando priorità allo sviluppo responsabile e alle pratiche di implementazione.
Lama 3: Architettura e Formazione
Una delle innovazioni chiave di Llama 3 è il suo tokenizzatore, che presenta un vocabolario significativamente ampliato di Token 128,256 (rispetto a 32,000 in Lama 2). Questo vocabolario più ampio consente una codifica più efficiente del testo, sia per l'input che per l'output, portando potenzialmente a un multilinguismo più forte e miglioramenti generali delle prestazioni.
Llama 3 incorpora anche Attenzione alle query raggruppate (GQA), una tecnica di rappresentazione efficiente che migliora la scalabilità e aiuta il modello a gestire contesti più lunghi in modo più efficace. IL 8B la versione di Llama 3 utilizza GQA, mentre entrambi i file 8B ed 70B i modelli possono elaborare sequenze fino a Token 8,192.
Dati di training e ridimensionamento
I dati di allenamento utilizzati per Llama 3 sono un fattore cruciale per il suo miglioramento delle prestazioni. Meta ha curato un enorme set di dati di oltre 15 miliardi token provenienti da fonti online disponibili al pubblico, sette volte più grandi del set di dati utilizzato per Llama 2. Questo set di dati include anche una porzione significativa (oltre il 5%) di dati non inglesi di alta qualità, che coprono più di Lingue 30, in preparazione alle future applicazioni multilingue.
Per garantire la qualità dei dati, Meta ha utilizzato tecniche di filtraggio avanzate, tra cui filtri euristici, filtri NSFW, deduplicazione semantica e classificatori di testo addestrati su Llama 2 per prevedere la qualità dei dati. Il team ha inoltre condotto esperimenti approfonditi per determinare il mix ottimale di origini dati per la preformazione, garantendo che Llama 3 funzioni bene in un'ampia gamma di casi d'uso, tra cui curiosità, STEM, codifica e conoscenza storica.
L'incremento del pre-addestramento è stato un altro aspetto critico dello sviluppo di Llama 3. Meta ha sviluppato leggi di scala che hanno permesso loro di prevedere le prestazioni dei suoi modelli più grandi su compiti chiave, come la generazione di codice, prima di addestrarli effettivamente. Ciò ha influenzato le decisioni sul mix di dati e sull'allocazione del calcolo, portando in definitiva a una formazione più efficiente ed efficace.
I modelli più grandi di Llama 3 sono stati addestrati su due cluster personalizzati da 24,000 GPU, sfruttando una combinazione di tecniche di parallelizzazione dei dati, parallelizzazione dei modelli e parallelizzazione della pipeline. Lo stack di formazione avanzata di Meta ha automatizzato il rilevamento, la gestione e la manutenzione degli errori, massimizzando il tempo di attività della GPU e aumentando l'efficienza della formazione di circa tre volte rispetto a Llama 2.
Istruzioni Messa a punto e prestazioni
Per sfruttare appieno il potenziale di Llama 3 per le applicazioni di chat e dialogo, Meta ha innovato il suo approccio alla messa a punto delle istruzioni. Il suo metodo combina messa a punto supervisionata (SFT), campionamento del rifiuto, ottimizzazione della politica prossimale (PPO), e ottimizzazione delle preferenze dirette (DPO).
La qualità dei suggerimenti utilizzati in SFT e le classifiche di preferenza utilizzate in PPO e DPO hanno svolto un ruolo cruciale nelle prestazioni dei modelli allineati. Il team di Meta ha curato attentamente questi dati e ha eseguito più cicli di controllo della qualità sulle annotazioni fornite da annotatori umani.
La formazione sulle classifiche delle preferenze tramite PPO e DPO ha inoltre migliorato significativamente le prestazioni di Llama 3 nei compiti di ragionamento e codifica. Meta ha scoperto che anche quando un modello fatica a rispondere direttamente a una domanda di ragionamento, può comunque produrre la traccia di ragionamento corretta. La formazione sulle classifiche delle preferenze ha consentito al modello di imparare come selezionare la risposta corretta da queste tracce.
I risultati parlano da soli: Llama 3 supera molti modelli di chat open source disponibili rispetto ai benchmark comuni del settore, stabilendo nuove prestazioni all'avanguardia per LLM sulle scale di parametri 8B e 70B.
Considerazioni sullo sviluppo responsabile e sulla sicurezza
Pur perseguendo prestazioni all'avanguardia, Meta ha anche dato priorità a pratiche di sviluppo e implementazione responsabili per Llama 3. L'azienda ha adottato un approccio a livello di sistema, immaginando i modelli Llama 3 come parte di un ecosistema più ampio che mette gli sviluppatori al posto di guida, consentendo loro di progettare e personalizzare i modelli per i loro casi d'uso specifici e requisiti di sicurezza.
Meta ha condotto approfonditi esercizi di red-teaming, eseguito valutazioni contraddittorie e implementato tecniche di mitigazione della sicurezza per ridurre i rischi residui nei suoi modelli ottimizzati per le istruzioni. Tuttavia, la società riconosce che probabilmente rimarranno rischi residui e raccomanda agli sviluppatori di valutare tali rischi nel contesto dei loro casi d’uso specifici.
Per supportare un'implementazione responsabile, Meta ha aggiornato la sua Guida all'uso responsabile, fornendo una risorsa completa agli sviluppatori per implementare le migliori pratiche di sicurezza a livello di modello e di sistema per le loro applicazioni. La guida tratta argomenti come la moderazione dei contenuti, la valutazione del rischio e l'uso di strumenti di sicurezza come Llama Guard 2 e Code Shield.
Llama Guard 2, basato sulla tassonomia MLCommons, è progettato per classificare input (prompt) e risposte LLM, rilevando contenuti che potrebbero essere considerati non sicuri o dannosi. CyberSecEval 2 espande il suo predecessore aggiungendo misure per prevenire l'abuso dell'interprete del codice del modello, capacità offensive di sicurezza informatica e suscettibilità agli attacchi di iniezione tempestiva.
Code Shield, una nuova introduzione con Llama 3, aggiunge il filtraggio in tempo di inferenza del codice non sicuro prodotto da LLM, mitigando i rischi associati ai suggerimenti di codice non sicuro, all'abuso dell'interprete del codice e all'esecuzione sicura dei comandi.
Accesso e utilizzo di Llama 3
Dopo il lancio di Llama 3 di Meta AI, diversi strumenti open source sono stati resi disponibili per la distribuzione locale su vari sistemi operativi, tra cui Mac, Windows e Linux. Questa sezione descrive in dettaglio tre strumenti importanti: Ollama, Open WebUI e LM Studio, ciascuno dei quali offre funzionalità uniche per sfruttare le capacità di Llama 3 sui dispositivi personali.
Ollama: Disponibile per Mac, Linux e Windows, Ollama semplifica il funzionamento di Llama 3 e di altri modelli linguistici di grandi dimensioni sui personal computer, anche quelli con hardware meno robusto. Include un gestore di pacchetti per una facile gestione dei modelli e supporta comandi su più piattaforme per il download e l'esecuzione dei modelli.
Apri l'interfaccia utente Web con Docker: questo strumento fornisce un'interfaccia intuitiva e docker-interfaccia basata su compatibile con Mac, Linux e Windows. Si integra perfettamente con i modelli del registro Ollama, consentendo agli utenti di distribuire e interagire con modelli come Llama 3 all'interno di un'interfaccia web locale.
Studio LM: targeting per utenti Mac, Linux e Windows, Studio LM supporta una gamma di modelli ed è basato sul progetto llama.cpp. Fornisce un'interfaccia chat e facilita l'interazione diretta con vari modelli, incluso il modello Llama 3 8B Instruct.
Questi strumenti garantiscono che gli utenti possano utilizzare in modo efficiente Llama 3 sui propri dispositivi personali, soddisfacendo una serie di competenze e requisiti tecnici. Ciascuna piattaforma offre processi passo-passo per la configurazione e l'interazione del modello, rendendo l'intelligenza artificiale avanzata più accessibile a sviluppatori e appassionati.