L’attuale frontiera dell’intelligenza artificiale è capire come si possano integrare le informazioni aziendali, possibilmente in modo sicuro, con la conoscenza generale che questi strumenti posseggono.
E’ un nuova fase che deriva dal rapido progresso dei modelli di intelligenza artificiale e la conseguente esplosione di strumenti che ne integrano i servizi.
Ad oggi sono possibili vari approcci anche a seconda delle funzionalità che la particolare applicazione fornisce, diviene quindi rilevante valutare come prepararsi affinché si possano utilizzare in modo proficuo questi servizi.
Indice degli argomenti
Primo approccio: la forza della conoscenza generica, con elementi della propria organizzazione
Un uso che faccio di GPT sempre più spesso è quello di “riempire i dettagli” fornendo solo informazioni necessarie e specifiche del mio ambiente e lasciando fare al modello il lavoro. Ho recentemente scoperto che le procedure scritte da GPT per la manutenzione di servizi informazioni sono di assoluto pregio e soprattutto a partire da pochissime informazioni scrive tutto quello che è rilevante. Se ad esempio a GPT 3.5 chiedo:
Per riavviare il sito Web è necessario collegarsi in RDP al 192.168.168.33 e riavviare IIS forzandolo. Scrivi una breve documentazione della procedura
Ottengo una procedura in 8 passi con tutti i dettagli su come procedere [Collegare immagine]. Dai termini RDP e IIS ha correttamente capito che si tratta di un sistema Windows Server ed ha fornito informazioni di dettaglio su come svolgere le varie procedure.

È quindi possibile “aumentare” la conoscenza di GPT con dettagli specifici della propria organizzazione per ottenere informazioni personalizzate sicuramente utili. La conoscenza generica dell’AI provvederà a fare il resto, nel bene e nel male (potrebbe anche inventare dettagli inesatti o errati in assenza di informazioni specifiche).
Oltre ad analizzare e sintetizzare informazioni, gli assistenti basati su AI generativa possono anche elaborare una conoscenza che viene fornita nel prompt e che ne determina il comportamento senza dover ricorrere a processi di addestramento attraverso il raffinamento.
Secondo approccio: elaborazione della conoscenza documentale
La conoscenza di un’organizzazione è largamente codificata in documenti e in record di database. È naturale quindi cercare di far analizzare ad una AI generativa uno o più documenti al fine di estrarre informazione ed effettuare analisi sui dati.
Code interpreter
Io uso spesso il modello code interpreter di OpenAI (ora chiamato Advanced Data Analytics) per effettuare l’analisi di open data (così da non aver problemi di privacy).
Si tratta di un uso molto efficace che ho recentemente verificato essere capace di digerire file in formati meno noti come, ad esempio, il formato GeoJSON, un formato per memorizzare elementi geometrici (punti, linee, e poligoni) georeferenziati.
Riformattare o estrarre conoscenza da documenti
Un’altra applicazione affine è quella di riformattare o estrarre conoscenza dal testo: recentemente mi hanno inviato un file word contenente un insieme di domande frequenti e relative risposte, per poterlo caricare automaticamente in un sistema ho chiesto a GPT e a Google Bard di formattarle in formato JSON ottenendo in pochi minuti un risultato che avrebbe richiesto almeno mezz’ora poco più di un anno fa.
Generare documenti da dati aziendali
In alternativa si possono generare documenti a partire dai dati aziendali, strutturati e semi-strutturati, per poi poter fornire i documenti al sistema di AI.
Questo sistema di gestione della conoscenza aziendale è sicuramente agile e facilmente accessibile, ma pone problemi sia di riservatezza (infatti si caricano documenti contenenti dati potenzialmente delicati su siti di terze parti), sia di manipolazione di fatti specifici. È infatti complesso per una AI enucleare un paragrafo a fronte di un documento di cento pagine o più.
Terzo approccio: preparare elementi di conoscenza
Chiunque abbia giocato con il cosiddetto “prompt engineering” ovverosia la scrittura di prompt sofisticati per ottenere risposte non banali da modelli di AI generativa sa come sia importante selezionare la conoscenza che viene inserita nel prompt: deve essere espressa in modo compatto a causa delle limitazioni significative sulla quantità di dati che può elaborare (tipicamente quattromila token, ovvero tra i 12 e i 16 kilobyte, anche se alcuni modelli come GPT-4 supportano fino a otto volte questa quantità di dati), è importante inoltre che copra il più possibile le informazioni richieste dalle domande, altrimenti il modello LLM genererà risposte plausibili ma probabilmente false.
In un esperimento che ho condotto quando ho eliminato un fatto relativo alla documentazione da produrre per il rimborso di un taxi il modello ha generato un processo assolutamente plausibile ma errato nei confronti di quello in vigore presso la mia organizzazione.
La conoscenza va dunque organizzata in fatti auto-contenuti che possano stare nel prompt (più di un fatto) e contribuire con informazione utile alla generazione della risposta. Inoltre, come già avviene per i motori di ricerca, è importante che i fatti coprano il più esaustivamente possibile la conoscenza necessaria per rispondere (recall) in modo da non omettere elementi importanti.
Un regolamento o una legge, ad esempio, può essere “spezzettato” in commi (mantenendo l’informazione relativa all’articolo che li contiene).
Weaviate
Questi elementi di conoscenza possono quindi essere caricati in un vector DB, come ad esempio Weaviate, e utilizzati per cercare i fatti rilevanti che debbano essere inclusi in un prompt in relazione ad una particolare domanda. Questi sistemi che “aumentano” il prompt utilizzando conoscenza recuperata dinamicamente sono chiamati retrieval augmented generation (RAG) systems, e il loro impiego sta letteralmente esplodendo in ambito enterprise.
Questione di riservatezza
Un tema che resta centrale è quello della riservatezza nell’elaborazione da parte di un servizio AI basato su cloud di documenti o fatti contenenti informazioni riservate. Si tratta di un tema centrale sia per questioni relative alla privacy che quelle relative alla riservatezza di dati di natura industriale. Non è un caso che OpenAI si sia affrettata a rilasciare la versione “enterprise” di ChatGPT, si tratta di un livello del servizio volto ad offrire gli strumenti ad un’organizzazione per controllare i dati elaborati e garantire la necessaria riservatezza.
Evidentemente l’esecuzione di modelli come LLaMa2 sui propri sistemi può limitare alcune preoccupazioni relative alla riservatezza, ma si tratta di modelli che non hanno tutte le capacità di elaborazione dati dei sistemi on-line e nel breve periodo difficilmente potranno sostituirli (anche a causa del notevole carico computazionale che impone l’esecuzione di un modello come LLaMa 2 con 70 miliardi di parametri).
Un futuro incerto per l’uso di dati aziendali
La riservatezza e l’uso controllato di documenti ed informazioni aziendali è un aspetto centrale e da tenere sempre ben presente quando si disegnano servizio nuovi ed innovativi basati sulla AI.
Si tratta di problemi che affronteremo e risolveremo, così come abbiamo fatto oltre vent’anni fa, quando abbiamo cominciato ad esplorare il World Wide Web grazie a Google.
Da quello che si può osservare la conoscenza di piccoli frammenti di conoscenza aziendale contribuisce ad alimentare sistemi RAG migliorando la contestualizzazione di una particolare richiesta.
I frammenti di conoscenza devono essere più piccoli di un prompt e vanno gestiti per assicurare costantemente che siano ancora veri e non siano, ad esempio, scaduti poiché obsoleti.
Anche la selezione dei documenti in base al profilo di riservatezza rappresenta un altro aspetto di preparazione dei dati aziendali in vista dell’avvento dell’AI. Vedremo in futuro come, una volta raccolti i dati in questo modo, contribuiranno all’automazione dei processi aziendali.