GraphRAG入门:知识图谱+RAG下一代检索

📘 AI教程 💬 🔥 Trending 发布者: leakey
GraphRAG入门:知识图谱+RAG下一代检索

🩺 摘要

传统RAG只是把文档切成块扔进向量库。遇到复杂问题——「A公司和B公司有什么关系」「这个产品的供应链是什么样的」——传统RAG就答不上来了。GraphRAG能解决这个问题。

📝 详情

普通RAG的局限

普通RAG:文档→切块→向量化→搜相似。

它能回答:「公司今年的财报说了什么?」 它答不好:「公司今年业绩增长主要靠哪些业务线?这些业务线之间有什么关联?」

第二个问题需要理解关系——GraphRAG就是干这个的。

GraphRAG是什么

GraphRAG在传统RAG的基础上加了知识图谱。它不仅存文档内容,还存实体之间的关系:

[华为] -- [合作] --> [赛力斯]
[赛力斯] -- [生产] --> [问界M9]
[问界M9] -- [使用] --> [华为ADS]

当用户问「华为跟哪些汽车厂商合作」时,GraphRAG从图谱里搜关系,比纯向量搜索准确得多。

快速上手

最简单的方案是使用Microsoft GraphRAG项目。

pip install graphrag

# 初始化项目
graphrag init --root ./myproject

# 把文档放到 ./myproject/input/
# 运行索引
graphrag index --root ./myproject

# 问答
graphrag query --root ./myproject --method global --query "华为跟哪些汽车厂商合作?"

什么时候该用GraphRAG

场景 普通RAG GraphRAG
文档问答 够用 也可以
关系查询 不行 擅长
多跳推理 不行 擅长
简单事实查询 快捷 稍慢

需要关系理解时用GraphRAG,简单文档问答用普通RAG就够了。