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:
@@ -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-23:V2.0 核心功能完成!SSE 流式架构 + 段落化思考日志 + 引用链接可见化
|
||||
> - 2026-02-22:V2.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导出
|
||||
- ✅ **智能文献检索(DeepSearch)V1.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 的 extractionResult,flattenModuleData 归一化 |
|
||||
| 图表渲染 | 前端 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 种数据类型 | HR(metagen)、二分类(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.x(2026-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
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user