La Retrieval Augmented Generation (RAG) è un framework di intelligenza artificiale ibrido e innovativo che sta rapidamente trasformando il modo in cui le aziende implementano i grandi modelli linguistici (LLM). Invece di fare affidamento esclusivamente su dati di addestramento statici e preesistenti, RAG rafforza gli LLM combinandoli con fonti di dati esterne e costantemente aggiornate. Questo approccio consente agli LLM di recuperare documenti pertinenti al momento della query e di integrarli come contesto aggiuntivo nel modello, generando così risposte molto più accurate, attuali e specifiche per il dominio di riferimento.
I principali vantaggi di RAG sono molteplici e significativi per le applicazioni aziendali. Innanzitutto, garantisce una correttezza fattuale superiore, poiché le risposte generate sono basate su fonti di dati specifiche e possono essere referenziate. Permette inoltre aggiornamenti dinamici delle conoscenze, eliminando la necessità di riaddestrare il modello ogni volta che nuove informazioni diventano disponibili. RAG riduce le interpretazioni errate e le "allucinazioni" rispetto alla pura generazione di testo, poiché il contesto fornito è verificabile. Offre una specializzazione di dominio attraverso basi di conoscenza curate e, non da ultimo, garantisce una maggiore spiegabilità delle risposte fornite, grazie alla possibilità di citare le fonti utilizzate.
Per implementare efficacemente le soluzioni RAG, sono necessarie diverse componenti chiave. Tra queste, le banche dati vettoriali sono fondamentali, con esempi noti come Pinecone, Weaviate e Chroma, utilizzate per archiviare e recuperare i documenti in base alla loro somiglianza semantica. I modelli di embedding sono essenziali per trasformare il testo in rappresentazioni vettoriali che consentono la ricerca semantica. Sono cruciali anche le strategie di ottimizzazione dei chunk, che determinano come i documenti vengono suddivisi in unità gestibili. Gli algoritmi di recupero, che possono essere densi, scarsi o ibridi, giocano un ruolo chiave nell'identificare le informazioni più rilevanti. Infine, le tecniche di creazione delle istruzioni (prompt engineering) sono vitali per integrare efficacemente il contesto recuperato con le richieste dell'utente.
RAG si sta rapidamente affermando come l'architettura preferita per la costruzione di applicazioni di intelligenza artificiale a livello aziendale. Secondo recenti sondaggi, oltre il 60% delle organizzazioni sta sviluppando strumenti di ricerca basati sull'intelligenza artificiale per migliorare l'affidabilità, ridurre le allucinazioni e personalizzare l'output utilizzando i propri dati interni. Questa tendenza sottolinea l'importanza crescente di RAG nel panorama tecnologico moderno.
Con l'espansione dell'AI generativa in funzioni aziendali critiche come il servizio clienti, la gestione interna della conoscenza e la conformità, la capacità di RAG di colmare il divario tra l'AI generica e la conoscenza organizzativa specifica diventa una base essenziale per implementazioni affidabili e di successo nel mondo reale. RAG permette alle aziende di sfruttare appieno il potenziale degli LLM, adattandoli alle loro esigenze specifiche senza compromettere l'accuratezza o la pertinenza.
Il processo di RAG è articolato e preciso. Quando un utente invia una richiesta, il sistema attiva prima il modello di recupero, che interroga una banca dati vettoriale per identificare e "recuperare" documenti, database o altre fonti di informazione semanticamente simili e pertinenti. Una volta identificate, queste informazioni recuperate vengono combinate con la richiesta originale dell'utente e inviate a un modello di AI generativa. Questo modello, a sua volta, incorpora le nuove informazioni nel proprio modello interno, utilizzandole per formulare una risposta dettagliata e contestualizzata. Questo meccanismo permette all'LLM di fornire risposte più accurate e consapevoli del contesto, basate su dati aziendali specifici o informazioni aggiornate, piuttosto che affidarsi unicamente ai dati su cui è stato originariamente addestrato.
Le pipeline RAG comprendono tipicamente quattro fasi distinte: la preparazione e la suddivisione dei documenti, l'indicizzazione vettoriale, il recupero e l'aumento dell'istruzione (prompt augmentation). Questo flusso di processo offre agli sviluppatori la flessibilità di aggiornare le fonti di dati senza la necessità di riaddestrare l'intero modello, rendendo RAG una soluzione scalabile ed economicamente vantaggiosa per la costruzione di applicazioni LLM in settori come il supporto clienti, le basi di conoscenza e la ricerca interna.
I grandi modelli linguistici (LLM) utilizzano modelli di deep learning e vengono addestrati su vastissimi dataset per comprendere, riassumere i dati e generare nuovi contenuti. La maggior parte degli LLM è addestrata su un'ampia gamma di dati pubblici, il che consente loro di risolvere molti tipi diversi di compiti o domande. Tuttavia, dopo l'addestramento, molti LLM non possono più accedere a dati che vanno oltre il loro set di dati di training. Questa limitazione rende gli LLM statici e può portare a risposte errate, obsolete o addirittura a "allucinazioni" quando vengono poste domande su dati per i quali non sono stati specificamente addestrati.
Affinché gli LLM possano fornire risposte rilevanti e concrete, le aziende devono assicurarsi che il modello comprenda il campo di riferimento e fornisca risposte basate sui propri dati specifici, anziché fornire risposte generiche e standard. Ad esempio, le aziende sviluppano chatbot per il supporto clienti con LLM, e queste soluzioni devono fornire risposte specifiche dell'azienda alle domande dei clienti. Altre stanno lavorando a bot interni di domande e risposte (Q&A) che dovrebbero rispondere a domande dei dipendenti relative ai dati HR interni. La sfida è come le aziende possano sviluppare tali soluzioni senza dover riaddestrare questi modelli, un processo che sarebbe costoso e lungo.
Un modo altrettanto semplice quanto popolare per utilizzare i propri dati consiste nel fornirli come parte dell'istruzione (prompt) con cui si interroga il modello LLM. Questo approccio è noto come Retrieval Augmented Generation (RAG): si recuperano dati rilevanti e li si utilizza come contesto esteso per l'LLM. Quindi, invece di affidarsi esclusivamente alla conoscenza derivata dai dati di addestramento, un flusso di lavoro RAG attinge informazioni pertinenti e collega gli LLM statici con query di dati in tempo reale. Questo processo permette agli LLM di superare le loro limitazioni intrinseche e di fornire risposte contestualmente più ricche e accurate.
Con l'architettura RAG, le aziende possono implementare qualsiasi modello LLM e estenderlo per fornire risultati rilevanti per la propria attività, fornendogli una piccola quantità dei propri dati. Ciò elimina i costi e i tempi associati al fine-tuning o al pre-training del modello, rendendo l'adozione degli LLM più accessibile ed efficiente per un'ampia gamma di organizzazioni.
Casi d'uso comuni per RAG
Esistono molti casi d'uso diversi per RAG. I più comuni sono elencati di seguito:
-
Chatbot per domande e risposte
L'integrazione degli LLM nei chatbot consente a questi ultimi di derivare automaticamente risposte migliori dai documenti aziendali e dalle basi di conoscenza. I chatbot vengono utilizzati per automatizzare il supporto clienti e per il follow-up con i lead acquisiti sul sito web, poiché possono rispondere rapidamente alle domande e risolvere i problemi.
Ad esempio, Experian, una multinazionale di brokeraggio dati e reportistica sul credito al consumo, voleva creare un chatbot per soddisfare le esigenze interne e quelle rivolte ai clienti. Hanno rapidamente scoperto che le loro attuali tecnologie di chatbot faticavano ad adattarsi alla domanda. Costruendo il loro chatbot GenAI - Latte - sulla Databricks Data Intelligence Platform, Experian è riuscita a migliorare la gestione delle istruzioni e l'accuratezza del modello, offrendo ai loro team una maggiore flessibilità per sperimentare diverse istruzioni, affinare gli output e adattarsi rapidamente agli sviluppi della tecnologia GenAI.
-
Motore di conoscenza
Poni domande sui tuoi dati (ad esempio, dati sulle risorse umane, documenti di conformità, ecc.): i dati aziendali possono essere utilizzati come contesto per gli LLM, consentendo ai dipendenti di ottenere facilmente risposte alle loro domande. Ciò include domande HR su benefici e politiche o domande su sicurezza e conformità.
Un esempio di come ciò viene utilizzato è presso Cycle & Carriage, un gruppo automobilistico leader nel sud-est asiatico. Si sono rivolti a Databricks Mosaic AI per sviluppare un chatbot RAG che migliorasse la produttività e il coinvolgimento dei clienti, accedendo alle loro basi di conoscenza proprietarie, come manuali tecnici, trascrizioni del servizio clienti e documenti sui processi aziendali. Ciò ha facilitato per i dipendenti la ricerca di informazioni tramite query in linguaggio naturale, fornendo risposte contestualizzate e in tempo reale.
Vantaggi chiave dell'approccio RAG
L'approccio RAG offre una serie di vantaggi essenziali che lo rendono una scelta strategica per le imprese. È un ottimo punto di partenza per l'implementazione dell'AI, in quanto è semplice da configurare e per alcuni casi d'uso potrebbe essere già completamente sufficiente. Il fine-tuning, invece, è più appropriato in una situazione diversa, ovvero quando si desidera modificare il comportamento dell'LLM o fargli "imparare" un'altra lingua o uno stile specifico. È importante notare che RAG e fine-tuning non si escludono a vicenda; anzi, possono essere combinati. In una fase futura, si potrebbe perfezionare un modello per comprendere meglio il linguaggio specifico del settore e la forma di output desiderata, e poi utilizzare RAG per migliorare ulteriormente la qualità e la pertinenza delle risposte fornite, creando così un sistema AI estremamente potente e personalizzato.