入门
⚠️ GraphRAG 会消耗大量 LLM 资源!我们强烈建议您先从这里的教程数据集开始,直到您了解系统的工作原理,并考虑先尝试使用快速/廉价模型,然后再进行大型索引任务。
要求
要开始使用 GraphRAG 系统,您有几个选择
以下是一个使用 GraphRAG 系统的简单端到端示例,使用从 pypi 安装的选项。
它展示了如何使用系统来索引一些文本,然后使用索引数据来回答有关文档的问题。
安装 GraphRAG
运行索引器
我们需要设置一个数据项目和一些初始配置。首先让我们准备一个示例数据集
从可信来源获取查尔斯·狄更斯的小说《圣诞颂歌》的副本
设置您的工作区变量
要初始化您的工作区,请首先运行 graphrag init 命令。由于我们已经在上一步中配置了一个名为 ./christmas 的目录,因此请运行以下命令
这将在 ./christmas 目录中创建两个文件:.env 和 settings.yaml。
.env包含运行 GraphRAG 管道所需的环境变量。如果您检查该文件,您会看到定义了一个环境变量GRAPHRAG_API_KEY=<API_KEY>。将<API_KEY>替换为您自己的 OpenAI 或 Azure API 密钥。settings.yaml包含管道的设置。您可以修改此文件以更改管道的设置。
使用 OpenAI
如果在 OpenAI 模式下运行,您只需将 .env 文件中 GRAPHRAG_API_KEY 的值更新为您的 OpenAI API 密钥。
使用 Azure OpenAI
除了设置您的 API 密钥外,Azure OpenAI 用户还应在 settings.yaml 文件中设置以下变量。要找到适当的部分,只需搜索 models: 根配置;您应该看到两个部分,一个用于默认聊天端点,一个用于默认嵌入端点。这是一个添加到聊天模型配置的示例
type: azure_openai_chat # Or azure_openai_embedding for embeddings
api_base: https://<instance>.openai.azure.com
api_version: 2024-02-15-preview # You can customize this for other versions
deployment_name: <azure_model_deployment_name>
在 Azure 上使用托管身份验证
要使用托管身份验证,请编辑模型配置中的 auth_type 并*删除* api_key 行
您还需要使用 az login 登录并选择包含您端点的订阅。
运行索引管道
最后,我们将运行管道!

此过程需要一些时间才能运行。这取决于您的输入数据大小、您使用的模型以及使用的文本块大小(这些可以在您的 settings.yaml 文件中配置)。管道完成后,您应该会看到一个名为 ./christmas/output 的新文件夹,其中包含一系列 parquet 文件。
使用查询引擎
现在让我们使用此数据集提出一些问题。
这是一个使用全局搜索来提出高层次问题的示例
graphrag query \
--root ./christmas \
--method global \
--query "What are the top themes in this story?"
这是一个使用局部搜索来提出有关特定角色的更具体问题的示例
graphrag query \
--root ./christmas \
--method local \
--query "Who is Scrooge and what are his main relationships?"
请参阅 查询引擎 文档,了解有关如何在索引器执行完毕后利用我们的局部和全局搜索机制从数据中提取有意义见解的详细信息。