GraphRAG访问模式和知识图谱建模

 

Here’s the table of contents:

  1. GraphRAG访问模式和知识图谱建模
    1. 什么是GraphRAG
    2. 了解文本分块
    3. 检索模式
    4. 图谱建模
      1. 相关概念
      2. 图结构

GraphRAG访问模式和知识图谱建模

graphrag.com是一个开源项目,收集了围绕GraphRAG的相关资源,目前正在快速收集大家的投稿。深入阅读这些文档将帮助大家将GraphRAG技术应用于实际项目,同时拓宽对图数据和知识图谱的理解。

  检索增强生成(RAG)是一种通过将大型语言模型(LLM)与事实数据结合的方式,以减少幻觉并扩展问答所需的信息。用户的问题会被用来从一个或多个数据源中检索相关信息,这些信息为生成答案提供了事实依据。随后,将增强后的提示和原始用户问题一起传递给 LLM,以生成最终的答案。

  GraphRAG是一种基于图结构的检索机制,相比纯文本搜索(或矢量搜索),它能够提供更细粒度和更相关的上下文信息。这是因为它能够利用知识图谱中关于许多领域的丰富知识表示。

什么是GraphRAG

  GraphRAG是基于知识图谱的检索增强生成(RAG)技术。

了解文本分块

 文本文档可以是简短的(例如社交媒体帖子或评论),也可以是非常长的(例如书籍)。

 由于较长的文本文档通常涉及多个不同的主题,并按照顺序排列(有时还包含引用),因此将其拆分为更小、语义连贯并专注于单一主题的部分是非常理想的。

 这个将文档拆分成小块的过程被称为“分块”(Chunking)。

 以下是几种常见的分块策略:

  • 拆分(Splitting):将文档拆分成大小相等的部分(按字符或词元数量),可选择性地加入重叠(典型的大小为250-500个词元,重叠部分为50-100个词元)。

  • 层次化文档分块(Hierarchical Document Chunking):根据词汇边界(如章节、节、段落)拆分文档。

  • 句子分块(Sentence Chunking):将文档拆分成单独的句子。

  • 语义分块(Semantic Chunking):将文档拆分成句子,生成嵌入向量,并在嵌入向量之间的距离超过某一阈值时进行拆分。

检索模式

 下面内容仅列出了基于对应图结构相关的检索模式,详细检索模式的介绍请访问Retrieval Patterns

English 中文
Cypher Templates Cypher 模板
Dynamic Cypher Generation 动态 Cypher 生成
Global Community Summary Retriever 全局社区摘要检索器
Graph-Enhanced Vector Search 图增强向量搜索
Hypothetical Question Retriever 假设问题检索器
Local Retriever 本地检索器
Metadata Filtering 元数据过滤
Parent-Child Retriever 父子检索器
Pattern Matching 模式匹配
Text2Cypher 文本转 Cypher

图谱建模

 下面内容仅列出了内容大纲,详细图结构信息请访问Graph Shapes进行阅读。

相关概念

  • Domain graph - 领域图

  这个术语通常指的是与某个特定领域(如金融、医疗、教育等)相关的图形结构,用于表示领域中的实体及其相互关系。领域图侧重于展示领域内不同概念或对象之间的联系。

  • Lexical graph - 词汇图

  词汇图指的是通过词汇之间的关系(如同义词、反义词、上下位词等)来表示词汇网络的图形结构。它用于捕捉和描述词汇之间的语义关系,常见于自然语言处理和语义网络中。

  简单来说,领域图注重特定领域中的知识结构,而词汇图注重词汇和语义的关联。

图结构

  • 主要图结构列表如下:
English 中文
Domain Graph 领域图
Lexical Graph 词汇图
Lexical Graph with Extracted Entities 包含提取实体的词汇图
Lexical Graph with Extracted Entities and Community Summaries 包含提取实体和社区摘要的词汇图
Lexical Graph with Hierarchical Structure 包含层级结构的词汇图
Lexical Graph with Hypothetical Questions 包含假设问题的词汇图
Parent-Child Lexical Graph 父子词汇图
Lexical Graph with Sibling Structure 包含兄弟结构的词汇图
Memory Graph 记忆图
Text Sequence 文本序列