Skip to content

各类索引的工作原理#

本指南通过图示说明每种索引的工作方式。

术语说明:

  • 节点:对应文档中的文本片段。LlamaIndex 接收文档对象后,会在内部将其解析/分块为节点对象。
  • 响应合成:该模块根据检索到的节点合成响应。您可查看如何指定不同的响应模式

摘要索引(原列表索引)#

摘要索引仅将节点存储为顺序链式结构。

查询机制#

查询时若未指定其他参数,LlamaIndex 会直接将列表中所有节点加载至响应合成模块。

摘要索引提供多种查询方式:既可通过基于嵌入的查询获取Top-K相似节点,也可添加关键词过滤器进行查询,如下图所示:

向量存储索引#

向量存储索引将每个节点及其对应嵌入存储在向量数据库中。

查询机制#

查询向量存储索引时,系统会获取Top-K最相似节点,并将其传递至响应合成模块。

树状索引#

树状索引从节点集合(即该树的叶节点)构建层次化树形结构。

查询机制#

查询树状索引需从根节点向下遍历至叶节点。默认情况下(child_branch_factor=1),查询每层选择一个子节点;若设为child_branch_factor=2,则每层选择两个子节点。

关键词表索引#

关键词表索引从每个节点提取关键词,并构建关键词到对应节点的映射关系。

查询机制#

查询时提取问题中的相关关键词,与预提取的节点关键词匹配以获取对应节点,最终将节点传递至响应合成模块。

属性图索引#

属性图索引首先构建包含标记节点和关系的知识图谱。该图谱的构建过程高度可定制:既可由LLM自由提取内容,也可按严格模式提取,甚至可自定义提取模块。

节点也可选择进行嵌入以供后续检索。

您还可跳过创建步骤,通过Neo4j等集成工具连接现有知识图谱。

查询机制#

属性图索引的查询同样具备高度灵活性。检索过程通过组合多个子检索器结果实现:默认使用关键词+同义词扩展检索,若图谱已嵌入则结合向量检索来获取相关三元组。

您还可选择在检索结果中包含源文本(外部创建的图谱不支持此功能)。

详见属性图完整指南