Negli ultimi quattro anni, l’Intelligenza Artificiale Generativa (Generative AI) ha vissuto un innegabile boom, tanto mediatico quanto applicativo. Complice di questa diffusione è stata la pubblicazione, da parte del Reparto di Ricerca e Sviluppo di Google, dell’articolo Attention Is All You Need e l‘introduzione al pubblico di un nuovo modello di rete neurale: il Transformer.
Il Transformer ha infatti rappresentato una rivoluzione nel settore, diventando la base per lo sviluppo di moltissimi grandi modelli di linguaggio, tra cui quelli di Google, OpenAI e Microsoft. Chatbot, ChatGPT, Copilot, Gemini, Lama sono solo alcune delle intelligenze artificiali generative che sono diventate note al grande pubblico.
Ma che cos’è davvero l’Intelligenza Artificiale Generativa e come funziona? Per rispondere a queste e altre domande, abbiamo intervistato nuovamente Mario Avdullaj, developer e appassionato di Intelligenza Artificiale di Stesi.
Cos’è l’AI generativa o Generative AI
L’Intelligenza Artificiale Generativa, nota anche come Gen AI o Generative AI, è un tipo di intelligenza artificiale capace di generare contenuto – che può essere testo, immagini, video o qualsiasi altra forma di output – a partire da input forniti da un operatore umano, noti come prompt. “Questi modelli”, ci racconta Mario, “apprendono i pattern e la struttura dei dati con i quali vengono allenati per generarne di nuovi con caratteristiche e pattern simili”.
Questo funzionamento rende la Generative AI una tecnologia estremamente versatile, capace di applicarsi trasversalmente a diversi settori. Si va dallo sviluppo software alla sanità, dalla finanza all’intrattenimento, passando per il marketing e, naturalmente, la logistica.
Ti interessa l’argomento? Leggi anche “AI, machine learning e Supply Chain” qui.
Come funziona la Generative AI
La Generative AI è costruita applicando tecniche di apprendimento non supervisionato o autosupervisionato a partire da un dataset. Le capacità di questi sistemi dipendono direttamente dal tipo di dati su cui sono stati addestrati e possono essere unimodali o multimodali.
- Unimodali: accettano soltanto una tipologia di input, ad esempio testuale.
- Multimodali: accettano molteplici tipi di input (testi, immagini, audio, video, ecc.) e le loro combinazioni.
“Per riuscire però a capire che cos’è l’Intelligenza Artificiale Generativa serve partire dai cosiddetti foundation models”, racconta Mario, “che sono appunto classi di modelli fondazionali di enormi dimensioni e che possono essere poi adattati a compiti via via più specifici, attraverso tecniche di fine-tuning”.
Insomma, i foundation models sono modelli allenati con un’enorme quantità di dati e le cui capacità sono pressoché generalizzate. A partire da questi modelli di base, diventa possibile procedere con task più specifici, specializzando e allenando il modello con set di dati più verticali.
I Large Language Models o LLM
“Una delle categorie di modelli fondazionali più noti è sicuramente quella degli LLM o Modelli Linguistici di grandi dimensioni, come ad esempio GPT”, continua Mario. Questo tipo avanzato di Intelligenza Artificiale, specializzato nell’elaborazione del linguaggio naturale, viene allenato su un’enorme quantità di testo per consentire a questa tecnologia di comprendere e generare linguaggio umano in maniera coerente e contestualmente rilevante.
“E che sia ‘contestualmente rilevante’ va sottolineato con cura, perché qui sta la più grande differenza rispetto ai modelli generativi delle precedenti generazioni”, sottolinea Mario. Tra le caratteristiche principali degli LLM ci sono dimensione e complessità. I Large Language Models sono dotati di miliardi di parametri diversi, cosa che li rende particolarmente abili nel cogliere le sfumature linguistiche e contesti complessi.
Gli esordi della Generative AI
Ma prima di ChatGPT, Copilot & Company, qual era lo stato dell’arte della Gen AI?
“Già 10 anni fa erano state realizzate le reti generative avversarie, le cosiddette GAN, che si basavano su due reti neurali, un generatore e un discriminatore”, spiega Mario.
- Generatore: è la rete neurale che cerca di creare nuovi dati e lo fa inizialmente su base randomica, essendo appunto settata in maniera casuale. Il generatore aggiorna i pesi della rete neurale in base a una funzione di loss data in output dal discriminatore.
- Discriminatore: è la rete neurale che ha il compito di distinguere quali tra i dati prodotti dal generatore sono reali (tratti dall’insieme di addestramento) e quali sono falsi (prodotti dal generatore). Il suo obiettivo è classificare correttamente i campioni come “reale” o “falso”, ripetendo questo processo ciclicamente fino a quando non è più in grado di distinguere tra i due.
“Le reti neurali passate erano quindi già in grado di generare dei contenuti, ma con l’avvento dei Transformer, modelli di reti neurali basati su meccanismi di attenzione per processare sequenze di dati, c’è stato un cambiamento rivoluzionario”, continua Mario.
La rivoluzione dei Transformer
A partire da un prompt iniziale, i Transformer convertono il testo in rappresentazioni numeriche chiamate token, che vengono a loro volta trasformate in vettori attraverso una tabella di embedding delle parole. “Ad ogni livello di questa rete neurale”, spiega Mario, “ogni token, quindi ogni parola, viene contestualizzata all’interno di una finestra di contesto assieme agli altri token tramite un meccanismo di attenzione. Naturalmente, parole di contesto simile come ‘gatto’ e ‘felino’ avranno vettori numerici con una distanza relativamente più bassa rispetto a ‘gatto’ e ‘cane’, che invece avrà una distanza maggiore”.
Ad ogni parola viene così dato un diverso peso di rilevanza rispetto alle altre che si trovano nella stessa sequenza, permettendo all’AI di identificare le parole chiave all’interno del testo. “Questo meccanismo di attenzione permette al sistema di concentrarsi sulle parti rilevanti della sequenza di input dato dall’operatore e di generare un output basato sul peso e l’importanza di ogni parola in relazione al contesto”.
I Transformer sono composti da due layer:
- Encoder: trasforma l’input in una rappresentazione interna e astratta.
- Decoder: genera un output basandosi sulla rappresentazione creata dall’encoder.
Ma come si arriva alla generazione dell’output? “Di fatto, il decoder genera un token per volta, basandosi su quelli precedentemente generati e sulle informazioni di attenzione. Il token con la probabilità più alta viene selezionato come parte dell’output e questo processo continua più e più volte, fino a quando viene cioè generato il token di fine sequenza o end-of-sequence-token. In breve, queste reti non fanno altro che predire ad ogni step la parola successiva più probabile”, spiega Mario.
Esempi di applicazione della Gen AI nella logistica
Tra i vari settori in cui la Generative AI può trovare applicazione rientra necessariamente anche quello della logistica. La Gen AI può essere utilizzata per generare automaticamente report oppure per portare a termine analisi basate su dati operativi.
“Ad esempio, GPT-4 addestrata su dati logistici potrebbe generare dei record dettagliati sulle prestazioni del magazzino, analizzando metriche chiave come i tempi di percorrenza, i livelli di stock, i tassi di errore, e fornendo raccomandazioni per attuare miglioramenti operativi. Ma di possibilità applicative ce ne sono molte altre, ad esempio potremmo usare l’AI generativa per l’ottimizzazione del magazzino, prevedere la domanda, gestire meglio lo stock e ridurre gli sprechi”, spiega Mario.
Attraverso l’uso di chatbot per l’assistenza operativa, ad esempio, diventa possibile assistere gli operatori del magazzino fornendo loro risposte mirate a domande relative le procedure operative, la localizzazione dei prodotti o ad altre richieste, semplicemente connettendo il modello generativo con il database del WMS.
“Dobbiamo ricordare poi che l’AI generativa sta andando sempre più verso la logica multimodale, per cui gli operatori potrebbero interrogarla non solo tramite testo ma anche immagini o persino suoni, e l’AI stessa potrebbe rispondere a voce”, continua Mario.
Fine tuning e RAG per verticalizzare la Generative AI sul mondo della logistica
Naturalmente, per poter diventare davvero efficace nel contesto della logistica di una specifica azienda, l’AI generativa deve subire un processo di fine-tuning. “Il fine tuning è un processo che comporta l’addestramento aggiuntivo di un modello di Intelligenza Artificiale a partire da un set di dati specifico, ad esempio tratti dal Warehouse Management System”, spiega Mario. Dati di documentazione, dati statistici e aziendali possono essere utilizzati per allenare l’AI e renderla capace di rispondere a qualsiasi domanda relativa a procedure, processi aziendali, gestione dell’inventario, operazioni logistiche e così via.
“Chiaramente, il fine tuning è però un’operazione complessa e altrettanto costosa. Ecco perché una valida soluzione alternativa è quella che si chiama RAG o Retrieval Augmented Generation”, continua Mario. Sostanzialmente, utilizzando un ulteriore motore di ricerca, diventa possibile raccogliere e agire su una collezione di dati molto più ampia. Quando si fornisce l’input alla Gen AI, si può aggiungere un contesto maggiore. “Ad esempio, se voglio sapere quali sono stati i movimenti più importanti nell’ultimo semestre all’interno del mio magazzino, posso sfruttare un motore di ricerca a partire da una collezione di dati che già possiedo e che sono indicizzati, e poi fornire questa specifica finestra di contesto alla Generative AI che così ha tutti i dati necessari per poter rispondere alla mia domanda”.
Insomma, se il fine tuning implica l’addestramento aggiuntivo del modello su un set di dati specifico, con il RAG l’approccio è molto più flessibile e adattabile. Si tratta di fornire maggiore contesto al sistema durante la fase di input, senza bisogno di procedere con un nuovo addestramento.
L’esperienza di Stesi
Di soluzioni di questo secondo tipo Stesi ne sa qualcosa, grazie alla collaborazione con gli studenti del liceo Flaminio di Vittorio Veneto, che ha dato vita a un interessante progetto con l’Intelligenza Artificiale come protagonista. “Durante il progetto è stato costruito un chatbot, chiamato Stesi GPT, che utilizzava il modello GPT di OpenAI sfruttando però Azure per migliorare le prestazioni e la qualità dei dati estratti dalla collezione di dati”, racconta Mario.
“Il progetto utilizza il Cognitive Search, uno strumento di ricerca, per indicizzare e recuperare i dati che, combinati al prompt iniziale, permettono a Stesi GPT di fornire risposte mirate alle domande degli operatori di magazzino”. L’aspetto interessante è che, attualmente, all’operatore viene fornita una risposta testuale perché il progetto è unimodale, ma nulla vieta di ipotizzare scenari futuri in cui all’operatore potranno essere fornite immagini, video o persino suoni.
Questo progetto rappresenta un esempio concreto di come la Generative AI possa essere verticalizzata e ottimizzata per applicazioni specifiche, migliorando l’efficienza e la precisione nelle operazioni logistiche.
Vuoi approfondire l’argomento o conoscere meglio Silwa®, il WMS di casa Stesi? Contattaci per saperne di più.