Puoi creare applicazioni basate su modelli linguistici di grandi dimensioni (LLM) che utilizzano la generazione RAG (Retrieval-Augmented Generation) con grafi con LlamaIndex e Spanner Graph.
Spanner Graph si integra con LlamaIndex tramite le funzionalità di archiviazione dei grafi delle proprietà per consentirti di utilizzare quanto segue per creare flussi di lavoro di recupero dei dati:
Property Graph Store: consente di rappresentare i dati come un grafico memorizzando nodi e archi in un database a grafo. Puoi utilizzare il database a grafo per eseguire query sulle relazioni complesse nei tuoi dati.
Recuperatori di grafici: ti consente di utilizzare un LLM per tradurre la domanda in linguaggio naturale di un utente in una query per l'archivio dei grafici. Ciò consente alle applicazioni di rispondere alle domande utilizzando le relazioni strutturate nei dati del grafico.
Che cos'è LlamaIndex?
LlamaIndex è un framework di dati per la creazione di applicazioni LLM che ti aiuta a semplificare lo sviluppo della generazione RAG (Retrieval-Augmented Generation) e di altri sistemi sensibili al contesto. Fornendo strumenti per collegare gli LLM ai tuoi dati, LlamaIndex aiuta con l'importazione, l'indicizzazione e l'esecuzione di query sui dati. Puoi utilizzare LlamaIndex con gli LLM per creare applicazioni che forniscono risposte accurate e pertinenti.
Per saperne di più sul framework LlamaIndex, consulta la documentazione del prodotto LlamaIndex.
Archivio del grafico delle proprietà per Spanner
Un archivio di grafici delle proprietà può essere utilizzato in un'applicazione per:
Estrai entità e relazioni dai documenti e archiviali come grafico.
Esegui attraversamenti e analisi complessi su una struttura a grafo.
Esegui query su un grafico utilizzando Graph Query Language (GQL) per fornire un contesto specifico a un LLM.
Per lavorare con un archivio di grafi di proprietà in Spanner Graph, utilizza la
classe SpannerPropertyGraphStore
.
Tutorial sullo store del grafico delle proprietà
Per scoprire come utilizzare l'archivio dei grafi delle proprietà con Spanner, consulta il tutorial sull'archivio dei grafi delle proprietà per Spanner. Questo tutorial ti aiuterà a imparare a:
Installa il pacchetto
llama-index-spanner
e LlamaIndexInizializza la classe
SpannerPropertyGraphStore
e utilizzala per connetterti al tuo database Spanner.Aggiungi nodi e archi al tuo grafico Spanner che contengono dati estratti dai documenti utilizzando uno strumento di estrazione del Knowledge Graph LlamaIndex.
Recupera informazioni strutturate eseguendo query sul grafico utilizzando GQL.
Visualizza i risultati delle query del grafico.
Recuperatori di grafi per Spanner
I recuperatori di grafi in LlamaIndex sono componenti che utilizzano un LLM per tradurre la domanda in linguaggio naturale di un utente in una query per l'archivio dei grafi. Le applicazioni utilizzano la query generata per rispondere alle domande utilizzando le relazioni strutturate nei dati del grafico. I recuperatori di grafici utilizzano il seguente flusso di lavoro per generare una risposta da una query in linguaggio naturale:
Chiedi a un LLM di tradurre la domanda in linguaggio naturale in una query GQL.
Esegui la query GQL sull'archivio del grafico utilizzando Spanner Graph e la classe
SpannerPropertyGraphStore
.Invia i dati strutturati restituiti dalla query all'LLM utilizzando Spanner Graph.
Genera una risposta leggibile utilizzando il modello LLM.
Utilizzare le classi di recupero LlamaIndex
Le seguenti classi di recupero del grafico LlamaIndex possono essere utilizzate con Spanner Graph per generare risposte leggibili ai prompt LLM:
Classe SpannerGraphTextToGQLRetriever
La classe SpannerGraphTextToGQLRetriever
traduce il linguaggio naturale in query GQL
per l'estrazione dei dati dal grafico.
Classe SpannerGraphCustomRetriever
La classe SpannerGraphCustomRetriever
implementa un approccio di recupero ibrido.
SpannerGraphCustomRetriever
gestisce domande specifiche e concettuali seguendo
i seguenti passaggi:
Esegui contemporaneamente le seguenti ricerche:
Una ricerca nel grafico che traduce la domanda in linguaggio naturale in una query GQL che utilizza il grafico per trovare le risposte.
Una ricerca vettoriale o semantica per trovare informazioni concettualmente correlate.
Combina i risultati della ricerca di grafi e della ricerca vettoriale.
Valuta e riordina i risultati combinati utilizzando l'LLM. L'LLM seleziona le informazioni più pertinenti e consapevoli del contesto per rispondere alla domanda originale.
Tutorial sui retriever di grafici
Per scoprire come utilizzare i recuperatori di grafi con Spanner per rispondere alle domande, consulta il tutorial sui recuperatori di grafi per Spanner. Questo tutorial mostra come:
Crea un grafico da blob di testo non strutturato.
Archivia il grafico in Spanner utilizzando la classe
SpannerPropertyGraphStore
Inizializza una classe
SpannerGraphTextToGQLRetriever
e un'istanzaSpannerGraphCustomRetriever
utilizzando l'archivio del grafico e un LLM.Genera una risposta a una domanda in linguaggio naturale utilizzando i dati del grafico memorizzati in Spanner.
Passaggi successivi
Per scoprire come utilizzare Spanner con altri Google Cloud prodotti per creare applicazioni di AI generativa, consulta la panoramica di Spanner AI.
Per scoprire di più sulla ricerca vettoriale in Spanner, consulta Utilizzare la ricerca vettoriale con Spanner Graph.
Per scoprire come utilizzare Spanner per archiviare gli embedding vettoriali, vedi Recuperare gli embedding di testo di Spanner.
Per scoprire di più sul machine learning con Spanner, consulta la panoramica dell'integrazione di Vertex AI.