Perché il software open source è la culla dell’intelligenza artificiale

Il software open source e l'intelligenza artificiale

In un certo senso, l’open source e l’intelligenza artificiale sono nati insieme.

Nel lontano 1971, se avessi menzionato l’AI alla maggior parte delle persone, avrebbero pensato alle Tre Leggi della Robotica di Isaac Asimov. Tuttavia, già quell’anno l’AI era una materia reale al MIT, dove Richard M. Stallman (RMS) si unì al Laboratorio di Intelligenza Artificiale del MIT. Anni dopo, con la diffusione del software proprietario, RMS sviluppò l’idea radicale del Software Libero. Decenni dopo, questo concetto, trasformato in open source, sarebbe diventato il luogo di nascita dell’IA moderna.

Inoltre: I migliori chatbot di IA: ChatGPT e alternative

Non fu uno scrittore di fantascienza ma un informatico, Alan Turing, a dare il via al movimento dell’IA moderna. Il suo articolo del 1950 “Macchine calcolatrici e intelligenza” diede origine al Test di Turing. In breve, il test afferma che se una macchina riesce a ingannarti facendoti pensare di parlare con un essere umano, allora è intelligente.

Secondo alcune persone, le IA di oggi già riescono a fare questo. Non sono d’accordo, ma siamo chiaramente sulla buona strada.

Nel 1960, l’informatico John McCarthy coniò il termine “intelligenza artificiale” e, nel frattempo, creò il linguaggio Lisp. L’impresa di McCarthy, come la definì l’informatico Paul Graham, “fece per la programmazione qualcosa di simile a quello che Euclide fece per la geometria. Mostrò come, dato un pugno di operatori semplici e una notazione per le funzioni, è possibile costruire un intero linguaggio di programmazione.”

Lisp, in cui dati e codice si mescolano, divenne il primo linguaggio dell’IA. Fu anche il primo amore di programmazione di RMS.

Inoltre: I miei due plugin preferiti per ChatGPT Plus e le cose straordinarie che posso fare con essi

Allora, perché non avevamo un GNU-ChatGPT negli anni ’80? Ci sono molte teorie. Quella che preferisco è che l’IA dei primi tempi aveva le giuste idee nel decennio sbagliato. L’hardware non era all’altezza della sfida. Altri elementi essenziali, come i Big Data, non erano ancora disponibili per aiutare l’IA reale a decollare. Progetti open source come Hadoop, Spark e Cassandra hanno fornito gli strumenti di cui l’IA e l’apprendimento automatico avevano bisogno per memorizzare e processare grandi quantità di dati su cluster di macchine. Senza questi dati e un accesso rapido ad essi, i Large Language Models (LLM) non potevano funzionare.

Oggi, persino Bill Gates – non fan dell’open source – ammette che l’IA basata sull’open source è la cosa più grande da quando ha conosciuto l’idea di un’interfaccia grafica (GUI) nel 1980. Da quell’idea di GUI, potresti ricordare, Gates ha costruito un piccolo programma chiamato Windows.

Inoltre: I migliori generatori di immagini di IA da provare

In particolare, i modelli generativi di IA estremamente popolari di oggi, come ChatGPT e Llama 2, sono nati dalle origini open source. Ciò non significa che ChatGPT, Llama 2 o DALL-E siano open source. Non lo sono.

Oh, avrebbero dovuto esserlo. Come ha detto Elon Musk, uno degli investitori iniziali di OpenAI: “OpenAI è stata creata come un’azienda open source (da qui il nome “Open” AI), senza scopo di lucro, per fungere da contrappeso a Google, ma ora è diventata un’azienda a sorgente chiusa, a scopo di massimo profitto, controllata efficacemente da Microsoft. Non era affatto quello che avevo in mente.”

Per quanto sia così, OpenAI e tutti gli altri programmi di IA generativi si basano su fondamenta open source. In particolare, il Transformer di Hugging Face è la principale libreria open source per la costruzione dei modelli di apprendimento automatico (ML) odierni. Nonostante il nome divertente, fornisce modelli pre-addestrati, architetture e strumenti per compiti di elaborazione del linguaggio naturale. Ciò consente agli sviluppatori di costruire su modelli esistenti e ottimizzarli per casi d’uso specifici. In particolare, ChatGPT si basa sulla libreria di Hugging Face per i suoi LLM GPT. Senza Transformer, non c’è ChatGPT.

Inoltre: Vuoi costruire il tuo chatbot di IA? Saluta HuggingChat open source

Inoltre, TensorFlow e PyTorch, sviluppati rispettivamente da Google e Facebook, hanno alimentato ChatGPT. Questi framework Python forniscono strumenti essenziali e librerie per la costruzione e l’addestramento di modelli di deep learning. Non c’è bisogno di dire che altri programmi open-source AI/ML sono costruiti sopra di essi. Ad esempio, Keras, un’API di alto livello di TensorFlow, viene spesso utilizzato dagli sviluppatori senza una formazione approfondita in deep learning per costruire reti neurali.

Puoi discutere fino allo sfinimento su quale sia migliore – e i programmatori di AI lo fanno – ma sia TensorFlow che PyTorch vengono utilizzati in numerosi progetti. Dietro le quinte del tuo chatbot AI preferito c’è una combinazione di diversi progetti open-source.

Alcuni programmi di alto livello, come Llama-2 di Meta, affermano di essere open source. Non lo sono. Anche se molti programmatori open-source si sono rivolti a Llama perché è uno dei programmi AI più amichevoli verso l’open source, quando si tratta di prenderne atto, Llama-2 non è open source. È vero, puoi scaricarlo e usarlo. Con i pesi del modello e il codice di avvio per il modello pre-addestrato e le versioni sintonizzate conversazionalmente, è facile costruire applicazioni basate su Llama. C’è solo un piccolo problema nascosto nella licenza: se il tuo programma ha più di 700 milioni di utenti attivi mensili nel mese del calendario precedente, devi richiedere una licenza a Meta, che Meta può concederti a sua esclusiva discrezione, e non sei autorizzato a esercitare nessuno dei diritti previsti da questo accordo a meno che Meta non ti conceda espressamente tali diritti.

puoi abbandonare qualsiasi sogno che potresti avere di diventare miliardario scrivendo Virtual Girl/Boy Friend basato su Llama. Mark Zuckerberg ti ringrazierà per aiutarlo ad accumulare altri miliardi.

Inoltre: l’IA è molto simile allo streaming. Gli add-on si sommano rapidamente.

Ora, esistono effettivamente alcuni LLM open-source veri, come Falcon180B. Tuttavia, quasi tutti i principali LLM commerciali non sono adeguatamente open-source. Tieni presente che tutti i principali LLM sono stati addestrati su dati aperti. Ad esempio, GPT-4 e la maggior parte degli altri grandi LLM ottengono una parte dei loro dati da CommonCrawl, un archivio di testo che contiene petabyte di dati estratti da Internet. Se hai scritto qualcosa su un sito pubblico – un augurio di compleanno su Facebook, un commento su Linux su Reddit, una menzione su Wikipedia o un libro su Archives.org – se è stato scritto in HTML, è probabile che i tuoi dati siano presenti lì.

Quindi, l’open source è destinato a essere sempre damigella d’onore e mai sposa nel settore dell’IA? Non così in fretta.

In un documento interno trapelato da Google, un ingegnere di IA di Google ha scritto: “La scomoda verità è che non siamo in posizione di vincere questa corsa agli IA generative, e neanche OpenAI. Mentre stavamo litigando, una terza fazione ci ha silenziosamente sottratto il pranzo.”

Il terzo giocatore? La comunità open-source.

Come si scopre, non è necessario avere cloud di iperscala o migliaia di GPU di alta qualità per ottenere risposte utili da AI generative. Infatti, è possibile eseguire LLM su uno smartphone: le persone stanno eseguendo modelli di base su un Pixel 6 a cinque token LLM al secondo. Puoi anche sintonizzare in modo personalizzato un’IA sul tuo laptop in una serata. Quando puoi “personalizzare un modello di linguaggio in poche ore su hardware consumer”, ha notato l’ingegnere, “è una grande cosa”. Di sicuro.

Inoltre: l’etica dell’IA generativa: come possiamo sfruttare questa potente tecnologia.

Grazie a meccanismi di sintonizzazione fine, come l’adattamento open-source a basso rango di Hugging Face (LoRA), puoi eseguire la sintonizzazione fine del modello a una frazione del costo e del tempo di altri metodi. Quanto di una frazione? Come ti suona personalizzare un modello di linguaggio in poche ore su hardware consumer?

L’ingegnere di Google ha aggiunto:

Parte di ciò che rende LoRA così efficace è che – come altre forme di sintonizzazione fine – è impilabile. Miglioramenti come la sintonizzazione delle istruzioni possono essere applicati e quindi sfruttati mentre altri contributori aggiungono dialogo, ragionamento o utilizzo degli strumenti. Mentre le singole sintonizzazioni fini sono a basso rango, la loro somma non deve esserlo, consentendo gli aggiornamenti a rango completo al modello che si accumulano nel tempo. Ciò significa che man mano che diventano disponibili set di dati e compiti nuovi e migliori, il modello può essere tenuto aggiornato a basso costo senza mai dover pagare il costo di un’intera esecuzione.

Il nostro programmatore misterioso ha concluso: “Concorrere direttamente con il software open source è una proposta perdente… Non dovremmo aspettarci di poterli raggiungere. L’internet moderno si basa sull’open source per una ragione. L’open source ha alcuni vantaggi significativi che non possiamo replicare.”

Inoltre: Estendere ChatGPT: I plugin di AI chatbot possono davvero cambiare il gioco?

Trent’anni fa, nessuno avrebbe mai immaginato che un sistema operativo open source potesse spodestare sistemi proprietari come Unix e Windows. Forse ci vorrà molto meno di tre decenni per un programma AI completamente aperto a sovrastare i programmi semi-proprietari che stiamo usando oggi.