利用图形 RAG 的力量:通过语义搜索、嵌入等解锁非结构化数据
解锁图形RAG的力量,用于语义搜索、信息提取和高级数据分析。探索这个开源的检索增强型生成框架,它利用知识图谱来增强大型语言模型。提高复杂查询的准确性和相关性。
2025年2月23日

利用 GraphRAG - 来自 Microsoft AI 的终极开源 RAG 引擎,解锁语义搜索、嵌入和向量搜索的力量。探索这种创新解决方案如何转变您的数据分析和问答能力,提供更相关和可靠的洞见。
什么是 RAG(检索增强生成)?
什么是 RAG(检索增强生成)?
RAG(检索增强生成)是一种用于增强现有大型语言模型的方法,通过结合外部知识来实现。RAG的核心思想是将大型语言模型的强大功能与从外部资源(如知识库或文本语料库)检索和利用相关信息的能力相结合。
RAG方法的主要优势包括:
-
提高相关性: 通过检索和整合相关信息,RAG可以提供更准确和相关的响应,特别是对于需要特定知识的问题。
-
减少幻觉: 研究表明,RAG可以减少大型语言模型产生幻觉或事实错误内容的倾向,因为响应是基于检索到的信息。
-
多样性: 除了问答,RAG还可应用于信息提取、推荐、情感分析和摘要等各种NLP任务。
-
私有数据处理: RAG可以处理私有或敏感的数据集,因为信息是在本地处理和存储的,无需与外部服务共享数据。
传统基线RAG系统与Graph RAG方法的关键区别在于使用知识图谱。Graph RAG结合文本提取、网络分析和语言模型提示,提供了一个更加全面和强大的系统,用于在高级数据分析和问答任务中利用大型语言模型。
GraphRAG 与传统 RAG 系统有何不同?
GraphRAG 与传统 RAG 系统有何不同?
GraphRAG是对传统RAG(检索增强生成)系统的重大进步。它的不同之处如下:
-
知识图谱提取: 与简单的基于文本的检索不同,GraphRAG结合文本提取、网络分析和语言模型提示,从输入数据构建全面的知识图谱。这允许对内容有更深入、更全面的理解。
-
提高准确性和相关性: 通过利用知识图谱,GraphRAG可以提供更准确和相关的响应,特别是对于复杂或专业的数据集。基于图的方法有助于连接分散的信息片段,并综合出超越基线RAG技术的见解。
-
全面的数据理解: GraphRAG采取更全面的方法,增强了对大型数据集的整体理解和总结。这使它成为在高级数据分析和问答任务中利用大型语言模型的更优选择。
-
减少幻觉: GraphRAG已被证明可以减少大型语言模型产生"幻觉"内容的倾向,因为图谱方法有助于模型更紧密地遵循提供的可靠信息。
-
多样性: 除了问答,GraphRAG还可应用于信息提取、推荐、情感分析和摘要等各种自然语言处理任务,并在私有、本地存储环境中进行。
总之,GraphRAG代表了检索增强生成领域的重大进步,提供了更高的准确性、相关性和全面的数据理解,使其成为在高级应用中利用大型语言模型的强大框架。
开始使用 GraphRAG
开始使用 GraphRAG
要开始使用GraphRAG,请按照以下步骤操作:
-
安装先决条件:
- 确保您的系统上已安装Python。
- 在终端或命令提示符中运行
pip install graphrag
安装所需的软件包。
-
克隆仓库:
- 打开Visual Studio Code(或您喜欢的IDE)并创建一个新的项目文件夹。
- 在终端中导航到项目文件夹,运行
git clone https://github.com/microsoft/graph-rag.git
克隆GraphRAG仓库。
-
设置环境:
- 在终端中导航到
graph-rag
目录。 - 通过运行
export GRAPHRAG_API_KEY=your_api_key_here
导出您的OpenAI API密钥。
- 在终端中导航到
-
创建输入文件夹:
- 在终端中运行
mkdir input
创建一个输入文件夹来存放您的文档。
- 在终端中运行
-
索引文档:
- 将您的文档(如文本文件、PDF)放入
input
文件夹。 - 在终端中运行
python dm_rag_index.py
来索引文档。
- 将您的文档(如文本文件、PDF)放入
-
与文档聊天:
- 在终端中运行
python dm_graph_rag.py --query "your_query_here" --root_dir . --method global
。 - 将
"your_query_here"
替换为您想要询问文档的问题或查询。
- 在终端中运行
GraphRAG将使用索引过程中创建的知识图谱,为您的查询提供相关和全面的响应,超越传统的检索增强生成技术。
索引和配置 GraphRAG
索引和配置 GraphRAG
要开始使用GraphRAG,您需要按照以下步骤操作:
-
安装先决条件:
- 确保您的系统上已安装Python。
- 在命令提示符中运行提供的命令安装Pip。
-
克隆仓库:
- 打开Visual Studio Code并创建一个新窗口。
- 通过单击切换面板按钮打开终端。
- 在终端中导航到bash环境,运行命令
pip install graphrag
安装必要的软件包。
-
设置环境:
- 在终端中输入
cd graphrag
导航到克隆的仓库。 - 通过运行命令
export GRAPHRAG_API_KEY=your_api_key_here
导出您的OpenAI API密钥。
- 在终端中输入
-
创建输入文件夹:
- 在终端中运行命令
mkdir input
创建一个输入文件夹,您可以在其中放置文件或文档。 - 通过单击"文件">"打开文件夹"并选择克隆的仓库在VS Code中打开该文件夹。
- 在终端中运行命令
-
索引文档:
- 将您的文档(如财务报告)放入输入文件夹。
- 在终端中运行命令
python dm_rrag index
来索引当前文档。 - 这将创建一个关于索引文档的社区报告,您现在可以用于聊天。
-
配置环境:
- 在
env
文件中,您可以配置API密钥、模型类型和其他设置。 - 您可以指定使用LLAMA模型或OpenAI接口。
- 保存对
env
文件的更改。
- 在
-
运行代码:
- 在终端中运行命令
python dm_rrag query --root_folder . --method global --query "your_query_here"
开始与索引的文档聊天。
- 在终端中运行命令
通过遵循这些步骤,您可以设置GraphRAG,索引文档,并开始使用检索增强生成功能来增强您的自然语言处理任务。
与 GraphRAG 聊天
与 GraphRAG 聊天
要与GraphRAG聊天,请按照以下步骤操作:
-
使用
python dm_rrag index
命令索引文档后,您可以通过运行命令python dm_rrag query --root_folder . --method global "your query here"
来启动聊天。 -
将
"your query here"
替换为您想要询问GraphRAG有关索引文档的问题或提示。 -
GraphRAG将使用索引过程中创建的知识图谱,提供相关和有信息的响应,利用大型语言模型和知识图谱中的结构化信息。
-
您可以继续与GraphRAG聊天,运行相同的命令并提供不同的查询。该系统将使用现有的知识图谱为您的问题提供定制的响应。
-
如果您想切换到不同的语言模型,可以在
.env
文件中配置模型,指定LLM_TYPE
并提供适当的API端点或本地模型路径。 -
GraphRAG的全面方法使其在检索增强生成方面优于传统的基线RAG技术,特别是对于复杂或私有的数据集,因为它可以连接分散的信息片段并提供综合见解。
FAQ
FAQ