In quasi tutte le applicazioni di intelligenza artificiale generativa per l’addestramento o l’inferenza oggi, è probabile che troverai i contenitori Docker come l’approccio principale alla distribuzione.
Oggi, alla conferenza Dockercon di Los Angeles, Docker Inc., l’azienda dietro la tecnologia dei contenitori Docker open source, sta facendo un profondo ingresso nel mondo dell’intelligenza artificiale con una serie di iniziative progettate per aiutare gli sviluppatori a creare applicazioni di intelligenza artificiale generativa in modo più rapido ed efficiente.
Tra queste iniziative c’è il lancio di un nuovo stack chiamato GenAI, che integra Docker con il database a grafo Neo4j, la tecnologia di concatenamento di modelli LangChain e Ollama per l’esecuzione di modelli linguistici di grandi dimensioni (LLM). Un altro nuovo prodotto chiamato Docker AI sarà presentato durante Dockercon, offrendo agli sviluppatori un modo integrato per ottenere indicazioni basate sull’intelligenza artificiale per lo sviluppo con i contenitori.
L’importanza cruciale di Docker nell’ecosistema moderno di sviluppo non può essere sottovalutata, e questi nuovi sforzi nell’intelligenza artificiale potrebbero avere un impatto significativo sullo sviluppo di GenAI. Docker ha intensificato la sua attenzione verso gli sviluppatori negli ultimi anni, uno sforzo che, secondo il CEO dell’azienda, sta dando buoni risultati.
“Per quattro anni consecutivi, la comunità di sviluppatori di Stack Overflow ci ha votato come il tool di sviluppo più desiderato e amato”, ha dichiarato il CEO di Docker, Scott Johnston, a VentureBeat. “E ora stiamo raggiungendo i 20 milioni di sviluppatori attivi mensilmente provenienti da tutto il mondo.”
Nonostante l’ampio utilizzo dei contenitori Docker per la distribuzione dell’intelligenza artificiale, Johnston ha sottolineato la necessità di semplificare lo sviluppo delle applicazioni GenAI.
Le applicazioni GenAI richiedono generalmente alcuni elementi essenziali, come un database vettoriale, che ora è incluso nella piattaforma di database a grafo Neo4j. Inoltre, GenAI richiede un LLM, che è fornito da Ollama con la sua piattaforma che consente l’esecuzione locale di LLM, incluso Llama 2. Le moderne applicazioni GenAI spesso coinvolgono più passaggi, ed è qui che LangChain si integra nel suo framework. Con lo stack GenAI, la configurazione e il funzionamento congiunto di tutti questi diversi componenti contenuti nei contenitori diventano notevolmente più semplici.
Lo stack Docker GenAI è stato progettato per agevolare gli sviluppatori e le aziende nella creazione più agevole di applicazioni di intelligenza artificiale utilizzando i contenitori. Con lo stack GenAI, si possono affrontare diverse situazioni d’uso, tra cui la creazione di un assistente di supporto con funzionalità di “retrieval augmented generation” (RAG), un assistente di codifica Python e la generazione automatizzata di contenuti.
“È preconfigurato, è pronto e gli sviluppatori possono iniziare a scrivere codice e a sperimentare”, ha affermato Johnston.
L’intero stack è progettato per essere eseguito localmente su un sistema di sviluppo ed è disponibile gratuitamente. Con il tempo, quando gli sviluppatori avranno bisogno di distribuzione e supporto commerciali per le loro applicazioni, Docker e i suoi partner offriranno opzioni.
Attualmente, ci sono molti strumenti per sviluppatori GenAI sul mercato, tra cui popolari opzioni come GitHub Copilot e Amazon CodeWhisper.
Docker sta ora entrando in questa competizione con il proprio strumento GenAI, chiamato semplicemente Docker AI. Invece di utilizzare il termine “copilota” come fanno sempre più spesso Microsoft e altri fornitori per gli strumenti GenAI che assistono gli utenti, Docker utilizza il termine “tuta meccanica”. L’idea di base è che con questa tuta meccanica, gli sviluppatori hanno più potenza e capacità per svolgere i loro compiti.
Docker AI è stato addestrato sui dati proprietari di Docker provenienti da milioni di Dockerfile, file di composizione e log degli errori. Docker AI si integra direttamente nei flussi di lavoro degli sviluppatori per fornire assistenza quando si verificano errori. Mostra potenziali correzioni all’interno dell’ambiente di sviluppo e consente agli sviluppatori di testare le correzioni prima di apportare modifiche. L’obiettivo è creare un’esperienza migliore che consenta agli sviluppatori di risolvere i problemi in modo più efficace.
Johnston ha notato che, sebbene strumenti come GitHub Copilot siano utili e potenti, Docker AI è specificamente ottimizzato per supportare lo sviluppo di contenitori.
“È stato addestrato su un ricco flusso di dati proprietari Docker a cui altri LLM non hanno accesso”, ha affermato.