Vector 存储配置
配置文件 (modules/vector.yml)
此文件用于配置插件存储和管理知识库文档向量的方式。向量存储是实现高效语义搜索和 RAG (检索增强生成) 的基础。
default-store
- 类型:
字符串 - 必需: 是
- 描述: 指定插件使用的向量存储类型。根据配置文件注释,目前主要支持
memory类型。 - 可选值:
memory(可能未来会支持其他类型如qdrant,elasticsearch等) - 示例:
memory
memory
- 类型:
对象 (Object) - 必需: 否 (仅当
default-store为memory时需要配置) - 描述: 配置内存向量存储的具体参数。
内存存储配置项
-
backend:- 类型:
字符串 - 必需: 是
- 描述: 选择内存向量存储的持久化后端。这决定了向量数据在服务器重启后如何被保存和加载。
- 可选值:
json: 将向量数据保存到本地的 JSON 文件中。mysql: 将向量数据保存到指定的 MySQL 数据库中。
- 示例:
mysql
- 类型:
-
json: (仅当backend为json时生效)- 类型:
对象 (Object) - 必需: 否
- 描述: 配置 JSON 持久化后端。
directory:- 类型:
字符串 - 必需: 是
- 描述: 指定存储向量数据 JSON 文件的目录路径。该路径是相对于插件数据文件夹 (
plugins/Knowlith/) 的。 - 示例:
"vectors_data"(表示数据将存储在plugins/Knowlith/vectors_data/目录下)
- 类型:
- 类型:
-
mysql: (仅当backend为mysql时生效)- 类型:
对象 (Object) - 必需: 否
- 描述: 配置 MySQL 持久化后端。
host:- 类型:
字符串 - 必需: 是
- 描述: MySQL 服务器的主机名或 IP 地址。
- 示例:
"localhost"
- 类型:
port:- 类型:
字符串或整数 - 必需: 是
- 描述: MySQL 服务器的端口号。
- 示例:
"3306"
- 类型:
database:- 类型:
字符串 - 必需: 是
- 描述: 用于存储向量数据的数据库名称。
- 示例:
"minecraft"
- 类型:
username:- 类型:
字符串 - 必需: 是
- 描述: 连接 MySQL 数据库的用户名。
- 示例:
"root"
- 类型:
password:- 类型:
字符串 - 必需: 是
- 描述: 连接 MySQL 数据库的密码。
- 示例:
"root"
- 类型:
- 类型:
示例配置 (使用 MySQL 后端)
# 向量存储配置
# 默认向量存储类型
default-store: memory
# 内存向量存储配置
memory:
# 后端类型: json 或 mysql
backend: mysql
# JSON 后端配置 (backend=json 时生效)
json:
directory: "vectors_data"
# MySQL 后端配置 (backend=mysql 时生效)
mysql:
host: "localhost"
port: "3306"
database: "minecraft"
username: "root"
password: "root"
示例配置 (使用 JSON 后端)
# 向量存储配置
# 默认向量存储类型
default-store: memory
# 内存向量存储配置
memory:
# 后端类型: json 或 mysql
backend: json
# JSON 后端配置 (backend=json 时生效)
json:
directory: "vectors_data"
# MySQL 后端配置 (backend=mysql 时生效)
mysql:
host: "localhost"
port: "3306"
database: "minecraft"
username: "root"
password: "root"
本页介绍 Knowlith 如何配置 Vector (向量) 存储。
(待补充)