数据库
数据库用于存储元数据、文本和二进制内容。
内容
content: boolean|sqlite|duckdb|client|url|custom
启用内容存储。当设置为 true
时,默认使用 sqlite
存储引擎保存元数据。
支持客户端-服务器连接,可以通过 client
或完整的连接 URL 进行配置。当设置为 client
时,必须设置 CLIENT_URL 环境变量以指定完整的连接 URL。有关如何为客户端-服务器数据库构建连接字符串的更多信息,请参阅 SQLAlchemy 文档。
通过将此参数设置为完全可解析的类字符串,可以添加自定义存储引擎。
内容存储的特定设置通过与内容存储引擎同名的配置对象进行设置(例如 duckdb
或 sqlite
)。这些设置是可选的,如果省略则使用默认值。
sqlite
sqlite:
wal: 启用预写日志 - 允许并发读/写操作,
默认为 false
对象
objects: boolean|image|pickle
启用对象存储。支持存储二进制内容。需要同时启用内容存储。
对象编码选项包括:
standard
:当设置为布尔值时的默认编码器。将对象编码和解码为字节数组。image
:图像编码器。将对象编码和解码为图像对象。pickle
:Pickle 编码器。使用 pickle 模块对对象进行编码和解码。支持任意对象。
函数
functions: list
用户定义的 SQL 函数列表,仅在启用 内容 时使用。每个列表元素必须是以下之一:
- 函数
- 可调用对象
- 包含名称、参数数量和函数的字典
查询
query:
path: 设置查询模型的路径 - 可以是 Hugging Face Model Hub 上的任何模型或本地文件路径。
prefix: 在所有输入前添加的文本前缀
maxlength: 生成的序列的最大长度
查询翻译模型。将自然语言查询翻译为 txtai 兼容的 SQL 语句。