I Large Language Model (LLM) sono modelli di machine learning in grado di comprendere e generare testo in linguaggio umano. Funzionano analizzando enormi set di dati di linguaggio.
Dopo aver letto questo articolo sarai in grado di:
Argomenti correlati
Cos'è l'intelligenza artificiale (IA)?
Cos'è il machine learning?
Database vettoriale
IA predittiva
IA generativa
Abbonati a theNET, il riepilogo mensile di Cloudflare sulle tematiche più discusse in Internet.
Copia link dell'articolo
Un Large Language M (LLM) è un tipo di programma di intelligenza artificiale (IA) in grado di riconoscere e generare testo, tra le altre attività. Gli LLM vengono addestrati su enormi set di dati, da cui il nome "large", ovvero "grande". Gli LLM sono basati sul machine learning: nello specifico, un tipo di rete neurale chiamata modello transformer.
In termini più semplici, un LLM è un programma informatico a cui sono stati forniti esempi sufficienti per renderlo in grado di riconoscere e interpretare il linguaggio umano o altri tipi di dati complessi. Molti LLM vengono addestrati sui dati raccolti da Internet: migliaia o milioni di gigabyte di testo. Ma la qualità dei campioni influisce sul modo in cui gli LLM apprenderanno il linguaggio naturale, quindi i programmatori di un LLM possono utilizzare un set di dati più curato.
Gli LLM utilizzano un tipo di machine learning chiamato deep learning per capire come funzionano caratteri, parole e frasi nel loro complesso. Il deep learning comporta l'analisi probabilistica dei dati non strutturati, che alla fine consente al modello di deep learning di riconoscere le distinzioni tra parti di contenuto senza l'intervento umano.
Gli LLM vengono quindi ulteriormente addestrati tramite l'ottimizzazione: vengono messi a punto oppure vengono ottimizzati in termini di prompt per le attività particolari che il programmatore desidera che svolgano, come interpretare le domande e generare risposte o tradurre il testo da una lingua all'altra.
Gli LLM possono essere addestrati per eseguire una serie di attività. Uno degli usi più noti è la loro applicazione come IA generativa: alla ricezione di un prompt o quando viene posta una domanda, possono produrre testo in risposta. L'LLM disponibile al pubblico ChatGPT, ad esempio, può generare saggi, poesie e altre forme testuali in risposta agli input degli utenti.
Qualsiasi set di dati grande e complesso può essere utilizzato per addestrare gli LLM, compresi i linguaggi di programmazione. Alcuni LLM possono aiutare i programmatori a compilare codice. Possono compilare funzioni su richiesta oppure, in base a codice fornito come punto di partenza, possono terminare la compilazione di un programma. Gli LLM possono essere utilizzati anche nei seguenti casi:
Esempi di LLM reali includono ChatGPT (da OpenAI), Bard (Google), Llama (Meta) e Bing Chat (Microsoft). Copilot di GitHub è un altro esempio, ma per la codifica, non per il linguaggio umano naturale.
Una caratteristica chiave degli LLM è la loro capacità di rispondere a query imprevedibili. Un programma informatico tradizionale riceve comandi nella sua sintassi accettata o da un determinato insieme di input dall'utente. Un videogioco ha un set finito di pulsanti, un'applicazione ha un set finito di elementi su cui un utente può fare clic o che può digitare e un linguaggio di programmazione è composto da precise istruzioni if/then.
Al contrario, un LLM può rispondere al linguaggio umano naturale e utilizzare l'analisi dei dati per rispondere a una domanda o a un prompt non strutturati in un modo sensato. Mentre un tipico programma informatico non è in grado di riconoscere un messaggio come "Quali sono le quattro più grandi band di genere funk della storia?", un LLM potrebbe rispondere con un elenco di quattro di queste band e una difesa ragionevolmente convincente del perché sono le migliori.
In terms of the information they provide, however, LLMs can only be as reliable as the data they ingest. If fed false information, they will give false information in response to user queries. LLMs also sometimes "hallucinate": they create fake information when they are unable to produce an accurate answer. For example, in 2022 news outlet Fast Company asked ChatGPT about the company Tesla's previous financial quarter; while ChatGPT provided a coherent news article in response, much of the information within was invented.
In termini di sicurezza, le applicazioni rivolte agli utenti basate su LLM sono soggette a bug come qualsiasi altra applicazione. Gli LLM possono anche essere manipolati tramite input dannosi per fornire determinati tipi di risposte rispetto ad altri, comprese risposte pericolose o non etiche. Infine, uno dei problemi di sicurezza con gli LLM è che gli utenti possono caricare al loro interno dati sicuri e riservati per aumentare la propria produttività. Ma gli LLM utilizzano gli input che ricevono per addestrare ulteriormente i loro modelli e non sono progettati per essere depositi sicuri; possono esporre dati riservati in risposta alle query di altri utenti.
A livello di base, gli LLM si basano sul machine learning. Il machine learning è un sottoinsieme dell'intelligenza artificiale e si riferisce alla pratica di alimentare un programma con grandi quantità di dati per addestrare il programma a identificare le caratteristiche di tali dati senza l'intervento umano.
Gli LLM utilizzano un tipo di machine learning chiamato deep learning. I modelli di deep learning possono essenzialmente essere addestrati a riconoscere le distinzioni senza l'intervento umano, sebbene in genere sia necessaria una certa messa a punto da parte dell'uomo.
Il deep learning utilizza la probabilità per "apprendere". Ad esempio, nella frase "The quick brown fox jumped over the lazy dog", le lettere "e" e "o" sono le più comuni, e compaiono quattro volte ciascuna. Sulla base di questo, un modello di deep learning potrebbe concludere (correttamente) che questi caratteri sono tra i più probabili che appaiano nel testo in lingua inglese.
Realisticamente, un modello di deep learning non può effettivamente concludere nulla da una singola frase. Ma dopo aver analizzato trilioni di frasi, potrebbe imparare abbastanza per prevedere come terminare logicamente una frase incompleta o persino generare le proprie frasi.
Per abilitare questo tipo di deep learning, gli LLM sono basati su reti neurali. Proprio come il cervello umano è composto da neuroni che si connettono e inviano segnali tra loro, una rete neurale artificiale (tipicamente abbreviata in "rete neurale") è costituita da nodi di rete che si connettono tra loro. Sono composte da diversi "livelli": un livello di input, un livello di output e uno o più livelli intermedi. I livelli si scambiano informazioni solo se i loro stessi output superano una determinata soglia.
Il tipo specifico di reti neurali utilizzate per gli LLM sono chiamati modelli transformer. I modelli transformer sono in grado di apprendere il contesto, particolarmente importante per il linguaggio umano, che dipende notevolmente dal contesto. I modelli transformer utilizzano una tecnica matematica chiamata auto-attenzione per rilevare i modi sottili in cui gli elementi di una sequenza si relazionano tra loro. In questo modo, riescono a comprendere con maggiore efficienza il contesto rispetto ad altri tipi di machine learning. Consente loro di capire, ad esempio, come la fine di una frase si collega all'inizio e come le frasi in un paragrafo si relazionano tra loro.
In questo modo, gli LLM possono interpretare il linguaggio umano, anche quando tale linguaggio è vago o mal definito, organizzato in combinazioni che non hanno mai incontrato prima o contestualizzato in modi nuovi. A un certo livello "capiscono" la semantica in quanto possono associare parole e concetti in base al loro significato, dopo averli visti raggruppati in quel modo milioni o miliardi di volte.
Per creare applicazioni LLM, gli sviluppatori hanno bisogno di un facile accesso a più set di dati, oltre che di luoghi in cui tali set di dati possano risiedere. Sia l'archiviazione su cloud che l'archiviazione in locale per questi scopi possono comportare investimenti infrastrutturali al di fuori della portata dei budget degli sviluppatori. Inoltre, i set di dati di addestramento vengono in genere archiviati in più posizioni, ma lo spostamento di tali dati in una posizione centrale può comportare enormi costi di uscita.
Per fortuna, Cloudflare offre diversi servizi per consentire agli sviluppatori di avviare rapidamente le applicazioni LLM e altri tipi di intelligenza artificiale. Vectorize è un database vettoriale distribuito a livello globale per l'esecuzione di query sui dati memorizzati nell'archiviazione a oggetti senza costi di uscita (R2) o sui documenti archiviati in Workers Key Value. In combinazione con la piattaforma di sviluppo Cloudflare Workers AI, gli sviluppatori possono utilizzare Cloudflare per iniziare rapidamente a sperimentare con i propri LLM.