docs: 记录第二批上线优化和非向量检索决策
This commit is contained in:
@@ -114,3 +114,6 @@
|
||||
- 开发阶段可以用 `.env`。
|
||||
- 生产阶段优先使用环境变量引用或加密存储。
|
||||
- 后台模型配置页展示脱敏后的 Key。
|
||||
# 补充决策:不使用向量数据库
|
||||
|
||||
当前知识库检索采用“开放知识库范围约束 + 飞书搜索/节点直读 + 关键词片段排序”,不引入 embedding 或向量数据库。具体边界和重新评估条件见 `2026-07-10-production-readiness-phase2.md`。
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
# 生产上线优化第二批计划与实施记录
|
||||
|
||||
## 范围
|
||||
|
||||
第一批已解决直接阻断上线的功能、安全和生产部署问题。第二批继续完成以下内容:
|
||||
|
||||
1. 可观测性:结构化访问日志、请求 ID、异常关联、数据库与 Redis 就绪检查、容器健康检查。
|
||||
2. 可恢复性:完善数据库备份脚本,新增恢复脚本、备份校验和操作文档,避免“有备份但无法恢复”。
|
||||
3. 可维护性:继续拆分管理后台超大入口文件和后端高复杂度职责,保持功能行为不变。
|
||||
4. 持续验证:扩展自动化测试与发布检查,覆盖健康检查、日志中间件、备份脚本和生产配置。
|
||||
|
||||
## 知识库检索架构决策
|
||||
|
||||
本项目明确不使用向量数据库,也不在本阶段引入 embedding、向量索引或向量检索服务。
|
||||
|
||||
当前适用方案:
|
||||
|
||||
- 检索范围只包含后台已开放的知识库。
|
||||
- 后端通过飞书搜索接口或飞书节点直读获取内容。
|
||||
- 在限定知识库范围内完成关键词匹配、片段选择和排序,再交给 Agent 组织回答。
|
||||
- MySQL 保存业务配置、会话和审计数据,Redis 负责缓存、限流、队列和安全状态。
|
||||
|
||||
不引入向量数据库的原因:当前知识范围、检索方式和准确性要求可以由定向搜索与飞书直读满足;增加向量数据库会引入额外的数据同步、切片、重建索引、权限一致性、部署和运维成本,而当前没有对应收益。
|
||||
|
||||
只有在以下条件出现时才重新评估,且必须先修改决策文档再实现:
|
||||
|
||||
- 知识规模增长后,定向搜索无法满足召回准确率或延迟要求。
|
||||
- 大量非飞书来源的非结构化文档需要统一语义检索。
|
||||
- 已有可量化测试证明关键词/直读方案无法满足业务验收标准。
|
||||
|
||||
## 验收条件
|
||||
|
||||
- 每个请求具有请求 ID,访问日志为单行 JSON,错误日志可按请求 ID 关联。
|
||||
- `/api/health` 只表示进程存活,`/api/ready` 校验数据库与 Redis;生产容器使用就绪接口作为健康检查。
|
||||
- 备份文件非空、使用安全参数、支持压缩,并提供可执行的恢复与校验流程。
|
||||
- 管理后台入口继续减少职责,至少提取系统配置定义与对应状态逻辑。
|
||||
- 全量自动验证、前后端构建、迁移与生产 Compose 检查全部通过。
|
||||
Reference in New Issue
Block a user