Sie können Anwendungen für Large Language Models (LLMs) erstellen, die Graph Retrieval-Augmented Generation (GraphRAG) mit LlamaIndex und Spanner Graph verwenden.
Spanner Graph lässt sich über die Funktionen für Property Graph-Speicher in LlamaIndex einbinden. So können Sie die folgenden Elemente verwenden, um Workflows für den Datenabruf zu erstellen:
Property Graph Store: Hiermit können Sie Daten als Diagramm darstellen, indem Sie Knoten und Kanten in einer Graphdatenbank speichern. Mit der Graphdatenbank können Sie komplexe Beziehungen in Ihren Daten abfragen.
Graph-Abrufer: Damit können Sie ein LLM verwenden, um die Frage eines Nutzers in natürlicher Sprache in eine Abfrage für den Graphspeicher zu übersetzen. So können Anwendungen Fragen mithilfe der strukturierten Beziehungen in den Diagrammdaten beantworten.
Was ist LlamaIndex?
LlamaIndex ist ein Datenframework für die Entwicklung von LLM-Anwendungen, mit dem Sie die Entwicklung von Retrieval-Augmented Generation (RAG) und anderen kontextbezogenen Systemen optimieren können. LlamaIndex bietet Tools zum Verbinden von LLMs mit Ihren Daten und unterstützt Sie bei der Datenaufnahme, -indexierung und -abfrage. Sie können LlamaIndex mit LLMs verwenden, um Anwendungen zu erstellen, die genaue und relevante Antworten liefern.
Weitere Informationen zum LlamaIndex-Framework finden Sie in der LlamaIndex-Produktdokumentation.
Attributgrafikspeicher für Spanner
Ein Property-Graph-Speicher kann in einer Anwendung für Folgendes verwendet werden:
Entitäten und Beziehungen aus Dokumenten extrahieren und als Diagramm speichern.
Komplexe Durchläufe und Analysen für eine Diagrammstruktur durchführen
Sie können einen Graphen mit der Graph Query Language (GQL) abfragen, um einem LLM einen bestimmten Kontext zu liefern.
Verwenden Sie die Klasse SpannerPropertyGraphStore, um mit einem Attributgraphspeicher in Spanner Graph zu arbeiten.
Anleitung für den Attributgrafikspeicher
Informationen zur Verwendung des Attributgrafspeichers mit Cloud Spanner finden Sie im Attributgrafspeicher-Tutorial für Cloud Spanner. In dieser Anleitung erfahren Sie, wie Sie Folgendes tun:
Installieren Sie das
llama-index-spanner-Paket und LlamaIndex.Initialisieren Sie die Klasse
SpannerPropertyGraphStoreund stellen Sie damit eine Verbindung zu Ihrer Cloud Spanner-Datenbank her.Fügen Sie Ihrem Spanner-Graphen Knoten und Kanten hinzu, die Daten enthalten, die mit einem LlamaIndex-Knowledge Graph-Extractor aus Dokumenten extrahiert wurden.
Strukturierte Informationen abrufen, indem Sie den Graph mit GQL abfragen.
Ergebnisse von Diagrammabfragen visualisieren
Graph-Abrufer für Spanner
Graph-Retrievers in LlamaIndex sind Komponenten, die ein LLM verwenden, um die Frage eines Nutzers in natürlicher Sprache in eine Abfrage für den Graph-Speicher zu übersetzen. Anwendungen verwenden die generierte Abfrage, um Fragen anhand der strukturierten Beziehungen in den Graphdaten zu beantworten. Graph-Abrufer verwenden den folgenden Workflow, um eine Antwort auf eine Anfrage in natürlicher Sprache zu generieren:
Ein LLM auffordern, die Frage in natürlicher Sprache in eine GQL-Abfrage zu übersetzen.
Führen Sie die GQL-Abfrage mit Spanner Graph und der Klasse
SpannerPropertyGraphStorefür den Graph-Speicher aus.Senden Sie die von der Abfrage zurückgegebenen strukturierten Daten mithilfe von Spanner Graph an das LLM.
Generieren Sie mit dem LLM eine für Menschen lesbare Antwort.
LlamaIndex-Retriever-Klassen verwenden
Die folgenden LlamaIndex-Graph-Retriever-Klassen können mit Spanner Graph verwendet werden, um für LLM-Prompts lesbare Antworten zu generieren:
Klasse SpannerGraphTextToGQLRetriever
Die Klasse SpannerGraphTextToGQLRetriever übersetzt natürliche Sprache in GQL-Abfragen zur Datenextraktion aus dem Diagramm.
Klasse SpannerGraphCustomRetriever
Die Klasse SpannerGraphCustomRetriever implementiert einen hybriden Abrufansatz.
SpannerGraphCustomRetriever beantwortet spezifische und konzeptionelle Fragen anhand der folgenden Schritte:
Führen Sie die folgenden Suchanfragen gleichzeitig aus:
Eine Diagrammsuche, bei der die Frage in natürlicher Sprache in eine GQL-Abfrage übersetzt wird, mit der im Diagramm nach Antworten gesucht wird.
Eine Vektorsuche oder semantische Suche, um konzeptionell verwandte Informationen zu finden.
Kombinieren Sie die Ergebnisse der Graph- und der Vektorsuche.
Die kombinierten Ergebnisse werden mithilfe des LLM bewertet und neu gerankt. Das LLM wählt die relevantesten und kontextbezogensten Informationen aus, um die ursprüngliche Frage zu beantworten.
Anleitung für Graph-Retrievers
Informationen zur Verwendung von Graph-Retrievern mit Cloud Spanner zum Beantworten von Fragen finden Sie in der Anleitung zu Graph-Retrievern für Cloud Spanner. In dieser Anleitung wird Folgendes erläutert:
Diagramm aus unstrukturierten Text-Blobs erstellen
Speichern Sie den Graphen in Spanner mit der Klasse
SpannerPropertyGraphStore.Initialisieren Sie eine
SpannerGraphTextToGQLRetriever-Klasse und eineSpannerGraphCustomRetriever-Instanz mit Ihrem Graph Store und einem LLM.Eine Antwort auf eine Frage in natürlicher Sprache generieren, indem die in Spanner gespeicherten Graphdaten verwendet werden.
Nächste Schritte
Informationen zur Verwendung von Spanner mit anderen Google Cloud -Produkten zum Erstellen generativer KI-Anwendungen finden Sie in der Übersicht über Spanner AI.
Weitere Informationen zur Vektorsuche in Cloud Spanner finden Sie unter Vektorsuche mit Spanner Graph verwenden.
Informationen zum Speichern von Vektoreinbettungen mit Spanner finden Sie unter Spanner-Texteinbettungen abrufen.
Weitere Informationen zum maschinellen Lernen mit Spanner finden Sie in der Übersicht zur Gemini Enterprise Agent Platform-Integration.