Skip to content

索引架构

关键概念

知识模型

为了支持GraphRAG系统,索引引擎的输出(在默认配置模式下)与我们称为_GraphRAG知识模型_的模型保持一致。 该模型旨在作为底层数据存储技术的抽象层,并为GraphRAG系统提供一个通用交互接口。 在常规使用场景中,GraphRAG索引器的输出会被加载到数据库系统中,而GraphRAG的查询引擎将通过知识模型的数据存储类型与数据库进行交互。

工作流

由于数据索引任务的复杂性,我们需要将数据处理流程表达为多个相互依赖的工作流序列。

---
title: Sample Workflow DAG
---
stateDiagram-v2
    [*] --> Prepare
    Prepare --> Chunk
    Chunk --> ExtractGraph
    Chunk --> EmbedDocuments
    ExtractGraph --> GenerateReports
    ExtractGraph --> EmbedEntities
    ExtractGraph --> EmbedGraph

LLM缓存

GraphRAG库在设计时考虑了LLM交互,而使用LLM API时常见的障碍包括网络延迟、限流等导致的各种错误。 针对这些潜在的错误情况,我们为LLM交互添加了缓存层。 当使用相同的输入集(prompt和调优参数)发起完成请求时,如果存在缓存结果,我们将返回该结果。 这使得我们的索引器对网络问题更具弹性,能够以幂等方式运行,并提供更高效的终端用户体验。