跳到主要内容

索引格式

format format

本节介绍 txtai 索引格式。每个组件都旨在确保通过编程和平台无关的方式开放访问底层数据。

如果底层库有其索引格式,则使用该格式。否则,txtai 使用 MessagePack 序列化来持久化内容。

要了解这些组件如何协同工作,请阅读 索引指南查询指南

ANN

用于存储向量嵌入的近似最近邻 (ANN) 索引配置。

组件 存储格式
Faiss 由库提供的本地文件格式
Hnswlib 由库提供的本地文件格式
Annoy 由库提供的本地文件格式
NumPy 通过 np.save / np.load 保存的本地 NumPy 数组文件
通过 pgvector 的 Postgres Postgres 数据库中的向量表

核心

核心嵌入索引文件。

组件 存储格式
配置 以 JSON 格式存储的嵌入索引配置
索引 ID 使用 MessagePack 序列化的嵌入索引 ID。仅在禁用内容存储(数据库)时启用。

数据库

数据库存储元数据、文本和二进制内容。

组件 存储格式
SQLite 使用 SQLite 的本地数据库文件
DuckDB 使用 DuckDB 的本地数据库文件
Postgres 通过 SQLAlchemy 连接的 Postgres 关系数据库。支持通过此库连接其他数据库。

嵌入索引的图节点和边

组件 存储格式
NetworkX 导出到本地文件并使用 MessagePack 序列化的节点和边
Postgres 存储在 Postgres 数据库中的节点和边。支持其他数据库。

评分

稀疏/关键词索引

组件 存储格式
本地索引 使用 MessagePack 序列化的元数据。词项存储在 SQLite 中。
Postgres 使用 Postgres 全文搜索 (FTS) 索引的文本