Cos'è l'inferenza dell’IA?
L'inferenza dell’IA è il momento in cui un modello di IA fornisce una risposta basata sui dati. Quella che genericamente chiamiamo IA è in realtà il prodotto dell'inferenza, il momento risolutivo con il quale si conclude un processo più lungo e complesso di machine learning.
L'addestramento dei modelli di IA con dati sufficienti aiuta a migliorare la velocità e la precisione dell'inferenza IA.
Ad esempio, affinché un modello di IA, addestrato con dati relativi agli animali come le differenze e le somiglianze, i comportamenti o le condizioni di salute, riesca a creare connessioni e a identificare schemi, è necessario un set di dati di grandi dimensioni.
Se l'addestramento è efficace, il modello può generare le inferenze, ad esempio identificare una razza canina, riconoscere il miagolio di un gatto o perfino segnalare la possibilità che un cavallo imbizzarrisca. Benché non abbia mai interagito con questi animali se non all'interno di un set di dati astratti, la quantità dei dati utilizzati per addestrare il modello consente di generare inferenze in un nuovo ambiente e in tempo reale.
Funzionano così anche le connessioni elaborate dal cervello umano. Libri, film e risorse online possono fornirci informazioni sui diversi animali. Possiamo guardare immagini e video e ascoltare i suoni emessi dagli animali. Quando poi visitiamo uno zoo, siamo capaci di inferire e di riconoscere un tipo di animale specifico. Anche se non siamo mai stati prima in un giardino zoologico, riusciremo a identificare l'animale grazie alle ricerche che abbiamo svolto. È lo stesso processo che mettono in atto i modelli di IA durante un'inferenza.
Scopri le novità e i prossimi sviluppi di Red Hat AI durante il prossimo evento dal vivo. Segui la prossima sessione live.
L'importanza dell'inferenza dell’IA
L'inferenza IA è la fase operativa dell'intelligenza artificiale, ovvero il momento in cui il modello è in grado di applicare alle situazioni concrete ciò che ha appreso dall'addestramento. È questa abilità nell'identificare schemi e giungere a conclusioni che differenzia l'intelligenza artificiale dalle altre tecnologie. Questa capacità di dedurre può rivelarsi utile tanto nelle attività pratiche quotidiane quanto nella programmazione informatica più complessa.
Tuttavia, l'inferenza subisce molta pressione da modelli che continuano a crescere. Man mano che i modelli aumentano di complessità, l'inferenza diventa più lenta.
Affinché l'inferenza abbia successo, i modelli di IA devono eseguire molti calcoli in un breve periodo di tempo. Pertanto, fattori come le dimensioni del modello, il volume elevato degli utenti e la latenza possono limitare le prestazioni. Quando i modelli richiedono più dati e più memoria, hardware e acceleratori faticano a tenere il passo.
Ecco perché l'hardware e il software che supportano le tue funzionalità di inferenza dell'IA aziendale possono determinare il successo o il fallimento della tua strategia di IA.
Red Hat AI
Scenari di utilizzo dell'inferenza IA
A livello aziendale, l'inferenza IA può rivelarsi utile in numerose situazioni. Di seguito alcuni esempi.
Sanità: L'inferenza IA può aiutare gli operatori sanitari a confrontare l'anamnesi dei pazienti con i dati attuali e a individuare schemi e anomalie più rapidamente rispetto agli esseri umani. Come ad esempio un valore anomalo in un esame cerebrale o un battito cardiaco lievemente aritmico. L'inferenza IA può riconoscere i segnali che minacciano la salute del paziente con largo anticipo e in tempi più brevi.
Settore finanziario: se addestrata con set di dati di grandi dimensioni in ambito bancario e creditizio, l'inferenza IA sarà in grado di identificare errori o dati insoliti in tempo reale, identificando in anticipo le frodi. Ciò permette di ottimizzare le risorse destinate al servizio clienti, di proteggere la privacy dei clienti e di migliorare la reputazione degli operatori del settore.
Settore automotive: Con l'introduzione dell'IA nel mondo delle automobili, le autovetture autonome stanno cambiando il nostro modo di guidare. L'inferenza IA è in grado di individuare i percorsi più efficienti per arrivare a una destinazione da un punto di partenza specifico, o di frenare all'approssimarsi di un segnale di stop, migliorando tanto il comfort quanto la sicurezza dei passeggeri del veicolo.
Molti altri settori utilizzano l'inferenza IA in modi anche creativi. Può essere applicata in un fast food dove ordinare cibo senza scendere dall'auto, in una clinica veterinaria o all'accoglienza in un albergo. Molte aziende trovano nuove modalità per sfruttare questa tecnologia a proprio favore, per migliorare la precisione, risparmiare tempo e denaro e mantenere il proprio vantaggio rispetto ai competitor.
Cos'è l'addestramento dell'IA?
Il processo con il quale i dati vengono utilizzati per insegnare al modello come creare connessioni e identificare schemi è l'addestramento dell'IA. Se l'addestramento è il processo di insegnamento, l'inferenza è il modello IA in azione.
La maggior parte dell'addestramento dell'IA avviene nelle fasi iniziali della creazione del modello. Completato l'addestramento il modello potrà creare connessioni anche con dati mai utilizzati prima. Se il set di dati impiegato per l'addestramento è di grandi dimensioni, il modello potrà generare un numero di connessioni maggiore e quindi inferenze più accurate. Qualora il modello incontrasse difficoltà a produrre inferenze accurate dopo l'addestramento, il fine tuning potrà migliorarne la precisione e aggiungere ulteriori conoscenze.
L'addestramento e l'inferenza IA sono le modalità con le quali l'intelligenza artificiale emula le capacità del cervello umano, come quella di dedurre in base a prove e ragionamenti.
Fattori come le dimensioni del modello possono modificare la quantità di risorse necessarie per manipolare il modello.
Quali sono i diversi tipi di inferenza IA?
Le diverse tipologie di inferenza IA offrono vantaggi in svariati contesti.
- Inferenza batch: l'inferenza batch prende il nome dal modo in cui riceve ed elabora i dati: in grandi gruppi. Questo approccio non produce inferenze in tempo reale, ma elabora i dati in base a una data frequenza, a volte ogni ora o anche giornalmente, secondo la loro quantità e l'efficienza del modello di IA. Possiamo definire queste inferenze anche "inferenze offline" o "inferenze statiche".
Inferenza online: l'inferenza online o "dinamica" può fornire una risposta in tempo reale, ma richiede hardware e software capaci di ridurre i limiti della latenza e di supportare previsioni ad alta velocità. L'utilità dell'inferenza online è tangibile soprattutto all'edge, perché l'intelligenza artificiale lavora in prossimità dei dati, come nel caso di uno smartphone, di un'automobile o di un ufficio remoto con connessione limitata.
ChatGPT di OpenAI è un valido esempio di inferenza online che richiede un notevole supporto operativo iniziale per poter poi fornire risposte rapide e accurate.
- Inferenza in streaming: l'inferenza in streaming descrive un sistema di IA che non viene necessariamente utilizzato per comunicare con gli esseri umani. Invece di prompt e richieste, il modello riceve un flusso costante di dati con i quali può fare previsioni e aggiornare il proprio database interno. Questo tipo di inferenza è in grado di monitorare le modifiche, mantenere la regolarità o anticipare eventuali problemi prima che si verifichino.
Cos'è un server di inferenza IA?
Un server di inferenza IA è il software che permette a un modello di IA di passare dalla fase di addestramento a quella operativa. Si avvale del machine learning per aiutare il modello ad applicare ciò che ha appreso e a utilizzarlo per generare inferenze.
Per ottenere risultati efficienti, è necessario che il server di inferenza IA e il modello di IA siano compatibili. Di seguito alcuni esempi di server di inferenza e i modelli con cui si integrano meglio:
- Server di inferenza multimodale: questo tipo di server di inferenza è in grado di supportare più modelli contemporaneamente e quindi di ricevere dati in forma di codice, immagini o testo e di elaborare le diverse inferenze su un unico server. Utilizzando la GPU e la memoria CPU in modo più efficiente, un server di inferenza multimodale può supportare più di un modello, riuscendo così a rendere più scalabile l'hardware e a ottimizzare i costi.
- Server di inferenza a modello singolo: questo server di inferenza supporta solo un modello, anziché diversi. Il processo di inferenza IA è specializzato nella comunicazione con un modello addestrato per uno scenario di utilizzo esclusivo. Può essere in grado di elaborare i dati in forma di testo o solo in forma di codice. La sua specificità lo rende particolarmente efficiente e in grado di facilitare le decisioni o l'elaborazione di vincoli delle risorse in tempo reale.
Sfide dell'inferenza IA
Scalabilità, risorse e costi sono i principali ostacoli all'esecuzione dell'inferenza IA.
- Complessità: è più semplice insegnare a un modello a eseguire attività semplici come la creazione di un'immagine o la comunicazione a un cliente di una politica di restituzione. Per permettere ai modelli di apprendere dati più complessi, per poi individuare frodi finanziarie o identificare anomalie mediche, durante l'addestramento è necessario fornire più dati e successivamente più risorse che li supportino.
- Risorse: i modelli più complessi richiedono hardware e software specializzati per supportare la grande quantità di elaborazione dei dati che viene eseguita quando un modello genera inferenze. Un componente essenziale di queste risorse è la memoria della CPU, che viene spesso considerata come il centro di controllo del computer. Quando un modello si prepara a utilizzare i dati di addestramento di cui dispone per produrre una risposta, deve poter fare riferimento a questi dati, che si trovano nello spazio di memoria della CPU.
- Costo: tutti questi pezzi del puzzle che rendono possibile l'inferenza IA non sono economici. Se l'obiettivo è la scalabilità o il passaggio al più recente hardware in grado di supportare l'IA, le risorse necessarie a realizzarlo possono rivelarsi consistenti. Restare al passo con l'innovazione dell'IA può quindi risultare difficile per le aziende, perché i costi aumentano in proporzione alla maggiore complessità dei modelli e all'evoluzione dell'hardware.
Un motore di inferenza specifico, noto come vLLM, aiuta a tenere a bada queste sfide. vLLM accelera l'output delle applicazioni di IA generativa sfruttando al meglio la memoria GPU. vLLM è una libreria di codice open source, gestita dalla community vLLM, che consente ai modelli linguistici di grandi dimensioni (LLM) di eseguire calcoli in modo più efficiente e scalabile. Utilizza strumenti come LLM Compressor per accelerare l'inferenza, alleggerendo il lavoro del team e delle risorse.
In che modo vLLM velocizza l'inferenza degli LLM
L'inferenza IA viene utilizzata in scenari di utilizzo con volumi alti e variabili elevate. Tuttavia, per distribuire gli LLM in modo coerente e scalabile è necessario disporre di molta potenza di elaborazione, risorse e competenze operative specializzate. vLLM può risolvere queste sfide utilizzando in modo più efficiente l'hardware necessario per supportare l'inferenza dell'IA in azienda. Questo è il motivo per cui vLLM è particolarmente interessante per i settori che hanno bisogno di flessibilità e controllo, oltre alla velocità.
Essendo una soluzione open source, vLLM consente alle aziende di:
- Possedere e gestire le proprie GPU.
- Controllare i loro dati.
- Sperimentare modelli all'avanguardia non appena vengono rilasciati.
È possibile distribuire vLLM su una vasta gamma di hardware, tra cui GPU NVIDIA e AMD, TPU di Google, Intel Gaudi e AWS Neuron. Inoltre, vLLM non si limita a un hardware specifico, il che significa che funziona nel cloud, nel data center o all'edge.
Scopri come le organizzazioni famose stanno utilizzando vLLM per ottenere una scalabilità efficace in questi 3 scenari di utilizzo reali.
Cos'è l'inferenza distribuita?
Con l'inferenza distribuita i modelli di IA elaborano i carichi di lavoro in modo più efficiente, suddividendo le attività di inferenza su un gruppo di dispositivi interconnessi. È l'equivalente software del proverbio: "L'unione fa la forza".
L'inferenza distribuita supporta un sistema che suddivide le richieste su un parco hardware costituito da server fisici e cloud, in cui parallelamente ogni server di inferenza elabora la parte assegnata e genera un output. Ne risulta un sistema resiliente e osservabile per l'erogazione di servizi basati sull'IA coerenti e scalabili.
L'inferenza distribuita è supportata su vLLM e utilizza tecniche come il parallelismo tensoriale e le architetture Mixture-of-Experts (MOE).
Il ruolo di Red Hat
Red Hat AI è una piattaforma di prodotti e servizi che facilitano ogni fase del percorso con l'IA, che tu sia alle fasi iniziali o già in ottica di scalabilità. Inoltre, è in grado di sostenere le iniziative di IA generativa e predittiva negli scenari di utilizzo esclusivi della tua azienda.
Con Red Hat AI, hai accesso a Red Hat® AI Inference Server, così potrai ottimizzare l'inferenza dei modelli nel cloud ibrido per deployment più rapidi ed economici. Basato su vLLM, il server di inferenza massimizza l'utilizzo della GPU e accelera i tempi di risposta.
Scopri di più su Red Hat AI Inference Server
Red Hat AI Inference Server include il repository Red Hat AI, una raccolta di modelli di terze parti convalidati e ottimizzati che consente la flessibilità dei modelli e promuove la coerenza tra i team. Con l'accesso al repository dei modelli di terze parti, le aziende possono accelerare i tempi di rilascio e ridurre gli ostacoli finanziari al successo dell'IA.
A che punto è la tua strategia di sovranità digitale? Introduzione al Red Hat Sovereignty Readiness Assessment Tool
Il Red Hat Sovereignty Readiness Assessment Tool è uno strumento per l’autovalutazione accessibile dal web, che fornisce una base di riferimento chiara e obiettiva del controllo digitale della tua organizzazione in sette ambiti fondamentali.