Valutare le prestazioni dei modelli linguistici di grandi dimensioni su GPU
Uno studio che confronta LLM Mistral e LLaMa su diverse GPU.
Yannis Bendi-Ouis, Dan Dutarte, Xavier Hinaut
― 7 leggere min
Dalla lancio di ChatGPT a fine 2022, i modelli linguistici di grandi dimensioni (LLM) hanno attirato tantissima attenzione, soprattutto nella comunità open-source dove ora ci sono tanti modelli disponibili per chiunque. Però, molti non sanno da dove cominciare per impostare questi modelli o come valutare le loro performance prima.
Per chiarire un po' le cose, sono stati fatti dei test in un centro di ricerca a Bordeaux. Questo articolo confronta come si comportano diversi modelli in base al tipo di GPU disponibile, concentrandosi principalmente su due modelli: Mistral e LLaMA. I test hanno utilizzato una libreria Python specifica per migliorare il funzionamento di questi modelli.
I risultati di questa analisi possono aiutare sia le organizzazioni private che pubbliche che vogliono implementare LLM a valutare le loro opzioni in base all'hardware. Questo lavoro sostiene un uso più ampio dei modelli linguistici di grandi dimensioni in vari settori.
Dopo che ChatGPT è stato reso pubblico, molte aziende del settore privato si sono mosse in fretta per offrire servizi basati su questi modelli. Però, addestrare e usare questi modelli non è facile per tutti. Serve avere computer potenti e dati di alta qualità. Per esempio, una grande azienda tech ha recentemente acquistato un buon numero di GPU di alta gamma specificamente per addestrare i loro modelli.
Alcune imprese hanno cominciato a vedere il potenziale di ottenere un vantaggio grazie a questa tecnologia, il che può portare a avere molta influenza su come questi modelli plasmano informazioni e percezioni. Ora stanno spingendo i governi a regolare questi modelli, sostenendo che ci sono rischi legati al loro potenziale abuso. Le loro proposte includono limitare l'addestramento in base alla potenza di calcolo utilizzata o richiedere una supervisione governativa delle risorse GPU.
È importante garantire che la possibilità di usare questi strumenti non rimanga solo nelle mani di poche aziende potenti. Queste aziende possono indirizzare i pregiudizi dei loro modelli in modi che potrebbero influenzare l'opinione pubblica. Rendere questi modelli più trasparenti, compreso condividere dati e pesi dei modelli, è cruciale per permettere controlli indipendenti sulla loro affidabilità e sicurezza. Anche se molte aziende resistono a questa idea, alcune, come Meta e Mistral, stanno investendo in modelli open-weight, condividendo versioni modificate dei loro modelli gratuitamente.
Questi sforzi significano che una varietà di gruppi, sia pubblici che privati, possono ora usare modelli potenti mantenendo il controllo sui propri dati e evitando una situazione in cui troppo potere sia concentrato in un'unica entità. Tuttavia, solo perché questi modelli sono disponibili non significa che tutti possano usarli facilmente. Implementarli, soprattutto per un gran numero di utenti, rimane un compito complesso. Può essere semplice configurare un Modello per un utente, ma scalarlo per molti utenti contemporaneamente è molto più difficile.
Uno degli obiettivi principali della ricerca era esaminare le preoccupazioni sulla sicurezza e la riservatezza legate all'uso di modelli linguistici proprietari, come ChatGPT, da parte di studenti e ricercatori dell'istituto. Molti studenti si stanno rivolgendo a questi strumenti per compiti come scrittura, programmazione, correzione di bozze o brainstorming.
La preoccupazione nell'usare queste soluzioni proprietarie è che non sempre proteggono la privacy, e le aziende possono usare i dati per guadagni commerciali o addirittura spionaggio industriale. Questo è un problema significativo per i centri di ricerca, come quello di Bordeaux, che devono garantire che la loro ricerca rimanga riservata, specialmente dato che competono con aziende che offrono queste soluzioni proprietarie.
Di conseguenza, è fondamentale per le istituzioni di ricerca trovare soluzioni alternative per mantenere il controllo sui loro strumenti digitali. Inoltre, man mano che questa tecnologia continua a guadagnare importanza, sempre più ricercatori e studenti sono desiderosi di lavorare con gli LLM. Ad esempio, utilizzare modelli per interagire con i dati è una pratica comune nelle aziende e potrebbe essere un servizio interessante da offrire a studenti e ricercatori.
Per implementare un LLM su una GPU, è necessaria una certa conoscenza nello sviluppo software, come la familiarità con Linux e Python. Anche se è utile sapere come funzionano i Transformers, non è un requisito. Le competenze necessarie includono aggiornare software, installare Python e scegliere il modello giusto per un'esigenza specifica.
I test sono stati condotti su un server di calcolo specifico che aveva due tipi di GPU: NVIDIA V100 e NVIDIA A100. La libreria Python usata per ottimizzare i modelli richiede che certi software siano installati prima.
Uno dei vantaggi della libreria scelta è che permette di gestire più richieste contemporaneamente senza una coda di attesa, il che aiuta a velocizzare le cose. Tuttavia, a seconda dell'hardware usato, potrebbero esserci altre opzioni che funzionano meglio. Ad esempio, un altro strumento offre buone performance con le GPU NVIDIA, e un altro funziona bene su certi Mac.
Alcuni modelli sono piuttosto grandi, rendendo difficile caricarli sull'hardware disponibile a causa di limitazioni. Un modo efficace per gestire questo è ridurre la precisione dei pesi del modello, il che significa conservarli in meno bit. Questa leggera perdita di precisione è gestibile e consente un uso più efficiente delle risorse hardware.
In questa ricerca, l'obiettivo era scoprire il massimo numero di richieste che un server con diversi tipi di GPU potesse gestire contemporaneamente, a seconda del modello utilizzato. I test prevedevano di aumentare gradualmente le richieste e le dimensioni dei prompt fino a raggiungere il limite. Per ogni richiesta, è stato registrato il tempo impiegato per produrre un certo numero di token, insieme a misurazioni dell'uso della memoria e della velocità.
L'attenzione si è concentrata principalmente sui modelli di Mistral a causa della loro varietà, popolarità e performance, specialmente nelle lingue europee come il francese. Inoltre, la loro architettura consente di risparmiare risorse di calcolo utilizzando solo una parte del modello alla volta, il che riduce anche il consumo energetico.
Hanno anche incluso un modello di Meta che performa molto bene e offre un buon equilibrio tra dimensione e performance.
Vari modelli sono stati testati, e i risultati hanno mostrato che, all'aumentare della dimensione del contesto, il tempo per generare token aumentava anche, il che è previsto a causa della complessità coinvolta. Anche se il tempo che impiega a rispondere alle richieste non raddoppia semplicemente quando si aggiungono più richieste, diventa meno efficiente quando le richieste superano una certa dimensione.
Anche se il costo delle GPU può essere significativo, è comunque possibile far funzionare un'alternativa locale a soluzioni proprietarie come ChatGPT senza bisogno di un’enorme quantità di risorse. Con solo un paio di GPU di alta gamma, è fattibile gestire grandi modelli in modo efficace, che si sono dimostrati seri concorrenti delle opzioni proprietarie.
Modelli più piccoli possono anche essere ospitati e possono raggiungere velocità impressionanti, soprattutto quando le richieste vengono gestite simultaneamente. In generale, i dati generati hanno dimostrato che i modelli più grandi possono gestire bene molte richieste, mentre i modelli più piccoli possono comunque generare risultati notevoli.
Questo articolo ha fornito una visione comparativa di vari modelli linguistici di grandi dimensioni basati sull'hardware disponibile. I risultati indicano che modelli come Mistral e LLaMa possono essere utilizzati efficacemente su specifici tipi di GPU, offrendo buone prestazioni rispetto ai servizi proprietari.
Queste conclusioni sono importanti sia per i protagonisti accademici che per quelli industriali, fornendo indicazioni su quali risorse siano necessarie per implementare gli LLM in modo efficace. Sottolineano la necessità di trasparenza e controllo sugli strumenti digitali, permettendo a diverse organizzazioni di utilizzare modelli open-source senza fare affidamento su sistemi proprietari.
Incoraggiare l'implementazione di LLM, in particolare con modelli open-source, è vitale per ridurre la dipendenza e muoversi verso un miglior controllo sui dati.
Titolo: Deploying Open-Source Large Language Models: A performance Analysis
Estratto: Since the release of ChatGPT in November 2022, large language models (LLMs) have seen considerable success, including in the open-source community, with many open-weight models available. However, the requirements to deploy such a service are often unknown and difficult to evaluate in advance. To facilitate this process, we conducted numerous tests at the Centre Inria de l'Universit\'e de Bordeaux. In this article, we propose a comparison of the performance of several models of different sizes (mainly Mistral and LLaMa) depending on the available GPUs, using vLLM, a Python library designed to optimize the inference of these models. Our results provide valuable information for private and public groups wishing to deploy LLMs, allowing them to evaluate the performance of different models based on their available hardware. This study thus contributes to facilitating the adoption and use of these large language models in various application domains.
Autori: Yannis Bendi-Ouis, Dan Dutarte, Xavier Hinaut
Ultimo aggiornamento: 2024-09-24 00:00:00
Lingua: English
URL di origine: https://arxiv.org/abs/2409.14887
Fonte PDF: https://arxiv.org/pdf/2409.14887
Licenza: https://creativecommons.org/licenses/by/4.0/
Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.
Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.