Di recente, E4 Analytics, startup “sister company” di E4 Computer Engineering, ha reso disponibile Urania, soluzione end-to-end per Big Data Analytics e Artificial Intelligence su larga scala orchestrata con kubernetes. Per sapere in dettaglio quali sono le sue potenzialità e le possibilità di utilizzo (anche con l’AI generativa) abbiamo intervistato Mario Rosati, CEO di E4 Analytics.
Chi è E4 Analytics?
È una startup che nasce nel 2018 dall’intuizione che l’analisi dati su larga scala e l’intelligenza artificiale avrebbero avuto tra i fattori abilitanti l’high performance computing, ambito in cui da sempre opera E4 Engineering. Oggi, E4 Analytics realizza piattaforme software che poi E4 engineering commercializza con i sistemi HPC.
Come nasce l’idea di una soluzione come Urania?
Fin dall’inizio abbiamo scelto di basare le nostre piattaforme su tecnologie cloud native, quindi container e kubernetes. Il container offre svariati vantaggi e si presta ad attività high performance perché, a differenza di una macchina virtuale, può andare direttamente sulle risorse hardware senza strati intermedi che potrebbero limitare le prestazioni.
La scelta di kubernetes si basa sul fatto che la grande quantità di calcoli necessaria per addestrare i modelli di intelligenza artificiale non può che essere effettuata in parallelo. E l’unico modo per avere un sistema di orchestrazione di container che utilizzi più server contemporaneamente è usare kubernetes. In realtà, kubernetes non nasce per l’high performance perché nativamente non supporta il GPU computing e il networking ad alte prestazioni. Abbiamo perciò costruito un kubernetes ad hoc, introducendo i componenti necessari per dare pieno supporto al GPU computing e al networking a larga banda e bassa latenza.
Abbiamo aggiunto un ulteriore componente. Siccome gestire kubernetes non è sempre semplice, abbiamo introdotto un’interfaccia grafica accessibile da web che ne facilita l’amministrazione e l’utilizzo.
Questa è la base su cui è stata sviluppata Urania, oggetto in cui si possono inserire ulteriori componenti per avere una piattaforma adatta al data scientist e al data engineer.
La prima versione, chiamata GAIA (acronimo di GPU appliance per l’intelligenza artificiale), era più piccola ed era sostanzialmente lo stesso tipo di progetto però limitato al singolo nodo. Era un oggetto scalabile verticalmente aggiungendo più GPU nel server che lo ospita.
Urania estende questo concetto fornendo una possibilità in più: avere sistemi di data processing distribuiti dove idealmente un cluster di container esposti su nodi diversi coopera alla singola elaborazione parallela. In questo modo, si ottiene non solo una scalabilità verticale con più GPU sul singolo modo ma anche una scalabilità orizzontale, con più nodi realizzati allo stesso modo che possono cooperare.
È evidente che l’Ai generativa è un po’ il caso d’uso a cui bene si presta Urania, soprattutto se si intende usare l’AI generativa on premise. Stiamo poi lavorando sulla realizzazione dei primi sistemi di AI generativa specializzati su singoli settori o su singole aziende.
Avete richieste specifiche? State puntando su settori particolari?
Siamo in uno stato iniziale e le aziende, soprattutto quelle medio-grandi, stanno guardando con attenzione a questi sistemi perché hanno un ampio campo di impiego. L’utilizzo prevalente che se ne fa oggi è attraverso le API esposte da OpenAI piuttosto che da Microsoft o Google. Una tematica a cui molti nostri clienti prestano interesse è invece quella di avere sistemi che girino localmente, che possano inglobare una conoscenza su cui si vuole privacy assoluta. Per esempio, un ambito è quello della realizzazione di sistemi che possano essere di supporto al manutentore quando si trova di fronte un macchinario complesso. Una sorta di assistente virtuale a cui porre domande. Oggi in linguaggio naturale e magari tra un po’ anche tramite la voce.
C’è una vera esplosione di attenzione attorno all’AI. Ma le aziende sanno effettivamente qual è il reale valore o sono interessate soprattutto perché ne sentono parlare?
Dipende dalle aziende. Quelle medio-grandi hanno intuito le potenzialità e stanno cercando il percorso per arrivare a sfruttarle nel loro ciclo produttivo. C’è però un aspetto da sottolineare: tutte le aziende che hanno il know-how per rendersi conto dell’importanza di queste cose avevano avviato una strategia cloud, magari usavano l’AI per il forecasting.
Oggi però, l’evoluzione dell’uso dell’AI generativa pone un problema: valutare se il cloud è l’ambiente ideale. Questo perché fino a quando si sono usati i sistemi per il forecasting probabilmente la potenza di calcolo richiesta non era enorme e quindi il modello cloud poteva essere conveniente dal punto di vista economico. Oggi, invece, il costo dell’infrastruttura anche sul cloud è importante perché il GPU computing è costoso di per sé. Quindi il modello cloud, che deve comunque prevedere economie di scala, non è più molto conveniente.
C’è un altro tema: la privacy. Se, per esempio, si devono addestrare dei modelli per una ricerca sulla knowledge aziendale oppure se si deve fare il fine tuning di tali modelli con informazioni interne, avere tutto in casa garantisce il rispetto della privacy.
Le grandi aziende hanno capito che non va sottovalutato l’aumento di produttività che si può ottenere grazie a questi sistemi intelligenti. Questo vale per il coding, per la generazione di documenti e un po’ per tutto quello che riguarda la parte di generazione. I casi di uso sono tantissimi e molto del potenziale è ancora inesplorato.
Va però tenuto presente che la potenza di calcolo necessaria per addestrare uno modelli di uso generale è disponibile soltanto per gli over the top, nemmeno un’azienda enterprise se lo può permettere. Per cui l’unico modo per avere un modello in casa è partire da uno Foundation open source e specializzarlo per le proprie esigenze. da un punto di vista di calcolo, l’operazione di specializzazione è molto meno costosa di quella di generazione del modello Foundation e quindi è alla portata di un’impresa-medio grande.
In questo momento, si sta cercando di sviluppare modelli Foundation più piccoli in termini di parametri che li determinano e quindi gestibili con risorse hardware più contenute. Questo consente di averli on premise in maniera tale da non esporli a una serie di minacce di sicurezza e di mantenere la privacy dei dati.
Per come sta velocemente evolvendo l’AI, un sistema oggi ottimo potrebbe essere domani inutile. Qual è la vostra posizione a riguardo?
Urania è un sistema pensato per operare con AI modulare ed è completamente basato su componenti open source. È stato realizzato con alcuni dei più diffusi standard del settore e siamo riusciti a integrare in tempi brevi anche tutti i più interessanti componenti usciti negli ultimi mesi. Per cui siamo confidenti che le scelte fatte stiano pagando. Una parte del nostro lavoro è chiaramente dedicata anche all’evoluzione della piattaforma. E l’apertura che ha la soluzione è tale che, qualora siano resi disponibili componenti che si adattano particolarmente bene, cercheremo di portarli all’interno della piattaforma.
In tal senso, va precisato che ai nostri clienti non forniamo soltanto l’hardware con la piattaforma pronta ma anche un servizio di aggiornamento semestrale. Abbiamo delle persone che si occupano in modo specifico dell’evoluzione di Urania seguendo le novità in tema AI del mercato open source. Ognuna di tali novità viene studiata e portata all’interno della piattaforma quando ha senso farlo, cioè quando effettivamente ha alle spalle una comunità che fornisce sicurezza nella continuità dello sviluppo del prodotto offrendo documentazione di qualità.