Snowflake Intelligence è qui

Dai a ogni dipendente il potere degli insight aziendali.

Che cos’è la Retrieval Augmented Generation (RAG)? Una guida completa

Crea rapidamente app RAG di livello enterprise con Snowflake Cortex AI.

  • Presentazione
  • Che cos’è la RAG?
  • Quali sono i vantaggi della RAG?
  • Dove vengono utilizzate le tecniche RAG?
  • Come funziona la RAG?
  • RAG e Snowflake
  • Clienti
  • Risorse sulla RAG

Presentazione

La Retrieval Augmented Generation (RAG) è un framework diffuso in cui un large language model (LLM) accede a una specifica knowledge base utilizzata per generare una risposta. Poiché non è necessario riaddestrare il modello fondamentale, questo consente agli sviluppatori di utilizzare i LLM in un contesto specifico in modo rapido ed economico. Le app RAG possono essere utilizzate per il servizio clienti, le vendite, il marketing, le knowledge base e altro ancora. 

Con Snowflake Cortex AI, puoi sviluppare e distribuire app LLM che imparano le sfumature uniche della tua azienda e dei tuoi dati in pochi minuti. Inoltre, poiché Snowflake fornisce LLM e funzionalità di ricerca vettoriale e sviluppo di app Streamlit leader del settore in un servizio completamente gestito, puoi creare facilmente app RAG pronte per la produzione.

Che cos’è la Retrieval Augmented Generation (RAG)?

La Retrieval Augmented Generation (RAG) è una tecnica che migliora l’output di un modello fondamentale (large language model o LLM) facendo riferimento a una knowledge base esterna in aggiunta ai suoi dati di addestramento originali. 

Gli LLM, addestrati su enormi data set con miliardi di parametri, eccellono in attività come rispondere alle domande, tradurre testi e completare frasi. La RAG estende queste funzionalità consentendo al modello di accedere a domini specifici o alle conoscenze interne di un’organizzazione senza bisogno di essere riaddestrato. Questo approccio economicamente conveniente migliora l’accuratezza, la pertinenza e l’utilità degli output delle app LLM in vari contesti.

Quali sono i vantaggi dell’utilizzo della RAG?

1. La RAG supera i limiti dell’utilizzo dei soli LLM

Gli LLM si basano su dati di addestramento statici, che potrebbero non includere le informazioni più aggiornate o i dettagli specifici dell’organizzazione. In mancanza di indicazioni sulle fonti autorevoli, gli LLM possono generare risposte inaccurate o incoerenti, soprattutto quando incontrano terminologie contrastanti. In situazioni di incertezza, gli LLM possono generare "allucinazioni" o inventare le risposte. La RAG mitiga questi problemi fornendo un accesso controllato a fonti autorevoli e aggiornate, che consente di produrre risposte più accurate e affidabili.

2. La RAG fornisce output di qualità superiore che consentono di risalire a una fonte specifica

Per essere utili, gli LLM devono fornire costantemente risposte affidabili e autorevoli. La RAG consente di collegare la risposta a riferimenti specifici e di includere citazioni delle fonti, migliorando la trasparenza e l’affidabilità dei contenuti generati.

3. La RAG garantisce risposte aggiornate a costi contenuti

Nei settori commerciali dinamici, le informazioni diventano rapidamente obsolete. La RAG consente ai modelli pre‐addestrati di accedere a informazioni aggiornate senza costosi interventi di fine‐tuning. Con questo approccio, gli LLM possono incorporare dati in tempo reale provenienti da varie fonti, tra cui news feed, social media, report finanziari e sensori IoT, garantendo pertinenza e precisione.

4. La RAG offre più controllo agli sviluppatori di app

La RAG offre agli sviluppatori una maggiore flessibilità per creare soluzioni personalizzate per scopi specifici. Con un framework di sicurezza basato su RAG, gli sviluppatori di app possono consentire l’accesso controllato alle informazioni sensibili, garantendo che i dati soggetti a limitazioni vengano utilizzati solo per fornire risposte alle persone autorizzate.

Dove vengono utilizzate le tecniche RAG?

Con il rapido progresso della Gen AI, la RAG è diventata parte integrante di molti sistemi basati sull’AI, in particolare nelle applicazioni chatbot e di gestione delle conoscenze.

1. Accesso dei dipendenti a knowledge base interne, come informazioni su risorse umane, prodotti o servizi

Le applicazioni RAG migliorano l’accesso dei dipendenti a informazioni proprietarie contenute in knowledge base specifiche per un determinato dominio, come le intranet aziendali o i sistemi di documentazione interna. Questi modelli consentono ai dipendenti di porre domande precise utilizzando il linguaggio naturale (ad esempio "Qual è la policy per il congedo parentale della nostra azienda?" o "Come posso richiedere un permesso?") e ricevere risposte ricavate dai dati della knowledge base interna dell'organizzazione. La RAG garantisce risposte più accurate e contestualmente pertinenti e può fornire informazioni personalizzate in base al livello di autorizzazione del richiedente e al suo ruolo all’interno dell’azienda.

2. Market intelligence o business intelligence

Sfruttando dati di mercato e report interni continuamente aggiornati, la RAG migliora la qualità e la tempestività delle operazioni di business intelligence. Questo consente alle organizzazioni di prendere decisioni data‑driven, identificare trend emergenti e ottenere un vantaggio competitivo. La RAG è in grado di sintetizzare informazioni provenienti da più fonti, fornendo insight complessivi che potrebbero sfuggire ai metodi di analisi tradizionali.

3. Assistenza ai clienti intelligente

I chatbot del servizio clienti basati su LLM e potenziati con RAG possono gestire un’ampia gamma di attività, tra cui supporto prodotti, risoluzione dei problemi ed elaborazione delle richieste di risarcimento. La RAG fornisce accesso in tempo reale a contenuti accurati e verificati, tra cui informazioni aggiornate sui prodotti, stato degli ordini e dati dei singoli clienti. Questo consente ai chatbot di fornire risposte altamente contestuali e personalizzate, migliorando la soddisfazione dei clienti e riducendo il carico di lavoro degli operatori dell’assistenza.

4. Accesso self‑service alle informazioni

I chatbot RAG a disposizione del pubblico offrono accesso 24/7 a informazioni di marketing, di vendita o su prodotti e servizi. Questi sistemi possono scandagliare rapidamente vaste knowledge base per fornire agli utenti informazioni pertinenti e aggiornate in qualsiasi momento. Ciò non solo migliora la customer experience, ma riduce anche il volume di richieste di routine di cui si deve occupare il personale umano, lasciandolo libero di concentrarsi sulle questioni più complesse.

Come funziona la RAG e cosa serve per implementare un framework RAG?

Interfaccia utente app/client

Gli utenti finali tipicamente interagiscono con la knowledge base attraverso un’interfaccia chat o un sistema di risposta alle domande.

Repository di contesto

Le fonti di dati pertinenti vengono aggregate, governate e continuamente aggiornate per fornire un repository di conoscenze aggiornato. Questo include fasi di pre‑elaborazione come chunking e embedding del testo.

Ricerca

Un vector store mantiene la rappresentazione numerica (embedding) della knowledge base. La ricerca semantica viene utilizzata per recuperare i chunk di informazioni più rilevanti in base alle query degli utenti.

Inferenza LLM

Il sistema esegue l’embedding della domanda dell’utente e recupera il contesto pertinente dal vector store. Questo contesto viene quindi utilizzato per interrogare un LLM, che genera una risposta contestualizzata sia in base alla domanda che alle informazioni recuperate. 

Per sviluppare una vera RAG di livello enterprise, le organizzazioni devono prendere in considerazione alcuni componenti aggiuntivi

  • Modello di embedding: utilizzato per convertire il testo in rappresentazioni vettoriali, sia per la knowledge base che per le query degli utenti.

  • PIpeline di dati: garantisce l’aggiornamento e la manutenzione continui della knowledge base.

  • Valutazione e monitoraggio: strumenti per valutare la qualità delle risposte e le prestazioni del sistema.

App RAG e Snowflake

Dalla RAG alle app LLM avanzate in pochi minuti con Snowflake Cortex AI

  • Funzionalità avanzate per i dati e l’AI. È possibile sviluppare e distribuire un’app AI end‑to‑end utilizzando RAG senza integrazioni, gestione dell’infrastruttura o spostamento dei dati sfruttando tre funzionalità chiave: Snowflake Cortex AI, Streamlit in Snowflake e Snowpark.
  • Cortex Search per la ricerca ibrida. Cortex Search è una funzionalità chiave di Snowflake Cortex AI, che offre funzioni avanzate di retrieval combinando ricerca semantica e per parole chiave. Nel contesto della piattaforma Snowflake Cortex AI, automatizza la creazione di embedding e assicura un retrieval dei dati efficiente e di alta qualità senza richiedere la gestione di un’infrastruttura complessa.
  • Creazione rapida di un’interfaccia utente RAG in Streamlit. Utilizza Streamlit in Snowflake per sviluppare e condividere rapidamente interfacce utente, usando solo Python.
  • Repository di contesto con Snowpark. Il repository di conoscenze può essere aggiornato e governato facilmente utilizzando gli stage di Snowflake. Una volta caricati i documenti, tutta la preparazione dei dati, compresa la generazione di chunk (blocchi di testo più piccoli e ricchi di contesto), può essere eseguita con Snowpark. In particolare nel caso del chunking, i team possono utilizzare in modo trasparente LangChain all’interno di una Snowpark User Defined Function
  • Inferenza LLM sicuraSnowflake Cortex completa il flusso di lavoro con funzioni serverless per l’embedding e l’inferenza di completamento del testo, utilizzando Mistral AI, Llama, Gemma, Arctic o altri LLM disponibili all’interno di Snowflake.

In che modo i clienti Snowflake utilizzano la RAG

I clienti Snowflake risparmiano tempo nei team, aumentano la produttività e riducono i costi utilizzando le app RAG in Snowflake.