- Add platform infrastructure chapter to frontend-backend architecture design - Update system architecture document with 6 new infrastructure modules - Update AI onboarding guide with infrastructure overview - Link to backend/src/common/README.md for detailed usage guide Key Updates: - Storage service (LocalAdapter + OSSAdapter) - Logging system (Winston + JSON format) - Cache service (Memory + Redis) - Async job queue (Memory + Database) - Health check endpoints - Monitoring metrics - Database connection pool - Environment config management All modules support zero-code switching between local and cloud environments. Related: #Platform-Infrastructure
17 KiB
17 KiB
AIclinicalresearch 文档梳理与差异分析
文档版本: v1.0
创建日期: 2025-11-06
维护者: 项目团队
最后更新: 2025-11-06
📋 执行摘要
本文档对AIclinicalresearch项目下的所有文档进行了系统梳理,并重点对比了最新需求文档(壹证循科技 AI科研产品需求文档.md 和 技术架构白皮书.md)与现有文档之间的差异。
🎯 核心发现
最新需求文档(2025-11-05)反映了产品战略的重大调整:
- 产品定位变化: 从单一的"AI科研助手"扩展为7大模块的综合性AI科研平台
- 商业模式变化: 从简单SaaS模式扩展为4种部署形态(云端SaaS、私有化、混合部署、单机版)
- 技术架构变化: 从"模块化单体"演进为微服务架构,支持模块化售卖
- 目标用户变化: 从科研人员扩展到医院机构(强调数据安全和私有化部署)
📚 文档结构梳理
1. 00-项目概述 文件夹
| 文档名称 | 状态 | 版本日期 | 核心内容 | 是否符合最新需求 |
|---|---|---|---|---|
| 壹证循科技 AI科研产品需求文档.md | ✅ 最新 | 2025-11-05 | 7大模块功能矩阵、4种部署模式、商业模式 | ✅ 基准文档 |
| 壹证循科技AI科研产品 - 技术架构白皮书.md | ✅ 最新 | 2025-11-05 | 微服务架构、技术异构、Electron单机版 | ✅ 基准文档 |
| 产品需求文档(PRD).md | ⚠️ 旧版 | 2025-10-10 | 仅包含AI问答、知识库、项目管理 | ❌ 需要更新 |
| 技术架构总览.md | ⚠️ 旧版 | 2025-10-10 | 基于Dify+LobeChat的简化架构 | ❌ 需要更新 |
| AI智能文献PRD(1)-产品概览.md | ⚠️ 部分旧 | 2025-10-21 | 6大模块(研究方案、检索、初筛、复筛、提取、分析) | ⚠️ 部分符合,需整合 |
| AI智能文献PRD(2)-初筛与复筛.md | ⚠️ 部分旧 | 2025-10-21 | 初筛和复筛详细设计 | ⚠️ 部分符合,需整合 |
| AI智能文献PRD(3)-提取与分析模块.md | ⚠️ 部分旧 | 2025-10-21 | 提取和分析详细设计 | ⚠️ 部分符合,需整合 |
| 系统总体架构设计.md | ⚠️ 占位 | 2025-10-29 | 占位文档,待完善 | ❌ 需要重写 |
| 设计文档完成总结.md | ⚠️ 旧版 | 2025-10-10 | 基于旧版PRD的总结 | ❌ 需要更新 |
2. 01-设计文档 文件夹
| 文档名称 | 状态 | 版本日期 | 核心内容 | 是否符合最新需求 |
|---|---|---|---|---|
| 数据库设计文档.md | ⚠️ 旧版 | 2025-10-10 | 基于AI问答+知识库的数据库设计 | ❌ 缺少DC、SSA、ASL模块表 |
| API设计规范.md | ⚠️ 旧版 | 2025-10-10 | 基于AI问答+知识库的API设计 | ❌ 缺少新模块API |
| 平台前端架构设计/01-前端总体架构设计.md | ⚠️ 部分旧 | 2025-10-29 | 7个模块的顶部导航设计 | ⚠️ 架构正确,但缺少部署模式考虑 |
| 平台前端架构设计/02-导航结构设计.md | ⚠️ 部分旧 | 2025-10-29 | 导航详细设计 | ⚠️ 架构正确,但缺少部署模式考虑 |
| 系统架构/01-系统总体架构设计.md | ⚠️ 占位 | 2025-10-29 | 占位文档 | ❌ 需要重写 |
| 系统架构/04-运营管理端架构设计.md | ⚠️ 占位 | 2025-10-29 | 占位文档 | ❌ 需要重写 |
| 系统架构/05-部署架构设计.md | ⚠️ 占位 | 2025-10-29 | 占位文档 | ❌ 需要重写(关键) |
3. AI智能文献 文件夹
| 文档名称 | 状态 | 版本日期 | 核心内容 | 是否符合最新需求 |
|---|---|---|---|---|
| 所有文档 | ⚠️ 部分旧 | 2025-10-29 | 基于Web版的AI智能文献设计 | ⚠️ 缺少单机版、私有化部署考虑 |
4. 07-部署文档 文件夹
| 文档名称 | 状态 | 版本日期 | 核心内容 | 是否符合最新需求 |
|---|---|---|---|---|
| 本地化部署方案.md | ⚠️ 占位 | 2025-10-29 | 占位文档 | ❌ 需要重写(关键) |
| 模块独立部署指南.md | ⚠️ 占位 | 2025-10-29 | 占位文档 | ❌ 需要重写(关键) |
5. 05-每日进度 文件夹
| 状态 | 说明 |
|---|---|
| ⚠️ 历史记录 | 记录了AI问答+知识库的开发历史(Day04-Day31),基于旧版PRD |
🔍 关键差异分析
差异1:产品功能范围
旧版文档(产品需求文档(PRD).md)
核心功能:
1. 项目/课题管理
2. AI智能体(12个智能体)
3. 个人知识库
4. 历史记录
5. 运营后台
最新需求(壹证循科技 AI科研产品需求文档.md)
7大核心模块:
F1. 智能统计分析 (SSA) - ❌ 旧文档完全缺失
F2. 统计分析工具 (ST) - ❌ 旧文档完全缺失
F3. AI智能回答 (AIA) - ✅ 对应旧文档的"AI智能体"
F4. AI智能文献 (ASL) - ⚠️ 有独立PRD,但未整合
F5. 个人知识库 (PKB) - ✅ 对应旧文档的"个人知识库"
F6. 数据清洗整理 (DC) - ❌ 旧文档完全缺失(核心难点)
F7. 个人中心 (UAM) - ✅ 对应旧文档的"个人中心"
影响:
- ❌ 旧版数据库设计缺少 SSA、ST、DC、ASL 模块的表结构
- ❌ 旧版API设计缺少这些模块的接口
- ❌ 旧版前端架构虽然预留了导航位置,但缺少详细设计
差异2:部署模式
旧版文档(技术架构总览.md)
部署模式:
- 云端SaaS版(唯一模式)
- 基于Docker部署
- 单一租户架构
最新需求(技术架构白皮书.md)
4种部署形态(NFR-1核心要求):
1. 云端SaaS版 - 多租户、高可用
2. 私有化部署 - 整个平台或指定模块部署在客户内网
3. 混合部署 - 本地使用DC/SSA,云端调用ASL/AIA
4. 单机版 - Electron桌面应用(Windows/Mac),数据100%本地化
影响:
- ❌ 旧版架构设计完全不支持私有化部署和单机版
- ❌ 旧版前端架构设计未考虑混合部署的路由策略
- ❌ 缺少Electron单机版的技术方案和开发计划
- ❌ 缺少**容器化(K8s)**的部署架构设计
差异3:商业模式
旧版文档
商业模式:
- 简单的SaaS订阅模式
- 未明确版本分级
最新需求(NFR-2核心要求)
商业模式(NFR-2):
1. SaaS多版本:专业版、高级版、旗舰版
- 需要完善的Feature Flag系统
2. 模块化售卖:任何模块可独立打包售卖
- 技术架构必须松耦合
3. AI成本可控:动态切换LLM模型
- 专业版用DeepSeek,旗舰版用Claude/GPT
影响:
- ⚠️ 旧版前端架构设计已考虑版本权限控制,但未实现Feature Flag系统
- ❌ 旧版架构设计未考虑模块独立售卖的技术实现
- ⚠️ 旧版已支持多模型切换,但未与版本权限绑定
差异4:技术架构
旧版文档(技术架构总览.md)
技术架构:
- 前端:React + Vite + LobeChat组件
- 后端:Node.js + Fastify + Prisma
- 数据库:PostgreSQL
- RAG:Dify(仅用于知识库)
- LLM:DeepSeek-V3 + Qwen3
- 架构:模块化单体(Monolith)
最新需求(技术架构白皮书.md)
技术架构(演进式):
- 阶段一(0-6个月):模块化单体 ✅ 与旧版一致
- 阶段二(6-18个月):首次拆分(SSA、DC微服务)+ Electron单机版
- 阶段三(18个月+):全面微服务架构
核心技术栈(技术异构):
- 前端:React/Vue(Web + Electron复用)
- API网关:Node.js
- 统计分析(SSA):R语言 + Plumber API ❌ 旧文档缺失
- 数据清洗(DC):Python + Polars/Pandas + FastAPI ❌ 旧文档缺失
- 部署:Docker + Kubernetes ⚠️ 旧文档仅Docker
- 单机版:Electron + 本地R/Python子进程 ❌ 旧文档完全缺失
影响:
- ❌ 旧版架构设计未考虑R语言和Python微服务的集成
- ❌ 旧版架构设计未考虑Kubernetes编排
- ❌ 旧版架构设计完全缺少Electron单机版的技术方案
- ❌ 旧版架构设计未考虑API网关的引入
差异5:数据清洗模块(DC)- 核心难点
旧版文档
状态:完全缺失
最新需求(技术架构白皮书第6节)
数据清洗整理 (DC) 模块:
1. 海量表格ETL:处理百万行、多表格的Excel数据
2. 非结构化文本NER:从病理报告中提取结构化字段
两种实现方案:
方案一:服务器最优版(云端/私有化)
- Python + Polars(替代Pandas,10-100倍速度)
- LLM API(Claude 3/GPT-4o)进行NER
- PostgreSQL存储结果
方案二:单机版(Desktop-Offline)
- Electron + Python子进程
- SQLite(避免内存溢出)
- spaCy本地NLP模型(100%隐私保护)
影响:
- ❌ 旧版数据库设计完全缺少DC模块的表结构
- ❌ 旧版API设计完全缺少DC模块的接口
- ❌ 旧版技术栈未包含Python微服务
- ❌ 旧版架构设计未考虑Polars、SQLite、spaCy等关键技术
差异6:AI智能文献模块(ASL)
旧版文档(AI智能文献PRD系列)
状态:有独立PRD文档(2025-10-21)
内容:6大模块(研究方案、检索、初筛、复筛、提取、分析)
架构:基于Web版的设计
最新需求(壹证循科技 AI科研产品需求文档.md)
F4. AI智能文献 (ASL):
- 提供AI驱动的文献工作流
- 智能检索、标题摘要初筛、全文复筛、信息提取
- 支持Meta分析、证据图谱等应用
- 必须支持单机版(文献原文100%不离开用户电脑)
影响:
- ⚠️ 现有AI智能文献PRD文档内容基本符合,但需要:
- ❌ 补充单机版实现方案(Electron + 本地PDF解析)
- ❌ 补充私有化部署方案
- ⚠️ 整合到7大模块的整体架构中
差异7:智能统计分析模块(SSA)
旧版文档
状态:完全缺失
最新需求
F1. 智能统计分析 (SSA):
- 3条核心分析路径:队列研究、预测模型、RCT研究
- 数据上传、质控、分析、报告导出
- 必须支持私有化部署(医院内网)
- 必须支持单机版(数据100%本地化)
技术实现(白皮书):
- R语言 + Plumber API(服务器版)
- R语言 + Electron子进程(单机版)
影响:
- ❌ 旧版文档完全缺少SSA模块的PRD
- ❌ 旧版数据库设计完全缺少SSA模块的表结构
- ❌ 旧版技术栈未包含R语言
- ❌ 旧版架构设计未考虑R语言微服务的集成
📊 文档符合度评分
| 文档类别 | 符合度 | 说明 |
|---|---|---|
| 产品需求文档 | 30% | 仅覆盖3/7模块(AIA、PKB、UAM) |
| 技术架构文档 | 40% | 基础架构正确,但缺少微服务、Electron、K8s |
| 数据库设计 | 35% | 仅覆盖3/7模块的表结构 |
| API设计 | 35% | 仅覆盖3/7模块的接口 |
| 前端架构 | 60% | 导航结构正确,但缺少部署模式考虑 |
| 部署文档 | 0% | 完全缺失(占位文档) |
| AI智能文献 | 70% | 内容基本符合,但缺少单机版和私有化方案 |
总体符合度:约 40%
🚨 关键缺失内容清单
1. 产品需求层面
- SSA模块完整PRD(队列研究、预测模型、RCT研究)
- ST模块完整PRD(100+种统计工具)
- DC模块完整PRD(表格ETL + 文本NER)
- 4种部署模式的详细需求说明
- 模块化售卖的商业模式设计
- Feature Flag系统的需求定义
2. 技术架构层面
- 微服务架构设计(API网关 + 服务拆分)
- R语言微服务集成方案
- Python微服务集成方案(Polars + FastAPI)
- Kubernetes部署架构设计
- Electron单机版完整技术方案
- 混合部署的路由策略设计
- 私有化部署的容器化方案
3. 数据库设计层面
- SSA模块表结构(研究项目、数据集、分析结果)
- ST模块表结构(工具配置、使用记录)
- DC模块表结构(清洗任务、ETL配置、NER结果)
- ASL模块表结构(文献项目、筛选记录、提取数据)
- 多租户数据隔离设计(Schema隔离)
4. API设计层面
- SSA模块API(数据上传、分析执行、报告生成)
- ST模块API(工具列表、工具执行)
- DC模块API(文件上传、ETL执行、NER执行)
- ASL模块API(文献导入、筛选、提取)
- API网关路由配置
5. 前端架构层面
- Electron单机版前端架构
- 混合部署的前端路由策略
- Feature Flag前端实现
- 模块独立打包方案
6. 部署文档层面
- 云端SaaS部署方案(K8s + 多租户)
- 私有化部署方案(Docker + K3s)
- 混合部署方案(本地+云端)
- Electron单机版打包方案(Windows + Mac)
- 模块独立部署指南
📝 建议的文档更新优先级
🔴 P0 - 立即更新(阻塞开发)
- 系统总体架构设计.md - 重写,基于技术架构白皮书
- 部署架构设计.md - 重写,详细说明4种部署模式
- 数据库设计文档.md - 补充SSA、ST、DC、ASL模块表结构
- 产品需求文档(PRD).md - 重写,整合7大模块
🟠 P1 - 近期更新(影响规划)
- DC模块PRD - 新建,详细说明ETL和NER需求
- SSA模块PRD - 新建,详细说明3条分析路径
- ST模块PRD - 新建,详细说明100+工具
- Electron单机版技术方案 - 新建,详细说明实现路径
- API设计规范.md - 补充新模块API
🟡 P2 - 后续更新(优化完善)
- 前端总体架构设计.md - 补充部署模式考虑
- AI智能文献PRD系列 - 补充单机版和私有化方案
- 技术架构总览.md - 重写,基于技术架构白皮书
- 本地化部署方案.md - 详细说明私有化部署
- 模块独立部署指南.md - 详细说明模块化售卖
🎯 下一步行动建议
建议1:明确开发阶段
根据技术架构白皮书的分阶段实施路线图:
阶段一(0-6个月):云端MVP - "模块化单体"
- ✅ 可以继续使用现有架构(Node.js + Fastify + PostgreSQL)
- ⚠️ 但必须严格遵循"代码隔离"和"数据隔离"(Schema隔离)
- ❌ 暂不开发Electron单机版和私有化部署
阶段二(6-18个月):首次拆分
- 引入K8s和API网关
- 拆分SSA和DC为独立微服务
- 开发Electron单机版
建议2:模块开发优先级
基于商业价值和技术复杂度:
第一优先级(核心差异化):
- DC模块(数据清洗整理) - 核心难点,差异化竞争力
- ASL模块(AI智能文献) - 已有PRD,可快速推进
第二优先级(完善产品矩阵): 3. SSA模块(智能统计分析) - 需要R语言团队 4. ST模块(统计分析工具) - 相对简单
第三优先级(已完成): 5. AIA模块(AI智能回答) - ✅ 已完成 6. PKB模块(个人知识库) - ✅ 已完成 7. UAM模块(个人中心) - ✅ 已完成
建议3:文档更新策略
立即行动(本周):
- 创建
系统总体架构设计.md(基于白皮书) - 创建
部署架构设计.md(4种部署模式) - 更新
数据库设计文档.md(补充新模块表结构)
近期行动(本月):
4. 创建 DC模块PRD.md
5. 创建 SSA模块PRD.md
6. 创建 Electron单机版技术方案.md
持续行动: 7. 随着开发进展,持续更新API设计、前端架构等文档
建议4:技术选型确认
需要与团队确认的关键技术决策:
-
是否引入R语言?
- SSA模块需要R语言(统计分析的王者)
- 需要评估团队能力和学习成本
-
是否引入Python微服务?
- DC模块需要Python + Polars/Pandas
- 需要评估与现有Node.js架构的集成复杂度
-
是否立即规划Electron单机版?
- 白皮书建议在阶段二(6-18个月)开发
- 需要确认市场需求的紧迫性
-
是否立即引入K8s?
- 白皮书建议在阶段二引入
- 阶段一可以继续使用Docker Compose
📌 总结
核心问题
旧版文档与最新需求的核心差异:
- 产品范围扩大: 从3个模块扩展到7个模块
- 部署模式复杂化: 从单一云端SaaS扩展到4种部署形态
- 技术架构演进: 从模块化单体演进到微服务架构
- 商业模式升级: 从简单订阅到模块化售卖 + 多版本 + 多部署
关键建议
务实的推进策略:
- 阶段一(当前): 继续使用现有架构,专注于云端SaaS版的7大模块开发
- 严格纪律: 必须遵循"代码隔离"和"数据Schema隔离",为未来拆分打基础
- 优先级: 先开发DC和ASL模块(差异化竞争力)
- 文档先行: 立即更新P0级文档,指导后续开发
避免过度设计:
- ❌ 不要在阶段一就引入K8s和API网关(增加复杂度)
- ❌ 不要在阶段一就开发Electron单机版(分散精力)
- ✅ 专注于云端SaaS版的功能完善和市场验证
- ✅ 为未来的架构演进打好基础(代码和数据隔离)
文档维护者: 项目团队
最后更新: 2025-11-06
下次审查: 2025-11-13