Nel parterre dei modelli linguistici di grandi dimensioni si sta guadagnando un posto di rilievo LLaMA (Large Language Model Meta AI) che ha fatto capolino nel mese di febbraio del 2023 e, grazie alla capacità e alla disponibilità di dati di Meta (l’azienda che sviluppa, tra gli altri, Facebook e Instagram) è stato oggetto di evoluzioni, tant’è che il 18 aprile 2024 è stato rilasciato LLaMA 3, dopo i nuovi modelli LLaMA 2 risalenti al mese di luglio del 2023.
Prima di entrare nei meandri di LLaMA può essere opportuno introdurre in modo semplice e rapido il concetto di Large Language Model (LLM), i modelli linguistici di grandi dimensioni che qui abbiamo trattato più in dettaglio: il termine LLM fa riferimento a un modello di apprendimento automatico di Intelligenza artificiale (AI) focalizzato sulla comprensione e sulla generazione di contenuti linguistici. Per addestrare un LLM serve un’enorme quantità di dati: libri, testi, siti web, immagini e, più in generale, qualsiasi informazione possa aiutare il modello ad apprendere e a rispondere alle esigenze degli utenti.
Che cos’è LLaMA?
È una famiglia di modelli linguistici di grandi dimensioni (LLM) di tipo autoregressivo lanciata da Meta AI il mese di febbraio del 2023 con un addestramento basato su quattro diverse dimensioni, rispettivamente di 7, 13, 33 e 65 miliardi di parametri.
A luglio del 2023 Meta ha rilasciato altri modelli, battezzati LLaMA 2, usando 7, 13 e 70 miliardi di parametri.
Il 18 aprile del 2024 Meta ha rilasciato LLaMA 3 con due diverse dimensioni da 8 miliardi e 70 miliardi di parametri. Questi modelli sono stati addestrati mediante 15 trilioni di token di testo raccolti da fonti pubbliche.
Servono a questo punto due piccole precisazioni: il trilione (dal termine anglosassone “trillion” corrisponde a 1.000 miliardi) e i token non sono altro che le unità più piccole in cui viene suddiviso il testo in entrata (input).
Il token e la tokenizzazione sono concetti cruciali del funzionamento dei LLM, laddove la tokenizzazione è, di fatto, la scomposizione del testo di input in unità più piccole (i token) i quali possono essere parole intere oppure parti di esse.
A ogni token viene associato un numero univoco affinché il testo venga rappresentato come un insieme di numeri che gli algoritmi del modello di linguaggio sono in grado di elaborare. Da qui la facoltà dei LLM di prevedere il token successivo all’interno di una frase.
I token sono quindi gli elementi fondanti mediante i quali i LLM comprendono le richieste degli utenti e generano le relative risposte.
Come si differenzia LLaMA da altri modelli linguistici
La prima sostanziale differenza risiede nella natura Open source di LLaMA 2 e, successivamente, di LLaMA 3. Ciò significa che ognuno può prelevare LLaMA e usarlo in locale ma, ancora prima, che sviluppatori e ricercatori possono accedere al codice sorgente e personalizzarlo per rispondere a esigenze specifiche.
LLaMA è da considerare uno strumento più orientato alla ricerca che ai prodotti commerciali e ciò lo smarca dai modelli di linguaggio più noti e diffusi. Questo non vuole dire che non possa essere usato all’interno delle aziende, significa che ha un occhio aperto sulla ricerca e sull’evoluzione dei modelli di linguaggio stessi. Come vedremo, ci sono però degli aspetti che si contrappongono alle prestazioni avanzate su cui Meta si è concentrata.
LLaMA Vs. ChatGPT
Le differenze principali tra i due modelli linguistici sono riassumibili come segue: LLaMA usa un’architettura Mixture-of-Experts che smista i token di input verso reti neurali specializzate in compiti specifici come, per esempio, la sintassi, la conoscenza dell’argomento trattato dall’utente o la semantica del linguaggio in uso (LLaMA supporta 30 lingue diverse, benché sia soprattutto focalizzato sull’uso dell’inglese, mentre ChatGPT ne supporta oltre 50).
Sul fronte opposto, ChatGPT di OpenAI si dimostra addestrato su una quantità più vasta di dati, più creativo ma meno incentrato sull’attualità rispetto a LLaMA 2 (e LLaMA 3).
Nei benchmark LLaMA tende a superare ChatGPT e l’uso tra i due modelli dipende soprattutto dalle esigenze dell’utente.
LLaMA Vs. Gemini
Oltre alle finalità dei due modelli di linguaggio, rimane la sostanziale differenza della natura Open di LLaMA e quella chiusa di Google Gemini.
Sono entrambi modelli multimodali, capaci quindi di gestire input di testo, immagini e video. La differenza, oltre al numero di lingue supportate (oltre un centinaio quelle in grado di essere elaborate da Gemini, anche se il numero preciso non appare chiaro) e la capacità di gestire fino a un milione di token rendendo quindi possibile lavorare con testi di oltre 700mila parole, 11 ore di audio e 1 ora di video.
LLaMA ha dimensioni più contenute e guarda alla ricerca e, per dimensioni, per finalità e per la disponibilità Open source richiama di più Gemma, i modelli linguistici aperti di Google.
Esplorando le funzionalità di LLaMA
Uno degli aspetti più interessanti che ognuno può provare LLaMA sul proprio computer. A tale proposito è possibile prelevare LM Studio, un software Open source gratuito che facilita l’istallazione e l’uso di diversi modelli di linguaggio, LLaMA incluso. Oltre a soddisfare le velleità dei curiosi, è possibile utilizzare dati proprietari e testarne le potenzialità.
LLaMA 3 offre diverse funzionalità, tese alla comprensione del linguaggio, alla creazione di contenuti ma anche alla ricerca e alle applicazioni tipicamente aziendali.
Generazione di testo: creazione di contenuti coinvolgenti e personalizzati
Al posto di cadere nella diatriba che coinvolge direttamente gli sviluppatori di LLM tutti convinti che il proprio sia il migliore, è opportuno sottolineare che LLaMA 3 usa una tecnica di ottimizzazione basata sul Reinforcement Learning from Human Feedback (RLHF) la quale, in sintesi, offre agli utenti che ne fanno uso la possibilità di partecipare direttamente alla sua evoluzione.
Così, grazie alla quantità di dati con cui è stato addestrato e grazie al lavoro di cesello fatto dagli utenti, LLaMA 3 si distingue nella creazione di contenuti sfumati, meno asettici e maggiormente personalizzabili.
Analisi del linguaggio: estrazione di informazioni e identificazione di trend dai dati
L’analisi del linguaggio, ossia l’elaborazione del linguaggio naturale (NLP) risulta efficiente in virtù del fatto che LLaMA 3 è in grado di suddividere il testo in diverse categorie, rilevandone persino il sentiment, ossia comprendendo se si tratta di un contesto positivo, neutro oppure negativo. Inoltre, LLaMA 3 è capace di estrarre dal testo delle entità quali date, numeri, posizioni geografiche e riferimenti a organizzazioni o a personaggi.
Automazione di attività: sviluppo di chatbot e assistenti virtuali intelligenti
Potendo lavorare in locale, LLaMa 3 consente la creazione di chatbot in grado di usare dati proprietari per imbastire conversazioni soddisfacenti con chi vi ricorre.
Le chatbot possono quindi gestire e rispondere a domande in modo preciso – ovviamente a seconda della qualità dei dati di addestramento – illustrare concetti e persino fornire soluzioni a enigmi di carattere logico. Questo perché la capacità di astrazione e di cogliere le sfumature coincidono con possibilità avanzate di “ragionamento”.
Questo aspetto non è da sottovalutare e, in qualche modo, rimette la chiesa al centro del villaggio: il fatto che i LLM siano spesso usati per creare chatbot non è da confondere con un limite nell’impiego che se ne può fare e, al contrario, suggerisce che a fare la differenza sono i dati a cui le chatbot hanno accesso. Ovvero, la “battaglia” ingaggiata dai LLM si sposta verso la personalizzazione che questi consentono. Un capitolo interessante e in gran parte ancora da scrivere.
Traduzione linguistica
Una delle doti condivise dai modelli linguistici di grandi dimensioni risiede proprio nella loro capacità di traduzione dei testi. Nello specifico, LLaMA 3 è impiegato per produrre traduzioni più coerenti e precise, grazie proprio alle sue capacità di comprensione e di contestualizzazione del significato del testo nella lingua in cui è scritto all’origine. Non di meno, LLaMA 3 può essere integrato a sistemi di traduzione automatica esistenti al fine proprio di migliorarne le potenzialità, adattandosi così a contesti specifici nei quali vengono usate espressioni gergali e terminologia peculiari (si pensi, a titolo di esempio, al settore legale o a quello medico).
Codice e scripting: generazione automatica
Le potenzialità di LLaMA 3 di cui abbiamo scritto sopra, soprattutto la capacità di cogliere sfumature e forme di “ragionamento” più avanzati, si riverberano positivamente sulla generazione di codice e sull’esecuzione di istruzioni. Infatti, è in grado di generare codice da prompt ma anche dal linguaggio naturale, formulando una richiesta come, per esempio: “Scrivi una funzione che generi un time stamp”,
Inoltre, questo modello si rivela potente – grazie agli algoritmi di Machine learning avanzati – anche nel completamento e nella generazione di codice, virtù queste che spingono la produttività nello sviluppo di software.
Code Shield è uno strumento di LLaMA 3 che sovraintende alla scrittura di codice sicuro, progettato per identificare e bloccare codice sospetto, contribuendo così alla protezione dei dati e alla prevenzione di possibili o probabili cyber incursioni.
Casi d’uso e applicazioni di LLaMA
Fino dal suo esordio, LLaMA 3 ha dato sfoggio di capacità avanzate, come abbiamo spiegato qui.
Le applicazioni sono molteplici, ma tutte ruotano attorno alle prerogative distintive del modello di Meta, su tutte la capacità di ottimizzazione grazie alla Retrieval Augmented Generation (RAG) che consente l’arricchimento di un LLM con informazioni specifiche senza modificarne l’anima. Informazioni che possono essere più aggiornate rispetto al LLM in sé e più confacenti alle necessità dell’organizzazione che vi fa ricorso.
In quest’ottica, LLaMA 3 risulta particolarmente utile negli ambiti:
- Della classificazione
- Del ragionamento
- Della generazione di contenuti (anche creativi)
- Della raccomandazione
È opportuno approfondire alcune finalità ricorrenti all’interno di aziende e organizzazioni in genere.
Chatbot intelligenti per supporto 24/7
Come abbiamo accennato sopra, la Retrieval Augmented Generation (RAG) è una tecnica usata nell’elaborazione del linguaggio naturale (NLP) per rendere più efficienti i modelli linguistici. Questo consente di fare affidamento su dati proprietari affinché – tra gli altri utilizzi possibili – a giovarne sia anche la qualità delle chatbot che, nel caso di LLaMA 3, godono anche di capacità avanzate di “ragionamento” con beneficio delle prestazioni nel loro complesso.
Le funzioni di codifica e memoria, infine, segnano un passo fondamentale nell’avvicinamento alle facoltà umane e questo, di per sé applicabile in diversi campi, trova una collocazione specifica anche nei servizi di assistenza demandati alle chatbot.
Creazione automatica di report dettagliati
È un argomento ampio e affonda le radici in terreni multistrato. Le capacità avanzate di generazione di testo di LLaMA 3 sono propizie anche per l’automazione della reportistica e per la condensazione di informazioni in punti salienti a seconda della platea di riferimento.
La capacità di contestualizzazione di LLaMA 3 ha un rilievo particolare nell’analisi dei dati e, da qui, nella generazione di report la cui qualità è anche legata alle query raggruppate (Grouped Query Aggregates, GQA) che consentono l’aggregazione e il riepilogo di dati a seconda di caratteristiche comuni.
Le query raggruppate, affini alle doti intrinseche di LLaMA 3, consentono la visualizzazione di valori accorpati secondo riferimenti specifici e sono adatte ai contesti più complessi.
Automazione di compiti di codifica e testing
Sono diversi i modi in cui LLaMA 3 è in grado di generare codice in diversi linguaggi di programmazione. Oltre alla creazione di funzioni peculiari e persino di intere porzioni di codice sulla scorta di istruzioni prettamente testuali, consente il refactoring e l’ottimizzazione del codice offrendo suggerimenti per migliorarne l’efficienza, la leggibilità e la manutenzione nel tempo.
Fornendo opportune specifiche, inoltre, il modello può generare test e scrivere script per verificare il funzionamento di un’applicazione. Il tempo necessario ai test si restringe a completo beneficio della qualità del software, favorendo anche l’analisi degli errori e dei bug.
Generazione di articoli, post sui social media e materiale marketing
Così come è in grado di generare documentazione tecnica, LLaMA 3 è incline alla creazione di articoli con diversa finalità. Uno degli usi tipici di queste facoltà riconduce alla comunicazione nel marketing, tipicamente generata partendo dall’analisi di un contesto più ampio: per esempio individuando e quindi riassumendo le informazioni salienti usando termini e riferimenti affini al segmento di mercato a cui un prodotto o un servizio sono destinati.
Integrazione di LLaMA nei sistemi aziendali
L’integrazione di LLaMA 3 nei sistemi aziendali è parte capitale dell’efficienza e dell’automazione di cui abbiamo parlato sopra.
L’obiettivo ultimo è quello di garantire alle aziende un vantaggio competitivo e, nello specifico – anche solo pensando all’inclusione di algoritmi AI nei sistemi ERP – si favorisce l’automazione dei processi, l’analisi dei dati e la compressione dei costi.
Usando dati proprietari, ogni impresa può aumentare l’efficienza delle diverse unità aziendali estraendo valore dai dati specifici, creando automatismi, favorendo lo scambio di informazioni e favorendo lo sviluppo di nuove idee.
Per potere integrare le capacità di LLaMA nei sistemi aziendali esistono diverse tecniche e diverse modalità.
API e strumenti per sviluppatori
Online c’è un’ampia documentazione relativa all’uso delle API ma, tra le risorse parimenti importanti, figurano tutti provider di servizi Cloud che consentono la distribuzione di LLaMA 3 in modo semplice. Tra questi figurano Microsoft Azure, Oracle e Amazon Web Services, solo per citare i principali.
Fare ricorso ai provider Cloud implica un costo, certo, ma solleva chi ne fa uso dalle difficoltà di implementazione, fornendo assistenza mirata alle necessità dell’azienda. Va considerato anche che, seppure dal punto di vista prettamente economico, l’adozione di LLaMA rappresenta comunque un costo giacché obbliga la reingegnerizzazione dei flussi aziendali che vengono toccati dall’introduzione del modello.
Si tratta, tuttavia, di un costo finalizzato al conseguimento di obiettivi che aumentino l’efficienza e la produttività aziendale e, come tale, va inteso nell’ottica dell’investimento.
Il futuro di LLaMA e l’Intelligenza artificiale per le aziende
Meta non si è mai nascosta e ha ribadito di avere piani per il futuro del proprio modello di linguaggio. Ambizioni che si tradurranno nell’introduzione di nuove funzionalità, soprattutto legate alla multimodalità, ovvero alla capacità di gestire diversi tipi di dati come, per esempio, video e immagini.
A ciò si aggiungeranno altri idiomi e capacità di contestualizzazione più ampie. Non da ultimo, Meta intende rilasciare modelli di dimensioni crescenti in termini di parametri.
Tutto ciò consente alle aziende di ottimizzare sempre più l’analisi dei dati, l’automazione di flussi e procedure e, non da ultimo, di espandere i propri mercati di riferimento riuscendo a supportare clienti e stakeholder in modo più rapido e preciso.
Considerazioni etiche e responsabili nell’utilizzo di LLaMA
L’adozione dei LLM e, più in generale, quella delle AI, porta con sé anche sfide e difficoltà. Non si tratta soltanto di definire i rischi legati alla generazione di risposte inappropriate o completamente fuori contesto, il discorso è più ampio e include, tra gli altri aspetti, l’implementazione sicura all’interno dell’azienda e anche lo sviluppo di applicazioni.
Mentre LLaMA Guard offre un filtro per migliorare la qualità delle risposte, Meta mette a disposizione linee guida per l’implementazione responsabile ed efficace di codice e procedure basate sia sul modello in sé, sia sull’uso delle AI.
C’è poi l’annosa e mai definitivamente risolta questione della privacy: le imprese che usano dati proprietari devono rispettare norme e avere una governance per gestire le AI.