关于LlamaIndex 的几种索引方式介绍

每个索引的工作原理

本指南介绍每个索引如何与图表配合使用。

一些术语:

  • Node :对应于 Document 中的一段文本。LlamaIndex 接收 Document 对象,并在内部将它们解析/分块为 Node 对象。
  • Response Synthesis:我们的模块,在给定检索到的 Node 的情况下合成响应。您可以了解如何指定不同的响应模式。

Summary Index (摘要索引)(以前称为 List Index)

摘要索引只是将 Node 存储为顺序链。

查询

在查询期间,如果未指定其他查询参数,则 LlamaIndex 只会将列表中的所有 Node 加载到 我们的响应合成模块。

摘要索引确实提供了多种查询摘要索引的方法,从基于嵌入的查询中查询 将获取前 K 个邻居,或者添加关键字过滤器,如下所示:

Vector Store Index(向量存储索引)

Vector Store 索引将每个 Node 和相应的嵌入存储在 Vector Store 中。

查询

查询 vector store 索引涉及获取前 k 个最相似的 Node,并将 这些添加到我们的 Response Synthesis 模块中。

Tree Index(树索引)

树索引从一组 Node(成为此树中的叶节点)构建分层树。

查询

查询树索引涉及从根节点向下遍历 到叶节点。默认情况下,() 会生成一个查询 在给定父节点的情况下选择一个子节点。如果 ,则查询 每个级别选择两个子节点。child_branch_factor=1child_branch_factor=2

Keyword Table Index(关键字表索引)

keyword 表索引从每个 Node 中提取关键字,并从 each 关键字添加到该关键字的相应 Node 中。

查询

在查询期间,我们从查询中提取相关关键字,并将这些关键字与预先提取的 Node 关键字来获取相应的 Node。提取的 Node 将传递给我们的 Response Synthesis 模块。

Property Graph Index (属性图索引)

Property Graph Index 的工作原理是首先构建一个包含标记节点和关系的知识图谱。此图的构造是高度可定制的,从让 LLM 提取它想要的任何东西,到使用严格的架构提取,甚至实现您自己的提取模块。

或者,还可以嵌入节点以供以后检索。

您还可以跳过创建,并使用 Neo4j 等集成连接到现有知识图谱。

查询

查询 Property Graph 索引也非常灵活。检索的工作原理是使用多个子检索器并组合结果。默认情况下,使用 keyword + synoymn expanasion 以及向量检索(如果您的图形是嵌入的)来检索相关的三元组。

除了检索到的三元组之外,您还可以选择包含源文本(不适用于在 LlamaIndex 之外创建的图形)。

Property Graphs 完整指南中了解更多信息。

相关推荐
liwulin05066 分钟前
【PYTHON-YOLOV8N】yoloface+pytorch+cnn进行面部表情识别
python·yolo·cnn
(●—●)橘子……22 分钟前
记力扣1471.数组中的k个最强值 练习理解
数据结构·python·学习·算法·leetcode
_OP_CHEN26 分钟前
用极狐 CodeRider-Kilo 开发俄罗斯方块:AI 辅助编程的沉浸式体验
人工智能·vscode·python·ai编程·ai编程插件·coderider-kilo
Wpa.wk28 分钟前
自动化测试 - 文件上传 和 弹窗处理
开发语言·javascript·自动化测试·经验分享·爬虫·python·selenium
_OP_CHEN29 分钟前
【Python基础】(二)从 0 到 1 入门 Python 语法基础:从表达式到运算符的全面指南
开发语言·python
我命由我1234539 分钟前
Python Flask 开发:在 Flask 中返回字符串时,浏览器将其作为 HTML 解析
服务器·开发语言·后端·python·flask·html·学习方法
拾忆,想起41 分钟前
设计模式:软件开发的可复用武功秘籍
开发语言·python·算法·微服务·设计模式·性能优化·服务发现
沃斯堡&蓝鸟1 小时前
DAY28 元组和OS模块
python·元组与os模块
baby_hua1 小时前
20251011_Pytorch从入门到精通
人工智能·pytorch·python
中年程序员一枚1 小时前
Nginx配置运行python的uvicorn项目
chrome·python·nginx