Die Kraft der Wissensnetze entfesseln: Erkundung von Graph RAG für eine verbesserte abrufunterstützte Generierung
Erschließen Sie die Kraft von Wissensgraphen mit Graph RAG, einem bahnbrechenden System, das Wissensgraphen und Retrieval Augmented Generation (RAG) für eine verbesserte Suche und Generierung kombiniert. Erkunden Sie die technischen Details, richten Sie es lokal ein und bewerten Sie die Kostenfaktoren. Entdecken Sie, wie Graph RAG die Einschränkungen herkömmlicher RAG-Ansätze adressiert.
18. Februar 2025

Erschließen Sie die Kraft von Wissensgraphen mit Graph RAG, einem bahnbrechenden System, das die Vorteile von Retrieval Augmented Generation (RAG) mit dem kontextuellen Verständnis von Wissensgraphen kombiniert. Entdecken Sie, wie dieser innovative Ansatz Ihre Inhaltserstellung verbessern und die Genauigkeit und Relevanz Ihrer Antworten steigern kann, während Sie gleichzeitig Einblicke in die Kostenzusammenhänge des Betriebs von Graph RAG gewinnen.
Entdecken Sie die Kraft von Graph RAG: Verbesserung der Retrieval Augmented Generation mit Wissensgrafen
Verständnis der traditionellen RAG: Einschränkungen und Motivationen
Erkundung der technischen Details von Graph RAG
Einrichten von Graph RAG auf Ihrem lokalen Computer
Vergleich der Kostenauswirkungen von Graph RAG und traditioneller RAG
Erkundung anderer Graph RAG-Lösungen: Ein tieferer Einblick
Schlussfolgerung
Entdecken Sie die Kraft von Graph RAG: Verbesserung der Retrieval Augmented Generation mit Wissensgrafen
Entdecken Sie die Kraft von Graph RAG: Verbesserung der Retrieval Augmented Generation mit Wissensgrafen
Graph RAG ist ein bahnbrechendes System, das Wissensgraphen mit Retrieval Augmented Generation (RAG) kombiniert, um die Einschränkungen traditioneller RAG-Ansätze zu adressieren. Durch die Nutzung von Wissensgraphen bietet Graph RAG ein ganzheitlicheres Verständnis des zugrunde liegenden Korpus, was zu genaueren und kontextrelevanten Antworten führt.
Die Schlüsselaspekte von Graph RAG umfassen:
-
Indexierungsphase: In dieser Phase werden die Quelldokumente verarbeitet, Entitäten extrahiert und zur Erstellung eines Wissensgraphen verwendet. Der Wissensgraph repräsentiert die Beziehungen zwischen verschiedenen Entitäten, die dann zur Erstellung von Zusammenfassungen auf unterschiedlichen Granularitätsebenen genutzt werden.
-
Abfragephase: Wenn eine Benutzerabfrage vorliegt, wählt Graph RAG die geeignete Ebene der Community (Zusammenfassung) basierend auf der Abfrage aus und ruft die relevanten Informationen ab. Die Antworten aus mehreren Communities werden dann kombiniert, um die endgültige Antwort zu generieren.
Dieser Ansatz adressiert die Einschränkungen des traditionellen RAG, wie begrenztes Kontextverständnis und Skalierungsprobleme. Durch die Einbeziehung von Wissensgraphen kann Graph RAG ein umfassenderes Verständnis der zugrunde liegenden Daten bieten, was zu genaueren und kohärenteren Antworten führt.
Verständnis der traditionellen RAG: Einschränkungen und Motivationen
Verständnis der traditionellen RAG: Einschränkungen und Motivationen
Der traditionelle Retrieval Augmented Generation (RAG)-Ansatz ist eine Methode, bei der das Sprachmodell relevante Dokumente aus einem großen Korpus abruft, um genauere und kontextrelevantere Antworten zu generieren. Dieser Ansatz umfasst drei Hauptschritte:
-
Dokumentenverarbeitung und Einbettung: Die Originaldokumente werden mithilfe einer Chunking-Strategie in kleinere Abschnitte unterteilt. Anschließend werden Einbettungen für jeden Abschnitt berechnet und in einem Vektorstore gespeichert, der zur Wissensbasis wird.
-
Abfragephase: Wenn ein Benutzer eine Frage stellt, werden Einbettungen für die Abfrage berechnet und eine Ähnlichkeitssuche im Vektorstore durchgeführt, um die relevantesten Abschnitte oder Teildokumente abzurufen.
-
Antwortgenerierung: Der abgerufene Kontext wird mit der ursprünglichen Abfrage kombiniert und in ein großes Sprachmodell eingegeben, um die endgültige Antwort zu generieren.
Der traditionelle RAG-Ansatz hat jedoch mehrere Einschränkungen:
Erkundung der technischen Details von Graph RAG
Erkundung der technischen Details von Graph RAG
Graph RAG ist ein neuartiger Ansatz, der Wissensgraphen mit Retrieval Augmented Generation (RAG) kombiniert, um die Einschränkungen traditioneller RAG-Systeme zu adressieren. Die Schlüsselschritte im Graph RAG-Prozess sind wie folgt:
-
Indexierungsphase:
- Die Quelldokumente werden in kleinere Teilabschnitte unterteilt.
- Innerhalb jedes Abschnitts werden Entitäten (wie Personen, Orte, Unternehmen) identifiziert und die Beziehungen zwischen diesen Entitäten extrahiert.
- Diese Informationen werden verwendet, um einen Wissensgraphen zu erstellen, bei dem die Entitäten als Knoten und die Beziehungen zwischen ihnen als Kanten dargestellt werden.
- Der Wissensgraph wird dann verwendet, um Communitys zu erkennen, die Gruppen eng verwandter Entitäten sind.
- Für jede Community werden Zusammenfassungen auf unterschiedlichen Detailebenen erstellt, von global (hochgradig) bis lokal (granularer).
-
Abfragephase:
- Wenn eine Benutzerabfrage eingeht, wird die geeignete Community-Ebene (global, intermediär oder lokal) basierend auf dem erforderlichen Detaillierungsgrad ausgewählt.
- Die Zusammenfassungen für die relevanten Communities werden abgerufen und diese Teilantworten werden kombiniert, um die endgültige Antwort zu generieren.
Einrichten von Graph RAG auf Ihrem lokalen Computer
Einrichten von Graph RAG auf Ihrem lokalen Computer
Um Graph RAG auf Ihrem lokalen Computer einzurichten, führen Sie diese Schritte aus:
-
Erstellen Sie eine Conda-Virtualumgebung:
conda create -n graphrag python=3.9 conda activate graphrag
-
Installieren Sie das Graph RAG-Paket:
pip install graphrag
-
Erstellen Sie ein Verzeichnis für Ihre Testdaten:
mkdir -p rag_test/input
-
Laden Sie einen Beispieldatensatz herunter, z.B. den Text von "A Christmas Carol" von Charles Dickens:
python -m graphrag.index --root_dir rag_test/input --download_sample_data
-
Richten Sie Ihre Arbeitsbereichsvariablen und Konfigurationen ein:
python -m graphrag.index --root_dir rag_test/input --init_config
Dadurch wird eine
settings.yml
-Datei erstellt, in der Sie Ihren API-Schlüssel, das Modell und andere Einstellungen konfigurieren können. -
Führen Sie den Indexierungsprozess aus, um den Wissensgraphen zu erstellen:
python -m graphrag.index --root_dir rag_test/input
Dieser Schritt kann einige Zeit in Anspruch nehmen, da er die Entitätenextraktion, Beziehungsidentifikation und Community-Zusammenfassung umfasst.
Vergleich der Kostenauswirkungen von Graph RAG und traditioneller RAG
Vergleich der Kostenauswirkungen von Graph RAG und traditioneller RAG
Im bereitgestellten Beispiel waren die Kostenauswirkungen bei der Verwendung von Graph RAG erheblich. Die Gesamtkosten für die Verarbeitung des Buches und die Erstellung von Graph RAG beliefen sich auf etwa 7 US-Dollar, was für große Datenkorpora prohibitiv teuer sein könnte.
Die Hauptfaktoren, die zu den hohen Kosten beitrugen, waren:
-
API-Anfragen: Der Graph RAG-Ansatz tätigte insgesamt 570 Anfragen über die API, hauptsächlich für das GPT-4-Modell. Im Vergleich dazu hätte der traditionelle RAG-Ansatz wahrscheinlich eine geringere Anzahl von API-Anfragen.
-
Token-Verarbeitung: Der Graph RAG-Prozess umfasste die Verarbeitung von über 1 Million Token, was zu den Gesamtkosten beitrug.
Im Vergleich dazu hätte ein traditionelles RAG-System wahrscheinlich geringere Kosten, da es die zusätzlichen Schritte der Entitätenextraktion, Beziehungsidentifikation und Community-Zusammenfassung, die Teil des Graph RAG-Ansatzes sind, nicht erfordert.
Erkundung anderer Graph RAG-Lösungen: Ein tieferer Einblick
Erkundung anderer Graph RAG-Lösungen: Ein tieferer Einblick
Graph RAG ist nicht die einzige Implementierung des Graph RAG-Ansatzes. Es gibt auch andere bemerkenswerte Lösungen, die es zu erkunden gilt:
Lama Index's Knowledge Graph RAG Query Engine
Lama Index, eine beliebte Open-Source-Plattform für Wissensmanagement, hat eine eigene Implementierung einer Knowledge Graph RAG Query Engine entwickelt. Dieser Ansatz nutzt die Kraft von Wissensgraphen, um die Abruf- und Generierungsfähigkeiten großer Sprachmodelle zu verbessern.
Neo4j's Graph RAG Package
Neo4j, ein führender Anbieter von Graphdatenbanken, hat ebenfalls ein Graph RAG-Paket eingeführt. Diese Lösung integriert die Graphdatenbank-Fähigkeiten von Neo4j mit der Retrieval Augmented Generation (RAG)-Technik.
Schlussfolgerung
Schlussfolgerung
Graph RAG funktioniert gut, aber es gab ein großes Problem, und das sind die Kosten. Für das bereitgestellte Beispiel wurden insgesamt 570 Anfragen über die API unter Verwendung von GPT-4 gesendet, und es wurden über 1 Million Token verarbeitet, was zu Kosten von etwa 7 US-Dollar führte. Diese Kosten könnten für einen großen Datenkorpus prohibitiv teuer sein und sind deutlich höher als der Aufbau eines traditionellen RAG-Systems.
Trotz der Kostenauswirkungen ist Graph RAG ein innovativer Ansatz, der Wissensgraphen mit Retrieval Augmented Generation (RAG) kombiniert. Er adressiert einige der Einschränkungen traditioneller RAG-Systeme, wie begrenztes Kontextverständnis und Skalierungsprobleme.
Microsoft ist nicht das einzige Unternehmen, das ein Graph RAG-System implementiert hat. Andere Optionen wie Lama Index's Knowledge Graph RAG Query Engine und Neo4j's Graph RAG Package sind ebenfalls verfügbar.
FAQ
FAQ