feat(pkb): Replace Dify with self-developed pgvector RAG engine

Major milestone: Successfully replaced Dify external service with PostgreSQL + pgvector RAG engine

Backend changes:
- Refactor ragService.ts: Remove dual-track mode, keep only pgvector
- Refactor knowledgeBaseService.ts: Remove Dify creation logic
- Refactor documentService.ts: Remove Dify upload/polling logic
- DifyClient.ts: Convert to deprecated stub file (for legacy compatibility)
- common/rag/index.ts: Update exports
- common/rag/types.ts: Remove Dify types, keep generic RAG types
- config/env.ts: Remove Dify configuration

Frontend changes:
- DashboardPage.tsx: Add delete knowledge base dropdown menu
- KnowledgeBaseList.tsx: Enhance quota warning display
- CreateKBDialog.tsx: Add quota exceeded modal with guidance
- knowledgeBaseApi.ts: Add auth interceptor

Documentation:
- Update PKB module status guide (v2.3)
- Update system status guide (v4.0)

Performance metrics:
- Single query latency: 2.5s
- Single query cost: 0.0025 CNY
- Cross-language accuracy improvement: +20.5%

Remaining tasks:
- OSS storage integration
- pg_bigm extension installation

Tested: End-to-end test passed (create KB -> upload doc -> vector search)
This commit is contained in:
2026-01-21 22:35:50 +08:00
parent 40c2f8e148
commit 483c62fb6f
14 changed files with 741 additions and 1018 deletions

View File

@@ -1,11 +1,12 @@
# AIclinicalresearch 系统当前状态与开发指南
> **文档版本:** v3.9
> **文档版本:** v4.0
> **创建日期:** 2025-11-28
> **维护者:** 开发团队
> **最后更新:** 2026-01-21
> **重大进展:** 🎉 **RAG 引擎完整实现Postgres-Only 架构完成**
> - 🆕 ekb_schema 第13个独立Schema3张表HNSW 向量索引
> **🎉 重大里程碑:** **成功替换 DifyPKB 模块完全使用自研 pgvector RAG 引擎**
> - ✅ **Dify 已移除**PKB 模块不再依赖外部 RAG 服务
> - ✅ ekb_schema 第13个独立Schema3张表HNSW 向量索引
> - ✅ 完整 RAG 链路:文档处理 → 向量化 → 检索 → Rerank
> - ✅ 跨语言支持DeepSeek V3 查询理解 + text-embedding-v4
> - ✅ 端到端测试通过,生产就绪
@@ -43,7 +44,7 @@
| 模块代号 | 模块名称 | 核心功能 | 商业价值 | 当前状态 | 优先级 |
|---------|---------|---------|---------|---------|--------|
| **AIA** | AI智能问答 | 12个智能体选题→方案→评审→写作 | ⭐⭐⭐⭐⭐ | 🎉 **V2.1完成90%** - Prompt管理集成 | **P0** |
| **PKB** | 个人知识库 | RAG问答、私人文献库 | ⭐⭐⭐ | **核心功能完成90%** | P1 |
| **PKB** | 个人知识库 | RAG问答、私人文献库 | ⭐⭐⭐ | 🎉 **Dify已替换自研RAG上线95%** | P1 |
| **ASL** | AI智能文献 | 文献筛选、Meta分析、证据图谱 | ⭐⭐⭐⭐⭐ | 🎉 **智能检索MVP完成60%** - DeepSearch集成 | **P0** |
| **DC** | 数据清洗整理 | ETL + 医学NER百万行级数据 | ⭐⭐⭐⭐⭐ | ✅ **Tool B完成 + Tool C 99%(异步架构+性能优化-99%+多指标转换+7大功能** | **P0** |
| **IIT** | IIT Manager Agent | AI驱动IIT研究助手 - 智能质控+REDCap集成 | ⭐⭐⭐⭐⭐ | 🎉 **Phase 1.5完成60%- AI对话+REDCap数据集成** | **P0** |
@@ -126,14 +127,14 @@
## 🚀 当前开发状态2026-01-21
### 🏆 最新进展RAG 引擎完整实现2026-01-21
### 🏆 最新进展:成功替换 DifyPKB 完全使用自研 RAG 引擎2026-01-21
#### ✅ PostgreSQL 原生 RAG 引擎上线
#### ✅ Dify 已完全移除pgvector RAG 引擎生产可用
**背景**
- 替代 Dify 外部服务,实现 Postgres-Only 架构
- 支持中英文跨语言检索
- 完整的文档处理 → 向量化 → 检索 → Rerank 链路
**重大里程碑**
- 🎉 **彻底移除 Dify 依赖**PKB 模块不再依赖任何外部 RAG 服务
- 🎉 **自研引擎上线**:完全使用 PostgreSQL + pgvector 的本地 RAG 方案
- 🎉 **Postgres-Only 架构完成**:所有核心功能都在 PostgreSQL 内实现
**核心技术栈**
| 组件 | 技术 | 状态 |
@@ -144,13 +145,14 @@
| 查询理解 | DeepSeek V3 | ✅ |
| 重排序 | 阿里云 qwen3-rerank | ✅ |
**完成工作**
-**数据库层**:创建 `ekb_schema`3张表KB/Document/ChunkHNSW 向量索引
- **Python 微服务**:添加 pymupdf4llm实现 `/api/document/to-markdown` 接口
- **Node.js 服务**4个核心 ServiceEmbedding/Chunk/VectorSearch/DocumentIngest
- **业务集成**PKB 双轨模式适配器(支持 pgvector/dify/hybrid 切换)
- **跨语言优化**DeepSeek V3 查询重写 + 中英双语检索
- **端到端测试**:文档入库 → 向量检索 → Rerank 全流程验证通过
**本次完成工作2026-01-21**
-**移除 Dify 代码**
- 重构 `ragService.ts` - 移除双轨模式,只保留 pgvector
- 重构 `knowledgeBaseService.ts` - 移除 Dify 创建逻辑
- 重构 `documentService.ts` - 移除 Dify 上传/轮询逻辑
- 删除 `DifyClient.ts` - 改为废弃桩文件(兼容 Legacy 代码)
- 移除 `env.ts` 中的 Dify 配置项
-**端到端测试通过**:创建知识库 → 上传文档 → 向量检索 全流程验证
**架构亮点**
```
@@ -160,7 +162,7 @@ Brain-Hand 模型:
完整链路:
PDF → Markdown → 分块 → 向量化 → 存储(pgvector)
用户查询 → DeepSeek翻译 → 向量检索 → Rerank → Top 5
用户查询 → DeepSeek翻译 → 向量检索 → Rerank → Top K
```
**性能指标**
@@ -168,17 +170,15 @@ Brain-Hand 模型:
- 单次成本¥0.0025
- 跨语言准确率提升:+20.5%
**文件变更**
- `backend/src/common/rag/` - 5个核心服务1800+行代码
- `backend/src/modules/pkb/services/ragService.ts` - 双轨适配器
- `extraction_service/services/` - 文档处理增强
- `backend/prisma/schema.prisma` - 添加 ekb_schema
- `backend/src/tests/` - 5个测试脚本
**遗留问题**
- 🔧 OSS 存储集成待完善(当前文档直接入库,未持久化到 OSS
- 🔧 pg_bigm 扩展待安装(优化中文关键词检索)
- 🔧 Legacy 代码保留 Dify 桩文件(兼容性考虑)
**使用文档**
- 📖 [RAG 引擎使用指南](../02-通用能力层/03-RAG引擎/05-RAG引擎使用指南.md)
- 📖 [数据模型设计](../02-通用能力层/03-RAG引擎/04-数据模型设计.md)
- 📖 [分阶段实施方案](../02-通用能力层/03-RAG引擎/03-分阶段实施方案.md)
- 📖 [pgvector替换Dify计划](../02-通用能力层/03-RAG引擎/02-pgvector替换Dify计划.md)
---
@@ -481,20 +481,21 @@ data: [DONE]\n\n
**详细文档:** [AIA模块状态与开发指南](../../03-业务模块/AIA-AI智能问答/00-模块当前状态与开发指南.md)
#### 3. PKB模块 - 个人知识库 🎉 **pgvector RAG基础设施就绪**
#### 3. PKB模块 - 个人知识库 🎉 **成功替换 Dify自研 RAG 引擎上线**
**开发进度**
-**后端API**100%完成v1 + v2双路由运行
-**前端Dashboard**90%完成基于知识库仪表盘V5原型
-**前端Workspace**85%完成基于工作台V3原型
-**全文阅读模式**90%完成Chat组件集成
-**逐篇精读模式**85%完成(文档选择+对话)
- 🔧 **批处理模式**70%完成(UI完成API待调试
- 🟡 **RAG检索模式**基础设施就绪pgvector 0.8.1 已安装),业务逻辑待实现
-**前端Dashboard**95%完成基于知识库仪表盘V5原型
-**前端Workspace**95%完成基于工作台V3原型
-**全文阅读模式**95%完成Chat组件集成
-**逐篇精读模式**95%完成(文档选择+对话)
- **批处理模式**95%完成(完整流程+结果导出
- **RAG检索模式**100%完成(🎉 **2026-01-21 替换 Dify 完成!**
**核心功能**
- 知识库CRUD + 文档管理
- 3种工作模式(全文阅读、逐篇精读、批处理)
- 4种工作模式(全文阅读、逐篇精读、批处理、RAG检索
- 自研 pgvector RAG 引擎(替代 Dify
- Ant Design X Chat组件集成
- 响应式全屏布局
@@ -504,11 +505,12 @@ data: [DONE]\n\n
- ✅ 复用shared/components/Chat通用组件
- ✅ 单层Header + 紧凑工作模式栏设计
-**pgvector 0.8.1 已集成**2026-01-19
-**自研 RAG 引擎上线Dify 已移除**2026-01-21
-**跨语言检索**DeepSeek V3 查询理解 + 中英双语
**待解决问题**
- 🔧 批处理API执行待调试
- 🔧 知识资产页面导航条待完善
- 🔧 RAG 检索业务逻辑待实现向量表设计、Embedding服务
- 🔧 OSS 存储集成待完善
- 🔧 pg_bigm 扩展待安装(优化中文关键词检索)
**详细文档**[PKB模块当前状态](../03-业务模块/PKB-个人知识库/00-模块当前状态与开发指南.md)
@@ -1001,7 +1003,8 @@ AIclinicalresearch/
| **2026-01-07 上午** | **PKB前端V3** 🎉 | ✅ PKB模块前端V3设计实现完成Dashboard+Workspace+3种工作模式 |
| **2026-01-07 下午** | **PKB批处理完善** 🏆 | ✅ 批处理完整流程调试通过(执行+进度+结果导出)+ 文档上传功能 + UI优化 |
| **2026-01-19** | **pgvector集成** 🎉 | ✅ pgvector 0.8.1 安装成功PKB RAG基础设施就绪 |
| **当前** | **PKB模块生产可用** | ✅ 核心功能全部实现90%pgvector已集成RAG业务逻辑待开发 |
| **2026-01-21** | **🎉 Dify替换完成** | ✅ PKB 成功替换 Dify完全使用自研 pgvector RAG 引擎 |
| **当前** | **PKB模块生产可用** | ✅ 核心功能全部实现95%Dify已移除自研RAG引擎上线 |
| **2026-01-07 晚** | **RVW模块开发完成** 🎉 | ✅ Phase 1-3完成后端迁移+数据库扩展+前端重构) |
---
@@ -1180,8 +1183,8 @@ npm run dev # http://localhost:3000
- **总计**:约 85,000 行
### 模块完成度
-**已完成**AIA V2.085%核心功能完成、平台基础层100%、RVW95%、通用能力层升级100%
- 🚧 **开发中**PKB90%,核心功能完成)、ASL80%、DCTool C 98%Tool B后端100%Tool B前端0%、IIT60%Phase 1.5完成)
-**已完成**AIA V2.085%核心功能完成、平台基础层100%、RVW95%、通用能力层升级100%、**PKB95%Dify已替换** 🎉
- 🚧 **开发中**ASL80%、DCTool C 98%Tool B后端100%Tool B前端0%、IIT60%Phase 1.5完成)
- 📋 **未开始**SSA、ST
### 部署完成度
@@ -1302,7 +1305,8 @@ if (items.length >= 50) {
1.**Platform-Only 架构**:统一任务管理,零代码重复 🏆
2.**智能双模式处理**:小任务快速响应,大任务可靠执行 🏆
3.**🆕 RAG 引擎完整实现**:替代 DifyPostgres-Only 架构完成 🏆 **2026-01-21 上线!**
3.**🎉 Dify 成功替换!自研 RAG 引擎生产上线!** 🏆 **2026-01-21**
-**彻底移除 Dify 依赖**PKB 模块完全使用自研 pgvector 引擎
- pgvector 向量检索 + DeepSeek V3 查询理解 + qwen3-rerank 重排序
- 跨语言支持:中文查询匹配英文文档(准确率 +20.5%
- Brain-Hand 架构:业务层思考,引擎层执行
@@ -1324,9 +1328,9 @@ if (items.length >= 50) {
---
**文档版本**v3.8
**最后更新**2026-01-19
**下次更新**PKB RAG检索功能实现 或 生产环境pgvector部署
**文档版本**v4.0
**最后更新**2026-01-21
**下次更新**OSS 存储集成 或 pg_bigm 扩展安装
---