Skip to content

默认配置模式(使用环境变量)

文本嵌入自定义

默认情况下,GraphRAG 索引器只会发出查询方法所需的嵌入。然而,模型为所有纯文本字段定义了嵌入,这些嵌入可以通过将 GRAPHRAG_EMBEDDING_TARGET 环境变量设置为 all 来生成。

如果嵌入目标是 all,并且您只想嵌入这些字段的一个子集,可以使用下面描述的 GRAPHRAG_EMBEDDING_SKIP 参数指定要跳过的嵌入。

嵌入字段

  • text_unit.text
  • document.raw_content
  • entity.name
  • entity.description
  • relationship.description
  • community.title
  • community.summary
  • community.full_content

输入数据

我们的管道可以从输入文件夹中摄取 .csv 或 .txt 数据。这些文件可以嵌套在子文件夹中。要配置输入数据的处理方式、映射的字段以及时间戳的解析方式,请查找以下以 GRAPHRAG_INPUT_ 开头的配置值。通常,基于 CSV 的数据提供了最大的自定义性。每个 CSV 至少应包含一个 text 字段(可以使用环境变量进行映射),但如果它们还包含 titletimestampsource 字段,则会有所帮助。还可以包含其他字段,这些字段将作为 Document 表上的额外字段。

基础 LLM 设置

这些是配置 LLM 连接的主要设置。

参数 是否必需? 描述 类型 默认值
GRAPHRAG_API_KEY 对于 OpenAI 是必需的。对于 AOAI 可选 API 密钥。(注意:OPENAI_API_KEY 也用作回退)。如果在使用 AOAI 时未定义,将使用托管身份。 str None
GRAPHRAG_API_BASE 对于 AOAI 是必需的 API 基础 URL str None
GRAPHRAG_API_VERSION 对于 AOAI 是必需的 AOAI API 版本。 str None
GRAPHRAG_API_ORGANIZATION AOAI 组织。 str None
GRAPHRAG_API_PROXY AOAI 代理。 str None

文本生成设置

这些设置控制管道使用的文本生成模型。任何具有回退的设置将在可用时使用基础 LLM 设置。

参数 是否必需? 描述 类型 默认值
GRAPHRAG_LLM_TYPE 对于 AOAI 是必需的 LLM 操作类型。可以是 openai_chatazure_openai_chat str openai_chat
GRAPHRAG_LLM_DEPLOYMENT_NAME 对于 AOAI 是必需的 AOAI 模型部署名称。 str None
GRAPHRAG_LLM_API_KEY 是(使用回退) API 密钥。如果在使用 AOAI 时未定义,将使用托管身份。 str None
GRAPHRAG_LLM_API_BASE 对于 AOAI(使用回退) API 基础 URL str None
GRAPHRAG_LLM_API_VERSION 对于 AOAI(使用回退) AOAI API 版本。 str None
GRAPHRAG_LLM_API_ORGANIZATION 对于 AOAI(使用回退) AOAI 组织。 str None
GRAPHRAG_LLM_API_PROXY AOAI 代理。 str None
GRAPHRAG_LLM_MODEL 语言模型。 str gpt-4-turbo-preview
GRAPHRAG_LLM_MAX_TOKENS 最大令牌数。 int 4000
GRAPHRAG_LLM_REQUEST_TIMEOUT 等待聊天客户端响应的最大秒数。 int 180
GRAPHRAG_LLM_MODEL_SUPPORTS_JSON 指示给定模型是否支持JSON输出模式。True 表示启用。 str None
GRAPHRAG_LLM_THREAD_COUNT 用于LLM并行化的线程数。 int 50
GRAPHRAG_LLM_THREAD_STAGGER 启动每个线程之间的等待时间(以秒为单位)。 float 0.3
GRAPHRAG_LLM_CONCURRENT_REQUESTS 嵌入客户端允许的并发请求数。 int 25
GRAPHRAG_LLM_TOKENS_PER_MINUTE 允许LLM客户端每分钟处理的令牌数。0 = 绕过 int 0
GRAPHRAG_LLM_REQUESTS_PER_MINUTE 允许LLM客户端每分钟处理的请求数。0 = 绕过 int 0
GRAPHRAG_LLM_MAX_RETRIES 请求失败时尝试的最大重试次数。 int 10
GRAPHRAG_LLM_MAX_RETRY_WAIT 重试之间的最大等待秒数。 int 10
GRAPHRAG_LLM_SLEEP_ON_RATE_LIMIT_RECOMMENDATION 是否在速率限制建议时休眠。(仅限Azure) bool True
GRAPHRAG_LLM_TEMPERATURE 用于生成的温度。 float 0
GRAPHRAG_LLM_TOP_P 用于采样的top_p值。 float 1
GRAPHRAG_LLM_N 生成的响应数量。 int 1

文本嵌入设置

这些设置控制管道使用的文本嵌入模型。任何具有回退的设置将使用基础LLM设置(如果可用)。

参数 是否必需? 描述 类型 默认值
GRAPHRAG_EMBEDDING_TYPE 对于AOAI 要使用的嵌入客户端。可以是openai_embeddingazure_openai_embedding str openai_embedding
GRAPHRAG_EMBEDDING_DEPLOYMENT_NAME 对于AOAI AOAI部署名称。 str None
GRAPHRAG_EMBEDDING_API_KEY 是(使用回退) 用于嵌入客户端的API密钥。如果使用AOAI时未定义,将使用托管身份。 str None
GRAPHRAG_EMBEDDING_API_BASE 对于AOAI(使用回退) API基础URL。 str None
GRAPHRAG_EMBEDDING_API_VERSION 对于AOAI(使用回退) 用于嵌入客户端的AOAI API版本。 str None
GRAPHRAG_EMBEDDING_API_ORGANIZATION 用于AOAI(使用回退) 用于嵌入客户端的AOAI组织。 str None
GRAPHRAG_EMBEDDING_API_PROXY 用于嵌入客户端的AOAI代理。 str None
GRAPHRAG_EMBEDDING_MODEL 用于嵌入客户端的模型。 str text-embedding-3-small
GRAPHRAG_EMBEDDING_BATCH_SIZE 一次嵌入的文本数量。(Azure限制为16) int 16
GRAPHRAG_EMBEDDING_BATCH_MAX_TOKENS 每批的最大令牌数(Azure限制为8191) int 8191
GRAPHRAG_EMBEDDING_TARGET 要嵌入的目标字段。可以是requiredall str required
GRAPHRAG_EMBEDDING_SKIP 要跳过嵌入的字段列表(以逗号分隔)。(例如'relationship.description') str None
GRAPHRAG_EMBEDDING_THREAD_COUNT 用于嵌入的并行线程数。 int
GRAPHRAG_EMBEDDING_THREAD_STAGGER 启动每个嵌入线程之间的等待时间(以秒为单位)。 float 50
GRAPHRAG_EMBEDDING_CONCURRENT_REQUESTS 嵌入客户端允许的并发请求数。 int 25
GRAPHRAG_EMBEDDING_TOKENS_PER_MINUTE 嵌入客户端每分钟允许的令牌数。0 = 绕过 int 0
GRAPHRAG_EMBEDDING_REQUESTS_PER_MINUTE 嵌入客户端每分钟允许的请求数。0 = 绕过 int 0
GRAPHRAG_EMBEDDING_MAX_RETRIES 请求失败时尝试的最大重试次数。 int 10
GRAPHRAG_EMBEDDING_MAX_RETRY_WAIT 重试之间的最大等待秒数。 int 10
GRAPHRAG_EMBEDDING_SLEEP_ON_RATE_LIMIT_RECOMMENDATION 是否在速率限制建议时休眠。(仅限Azure) bool True

输入设置

这些设置控制管道使用的数据输入。任何具有回退的设置将使用基础LLM设置(如果可用)。

纯文本输入数据 (GRAPHRAG_INPUT_FILE_TYPE=text)

参数 描述 类型 必填或可选 默认值
GRAPHRAG_INPUT_FILE_PATTERN 读取输入目录中的输入文件时使用的文件模式正则表达式。 str 可选 .*\.txt$

CSV输入数据 (GRAPHRAG_INPUT_FILE_TYPE=csv)

参数 描述 类型 必填或可选 默认值
GRAPHRAG_INPUT_TYPE 读取文件时使用的输入存储类型(fileblob str 可选 file
GRAPHRAG_INPUT_FILE_PATTERN 从输入目录读取输入文件时使用的文件模式正则表达式 str 可选 .*\.txt$
GRAPHRAG_INPUT_SOURCE_COLUMN 读取 CSV 输入文件时使用的 'source' 列 str 可选 source
GRAPHRAG_INPUT_TIMESTAMP_COLUMN 读取 CSV 输入文件时使用的 'timestamp' 列 str 可选 None
GRAPHRAG_INPUT_TIMESTAMP_FORMAT 解析时间戳列中的时间戳时使用的时间戳格式 str 可选 None
GRAPHRAG_INPUT_TEXT_COLUMN 读取 CSV 输入文件时使用的 'text' 列 str 可选 text
GRAPHRAG_INPUT_DOCUMENT_ATTRIBUTE_COLUMNS 要作为文档字段合并的 CSV 列列表,以逗号分隔 str 可选 id
GRAPHRAG_INPUT_TITLE_COLUMN 读取 CSV 输入文件时使用的 'title' 列 str 可选 title
GRAPHRAG_INPUT_STORAGE_ACCOUNT_BLOB_URL blob 模式下使用托管身份时使用的 Azure 存储 blob 端点。格式为 https://<storage_account_name>.blob.core.windows.net str 可选 None
GRAPHRAG_INPUT_CONNECTION_STRING 从 Azure Blob 存储读取 CSV 输入文件时使用的连接字符串 str 可选 None
GRAPHRAG_INPUT_CONTAINER_NAME 从 Azure Blob 存储读取 CSV 输入文件时使用的容器名称 str 可选 None
GRAPHRAG_INPUT_BASE_DIR 读取输入文件的基本目录 str 可选 None

数据映射设置

参数 描述 类型 必填或可选 默认值
GRAPHRAG_INPUT_FILE_TYPE 输入数据的类型,csvtext str 可选 text
GRAPHRAG_INPUT_ENCODING 读取 CSV/文本输入文件时应用的编码。 str 可选 utf-8

数据分块

参数 描述 类型 必填或可选 默认值
GRAPHRAG_CHUNK_SIZE 文本分块分析窗口的块大小(以标记为单位)。 str 可选 1200
GRAPHRAG_CHUNK_OVERLAP 文本分块分析窗口的块重叠(以标记为单位)。 str 可选 100
GRAPHRAG_CHUNK_BY_COLUMNS 执行 TextUnit 分块时按其分组的文档属性列表,以逗号分隔。 str 可选 id
GRAPHRAG_CHUNK_ENCODING_MODEL 用于分块的编码模型。 str 可选 顶级编码模型。

提示覆盖

参数 描述 类型 必填或可选 默认值
GRAPHRAG_ENTITY_EXTRACTION_PROMPT_FILE 实体提取提示模板文本文件的路径(相对于根目录)。 str 可选 None
GRAPHRAG_ENTITY_EXTRACTION_MAX_GLEANINGS 在循环中提取实体时调用的最大重试次数(收获)。 int 可选 1
GRAPHRAG_ENTITY_EXTRACTION_ENTITY_TYPES 要提取的实体类型的逗号分隔列表。 str 可选 organization,person,event,geo
GRAPHRAG_ENTITY_EXTRACTION_ENCODING_MODEL 用于实体提取的编码模型。 str 可选 顶级编码模型。
GRAPHRAG_SUMMARIZE_DESCRIPTIONS_PROMPT_FILE 描述摘要提示模板文本文件的路径(相对于根目录)。 str 可选 None
GRAPHRAG_SUMMARIZE_DESCRIPTIONS_MAX_LENGTH 每个描述摘要生成的最大令牌数。 int 可选 500
GRAPHRAG_CLAIM_EXTRACTION_ENABLED 此管道是否启用声明提取。 bool 可选 False
GRAPHRAG_CLAIM_EXTRACTION_DESCRIPTION 要使用的 claim_description 提示参数。 string 可选 "任何可能与威胁分析相关的声明或事实。"
GRAPHRAG_CLAIM_EXTRACTION_PROMPT_FILE 要使用的声明提取提示。 string 可选 None
GRAPHRAG_CLAIM_EXTRACTION_MAX_GLEANINGS 在循环中提取声明时调用的最大重试次数(收获)。 int 可选 1
GRAPHRAG_CLAIM_EXTRACTION_ENCODING_MODEL 用于声明提取的编码模型。 str 可选 顶级编码模型
GRAPHRAG_COMMUNITY_REPORTS_PROMPT_FILE 要使用的社区报告提取提示。 string 可选 None
GRAPHRAG_COMMUNITY_REPORTS_MAX_LENGTH 每个社区报告生成的最大令牌数。 int 可选 1500

存储

此部分控制用于发出输出表的管道的存储机制。

参数 描述 类型 必填或可选 默认值
GRAPHRAG_STORAGE_TYPE 要使用的报告器类型。选项有 filememoryblob str 可选 file
GRAPHRAG_STORAGE_STORAGE_ACCOUNT_BLOB_URL blob 模式下使用托管身份时要使用的 Azure 存储 blob 端点。格式为 https://<storage_account_name>.blob.core.windows.net str 可选 None
GRAPHRAG_STORAGE_CONNECTION_STRING blob 模式下使用的 Azure 存储连接字符串。 str 可选 None
GRAPHRAG_STORAGE_CONTAINER_NAME blob 模式下使用的 Azure 存储容器名称。 str 可选 None
GRAPHRAG_STORAGE_BASE_DIR 数据输出输出的基础路径。 str 可选 None

缓存

本节控制管道使用的缓存机制。用于缓存 LLM 调用结果。

参数 描述 类型 必填或可选 默认值
GRAPHRAG_CACHE_TYPE 要使用的缓存类型。选项有 filememorynoneblob str 可选 file
GRAPHRAG_CACHE_STORAGE_ACCOUNT_BLOB_URL blob 模式下使用托管身份时使用的 Azure 存储 blob 端点。格式为 https://<storage_account_name>.blob.core.windows.net str 可选 None
GRAPHRAG_CACHE_CONNECTION_STRING blob 模式下使用的 Azure 存储连接字符串。 str 可选 None
GRAPHRAG_CACHE_CONTAINER_NAME blob 模式下使用的 Azure 存储容器名称。 str 可选 None
GRAPHRAG_CACHE_BASE_DIR 缓存文件的基础路径。 str 可选 None

报告

本节控制管道使用的报告机制,用于常见事件和错误消息。默认情况下,报告会写入输出目录中的文件。不过,您也可以选择将报告写入控制台或 Azure Blob 存储容器。

参数 描述 类型 必填或可选 默认值
GRAPHRAG_REPORTING_TYPE 要使用的报告器类型。选项有 fileconsoleblob str 可选 file
GRAPHRAG_REPORTING_STORAGE_ACCOUNT_BLOB_URL blob 模式下使用托管身份时使用的 Azure 存储 blob 端点。格式为 https://<storage_account_name>.blob.core.windows.net str 可选 None
GRAPHRAG_REPORTING_CONNECTION_STRING blob 模式下使用的 Azure 存储连接字符串。 str 可选 None
GRAPHRAG_REPORTING_CONTAINER_NAME blob 模式下使用的 Azure 存储容器名称。 str 可选 None
GRAPHRAG_REPORTING_BASE_DIR 报告输出的基础路径。 str 可选 None

Node2Vec 参数

参数 描述 类型 必填或可选 默认值
GRAPHRAG_NODE2VEC_ENABLED 是否启用Node2Vec bool 可选 False
GRAPHRAG_NODE2VEC_NUM_WALKS Node2Vec要执行的行走次数 int 可选 10
GRAPHRAG_NODE2VEC_WALK_LENGTH Node2Vec的行走长度 int 可选 40
GRAPHRAG_NODE2VEC_WINDOW_SIZE Node2Vec的窗口大小 int 可选 2
GRAPHRAG_NODE2VEC_ITERATIONS 运行node2vec的迭代次数 int 可选 3
GRAPHRAG_NODE2VEC_RANDOM_SEED 用于node2vec的随机种子 int 可选 597832

数据快照

参数 描述 类型 必填或可选 默认值
GRAPHRAG_SNAPSHOT_GRAPHML 是否启用GraphML快照。 bool 可选 False
GRAPHRAG_SNAPSHOT_RAW_ENTITIES 是否启用原始实体快照。 bool 可选 False
GRAPHRAG_SNAPSHOT_TOP_LEVEL_NODES 是否启用顶级节点快照。 bool 可选 False

杂项设置

参数 描述 类型 必填或可选 默认值
GRAPHRAG_ASYNC_MODE 使用哪种异步模式。可以是asynciothreaded str 可选 asyncio
GRAPHRAG_ENCODING_MODEL 用于tiktoken编码文本的文本编码模型。 str 可选 cl100k_base
GRAPHRAG_MAX_CLUSTER_SIZE 单个Leiden聚类中包含的最大实体数量。 int 可选 10
GRAPHRAG_SKIP_WORKFLOWS 要跳过的工作流名称的逗号分隔列表。 str 可选 None
GRAPHRAG_UMAP_ENABLED 是否启用UMAP布局 bool 可选 False