Vai al contenuto

Massimiliano Vurro

La differenza tra open weight e open source nei modelli di intelligenza artificiale

Il panorama dell’Intelligenza Artificiale (IA) è piuttosto vasto e tocca ormai quasi ogni aspetto delle nostre vite digitali, e non solo. Ci sono algoritmi che curano i nostri feed sui social media, modelli sofisticati in sanità e nel campo della finanza, sistemi che prevedono la vita residua di macchine il cui funzionamento è di fondamentale importanza nella nostra vita (trasformatori di potenza, turbine, etc…). Insomma l’influenza sulle nostre vite dell’IA è innegabile. Al centro di questa rivoluzione tecnologica ci sono i modelli di IA stessi. Si tratta di complesse strutture matematiche addestrate per riconoscere schemi, prendere decisioni e prevedere risultati con una sorprendente precisione.

L’obiettivo di questo post è analizzare due approcci ben distinti che stanno emergendo non solo nello sviluppo ma anche nella progettazione e nella condivisione di modelli di IA: il primo detto open-weight (con pesi aperti), il secondo open source (a sorgente aperta). Questi due paradigmi offrono filosofie contrastanti riguardo l’accessibilità, la personalizzazione e la trasparenza e stanno sollevando questioni importanti non solo sulla ricerca in un settore che ha una curva di innovazione davvero esponenziale ma anche sulla concreta possibilità di competere nello sviluppo di applicazioni basate su IA.

Sebbene l’apertura a modelli open source prometta non solo di democratizzare la tecnologia IA, ma anche di favorirne l’innovazione, ci sono tuttavia ancora aspetti riguardanti la responsabilità e l’etica che l’apertura completa di una tecnologia lascia nelle mani della moltitudine che ne fa uso.

Cosa sono i modelli open weight?

I modelli di IA open weight sono caratterizzati dal solo rilascio dei loro pesi pre-addestrati. Si tratta in pratica di modelli che hanno “in chiaro” solo i parametri appresi ovvero quelli che definiscono il comportamento del modello stesso ma mantengono proprietari i dati di addestramento, gli algoritmi e l’architettura del modello stesso. Questi modelli consentono una certa flessibilità, permettendo a chi li usa di applicare operazioni di fine-tuning a compiti specifici.

Vantaggi:

  • Flessibilità: Gli utenti possono regolare i pesi del modello per adattarli meglio alle loro applicazioni specifiche senza dover partire da zero.
  • Accessibilità: Fornendo una base pronta all’uso, questi modelli abbassano sensibilmente la barriera d’ingresso per coloro che desiderano sfruttare capacità avanzate dell’IA.

Limitazioni:

  • Dipendenza: L’efficacia e l’adattabilità dei modelli open weight spesso dipendono dagli strumenti e dalle piattaforme fornite dai creatori del modello, il che può limitare il controllo e la flessibilità degli utenti. per capisci se sviluppi il tuo business su una open-weight rischi di rimanere ” a piedi” se il proprietario del sorgente decide di ritirarlo o modificarne la licenza.
  • Trasparenza: Senza accesso ai dati e agli algoritmi, gli utenti non possono comprendere le dinamiche sottostanti e soprattutto in base a quali criteri vengono prese le decisioni. Questo aspetto aumenta parecchio gli sforzi necessari ad identificare e correggere bias (pregiudizi innestati nel modello originale) o errori.

Cosa sono i modelli open source?

I modelli di IA open source si distinguono per il loro approccio completamente trasparente, offrendo non solo i pesi del modello, ma anche l’architettura sottostante, gli algoritmi di addestramento e, spesso, i dataset utilizzati per l’addestramento. Questo livello di apertura favorisce un ambiente in cui sia gli sviluppatori che i ricercatori possono analizzare nel dettaglio, modificare e migliorare gli elementi fondamentali del modello, consentendo una comprensione più profonda e un’applicabilità decisamente più ampia e “controllata”.

Vantaggi:

  • Trasparenza e responsabilità: I modelli open source promuovono un ambiente in cui i meccanismi interni delle tecnologie IA sono accessibili per la verifica, facilitando l’identificazione di bias, garantendo un miglior livello di fiducia tra utenti e stakeholder.
  • Collaborazione: L’etica open source incoraggia un approccio collaborativo allo sviluppo dell’IA. Condividendo conoscenze e risorse, la comunità IA può affrontare in maniera collettiva le sfide, portando a soluzioni più robuste e innovative.
  • Accessibilità: i modelli open source democratizzano l’accesso a strumenti e conoscenze che diversamente sarebbero dominio di pochi visti i costi computazionali ed energetici necessari per lo sviluppo. Questa democratizzazione consente a una gamma più ampia di individui e organizzazioni di partecipare allo sviluppo.

Limitazioni:

  • Affidabilità: Sebbene i modelli open source beneficino dei contributi della comunità, gestirne il controllo di qualità e garantirne l’affidabilità può essere particolarmente complesso (o sfidante!). Senza un meccanismo centralizzato di supervisione, mantenere standard coerenti e prevenire l’introduzione di errori o bias richiede una due-diligence collettiva.
  • Manutenzione: Lo sviluppo e la manutenzione continui dei modelli open source richiedono risorse significative, tra cui tempo, competenze e potenza computazionale. Per alcuni progetti, assicurarsi il supporto e l’infrastruttura necessari può essere un ostacolo importante.
  • Proprietà Intellettuale: Navigare nel complesso panorama dei diritti di proprietà intellettuale può essere più difficile per i progetti open source. Bilanciare il desiderio di apertura con la necessità di proteggere i diritti dei contributori e incentivare l’innovazione richiede un’attenta considerazione e, spesso, accordi di licenza innovativi.

L’esplorazione dei modelli open source evidenzia il loro potenziale di rivoluzionare lo sviluppo dell’IA attraverso una maggiore trasparenza, collaborazione e accessibilità. Tuttavia, realizzare pienamente questo potenziale richiede anche il superamento di alcune sfide inerenti il controllo di qualità, l’allocazione di risorse e la gestione della proprietà intellettuale, forse anche attraverso alcuni compromessi e qualche sinergia tra i due approcci.

Modelli open source

MPT-30B: Un modello linguistico sviluppato da MosaicML, noto per i suoi 30 miliardi di parametri e l’efficienza nell’analisi di sequenze complesse, particolarmente utile nel settore legale.

MPT: Parte della serie Mosaic Pretrained Transformer, progettato per un fine-tuning e un deployment efficienti, con un modello da 30 miliardi di parametri noto per le sue prestazioni.

AudioCraft di Meta: Un modello di generazione di musica da testo capace di creare colonne sonore di alta fedeltà basate su descrizioni testuali.

OpenLLaMA: Una riproduzione open source del LLaMA di Meta AI, addestrato sul dataset RedPajama con modelli che vanno dai 3 ai 13 miliardi di parametri.

Stable Diffusion: Un modello avanzato di generazione di immagini che produce opere d’arte visive di alta qualità da descrizioni testuali.

Falcon: Sviluppato dal Technology Innovation Institute di Abu Dhabi, con modelli come Falcon-40B e Falcon-7B, progettati per competere con gli LLM a codice chiuso.

Dolly 2.0: Un modello linguistico di grandi dimensioni sviluppato da Databricks, addestrato su record di fine-tuning istruzione/risposta.

Dall-E Mini (Craiyon): Un modello testo-immagine che genera immagini basate su prompt testuali, offrendo soluzioni visive creative.

Modelli pseudo open source (oppure no)

Llama 3.1: Rilasciato da Meta AI il 23 luglio 2024, si tratta dell’ultima versione della serie di grandi modelli linguistici(LLM). Sebbene sia un aggiornamento minore rispetto a Llama 3, introduce un modello da 405 miliardi di parametri, il più grande LLM dichiarato open-source al mondo, superando il Nemotron-4-340B-Instruct di NVIDIA.
in realtà non mi sento di considerare Llama 3.1 open source per tre motivi:

Regole di derivazione: Se si modifica Llama 3.1, bisogna mantenere “Llama” nel nome e questo è contro i principi dell’open-source.

Dati: Meta non spiega del tutto da dove provengano i dati utilizzati per addestrare Llama 3.1.

I progetti open-source di solito condividono queste informazioni senza problemi. La mancanza di trasparenza sui dati di addestramento di Llama 3.1 comporta rischi legali ed etici per le aziende, poiché non possono valutare completamente i bias del modello, potenziali problemi di copyright o conformità alle normative sulla protezione dei dati.

Controllo: Meta mantiene un controllo piuttosto ampio su Llama 3.1, e questo potrebbe essere un sintomo che si tratti più di una strategia di posizionamento dell’immagine di Meta che di vera apertura.

Insomma Llama 3.1 è abbastanza aperto, ma a mio avviso con un eccessivo framework condizionale.

Se vuoi approfondire qui puoi trovare il repo con la licenza di Llama 3.1 👉 https://github.com/meta-llama/llama-models/blob/main/models/llama3_1/LICENSE

Modelli open weight

Mistral 7B e Mixtral 8×7B: Mistral AI ha rilasciato questi modelli come open weight, offrendo modelli pre-addestrati e fine-tuned per varie applicazioni.

TinyLlama, OpenChat, WizardCoder, StarCoder, Phind-CodeLlama, Neural-Chat, StarCoder2, Yi, Orca 2, Falcon, Wizard-Math, Dolphin-Phi, Starling-LM, Nous-Hermes, Stable-Code, MedLLaMA2, BakLLaVA, CodeUp, WizardLM-Uncensored, Solar, EverythingLM, SQLCoder: Una vasta gamma di modelli che coprono diverse capacità come modelli compatti, generazione di codice, elaborazione linguistica bilingue, ragionamento, riassunto, generazione di testi, risposta a domande mediche, ciascuno progettato su specifici casi d’uso.

Confronto tra modelli open weight e open source

La differenza fondamentale tra modelli open weight e open source risiede nell’approccio alla trasparenza e al controllo degli utenti. I modelli open weight, fornendo pesi pre-addestrati senza il codice sottostante o i dati, sono una specie di black-box dove gli utenti possono applicare e ottimizzare il modello per compiti specifici ma hanno una visione limitata dei suoi meccanismi interni. Questo approccio è adatto a scenari in cui il tempo di deployment è critico e i compiti sono ben allineati con l’addestramento originale del modello.

Al contrario, i modelli open source incarnano una filosofia di piena trasparenza e potenziale di modifica, concedendo agli utenti l’accesso a tutti gli aspetti del modello. Questa apertura abbraccia una comprensione più profonda di come funziona il modello, favorendone l’innovazione e incoraggiando un approccio etico. Questa filosofia è particolarmente preziosa in contesti di ricerca o applicazioni in cui è essenziale adattare il modello a requirement di progetto pressoché unici.

I modelli open weight performano meglio in ambienti in cui la velocità di deployment è fondamentale e i compiti sono strettamente allineati con gli obiettivi di addestramento originali del modello. Sono particolarmente utili per organizzazioni con poca esperienza in IA ma desiderano sfruttare capacità avanzate di questi modelli per applicazioni specifiche o nello sviluppo di RAG, come il riconoscimento delle immagini, l’analisi di particolari documenti o altri compiti di processamento del linguaggio naturale (compreso ad esempio il rilevamento di contenuti generati con IA all’interno di lettere di presentazione e curricula).

I modelli open source, con la loro flessibilità intrinseca e la loro “nativa” trasparenza, sono adatti per la ricerca accademica, la risoluzione di problemi complessi e progetti in cui è necessario adattare il modello a compiti altamente specifici o nuovi. Eccellono in ambienti collaborativi dove la condivisione di conoscenze e risorse può portare a innovazioni rivoluzionarie e dove le implicazioni etiche e sociali dell’implementazione dell’IA sono valutate in modo critico.

La scelta tra modelli open weight e open source spesso si riduce alla valutazione di tre specifici parametri e al loro bilanciamento: usabilità, prestazioni e livello di apertura desiderato. I modelli open weight, pur essendo più facili da implementare per applicazioni specifiche, potrebbero limitare l’innovazione e l’adattabilità a causa della loro natura chiusa. Al contrario, i modelli open source, nonostante il loro potenziale di personalizzazione e innovazione, richiedono più risorse ed esperienza per essere sfruttati efficacemente.

Resta ferma l’importanza non solo di considerare gli obiettivi finali, le risorse e le implicazioni etiche dei progetti di IA ma di allocare nella fase iniziale del progetto la giusta importanza alla scelta del modello. La naturale conseguenza è che in un futuro non molto lontano avverrà un’ibridazione dell’approccio open weight con quello open source in ottica di massimizzazione dei vantaggi di entrambi gli approcci.

Etica dei modelli open source

La natura dei modelli open source è un driver fondamentale nell’affrontare le implicazioni sociali dell’IA poiché permette di allargare a una vasta gamma di voci la conversazione sull’etica dell’IA, garantendo che la tecnologia si sviluppi in modo da rispettare i diritti umani, la privacy e l’equità.

Iniziative di IA open source, come TensorFlow e PyTorch, sottolineano l’impatto trasformativo della collaborazione aperta nell’IA. Queste piattaforme sono diventate pilastri della ricerca e dello sviluppo dell’IA, consentendo avanzamenti all’avanguardia e contemporaneamente diventando un potente catalizzatore per l’innovazione. Democratizzando l’accesso alle tecnologie IA, i modelli open source hanno abbassato le barriere all’ingresso per ricercatori, innovatori e sviluppatori di tutto il mondo. Non è un caso che in particolari contesti siano proprio le startup a trainare l’innovazione già in fase pre-seed.

Sarà necessario ripensare il paradigma lanciato con Linux?

Nel 1991, Linus Torvalds rilasciò il kernel Linux, innescando una rivoluzione nel software open-source che avrebbe cambiato radicalmente il panorama tecnologico. Tre decenni dopo, ci troviamo a un crocevia simile con Llama 3.1 di Meta. Questo grande modello linguistico “promette” di democratizzare l’accesso alla tecnologia AI all’avanguardia, proprio come Linux fece per i sistemi operativi.

La definizione tradizionale di software open-source però non è in grado di catturare perfettamente tutte le sfumature dei modelli di intelligenza artificiale, Llama 3.1 compreso.

Forse dobbiamo ripensare alla definizione di open-source nel contesto dei grandi modelli linguistici e dei sistemi AI guardando a nuovi standard che descrivano meglio i vari gradi di apertura nell’AI, come licenze “AI-open” o “model-source” e creando di fatto un nuovo paradigma in grado di bilanciare innovazione, accessibilità e interessi commerciali nel mondo dell’intelligenza artificiale.