Crea applicazioni utilizzando LlamaIndex

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 LlamaIndex

  • Inizializza 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:

  1. Chiedi a un LLM di tradurre la domanda in linguaggio naturale in una query GQL.

  2. Esegui la query GQL sull'archivio del grafico utilizzando Spanner Graph e la classe SpannerPropertyGraphStore.

  3. Invia i dati strutturati restituiti dalla query all'LLM utilizzando Spanner Graph.

  4. 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:

  1. 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.

  2. Combina i risultati della ricerca di grafi e della ricerca vettoriale.

  3. 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'istanza SpannerGraphCustomRetriever 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