feat(asl): Complete Tool 4 SR Chart Generator and Tool 5 Meta Analysis Engine

Tool 4 - SR Chart Generator:
- PRISMA 2020 flow diagram with Chinese/English toggle (SVG)
- Baseline characteristics table (Table 1)
- Dual data source: project pipeline API + Excel upload
- SVG/PNG export support
- Backend: ChartingService with Prisma aggregation
- Frontend: PrismaFlowDiagram, BaselineTable, DataSourceSelector

Tool 5 - Meta Analysis Engine:
- 3 data types: HR (metagen), dichotomous (metabin), continuous (metacont)
- Random and fixed effects models
- Multiple effect measures: HR / OR / RR
- Forest plot + funnel plot (base64 PNG from R)
- Heterogeneity statistics: I2, Q, p-value, Tau2
- Data input via Excel upload or project pipeline
- R Docker image updated with meta package (13 tools total)
- E2E test: 36/36 passed
- Key fix: exp() back-transformation for log-scale ratio measures

Also includes:
- IIT CRA Agent V3.0 routing and AI chat page integration
- Updated ASL module status guide (v2.3)
- Updated system status guide (v6.3)
- Updated R statistics engine guide (v1.4)

Tested: Frontend renders correctly, backend APIs functional, E2E tests passed
Made-with: Cursor
This commit is contained in:
2026-02-26 21:51:02 +08:00
parent 7c3cc12b2e
commit 205932bb3f
30 changed files with 3596 additions and 114 deletions

View File

@@ -1,11 +1,12 @@
# AI智能文献模块 - 当前状态与开发指南
> **文档版本:** v2.2
> **文档版本:** v2.3
> **创建日期:** 2025-11-21
> **维护者:** AI智能文献开发团队
> **最后更新:** 2026-02-25 🆕 **工具 3 M1 骨架管线 + M2 HITL 工作台开发完成!**
> **最后更新:** 2026-02-26 🆕 **工具 4 SR 图表生成器 + 工具 5 Meta 分析引擎开发完成!**
> **重大进展:**
> - 🆕 2026-02-25**工具 3 M1+M2 开发完成!** 散装派发+Aggregator 全链路、MinerU 集成、XML Prompt 隔离、fuzzyQuoteMatch 溯源、HITL 审核抽屉、Excel 导出、数据归一化修复
> - 🆕 2026-02-26**工具 4 + 工具 5 开发完成!** PRISMA 流程图(中英切换)+ 基线特征表 + Meta 分析引擎HR/二分类/连续型 + 森林图/漏斗图)+ R Docker meta 包集成 + E2E 36/36 通过
> - 2026-02-25**工具 3 M1+M2 开发完成!** 散装派发+Aggregator 全链路、MinerU 集成、XML Prompt 隔离、fuzzyQuoteMatch 溯源、HITL 审核抽屉、Excel 导出、数据归一化修复
> - 2026-02-24工具 3 V2.0 架构升级Fan-out → 散装派发 + Aggregator 轮询收口,通用模式指南 v1.1 沉淀
> - 2026-02-23V2.0 核心功能完成SSE 流式架构 + 段落化思考日志 + 引用链接可见化
> - 2026-02-22V2.0 前后端联调完成!瀑布流 UI + Markdown 渲染 + Word 导出 + 中文数据源测试
@@ -32,15 +33,17 @@
AI智能文献模块是一个基于大语言模型LLM的文献筛选系统用于帮助研究人员根据PICOS标准自动筛选文献。
### 当前状态
- **开发阶段**:🎉 工具 3 M1+M2 开发完成M3 待启动
- **开发阶段**:🎉 工具 3 M1+M2 + 工具 4 + 工具 5 开发完成
- **已完成功能**
- ✅ 标题摘要初筛Title & Abstract Screening- 完整流程
- ✅ 全文复筛后端Day 2-5- LLM服务 + API + Excel导出
-**智能文献检索DeepSearchV1.x MVP** - unifuncs API 集成
-**Unifuncs API 网站覆盖测试** - 18 站点实测9 个一级可用
-**🎉 Deep Research V2.0 核心功能** — SSE 流式架构 + 瀑布流 UI + HITL + Word 导出
-**🆕 工具 3 M1 骨架管线** — 散装派发+Aggregator 全链路、PKB ACL 防腐层、DeepSeek-V3 纯文本盲提、3 步极简前端
-**🆕 工具 3 M2 HITL 工作台** — MinerU VLM 表格集成、XML Prompt 隔离、fuzzyQuoteMatch 溯源、SSE 实时日志、审核抽屉、Excel 宽表导出
-**工具 3 M1 骨架管线** — 散装派发+Aggregator 全链路、PKB ACL 防腐层、DeepSeek-V3 纯文本盲提、3 步极简前端
-**工具 3 M2 HITL 工作台** — MinerU VLM 表格集成、XML Prompt 隔离、fuzzyQuoteMatch 溯源、SSE 实时日志、审核抽屉、Excel 宽表导出
-**🆕 工具 4 SR 图表生成器** — PRISMA 2020 流程图(中英切换)+ 基线特征表 + 双通道数据源(项目流水线/Excel 上传)+ SVG/PNG 导出
-**🆕 工具 5 Meta 分析引擎** — HR/二分类/连续型 3 种数据类型 + 随机/固定效应模型 + 森林图+漏斗图 + R Docker meta 包集成 + E2E 36/36 通过
- **待开发**
- 📋 **工具 3 M3 动态模板引擎** — 自定义字段 CRUD、Prompt 注入防护、E2E 测试
- **V2.0 已完成**
@@ -245,6 +248,121 @@ GET /api/v1/asl/extraction/pkb/knowledge-bases/:kbId/documents # PKB 文档
| `extraction_tasks` | 提取任务idempotencyKey 幂等) |
| `extraction_results` | 单文档提取结果extractedData JSON + quoteVerification + reviewStatus |
### 🆕 工具 4 SR 图表生成器2026-02-26 开发完成)
**功能定位:** 基于工具 3 提取结果,一键生成 PRISMA 2020 流程图 + 基线特征表Table 1支持从项目流水线或 Excel 导入数据。
**开发状态:** ✅ 开发完成
**核心功能:**
| 功能 | 技术实现 | 状态 |
|------|---------|------|
| PRISMA 2020 流程图 | SVG 渲染,支持中英文切换 | ✅ |
| 基线特征表Table 1 | Ant Design Table 动态渲染 | ✅ |
| 双通道数据源 | 项目流水线API 聚合)+ Excel 上传 | ✅ |
| 图表导出 | SVG / PNG 导出 | ✅ |
| Excel 模板 | 下载标准模板 + 解析上传文件 | ✅ |
| 中英文切换 | PRISMA 图中英文 I18N默认中文 | ✅ |
**核心架构决策:**
| 决策 | 方案 |
|------|------|
| PRISMA 数据聚合 | 后端 Prisma `count` 聚合 aslLiterature / screeningResult / fulltextResult / extractionResult |
| 基线数据来源 | 后端查询 approved 的 extractionResultflattenModuleData 归一化 |
| 图表渲染 | 前端 SVG 组件,无第三方图表库依赖 |
| 中英切换 | I18N 对象 + lang prop + 切换按钮组 |
**新增 API 端点:**
```http
GET /api/v1/asl/charting/prisma-data/:projectId # PRISMA
GET /api/v1/asl/charting/baseline-data/:projectId # 线
```
**新增前端路由:**
```
/literature/charting # SR 图表生成器页面
```
**核心代码组件:**
| 组件 | 文件 | 说明 |
|------|------|------|
| 图表服务 | `charting/services/ChartingService.ts` | Prisma 聚合 + 基线数据提取 |
| 图表控制器 | `charting/controllers/ChartingController.ts` | 2 个 API 端点 |
| PRISMA 图 | `components/charting/PrismaFlowDiagram.tsx` | SVG 渲染 + I18N 中英切换 |
| 基线表 | `components/charting/BaselineTable.tsx` | Ant Design 动态列表格 |
| 数据源选择 | `components/charting/DataSourceSelector.tsx` | 项目流水线 / Excel 双通道 |
| Excel 工具 | `utils/chartingExcelUtils.ts` | 模板下载 + 解析 + 图表导出 |
| 主页面 | `pages/SRChartGenerator.tsx` | Tab 切换 PRISMA / 基线表 |
### 🆕 工具 5 Meta 分析引擎2026-02-26 开发完成)
**功能定位:** 定量 Meta 分析引擎,支持 HR / 二分类OR/RR/ 连续型数据,生成森林图 + 漏斗图 + 异质性统计量,基于 R Docker 服务meta 包)。
**开发状态:** ✅ 开发完成E2E 36/36 通过
**核心功能:**
| 功能 | 技术实现 | 状态 |
|------|---------|------|
| 3 种数据类型 | HRmetagen、二分类metabin、连续型metacont | ✅ |
| 2 种效应模型 | 随机效应DerSimonian-Laird+ 固定效应Inverse Variance | ✅ |
| 多效应量度 | HR / OR / RR二分类| ✅ |
| 森林图 | R meta::forest() → base64 PNG | ✅ |
| 漏斗图 | R meta::funnel() → base64 PNG | ✅ |
| 异质性统计 | I²、Q 统计量、p 值、Tau² | ✅ |
| 数据输入 | Excel 上传 + 项目流水线(工具 3 提取结果) | ✅ |
| 只读数据预览 | Ant Design Table 预览 + 数据验证 | ✅ |
| Excel 模板 | 3 种数据类型模板 + 示例数据 + 使用说明 | ✅ |
| R 代码可复现 | 返回可复现的 R 代码片段 | ✅ |
**核心架构决策:**
| 决策 | 方案 |
|------|------|
| 统计引擎 | R Docker 服务meta 包Brain-Hand 架构Node.js 编排R 执行) |
| 数据传输 | inline JSON小数据直传 |
| 效应量回转 | meta 包返回 log 尺度R 脚本内 exp() 回转为临床可解释值 |
| 前端数据输入 | Excel 上传(编辑后回传)或关联项目流水线自动提取 |
| 数据预览 | 只读 Ant Design Table不做浏览器内编辑 |
**新增 API 端点:**
```http
POST /api/v1/asl/meta-analysis/run # Meta
GET /api/v1/asl/meta-analysis/project-data/:projectId # 线
GET /api/v1/asl/meta-analysis/health # R
```
**新增前端路由:**
```
/literature/meta-analysis # Meta 分析引擎页面
```
**核心代码组件:**
| 组件 | 文件 | 说明 |
|------|------|------|
| R 分析脚本 | `r-statistics-service/tools/meta_analysis.R` | metagen/metabin/metacont + exp() 回转 + 森林图/漏斗图 |
| 后端服务 | `meta-analysis/services/MetaAnalysisService.ts` | R Docker 代理 + 项目数据提取 |
| 后端控制器 | `meta-analysis/controllers/MetaAnalysisController.ts` | 3 个 API 端点 |
| 结果面板 | `components/meta/ResultsPanel.tsx` | 汇总统计 + 图表展示 + R 代码 + 下载 |
| Excel 工具 | `utils/metaExcelUtils.ts` | 3 种模板生成 + 解析 + 验证 |
| 主页面 | `pages/MetaAnalysisEngine.tsx` | 3 步向导(数据输入→参数配置→分析结果) |
| E2E 测试 | `meta-analysis/__tests__/meta-e2e-test.ts` | 36 项测试全部通过 |
**R Docker 更新:**
- Dockerfile 新增 `meta` 包安装
- 镜像版本维持 `ssa-r-statistics:1.0.1`
- 工具总数从 12 增至 13新增 `ST_META_ANALYSIS`
- 详见 `docs/02-通用能力层/06-R统计引擎/01-R统计引擎架构与部署指南.md`
**关键技术点:**
1. **Log 尺度回转**meta 包对 HR/OR/RR 返回 log 尺度值R 脚本中使用 `exp()` 回转为临床可解释值
2. **R JSON 序列化**Plumber 默认会将单元素向量包装为数组,前端需要 `Array.isArray` 防御
3. **数据类型自动检测**:从 Excel 或项目数据自动推断 HR/二分类/连续型
### 智能文献检索 DeepSearch V1.x2026-01-18 MVP完成
**功能概述:**
@@ -1503,16 +1621,23 @@ Drawer打开: <50ms
3.**outcomes 模板匹配**:根据文献内容自动推荐 survival/continuous/dichotomous
4.**缺失字段补充**country、inclusion_criteria、primary_outcome 等M3 自定义字段支持)
### 工具 4/5 后续优化
1.**PRISMA 图数据自动关联**:自动读取项目各阶段实际计数,减少手动输入
2.**基线表统计检验**:自动计算 p 值、标准差等描述统计
3.**Meta 分析亚组分析**:支持 subgroup 分层分析
4.**Meta 分析敏感性分析**逐一剔除法Leave-one-out
5.**Meta 分析发表偏倚检验**Egger's test / Begg's test
6.**网状 Meta 分析NMA**netmeta 包集成
### 短期优化
1. ⏳ Deep Research V2.0 端到端回归测试
2. ⏳ 搜索历史管理(历史任务列表)
3. ⏳ 标题摘要初筛 Prompt 优化(准确率 60% → 85%+
### 中期Month 2-3
1. ⏳ 工具 4网状 Meta 分析)开发
2.工具 5证据质量评价 GRADE开发
3.生产环境部署
4. ⏳ 证据图谱可视化
1. ⏳ 工具 6证据质量评价 GRADE)开发
2.生产环境部署
3.证据图谱可视化
---
@@ -1522,15 +1647,15 @@ Drawer打开: <50ms
---
**最后更新**2026-02-25(工具 3 M1+M2 开发完成 + 数据归一化修复
**最后更新**2026-02-26(工具 4 SR 图表生成器 + 工具 5 Meta 分析引擎开发完成
**文档状态**:✅ 反映真实状态
**下次更新时机**:工具 3 M3 动态模板引擎开发完成
**下次更新时机**:工具 3 M3 动态模板引擎开发完成 或 工具 6 GRADE 开发完成
**本次更新内容**v2.2
- ✅ 工具 3 M1 骨架管线完成:散装派发+Aggregator、PKB ACL、纯文本盲提、3步极简前端
- ✅ 工具 3 M2 HITL 工作台完成MinerU 集成、XML Prompt 隔离、fuzzyQuoteMatch、SSE 日志、审核抽屉、Excel 导出
-M2 关键修复DynamicPromptBuilder 扁平输出、ExcelExporter 数据归一化、Schema-driven 前端
-新增工具 3 API 端点12 个、前端路由3 个、数据库表4 个)
- ✅ 更新下一步计划:M3 动态模板引擎 + RoB 增强 + 后续工具 4/5
**本次更新内容**v2.3
- ✅ 工具 4 SR 图表生成器完成PRISMA 2020 流程图(中英切换)+ 基线特征表 + 双通道数据源 + SVG/PNG 导出
- ✅ 工具 5 Meta 分析引擎完成HR/二分类/连续型 + 随机/固定效应模型 + 森林图/漏斗图 + R Docker meta 包 + E2E 36/36 通过
-新增工具 4 API 端点2 个)、工具 5 API 端点3 个、前端路由2 个)
-R Docker 镜像更新:新增 meta 包,工具总数 13
- ✅ 更新下一步计划:工具 4/5 后续优化 + 工具 6 GRADE