让LLM和AI Agent更聪明:微软开源基于知识图谱的GraphRAG!
最近微软开源了一个叫 GraphRAG 的项目,在 GitHub 上迅速获得了超过 9200 颗星。这背后到底解决了什么问题?让我们从头说起。
RAG
RAG 模型通常由两部分组成:
检索组件
生成组件
RAG 的核心优势在于
高准确性
成本效益
不过,传统 RAG 系统也有短板。比如面对大规模数据集时效率可能跟不上,回答全局性问题时往往不够全面。而且前期需要大量计算资源和数据索引工作,限制了灵活性和可扩展性。正是冲着这些挑战,微软推出了 GraphRAG,并通过知识图谱的方法来增强信息检索和生成,旨在提供更高效、更全面的数据理解能力。GraphRAG 的创新之处在于它能用知识图谱结构化地组织数据,系统性地总结数据集中的主题和关系,极大增强回答的全面性和多样性,同时降低检索成本、提升处理速度。
关于GraphRAG
GraphRAG
结构化
全面
自动从文本文档中提取丰富的知识图谱,并通过大语言模型进行深入分析和总结
GraphRAG 一个显著特点是:在用户提出查询之前,它就能报告数据的语义结构。它通过检测图中的“社区”——即密集连接的节点群组,并以分层方式对这些社区进行划分,从高层次主题到低层次话题构建起多级知识图谱。这一过程不仅揭示了数据的内在结构,还通过 LLM 对每个社区进行总结,为数据集提供了一个分层、无需预先指定问题的概览。每个社区的总结都详细描述了其中的实体及相互关系,为理解和分析数据提供了全面视角。
下面这张图片展示了一个由新闻数据集派生出的知识图谱,实体节点和关系边以图的形式呈现。不同颜色区分不同社区,代表数据集中的不同主题:
- :位于图的左侧,表示最高级别主题。这些社区由较大、颜色较少的节点簇组成,每个簇代表一个广泛主题。
Level 0 社区
- :位于图的右侧,展示了 Level 0 主题下更细粒度的话题。更多小节点簇,颜色更丰富,显示了更高层次主题内部的细分话题。
Level 1 社区
通过这种分层和颜色编码,GraphRAG 清晰地展示了数据集的语义结构,让观察者一眼识别出主要主题和它们之间的关系。这种可视化不仅有助于理解数据组织方式,也为进一步分析和探索提供了直观起点。
关于社区摘要(Community Summaries)
传统的基于向量搜索的 RAG 方法,对于“全局性”问题往往力不从心——它们只生成与问题语义相似的文本片段的答案,而不是从所有输入文本中提取答案。GraphRAG 的
社区摘要
为了评估 GraphRAG 与传统 RAG 和层次化源文本摘要方法的表现,研究者用 GPT-4 模型从两个数据集的简短描述中生成了一系列感知问题,并选了三个指标:全面性、多样性和赋能性(支持知情决策)。结果显示,无论在社区层次结构的哪个级别使用社区摘要,GraphRAG 在全面性和多样性方面都优于传统 RAG,胜率约 70-80%。在较低 token 成本下,GraphRAG 使用中间和低级别社区摘要的性能也优于源文本摘要,token 使用率约为 20-70%。对于最高层次社区,GraphRAG 性能与层次化源文本摘要相当,但 token 成本显著降低,仅为 2-3%。
研究人员还通过一个具体例子展示了差异:在回答关于娱乐文章中反复提及的公众人物的问题时,传统 RAG 的回答比较表面,只列出了一些人并简要描述原因;而 GraphRAG 的回答更全面深入,不仅列出了多个领域的公众人物,还分析了他们在行业中的影响力和公众兴趣。LLM 评估显示,GraphRAG 在全面性、多样性和授权能力上全面胜出。
结语
GraphRAG 是一种创新的基于知识图谱的检索增强生成工具,通过大语言模型自动从文本文档中提取知识图谱,进而支持对私有或未见过的数据集进行深入问答。它通过构建包含所有输入文本的图索引,有效回答那些需要从整个数据集中获取答案的全局问题。对于任何追求高质量问答的 AI 应用来说,这无疑是一个值得关注的方向。
-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名