GraphRAG is a popular 🔥🔥🔥 and powerful 💪💪💪 RAG system! 🚀💡 Inspired by systems like Microsoft's, graph-based RAG is unlocking endless possibilities in AI.
Our project focuses on modularizing and decoupling these methods 🧩 to unveil the mystery 🕵️♂️🔍✨ behind them and share fun and valuable insights! 🤩💫
We select the following Graph RAG methods:
Based on the entity and relation, we categorize the graph into the following types:
- Chunk Tree: A tree structure formed by document content and summary.
- Passage Graph: A relational network composed of passages, tables, and other elements within documents.
- ER Graph: An Entity-Relation Graph, which contains only entities and relations, is commonly represented as triples.
- KG: A Knowledge Graph, which enriches entities with detailed descriptions and type information.
- RKG: A Rich Knowledge Graph, which further incorporates keywords associated with relations.
The criteria for the classification of graph types are as follows:
| Graph Attributes | Chunk Tree | Passage Graph | ER | KG | RKG |
|---|---|---|---|---|---|
| Original Content | ✅ | ✅ | ❌ | ❌ | ❌ |
| Entity Name | ❌ | ❌ | ✅ | ✅ | ✅ |
| Entity Type | ❌ | ❌ | ❌ | ✅ | ✅ |
| Entity Description | ❌ | ❌ | ❌ | ✅ | ✅ |
| Relation Name | ❌ | ❌ | ✅ | ❌ | ✅ |
| Relation keyword | ❌ | ❌ | ❌ | ❌ | ✅ |
| Relation Description | ❌ | ❌ | ❌ | ✅ | ✅ |
| Edge Weight | ❌ | ❌ | ✅ | ✅ | ✅ |