feat(storage): integrate Alibaba Cloud OSS for file persistence - Add OSSAdapter and LocalAdapter with StorageFactory pattern - Integrate PKB module with OSS upload - Rename difyDocumentId to storageKey - Create 4 OSS buckets and development specification

This commit is contained in:
2026-01-22 22:02:20 +08:00
parent 483c62fb6f
commit 9c96f75c52
309 changed files with 4583 additions and 172 deletions

View File

@@ -1,15 +1,19 @@
# AIclinicalresearch 系统当前状态与开发指南
> **文档版本:** v4.0
> **文档版本:** v4.1
> **创建日期:** 2025-11-28
> **维护者:** 开发团队
> **最后更新:** 2026-01-21
> **🎉 重大里程碑:** **成功替换 DifyPKB 模块完全使用自研 pgvector RAG 引擎!**
> - ✅ **Dify 已移除**PKB 模块不再依赖外部 RAG 服务
> - ✅ ekb_schema 第13个独立Schema3张表HNSW 向量索引
> - ✅ 完整 RAG 链路:文档处理 → 向量化 → 检索 → Rerank
> - ✅ 跨语言支持DeepSeek V3 查询理解 + text-embedding-v4
> - ✅ 端到端测试通过,生产就绪
> **最后更新:** 2026-01-22
> **🎉 重大里程碑:**
> - **2026-01-22OSS 存储集成完成!** 阿里云 OSS 正式接入平台基础层
> - **2026-01-21成功替换 Dify** PKB 模块完全使用自研 pgvector RAG 引擎
>
> **最新进展OSS 集成):**
> - ✅ **4个 Bucket 已创建**:生产/开发 × 数据/静态资源
> - ✅ **存储适配器架构**OSSAdapter + LocalAdapter支持云端和私有化部署
> - ✅ **PKB 模块集成**:文档上传到 OSS目录结构规范化
> - ✅ **开发规范建立**`docs/04-开发规范/11-OSS存储开发规范.md`
>
> **部署状态:** ✅ 生产环境运行中 | 公网地址http://8.140.53.236/
> **文档目的:** 快速了解系统当前状态为新AI助手提供上下文
@@ -84,6 +88,11 @@
│ ├── 任务管理job.data 统一存储 ✅ │
│ └── 断点续传CheckpointService 通用化 ✅ │
│ │
│ 🆕 **OSS 存储服务**2026-01-22
│ ├── 阿里云 OSS4 Bucket生产/开发 × 数据/静态) │
│ ├── StorageAdapterOSSAdapter + LocalAdapter │
│ └── 私有化部署STORAGE_TYPE=local 支持本地存储 │
│ │
│ 存储 | 日志 | 缓存 | 任务 | 健康检查 | 监控 | 连接池 │
│ ✅ ✅ ✅ ✅ ✅ ✅ ✅ │
└─────────────────────────────────────────────────────────┘
@@ -115,7 +124,7 @@
- ✅ 前端Nginxv1.0- 内网172.17.173.72:80
- ✅ CLB负载均衡 - 公网http://8.140.53.236/
- RDS PostgreSQL 15生产环境运行中
- OSS对象存储已配置
- OSS对象存储✅ 2026-01-22 已集成4个Bucket
- ACR容器镜像仓库已推送3个镜像
- 阿里云 ACR (容器镜像服务) ✅ 已推送3个镜像Frontend、Backend、Python
- 阿里云 RDS (PostgreSQL 15) ✅ 已迁移数据
@@ -125,9 +134,49 @@
---
## 🚀 当前开发状态2026-01-21
## 🚀 当前开发状态2026-01-22
### 🏆 最新进展:成功替换 DifyPKB 完全使用自研 RAG 引擎2026-01-21
### 🆕 最新进展:OSS 存储集成完成2026-01-22
#### ✅ 阿里云 OSS 正式接入平台基础层
**重大里程碑**
- 🎉 **存储服务上线**:文件持久化从本地存储升级到云端 OSS
- 🎉 **双模式架构**:支持 SaaS 云端部署和医疗机构私有化部署
- 🎉 **PKB 首个集成**:个人知识库文档已对接 OSS 存储
**核心组件**
| 组件 | 说明 | 状态 |
|------|------|------|
| OSSAdapter | 阿里云 OSS 存储实现 | ✅ |
| LocalAdapter | 本地文件系统实现(私有化部署) | ✅ |
| StorageFactory | 根据环境变量自动选择适配器 | ✅ |
| 签名URL | 支持原始文件名下载 | ✅ |
**Bucket 配置**
| Bucket | 用途 | 权限 |
|--------|------|------|
| ai-clinical-data | 生产数据 | 私有 + SSE-OSS 加密 |
| ai-clinical-data-dev | 开发数据 | 私有 |
| ai-clinical-static | 生产静态资源 | 公共读 |
| ai-clinical-static-dev | 开发静态资源 | 公共读 |
**目录结构规范**
```
tenants/{tenantId}/users/{userId}/pkb/{kbId}/{uuid}.{ext}
```
**相关文档**
- 实施方案:`docs/01-平台基础层/02-存储服务/OSS存储实施方案-MVP版.md`
- 开发规范:`docs/04-开发规范/11-OSS存储开发规范.md`
- 开发记录:`docs/01-平台基础层/02-存储服务/OSS集成开发记录-2026-01-22.md`
**数据库变更**
- `difyDocumentId` 字段重命名为 `storageKey`(存储 OSS 路径)
---
### 🏆 里程碑:成功替换 DifyPKB 完全使用自研 RAG 引擎2026-01-21
#### ✅ Dify 已完全移除pgvector RAG 引擎生产可用
@@ -507,6 +556,7 @@ data: [DONE]\n\n
-**pgvector 0.8.1 已集成**2026-01-19
-**自研 RAG 引擎上线Dify 已移除**2026-01-21
-**跨语言检索**DeepSeek V3 查询理解 + 中英双语
-**OSS 存储集成**2026-01-22文档存储云端化
**待解决问题**
- 🔧 OSS 存储集成待完善
@@ -1004,7 +1054,8 @@ AIclinicalresearch/
| **2026-01-07 下午** | **PKB批处理完善** 🏆 | ✅ 批处理完整流程调试通过(执行+进度+结果导出)+ 文档上传功能 + UI优化 |
| **2026-01-19** | **pgvector集成** 🎉 | ✅ pgvector 0.8.1 安装成功PKB RAG基础设施就绪 |
| **2026-01-21** | **🎉 Dify替换完成** | ✅ PKB 成功替换 Dify完全使用自研 pgvector RAG 引擎 |
| **当前** | **PKB模块生产可用** | ✅ 核心功能全部实现95%Dify已移除自研RAG引擎上线 |
| **2026-01-22** | **🆕 OSS存储集成** | ✅ 阿里云OSS接入PKB文档存储云端化建立存储开发规范 |
| **当前** | **PKB模块生产可用** | ✅ 核心功能全部实现95%自研RAG+OSS存储上线 |
| **2026-01-07 晚** | **RVW模块开发完成** 🎉 | ✅ Phase 1-3完成后端迁移+数据库扩展+前端重构) |
---
@@ -1309,6 +1360,11 @@ if (items.length >= 50) {
-**彻底移除 Dify 依赖**PKB 模块完全使用自研 pgvector 引擎
- pgvector 向量检索 + DeepSeek V3 查询理解 + qwen3-rerank 重排序
- 跨语言支持:中文查询匹配英文文档(准确率 +20.5%
4.**🆕 OSS 存储集成完成!** 🏆 **2026-01-22**
-**阿里云 OSS 接入**4个 Bucket生产/开发 × 数据/静态)
-**存储适配器架构**OSSAdapter + LocalAdapter支持云端和私有化部署
-**PKB 集成**:文档存储云端化,目录结构规范化
-**开发规范建立**`11-OSS存储开发规范.md`
- Brain-Hand 架构:业务层思考,引擎层执行
- 成本¥0.0025/次延迟2.5秒
4.**适配器模式**:存储/缓存/日志支持本地↔云端零代码切换
@@ -1328,9 +1384,9 @@ if (items.length >= 50) {
---
**文档版本**v4.0
**最后更新**2026-01-21
**下次更新**OSS 存储集成 或 pg_bigm 扩展安装
**文档版本**v4.1
**最后更新**2026-01-22
**下次更新**pg_bigm 扩展安装 或 Tool C/RVW OSS 集成
---