Allgemeine Einführung
Fast GraphRAG ist ein Open-Source-Tool, das von Circlemind AI entwickelt wurde, um eine effiziente und genaue Retrieval Augmentation Generation (RAG) durch Wissensgraphen- und PageRank-Algorithmen zu ermöglichen. Das Tool passt sich intelligent an das Nutzungsszenario, die Daten und die Abfrageanforderungen des Nutzers an, um einen interpretierbaren, kostengünstigen und effizienten Retrieval-Workflow bereitzustellen.Fast GraphRAG ist so konzipiert, dass es ohne nennenswerte Ressourcen oder Kosten in großem Umfang ausgeführt werden kann, und unterstützt die Aktualisierung von Daten in Echtzeit und die dynamische Datengenerierung, wodurch es sich für eine Vielzahl von Bereichen mit Wissensmanagement- und Informationsabfrageanforderungen eignet.
Die Verwendung von Fast-GraphRAG kostet im Vergleich zu den ursprünglichen 0,48 nur das fast 6-fache! Und diese Kosteneffizienz steigt weiter, wenn die Datengröße und die Anzahl der Einfügungen zunehmen.
Funktionsliste
- Interpretierbare und debuggingfähige WissensgraphenBereitstellung navigierbarer Ansichten von Wissen, die abgefragt, visualisiert und aktualisiert werden können.
- Hohe Effizienz und niedrige KostenKonzipiert für den Betrieb in großem Maßstab ohne große Ressourcen oder Kosten.
- Dynamische DatengenerierungAutomatisches Generieren und Optimieren von Maps, um sie bestmöglich an Ihre Domänen- und Ontologieanforderungen anzupassen.
- inkrementelles UpdateUnterstützt Echtzeit-Updates, die bei Datenänderungen angepasst werden.
- Intelligente ErkundungGraph exploration using PageRank algorithm to improve accuracy and reliability.
- Unterstützung von Asynchronität und TypenVollständig asynchron mit voller Typunterstützung, um stabile und vorhersehbare Arbeitsabläufe zu gewährleisten.
LightRAG, GraphRAG und VectorDBs im Vergleich
(ein Dokument usw.) einsehen
# Abfragen | Methode | Alle Abfragen % | Nur Multihop % |
---|---|---|---|
51 | |||
VectorDB | 0.49 | 0.32 | |
LichtRAG | 0.47 | 0.32 | |
GraphRAG | 0.75 | 0.68 | |
Circlemind | 0.96 | 0.95 | |
101 | |||
VectorDB | 0.42 | 0.23 | |
LichtRAG | 0.45 | 0.28 | |
GraphRAG | 0.73 | 0.64 | |
Circlemind | 0.93 | 0.90 |
Einfügen von Daten
Methode | Zeit (Minuten) |
---|---|
VectorDB | ~0.3 |
LichtRAG | ~25 |
GraphRAG | ~40 |
Circlemind | ~1.5 |
Im Abfragetest erreicht Fast GraphRAG eine hohe Genauigkeit von 96% und 95% für alle Abfragen bzw. Multi-Hop-Abfragen im Vergleich zu VectorDB RAG Nahezu viermal höher.
Darüber hinaus wurden mit Fast GraphRAG die Einfügezeiten für einen Benchmark-Test des Datensatzes (etwa 800 Blöcke) gemessen: Die Einfügezeit für Fast GraphRAG betrug etwa 1,5 Minuten, was 27 Mal schneller ist als GraphRAG, und die Abrufgenauigkeit wurde um mehr als 401 TP3T verbessert.
Hilfe verwenden
Einbauverfahren
- Installation von der Quelle aus (empfohlen für beste Leistung)::
# 克隆此仓库
git clone https://github.com/circlemind-ai/fast-graphrag
cd fast-graphrag
poetry install
- Installation von PyPi (empfohlene Stabilität)::
pip install fast-graphrag
Schnellstart
- Legen Sie den OpenAI-API-Schlüssel fest:
export OPENAI_API_KEY="sk-..."
- Laden Sie den Text von A Christmas Carol herunter:
curl https://raw.githubusercontent.com/circlemind-ai/fast-graphrag/refs/heads/main/mock_data.txt > ./book.txt
- Optional: Legen Sie das Limit für gleichzeitige Anfragen fest:
export CONCURRENT_TASK_LIMIT=8
- Verwenden Sie das folgende Python-Codefragment:
from fast_graphrag import GraphRAG
DOMAIN = "Analyze this story and identify the characters. Focus on how they interact with each other, the locations they explore, and their relationships."
EXAMPLE_QUERIES = [
"Who are the main characters?",
"What locations are mentioned?",
"How do the characters interact?"
]
grag = GraphRAG(
domain=DOMAIN,
example_queries=EXAMPLE_QUERIES,
config=GraphRAG.Config(
llm_service=OpenAILLMService(
model="your-llm-model",
base_url="llm.api.url.com",
api_key="your-api-key",
mode=instructor.Mode.JSON,
api_version="your-llm-api_version",
client="openai or azure"
),
embedding_service=OpenAIEmbeddingService(
model="your-embedding-model",
base_url="emb.api.url.com",
api_key="your-api-key",
embedding_dim=512,
api_version="your-llm-api_version",
client="openai or azure"
),
),
)
Hauptfunktionen
- Generierung von WissensgraphenDurch die Definition von Domänen und Beispielabfragen generiert GraphRAG automatisch einen an Ihre Bedürfnisse angepassten Wissensgraphen.
- Abfragen und VisualisierungenAbfrage des generierten Wissensgraphen und Anzeige der Ergebnisse mit Hilfe von Visualisierungstools.
- Aktualisierung in EchtzeitWenn sich Daten ändern, unterstützt GraphRAG die Echtzeitaktualisierung des Wissensgraphen, um sicherzustellen, dass die Informationen aktuell und genau sind.
- Intelligente ErkundungMit Hilfe des PageRank-Algorithmus ist GraphRAG in der Lage, den Wissensgraphen auf intelligente Weise zu erkunden, um die Abrufgenauigkeit und -zuverlässigkeit zu verbessern.