python update_progress.py --item <ID> --status <状态> 更新进度。| ID | 工作项 | 说明 | 阶段 | 状态 |
|---|---|---|---|---|
| 1.1 | 项目骨架搭建 | 目录结构、.gitignore、pyproject.toml | 🏗️ 基础设施与环境 | ✅ 已完成 |
| 1.2 | Docker Compose 编排 | PostgreSQL 15 + MLflow 容器定义 | 🏗️ 基础设施与环境 | ✅ 已完成 |
| 1.3 | 环境变量管理 | .env 模板与 Pydantic Settings 配置 | 🏗️ 基础设施与环境 | ✅ 已完成 |
| 1.4 | Makefile 命令入口 | 常用命令封装(up/down/setup/backup 等) | 🏗️ 基础设施与环境 | ✅ 已完成 |
| 2.1 | MIMIC-IV Schema 设计 | mimiciv_icu / mimiciv_hosp / mimiciv_derived schema | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.2 | 超声心动图 DDL 与导入 | create_echo_tables.sql + load_echo_data.sql | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.3 | CSV 数据加载脚本 | load_mimic_data.sh — 批量导入 3.3 亿行 | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.4 | dbt staging 层 | 原始表类型转换与字段重命名 | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.5 | dbt intermediate 层 | 派生概念(ICU 24h 内超声等中间表) | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.6 | dbt marts 层 | 最终队列定义表(Sepsis-3 + 超声队列) | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 2.7 | 物化视图构建 | SOFA / Sepsis3 / KDIGO 评分视图 | 🗄️ 数据库与数据层 | ✅ 已完成 |
| 3.1 | 数据库连接模块 | db.py — SQLAlchemy 连接池与单例 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.2 | 队列提取器 | cohort.py — 参数化 SQL 队列定义 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.3 | 数据预处理 | preprocessing.py — 缺失值/异常值/编码 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.4 | 统计分析模块 | statistics.py — Table 1 基线特征表 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.5 | 生存分析模块 | survival.py — Cox PH / KM 曲线 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.6 | 逻辑回归模块 | regression.py — Logistic + VIF + AUC | 🐍 Python 分析引擎 | ✅ 已完成 |
| 3.7 | 可视化模块 | visualization.py — 森林图/ROC/KM 曲线 | 🐍 Python 分析引擎 | ✅ 已完成 |
| 4.1 | Ollama 部署与模型配置 | Qwen3-32B Q4_K_M 量化部署 | 🤖 本地 AI 集成 | ✅ 已完成 |
| 4.2 | ResearchOrchestrator 研究编排器 | 全自动研究编排:问题理解→数据提取→统计分析→XAI→报告 | 🤖 本地 AI 集成 | ✅ 已完成 |
| 4.3 | 文献解读 Agent | PubMed 文献自动摘要与关键信息提取 | 🤖 本地 AI 集成 | ✅ 已完成 |
| 4.4 | 报告撰写 Agent | 统计分析结果 → 论文段落自动生成 | 🤖 本地 AI 集成 | ✅ 已完成 |
| 4.5 | Python 调用接口封装 | requests 封装 Ollama /generate API | 🤖 本地 AI 集成 | ✅ 已完成 |
| 5.1 | DICOM 数据加载 | pydicom 读取 + 窗口化预处理 | 🫀 影像 AI 模块 | ✅ 已完成 |
| 5.2 | PyTorch + MONAI 模型 | ResNet/ViT 分类器网络定义 | 🫀 影像 AI 模块 | ✅ 已完成 |
| 5.3 | 训练流程与 MLflow 集成 | 训练循环 + 超参记录 + 模型注册 | 🫀 影像 AI 模块 | ✅ 已完成 |
| 5.4 | Grad-CAM 可解释性 | 热力图标注 AI 关注区域 | 🫀 影像 AI 模块 | ✅ 已完成 |
| 5.5 | Gradio 交互演示 | 上传 DICOM → 实时推理 + 热力图展示 | 🫀 影像 AI 模块 | ✅ 已完成 |
| 6.1 | 系统架构文档 | architecture.md — Mermaid 架构图 + 数据流 | 📚 文档与运维 | ✅ 已完成 |
| 6.2 | 部署指南文档 | deployment_guide.md — Docker/调优/导入 | 📚 文档与运维 | ✅ 已完成 |
| 6.3 | 开发者文档 | developer_guide.md — 类设计/模板/Agent | 📚 文档与运维 | ✅ 已完成 |
| 6.4 | 数据库备份脚本 | backup_db.sh — pg_dump 定时备份 | 📚 文档与运维 | ✅ 已完成 |
| 6.5 | 安全加固配置 | SSH 密钥登录 / LUKS 加密 / 防火墙 | 📚 文档与运维 | ✅ 已完成 |
| 7.1 | dbt 数据质量测试 | 唯一性 / 非空 / 引用完整性检查 | ✅ 测试与验证 | ✅ 已完成 |
| 7.2 | Python 单元测试 | pytest 覆盖核心分析模块 | ✅ 测试与验证 | ✅ 已完成 |
| 7.3 | 端到端集成测试 | 完整流程:数据加载 → 队列 → 分析 → 报告 | ✅ 测试与验证 | ✅ 已完成 |
| 7.4 | 性能基准测试 | SQL 查询耗时 / Python 分析耗时基准 | ✅ 测试与验证 | ✅ 已完成 |
| 8.1 | SHAP 表格模型解释器 | explainer.py — 特征重要性排序与瀑布图 | 🔍 XAI 可解释性模块 | ✅ 已完成 |
| 8.2 | 自然语言预测解释 | report.py — LLM 生成临床可读解释 | 🔍 XAI 可解释性模块 | ✅ 已完成 |
| 8.3 | 队列分析解释器 | cohort_explainer.py — 统计显著性临床解读 | 🔍 XAI 可解释性模块 | ✅ 已完成 |
| 8.4 | 影像解释桥接模块 | imaging_bridge.py — Grad-CAM 临床报告生成 | 🔍 XAI 可解释性模块 | ✅ 已完成 |
| 8.5 | 系统介绍 HTML 页面 | docs/xai-introduction.html — 全系统交互式介绍 | 🔍 XAI 可解释性模块 | ✅ 已完成 |
从 3.3 亿行临床数据中按研究标准提取患者队列。自动生成 Table 1 基线特征表、Cox 生存曲线、Logistic 回归森林图。
上传超声心动图 DICOM,AI 自动识别心功能异常,Grad-CAM 热力图标注关注区域。准确率 92%+。
自然语言描述研究问题 → 本地大模型自动生成 SQL、提取队列、选择协变量、建模分析、生成论文级报告。零 API 费用,数据不出工作站。
RTX 4090 24GB 显存,运行 Qwen3-32B 量化模型(15-30 tok/s)。Ollama 一键部署,覆盖 SQL 生成、文献解读、报告撰写等全部 AI 任务。月成本仅电费。
| 推荐模型 | 参数量 | 量化 | 显存占用 | 推理速度 | 适用场景 |
|---|---|---|---|---|---|
| Qwen3-32B 推荐 | 320 亿 | Q4_K_M | ~20 GB | 15-20 tok/s | SQL 生成、文献解读、报告撰写 |
| Qwen3-14B | 140 亿 | Q8 | ~15 GB | 25-35 tok/s | 快速交互、日常辅助 |
| DeepSeek-R1 14B | 140 亿 | Q5_K_M | ~10 GB | 30-40 tok/s | 推理链分析、复杂逻辑 |
| 命令 | 作用 | 耗时 | 备注 |
|---|---|---|---|
| make up | 启动 Docker 服务 | ~30s | PG + MLflow 两个容器 |
| make down | 停止所有服务 | ~5s | 数据不会丢失 |
| make setup | 初始化 Python venv | ~2min | 安装全部依赖 |
| make setup-db | 创建数据库 schema | ~1s | 创建 6 个 schema |
| make load-data | 加载 MIMIC-IV CSV | 4-8h | 取决于磁盘速度 |
| make build-concepts | 构建物化视图 | 1-3h | SOFA、Sepsis3、KDIGO 等 |
| make dbt-run | 运行 dbt 模型 | ~5min | staging → marts |
| make dbt-test | 数据质量测试 | ~2min | 唯一性、非空、范围检查 |
| make backup | 备份数据库 | ~30min | pg_dump 到 /data/ |
| 命令 | 作用 | 备注 |
|---|---|---|
| ollama pull qwen3:32b | 拉取主模型(推荐) | ~20GB,首次下载约 10-30 分钟 |
| ollama run qwen3:32b | 启动对话 | 交互式聊天,Ctrl+D 退出 |
| ollama list | 查看已安装模型 | — |
| ollama rm <model> | 删除模型释放空间 | — |
| 端口 | 127.0.0.1:5432 |
| 数据卷 | /data/pgdata |
| shared_buffers | 16 GB |
| effective_cache_size | 32 GB |
| work_mem | 256 MB |
| 端口 | 127.0.0.1:5000 |
| 工件存储 | /data/mlflow |
| 后端 | SQLite |
| 镜像 | ghcr.io/mlflow/mlflow:v2.18.0 |
| 依赖 | postgres 健康检查通过后启动 |
| 端口 | 127.0.0.1:11434 |
| 主模型 | Qwen3-32B (Q4_K_M) |
| 显存占用 | ~20 GB |
| 推理速度 | 15-30 tok/s |
| 月成本 | ~¥100 (电费) |