如何使用知识图谱和矢量数据库实现 Graph RAG

作者提供的图片关于实现检索增强生成 (RAG)、语义搜索和推荐的分步教程本教程的随附代码在此处。我的上一篇博客文章是关于如何在企业级一起实现知识图谱 (KG) 和大型语言模型 (LLM)。在那篇文章中,我介绍了 KG 和 LLM 目前交互的两种方式:LLM 作为构建 KG 的工具;以及 KG 作为 LLM 或 GenAI 应用程序的输入。下图显示了集成的两个方面以及人们将它们一起使用的不同方式。作者提供的图片在这篇文章中,我将重点介绍 KG 和 LLM 一起使用的一种流行方式:使用知识图谱的 RAG,有时称为 Graph RAG、GraphRAG、GRAG 或 Semantic RAG。检索增强生成 (RAG) 是关于检索相关信息以增强发送到 LLM 的提示,从而生成响应。这个想法是,与其将你的提示直接发送给没有经过你的数据训练的 LLM,不如用 LLM 准确回答你的提示所需的相关信息来补充你的提示。我在上一篇文章中使用的例子是将职位描述和我的简历复制到 ChatGPT 中以写一封求职信。如果我将我的简历和我申请的职位的描述提供给 LLM,它就能对我的提示“给我写一封求职信”做出更相关的回应。由于知识图谱是为了存储知识而构建的,因此它们是完美的

来源:走向数据科学
作者的图像

如何使用知识图和矢量数据库实现图形抹布

一个逐步的教程,用于实施检索演示生成(抹布),语义搜索和建议

本教程的随附代码在这里。

本教程的随附代码是 在这里。

我的最后一篇博客文章是关于如何在企业级别一起实现知识图(kgs)和大语言模型(LLMS)。在那篇文章中,我经历了KGS和LLM现在正在交互的两种方式:LLMS作为建造KGS的工具; kgs作为LLM或Genai应用的输入。下图显示了集成的两个侧面以及人们一起使用它们的不同方式。

上一篇博客文章

在这篇文章中,我将重点介绍一种流行的kgs和llms使用:使用知识图,有时称为图形抹布,graphrag,grag或语义抹布。检索演示的生成(RAG)是关于检索相关信息以增强发送给LLM的提示,该提示会产生响应。这个想法是,您可以通过LLM准确地回答您的提示所需的相关信息来补充提示,而不是直接将您的提示发送给LLM(未经数据训练)。我在上一篇文章中使用的示例是复制职位描述,并将我的简历纳入Chatgpt,以写求职信。 LLM能够为我的提示提供更相关的回应,即“给我写求职信”,如果我给我简历以及我要申请的工作的描述。由于知识图是为存储知识而构建的,因此它们是存储内部数据并补充LLM提示的理想方法,并提高了其他上下文,从而提高了对响应的准确性和上下文理解。

图形抹布 GraphRag grag 语义抹布 检索 增强 生成 更多

通常,使用kg进行抹布的检索部分有三种方法:

基于向量的检索: 提示检索: Hybrid(vector + sparql): (混合) 这个 在这里 不是