L’Ai as a service o AIaaS – ossia l’adozione dell’intelligenza artificiale tramite servizi cloud – è un servizio offerto da fornitori terzi che consente alle aziende di incorporare strumenti e funzionalità basati sull‘intelligenza artificiale nei loro sistemi.
L’AIaaS è un modello a basso rischio e conveniente perché le aziende possono implementare l’IA senza investire risorse per costruirla e implementarla da zero.
L’AIaaS ha l’obiettivo di rendere l’IA accessibile e conveniente per tutti. È un modello di servizio che permette l’ingresso a questo tipo di tecnologia ad organizzazioni di diverse dimensioni (PMI o grandi gruppi), con disponibilità economiche differenti, tecnologicamente avanzate o meno. Guida i suoi utenti attraverso il processo di sviluppo, distribuzione o utilizzo di modelli di analisi dei dati senza la necessità di apprendere algoritmi o tecnologie complesse.
Le diverse tipologie di AIaaS
Esistono diverse tipologie di AIaaS, che possiamo qui sintetizzare in:
- Bots e assistenti virtuali: questi modelli rappresentano tipologie di AI conversazionale, cioè che utilizzano il deep learning, gli algoritmi di apprendimento automatico e la tecnologia del natural language processing (NLP) per imparare attraverso le iterazioni umane, possiedono “l’abilità” di migliorare ad ogni interazione e offrire una esperienza più naturale e personalizzata. Queste soluzioni sono utilizzate dalle organizzazioni per il customer self-service utili alla risoluzione di problemi o la visualizzazione di risposte a domande frequenti. Altri esempi possono essere i customer service chatbots su portali web, piattaforme live chat e di messagistica etc.
- Machine learning frameworks: sono librerie e strumenti software basati sul cloud che consentono agli sviluppatori di creare modelli di intelligenza artificiale personalizzati, i fornitori di AIaaS offrono framework di ML precostituiti che consentono alle aziende di addestrare e distribuire facilmente questi modelli di AI senza dover spendere risorse interne di sviluppo.
- Application programming interfaces: le interfacce di programmazione delle applicazioni (API) consentono a diverse applicazioni e sistemi software di comunicare, interagire e condividere informazioni, i fornitori di questa tipologia di servizio permettono alle organizzazioni che ne fanno uso di collegare ai propri sistemi, senza dover costruire direttamente i modelli di intelligenza artificiale. Ad esempio, le aziende possono integrare bot e assistenti vocali con il proprio software di live chat o sito web senza bisogno di codice.
- AI of Things: l’intelligenza artificiale degli oggetti connessi a Internet incorpora la capacità di apprendimento automatico nell’IoT, analizzando i dati per identificare i modelli, raccogliere informazioni operative, rilevare e risolvere i problemi. I dispositivi AIoT possono inviare informazioni rilevanti al cloud (con l’autorizzazione dell’utente) per contribuire alle prestazioni di un prodotto. I fornitori offrono servizi di previsione che consentono ai dispositivi IoT di prevedere quando una macchina e un’apparecchiatura potrebbero aver bisogno di manutenzione, aiutando le aziende a evitare costose interruzioni.
Applicazioni cloud e intelligenza artificiale
Le applicazioni del cloud computing che adottano l’intelligenza artificiale rappresentano un campo significativo della innovazione.
I tool e i servizi di intelligenza artificiale che si basano su cloud condividono con esso le principali caratteristiche della sua architettura, ciò comporta che in alcuni casi ne hanno ereditato vantaggi e svantaggi, presentando, tuttavia, anche tratti unici che permettono alle organizzazioni di integrarli nei propri processi in modo efficiente.
Lo sviluppo e l’addestramento di modelli di intelligenza artificiale sono operazioni complesse e costose, cosa che rende questi modelli, proprietà intellettuale di alto valore per le organizzazioni che li producono.
I principali tratti di questi strumenti includono caratteristiche ereditate dal cloud, quali l’astrazione della complessità, l’automazione e la personalizzazione, adattate specificamente per i servizi di AI.
Caratteristiche dell’AIaaS ereditate dal cloud
- Astrazione tra la risorsa e l’infrastruttura sottostante: come parte dell’ecosistema cloud, i servizi AIaaS (Artificial Intelligence as a Service) nascondono la complessità dell’infrastruttura sottostante, permettendo alle organizzazioni di concentrarsi sull’utilizzo delle funzionalità AI senza dover gestire l’hardware o la configurazione di dettaglio del servizio.
- Scalabilità: i servizi AI basati su cloud offrono una scalabilità elastica, consentendo agli utenti di aumentare o diminuire le risorse di calcolo in base alle proprie esigenze senza dover investire in hardware aggiuntivo o sottoutilizzare le risorse esistenti.
- Personalizzazione: fornisce agli utenti la possibilità di creare, configurare, modificare e controllare i diversi modelli di IA, cosa che permette l’ottimizzazione dei modelli in base alle proprie esigenze. Diverse ricerche hanno dimostrato come esista un forte legame che permette un crescente miglioramento delle prestazioni dei modelli di intelligenza artificiale all’aumentare della personalizzazione degli stessi.
Queste caratteristiche consentono alle organizzazioni di sfruttare l’intelligenza artificiale in modo efficace, riducendo la barriera del costo iniziale per l’adozione di tecnologie avanzate e migliorando la flessibilità operativa e finanziaria.
In particolare, l’astrazione, cioè la separazione virtuale tra la risorsa utilizzata e l’infrastruttura sottostante riveste un’importanza cruciale in questo contesto; infatti, questo approccio consente di condividere le stesse risorse per diverse esecuzioni e processi, cosa che permettere di efficientare la potenza di calcolo.
Infatti, la scalabilità delle risorse gioca un ruolo fondamentale, permettendo di allocare rapidamente risorse aggiuntive per gestire operazioni in parallelo e picchi di carico, stante che gli algoritmi di intelligenza artificiale si basano su una vasta mole di dati e richiedono risorse computazionali significative.
La scalabilità è quindi essenziale perché i requisiti di risorse variano notevolmente a seconda delle fasi dell’operazione: ad esempio, il training dei modelli può richiedere una potenza di calcolo molto maggiore rispetto alla fase di esecuzione, ma solo per un breve periodo.
Altri elementi da considerare sono:
- il modello di “pricing” che solitamente in questo ambito è basato sul consumo, ciò consente ai fruitori di monitorare e controllare la spesa. I servizi AIaaS permettono di sfruttare le economie di scala, eliminando la necessità di investimenti iniziali in hardware, costi di manutenzione e aggiornamenti. Questo approccio consente alle organizzazioni di usufruire dei servizi di intelligenza artificiale a costi contenuti, migliorando la flessibilità e l’accessibilità di queste tecnologie avanzate.
- il know-how tecnico per sviluppare applicazioni AI proprietarie non è facilmente accessibile alle organizzazioni, soprattutto alle PMI, a causa della scarsità di professionisti specializzati nel mercato del lavoro. Pertanto, i servizi AIaaS semplificano l’uso dell’AI attraverso l’astrazione della complessità, ciò permette di utilizzare questi strumenti in modo black box, senza dover comprendere i dettagli e il funzionamento preciso dei processi sottostanti o dell’hardware su cui vengono eseguiti.
In particolare, quest’ultima caratteristica consente alle organizzazioni di ridurre il time-to-market nell’integrazione dei servizi AIaaS nei propri processi. Invece di partire da zero nello sviluppo di un modello AI, può essere selezionate un servizio con il grado di astrazione desiderato e concentrarsi, semplicemente, sulla sua configurazione e la sua personalizzazione.
I servizi AIaaS permettono alle organizzazioni di avviare rapidamente sperimentazioni e analisi di fattibilità sui processi desiderati, per poi evolvere verso soluzioni più personalizzate o proprietarie se necessario.
Quanto abbiamo indicato relativamente l’astrazione si estende anche alla base dati utilizzata per l’addestramento del modello, permettendo alle organizzazioni di utilizzare modelli pre-addestrati forniti direttamente dai provider senza dover gestire la raccolta e la preparazione dei dati.
In pratica, questa caratteristica permette di trasferire dall’organizzazione al fornitore i seguenti elementi:
- la responsabilità e i costi associati alla gestione e manutenzione dell’hardware,
- l’aggiornamento e all’addestramento del modello,
- l’assunzione di personale specializzato.
I servizi AIaaS implementano diversi sistemi di automazione che ottimizzano autonomamente i modelli di AI in base all’utilizzo, gestendo sia le risorse hardware che il loro carico, senza richiedere interventi manuali. Questa si esplica nei seguenti modi:
- strumenti integrati per ottimizzare i parametri del modello e i dati di addestramento riducendo la necessità di interventi manuali da parte dell’utente;
- processi automatici per gestire le risorse necessarie all’esecuzione dei modelli AI, anche quelli personalizzati, adattando automaticamente l’infrastruttura virtuale alle specifiche esigenze degli algoritmi AI.
- la gestione dei guasti e le procedure di disaster recovery, garantendo la continuità del servizio.
L’automazione di questi servizi migliora l’accuratezza delle prestazioni ottenute e riduce il costo computazionale necessario per eseguirle. Inoltre, assicura un basso rischio di interruzione del servizio, contribuendo a mantenere elevati i livelli di affidabilità.
Strumenti AIaaS avanzati per gli utenti
I servizi AIaaS non solo semplificano l’adozione dell’AI per le organizzazioni con competenze tecniche limitate, ma offrono anche strumenti avanzati per gli utenti esperti per creare, modificare, addestrare e configurare i propri algoritmi di AI.
Esistono diversi metodi, alcuni di essi sono:
- Il fine-tuning permette agli utenti di personalizzare modelli pre-addestrati utilizzando dati personali o specifici del dominio, migliorandone così le prestazioni in ambiti specifici. È un processo in cui un modello AI pre-addestrato viene adattato a un dominio specifico mediante due fasi principali:
- l’adattamento al dominio
- la configurazione dei parametri.
Questo processo, sebbene ottimizzi le prestazioni per un determinato dominio, potrebbe limitare le capacità del modello al di fuori di esso.
- il grounding, un metodo per estendere la conoscenza di un Large Language Model con informazioni specifiche del caso d’uso senza ulteriori addestramenti costosi. Questo approccio permette di personalizzare rapidamente e in modo economico un modello AI senza compromettere le sue prestazioni generali.
Oltre all’adattamento dei modelli pre-esistenti, i servizi AIaaS consentono anche la creazione di modelli proprietari utilizzando componenti fornite dal provider o da terze parti. I clienti possono usufruire di piattaforme di sviluppo e testing integrate per semplificare l’implementazione dei modelli e beneficiare delle risorse scalabili fornite dal provider per tutte le fasi del ciclo di vita del modello.
Dopo lo sviluppo, i modelli di AI possono essere facilmente distribuiti attraverso i servizi AIaaS per integrarli nei processi aziendali, mantenendo i vantaggi delle architetture cloud in termini di scalabilità e gestione delle risorse.
In conclusione, i servizi AIaaS consentono agli utenti, sia con competenze limitate che avanzate, di personalizzare e implementare modelli di AI adatti alle loro esigenze specifiche, sfruttando al contempo i benefici delle soluzioni cloud.
Architettura di servizi AI
I servizi di intelligenza artificiale basati su cloud adottano modelli di erogazione simili a quelli classici del cloud computing, ovvero SaaS, PaaS e IaaS.
Software as a Service (SaaS)
Nella categoria SaaS, la più diffusa per i servizi di intelligenza artificiale, si includono applicazioni pronte all’uso o componenti integrabili nei processi aziendali. Questi strumenti consentono di utilizzare modelli di AI pre-addestrati o metodi di machine learning, rimuovendo la necessità per gli utenti finali di addestrare e configurare i modelli stessi. I provider offrono quindi modelli proprietari o sviluppati da terze parti direttamente agli utenti finali.
I servizi AI SaaS possono essere suddivisi in due macrocategorie:
- Tool di AI: applicazioni complete per la risoluzione di specifici compiti di AI. Alcuni esempi noti includono:
- Grammarly: supporta gli utenti nella correzione e nel miglioramento dei testi.
- Midjourney: consente la generazione di immagini basate su descrizioni fornite.
- GitHub Copilot: strumento di supporto allo sviluppo software integrato negli ambienti di sviluppo (IDE), sviluppato da GitHub e OpenAI.
- Applicazioni integrabili nei processi: servizi SaaS che richiedono l’integrazione in un’applicazione o processo esistente. Questi strumenti fungono da blocchi funzionali all’interno di un più ampio contesto operativo. Due esempi significativi includono:
- AI Builder di Microsoft: parte della piattaforma Power Platform, offre modelli di AI pre-addestrati integrabili per processi come la categorizzazione dei testi o l’analisi del sentiment.
- Dynamics 365 Copilot: Chat Bot basato su modelli GPT di OpenAI, integrabile nelle applicazioni basate su Dynamics 365 di Microsoft. Offre personalizzazione limitata ma può essere ottimizzato per comprendere specifiche richieste o svolgere compiti come la scrittura di e-mail o il riassunto di testi.
Il principale vantaggio di questi servizi è l’accessibilità anche per organizzazioni con limitate competenze tecniche in AI, consentendo loro di utilizzare o integrare strumenti avanzati senza la necessità di conoscenze specialistiche. Tuttavia, offrono limitate opzioni di personalizzazione, obbligando i clienti ad accettare le funzionalità e le limitazioni definite dal provider.
Platform as a Service (PaaS)
Il modello PaaS offre una piattaforma dedicata allo sviluppo e alla personalizzazione di soluzioni AI. Gli sviluppatori sono assistiti nel creare le proprie soluzioni o nel modificare modelli di AI pre-addestrati. Una volta sviluppato, lo strumento può essere distribuito attraverso il servizio PaaS come un’applicazione richiamabile on-demand, integrabile direttamente nei processi aziendali.
Questi servizi consentono di eseguire operazioni di fine-tuning per adattare il modello ai dati specifici dell’utente, quali ad esempio configurare i parametri del modello per ottimizzarlo secondo le necessità specifiche. Inoltre, il PaaS fornisce le risorse necessarie per eseguire queste operazioni e un ambiente di sviluppo e testing per verificare il corretto funzionamento del prodotto.
Il PaaS è particolarmente indicato per le organizzazioni che desiderano adottare strumenti di AI personalizzati per i loro casi d’uso specifici. Grazie alla piattaforma di supporto fornita, semplifica le attività di sviluppo senza richiedere competenze specifiche sul funzionamento interno del modello di AI di base.
Infrastructure as a Service (IaaS)
I servizi di AI basati su IaaS si concentrano sull’offerta di un’infrastruttura virtuale che fornisce agli utenti la potenza computazionale necessaria per sviluppare, addestrare e testare soluzioni di AI personalizzate. Questi servizi includono capacità di rete, spazio di archiviazione dei dati e hardware ottimizzato per eseguire applicazioni di AI, come GPU per l’addestramento, che sono significativamente più performanti rispetto alle tradizionali CPU in questo contesto. Inoltre, offrono accesso a database non relazionali NoSQL, ideali per la memorizzazione di dati non strutturati utili per l’addestramento dei modelli.
I vantaggi legati a questo modello di distribuzione del servizio sono:
- la scalabilità delle risorse
- il modello di pagamento basato sul consumo effettivo.
L’addestramento, il testing e l’esecuzione dei modelli di AI sono attività con elevati requisiti computazionali. L’infrastruttura hardware necessaria per l’addestramento richiede prestazioni elevate ma per periodi di tempo relativamente brevi, mentre l’esecuzione del modello può richiedere meno capacità computazionale una volta completate le fasi di addestramento.
Questo approccio evita l’investimento iniziale e i costi continui associati all’installazione e alla manutenzione di infrastrutture on-premise per l’AI, rendendo l’adozione delle tecnologie di AI più conveniente ed efficiente per le organizzazioni.
Ad esempio, OpenAI utilizza i servizi IaaS offerti da piattaforme cloud come Microsoft Azure per l’addestramento e l’esecuzione dei propri processi di AI, sfruttando così la scalabilità e le prestazioni ottimizzate offerte da queste infrastrutture cloud.
Adozione dell’AI come un servizio cloud: vantaggi e sfide
L’adozione dell’intelligenza artificiale tramite servizi cloud può presentare diverse sfide, come ogni servizio, anche l’AIaaS presenta una serie di elementi favorevoli ed aspetti di rischio.
I vantaggi di questa tecnologia possono essere sintetizzati nel seguente modo:
- Aumento della produttività e dell’efficienza del team: strumenti come il routing, il triage intelligenti, l’intelligenza artificiale generativa e l’analisi del sentiment aiutano a snellire i flussi di lavoro e a migliorare le competenze del team, con un conseguente aumento della produttività senza bisogno di personale aggiuntivo.
- Miglioramento della customer experience: le aziende implementando soluzioni di AiaaS per l’assistenza personalizzata e conversazionale, quali l’uso di chatbots per rispondere a domande generiche, formulare raccomandazioni ai clienti, migliora la produttività degli agenti e fornisce ai clienti un’assistenza 24 ore su 24, 7 giorni su 7.
- Riduzione dei costi: l’AIaaS è un modo economicamente vantaggioso per le aziende di utilizzare funzionalità AI plug-and-play per stare al passo con l’evoluzione delle tendenze aziendali e delle aspettative dei clienti, senza dover sostenere ingenti spese IT.
- Scalabilità: le piccole imprese e le startup possono avere bisogno di più denaro e risorse rispetto alle aziende consolidate per implementare l’IA internamente, l’uso di modelli di AIaaS consente alle aziende di tutte le dimensioni di implementare l’IA.
I rischi collegati a queste soluzioni possono, invece presentarsi in relazione ai seguenti aspetti che devono essere presi in considerazione al momento della scelta di un fornitore di AIaaS, quali:
- Sicurezza dei dati: i servizi AIaaS ereditano i rischi associati all’uso generale del cloud in termini di sicurezza e privacy dei dati. I software basati sull’AI hanno bisogno di accedere a grandi quantità di dati (i cosiddetti big data) per apprendere e personalizzare l’esperienza del cliente. Il fornitore di AIaaS avrà accesso a queste informazioni sensibili e personali. Pertanto, il fornitore scelto deve disporre di un software avanzato per la privacy e la protezione dei dati per ridurre al minimo il rischio di esporre le informazioni durante una violazione della sicurezza. Poiché i dati sono memorizzati e gestiti dal provider cloud, gli utenti finali non hanno accesso diretto per implementare strategie di mitigazione dei rischi. Ciò può portare a violazioni dei dati o alla perdita di modelli creati attraverso servizi PaaS o IaaS.
- Vendor lock-in: nel contesto dell’AI, il vendor lock-in diventa ancora più critico rispetto al cloud tradizionale. Questo perché molti provider offrono soluzioni AI complete con modelli proprietari addestrati su dati raccolti internamente. Cambiare provider cloud significa non solo affrontare i costi di migrazione, ma anche adattare i processi legati ai modelli AI offerti dal nuovo provider.
- Modelli pre-addestrati: l’uso di modelli pre-addestrati proprietari potrebbero non avere trasparenza sui dettagli del processo di addestramento, compreso il tipo di dati utilizzati. L’uso di dati inaffidabili, parziali o non etici, può comportare l’ottenimento di risultati e processi decisionali imprecisi. Questo può comportare rischi significativi in termini di qualità dei risultati e potenziali errori del modello. È fondamentale condurre test approfonditi per verificare l’accuratezza del modello, anche se già completato.
- Conformità agli standard normativi: stante che le normative che regolano l’uso dell’IA possono variare a seconda dei settori o delle località, è importante scegliere un fornitore di di AIaaS che sia trasparente e proattivo nel condividere qualsiasi cambiamento di conformità.
Bibliografia
Artificial Intelligence as a Service, Sebastian Lins • Konstantin D. Pandl • Heiner Teigeler • Scott Thiebes •Calvin Bayer • Ali Sunyaev, Springer, 2021