# SSA 智能统计分析 — 统计专家配置清单与准备指南 > **文档版本:** v1.0 > **创建日期:** 2026-02-23 > **目标读者:** 统计学专家 / 生物统计师 > **文档目的:** 系统性梳理 QPER 架构中所有需要统计学专家审核/配置的内容,便于专家提前准备 --- ## 📋 目录 1. [系统架构概览](#1-系统架构概览) 2. [配置总览清单(一览表)](#2-配置总览清单) 3. [A 类:统计方法决策表](#3-a-类统计方法决策表) 4. [B 类:分析流程模板](#4-b-类分析流程模板) 5. [C 类:R 统计工具](#5-c-类r-统计工具) 6. [D 类:工具参数约束表](#6-d-类工具参数约束表) 7. [E 类:LLM Prompt 模板](#7-e-类llm-prompt-模板) 8. [F 类:意图识别规则](#8-f-类意图识别规则) 9. [G 类:统计工具注册表](#9-g-类统计工具注册表) 10. [当前状态与待办事项](#10-当前状态与待办事项) 11. [专家审核工作流程建议](#11-专家审核工作流程建议) --- ## 1. 系统架构概览 ### QPER 四层架构 系统采用 **QPER** 四层流水线架构处理用户的统计分析请求: ``` 用户:"比较两组血压有没有差别" │ ▼ ┌─ Q · Query(意图理解)──────────────────────────┐ │ LLM 解析用户意图 → 结构化查询 │ │ 需要配置:意图识别规则(F)、意图 Prompt(E) │ │ 输出:goal=comparison, Y=SBP, X=Group, design=ind │ └──────────────────────┬─────────────────────────────┘ ▼ ┌─ P · Planner(方法规划)───────────────────────────┐ │ 决策表匹配 → 流程模板填充 │ │ 需要配置:决策表(A)、流程模板(B)、工具注册表(G) │ │ 输出:WorkflowPlan [step1: 描述统计, step2: T检验] │ └──────────────────────┬─────────────────────────────┘ ▼ ┌─ E · Execute(R引擎执行)──────────────────────────┐ │ 调用 R 工具执行统计计算 │ │ 需要配置:R 工具脚本(C)、参数约束(D) │ │ 输出:StepResult[](含 P 值、统计量、效应量等) │ └──────────────────────┬─────────────────────────────┘ ▼ ┌─ R · Reflection(论文级结论)──────────────────────┐ │ LLM 基于真实 R 引擎结果生成论文结论 │ │ 需要配置:结论 Prompt(E) │ │ 输出:ConclusionReport(含摘要、方法学、局限性) │ └────────────────────────────────────────────────────┘ ``` ### 核心原则 | 原则 | 说明 | |------|------| | **LLM 不做计算** | LLM 只负责意图理解、方案规划、结果解读,所有统计计算由 R 引擎完成 | | **白盒透明** | 用户可以看到每一步做了什么、为什么、R 代码是什么 | | **自动降级** | 不满足参数检验前提条件时,自动切换非参数方法 | | **可审计** | 生成可在本地运行的 R 代码,支持结果复现 | --- ## 2. 配置总览清单 > 🟢 = 已配置完成 | 🟡 = 已配置但需专家审核/完善 | 🔴 = 未配置 | 类别 | 配置项 | 文件路径 | 当前状态 | 专家需做什么 | |------|--------|----------|---------|-------------| | **A. 决策表** | 统计方法选择规则(11 条) | `config/decision_tables.json` | 🟡 | 审核匹配规则、降级条件、补充缺失场景 | | **B. 流程模板** | 分析步骤编排(5 个模板) | `config/flow_templates.json` | 🟡 | 审核步骤合理性、补充新模板 | | **C. R 工具** | 统计计算脚本(12 个) | `r-statistics-service/tools/*.R` | 🟡 | 审核统计方法正确性、护栏阈值 | | **D. 参数约束** | 变量类型/水平约束(12 工具) | `config/tool_param_constraints.json` | 🟡 | 审核约束条件(minLevels/maxLevels 等) | | **E. Prompt** | LLM 提示词(12 个) | 数据库 + seed 脚本 | 🟡 | 审核统计术语准确性、Few-Shot 示例 | | **F. 意图规则** | 意图识别关键词(5 类) | `config/intent_rules.json` | 🟡 | 补充统计领域关键词 | | **G. 工具注册表** | 工具元信息(12 工具) | `config/tools_registry.json` | 🟡 | 审核工具描述、参数说明、前提条件 | --- ## 3. A 类:统计方法决策表 **文件:** `backend/src/modules/ssa/config/decision_tables.json` ### 作用 当系统理解了用户意图后(Q 层输出 goal + outcomeType + predictorType + design),通过此表进行 **四维匹配**,选出最适合的统计方法。 ### 当前已配置的 11 条规则 | 规则 ID | 分析目标 | 结局类型 | 自变量类型 | 设计 | 主方法 | 降级方法 | 降级触发条件 | |---------|---------|---------|-----------|------|--------|---------|-------------| | `DIFF_CONT_BIN_IND` | comparison | continuous | binary | independent | T 检验 | Mann-Whitney | Shapiro-Wilk P<0.05 | | `DIFF_CONT_BIN_PAIRED` | comparison | continuous | binary | paired | 配对 T 检验 | Wilcoxon | 差值 Shapiro-Wilk P<0.05 | | `DIFF_CONT_MULTI_IND` | comparison | continuous | categorical | independent | ANOVA | Kruskal-Wallis | Shapiro-Wilk P<0.05(内部自动切换) | | `DIFF_CAT_CAT_IND` | comparison | categorical | categorical | independent | 卡方检验 | Fisher | 期望频数<5 超过 20% 且 2×2 表 | | `DIFF_CAT_CAT_SMALL` | comparison | categorical | binary | independent | Fisher | 无 | 直接使用 | | `ASSOC_CONT_CONT` | correlation | continuous | continuous | * | 相关分析 | 无 | Pearson/Spearman 自动选择 | | `ASSOC_CAT_ANY` | correlation | categorical | * | * | 卡方检验 | Fisher | 期望频数<5 超过 20% | | `PRED_BIN_ANY` | regression | binary | * | * | Logistic 回归 | 无 | — | | `PRED_CONT_ANY` | regression | continuous | * | * | 线性回归 | 无 | — | | `DESC_ANY` | descriptive | * | * | * | 描述性统计 | 无 | — | | `COHORT_STUDY` | cohort_study | binary | * | * | 描述统计 | 无 | 对应队列研究模板 | ### 🔍 专家需审核的问题 1. **降级条件是否正确?** - Shapiro-Wilk P<0.05 作为正态性检验阈值是否合理? - 期望频数<5 超过 20% 的 Fisher 切换标准是否合理? 2. **缺失的分析场景:** - 有序分类变量(ordinal)的比较方法? - 多因素方差分析(多个自变量)? - 生存分析(Kaplan-Meier、Cox 回归)? - 重复测量设计? - 倾向性评分匹配? - 交叉表的多重比较? 3. **优先级是否合理?** - 当多条规则同时匹配时,`priority` 值高的优先,需确认排序逻辑 4. **队列研究的 outcomeType 限定为 binary 是否合适?** - 如果结局变量是连续型(如生存时间),是否需要新规则? --- ## 4. B 类:分析流程模板 **文件:** `backend/src/modules/ssa/config/flow_templates.json` ### 作用 决策表选出方法后,通过流程模板确定 **执行步骤的编排顺序**。每个模板定义了"先做什么、再做什么"。 ### 当前已配置的 5 个模板 #### 模板 1:`standard_analysis`(标准分析流程) ``` 步骤 1: 描述性统计(固定) 步骤 2: 主分析(动态填入,如 T 检验) 步骤 3: 敏感性分析(动态填入降级方法,条件:有降级方法时才执行) ``` **适用:** 两组比较、多组比较、卡方检验、相关分析等 #### 模板 2:`paired_analysis`(配对设计分析) ``` 步骤 1: 描述性统计(固定) 步骤 2: 配对检验(动态填入,如配对 T 检验) ``` **适用:** 前后对比、配对设计 #### 模板 3:`regression_analysis`(回归建模) ``` 步骤 1: 描述性统计(固定) 步骤 2: 多因素回归(动态填入,如 Logistic 或线性回归) ``` **适用:** 多因素分析 #### 模板 4:`descriptive_only`(纯描述统计) ``` 步骤 1: 描述性统计(固定) ``` **适用:** 仅需数据概况 #### 模板 5:`cohort_study_standard`(经典队列研究) ``` 步骤 1: 表1 — 组间基线特征比较(ST_BASELINE_TABLE,group_var=分组变量) 步骤 2: 表2 — 结局指标单因素分析(ST_BASELINE_TABLE,group_var=结局变量) 步骤 3: 表3 — 多因素 Logistic 回归(ST_LOGISTIC_BINARY,含 EPV 截断) ``` **适用:** 队列研究 Table 1→2→3 ### 🔍 专家需审核的问题 1. **标准分析是否都需要"敏感性分析"步骤?** - 当主分析与敏感性分析结论不一致时,系统已有冲突处理准则 2. **队列研究模板是否完整?** - 表1 基线比较 → 表2 单因素筛选 → 表3 多因素回归,这个流程是否标准? - 是否需要增加:表2 → 表3 之间的变量筛选逻辑(如 P<0.1 纳入多因素)? - 表3 的 EPV(Events Per Variable)截断规则:当前 `epv_capped_predictors` 的计算方式是否合理? 3. **需要新增的流程模板:** - 病例对照研究模板? - 横断面调查模板? - 生存分析模板(KM + Log-rank + Cox)? - 诊断试验模板(敏感性、特异性、ROC)? - 一致性分析模板(Kappa、ICC)? --- ## 5. C 类:R 统计工具 **目录:** `r-statistics-service/tools/` ### 作用 每个 R 工具实现一种统计方法的完整计算。系统通过 HTTP API 调用 R 工具,传入数据和参数,返回标准化的结果块(Block-based 输出)。 ### 当前已实现的 12 个 R 工具 | 工具代码 | 方法名称 | 文件 | 内置护栏 | 自动降级 | |---------|---------|------|---------|---------| | `ST_DESCRIPTIVE` | 描述性统计 | `descriptive.R` | NA 安全处理 | — | | `ST_T_TEST_IND` | 独立样本 T 检验 | `t_test_ind.R` | 正态性(Shapiro-Wilk)、方差齐性(Levene) | → Mann-Whitney | | `ST_T_TEST_PAIRED` | 配对 T 检验 | `t_test_paired.R` | 差值正态性(Shapiro-Wilk) | → Wilcoxon | | `ST_MANN_WHITNEY` | Mann-Whitney U 检验 | `mann_whitney.R` | 样本量检查 | — | | `ST_WILCOXON` | Wilcoxon 符号秩检验 | `wilcoxon.R` | 配对数据完整性 | — | | `ST_CHI_SQUARE` | 卡方检验 | `chi_square.R` | 期望频数检查 | → Fisher | | `ST_FISHER` | Fisher 精确检验 | `fisher.R` | 2×2 表检查 | — | | `ST_ANOVA_ONE` | 单因素方差分析 | `anova_one.R` | 正态性、方差齐性(Bartlett) | → Kruskal-Wallis | | `ST_CORRELATION` | 相关分析 | `correlation.R` | 正态性检测 | Pearson↔Spearman 自动 | | `ST_LOGISTIC_BINARY` | 二元 Logistic 回归 | `logistic_binary.R` | 多重共线性(VIF)、EPV 检查 | — | | `ST_LINEAR_REG` | 线性回归 | `linear_reg.R` | 残差正态性、多重共线性(VIF) | — | | `ST_BASELINE_TABLE` | 基线特征表 | `baseline_table.R` | 变量类型自动判断 | gtsummary 自动选方法 | ### 每个 R 工具的标准输出结构 ``` { "success": true, "tool_code": "ST_T_TEST_IND", "blocks": [ { "type": "key_value", "title": "检验结果", "items": {...} }, { "type": "table", "title": "组间比较", "headers": [...], "rows": [...] }, { "type": "chart", "title": "箱线图", "chartType": "boxplot", "base64": "..." }, { "type": "text", "title": "结论", "content": "..." } ], "guardrail_notes": ["正态性检验通过 (Shapiro-Wilk P=0.23)"], "reproducible_code": "# 可复现 R 代码\nlibrary(...)..." } ``` ### 🔍 专家需审核的问题 1. **护栏阈值是否合理?** - 正态性检验:Shapiro-Wilk P<0.05 → 切换非参数,这个阈值是否标准? - 方差齐性:Levene/Bartlett P<0.05 → 使用 Welch 校正,是否合理? - 期望频数:<5 超过 20% → Fisher,标准是否准确? - EPV(Events Per Variable)≥10 的门槛是否需要调整? 2. **统计方法实现是否正确?** - T 检验:Welch T 检验 vs Student T 检验的选择逻辑 - ANOVA 事后比较方法:Tukey HSD vs Bonferroni? - Logistic 回归:变量选择策略(Enter 法 / Forward / Backward)? - 相关分析:自动选择 Pearson vs Spearman 的依据 3. **缺失的 R 工具(需开发新工具时才需要配置):** - Kaplan-Meier 生存分析 - Cox 比例风险回归 - 重复测量 ANOVA - 混合效应模型 - ROC 曲线与 AUC - Kappa/ICC 一致性分析 - 倾向性评分匹配 --- ## 6. D 类:工具参数约束表 **文件:** `backend/src/modules/ssa/config/tool_param_constraints.json` ### 作用 定义每个统计工具对输入参数的**变量类型要求**,用于: - 前端变量选择器的智能提示和⚠️警告标记 - 后端 API 的参数校验(防火墙) - 帮助临床医生正确选择变量 ### 当前已配置(12 个工具,全覆盖) | 工具 | 参数名 | 选择模式 | 类型要求 | 水平限制 | 提示语 | |------|--------|---------|---------|---------|--------| | **T 检验** | `group_var` | 单选 | categorical | maxLevels=2 | T检验要求二分类分组变量 | | | `value_var` | 单选 | numeric | — | T检验要求连续型因变量 | | **Mann-Whitney** | `group_var` | 单选 | categorical | maxLevels=2 | 要求二分类分组变量 | | | `value_var` | 单选 | numeric | — | 要求连续型因变量 | | **配对 T 检验** | `before_var` | 单选 | numeric | — | 前测变量应为连续型 | | | `after_var` | 单选 | numeric | — | 后测变量应为连续型 | | **Wilcoxon** | `before_var` | 单选 | numeric | — | 前测变量应为连续型 | | | `after_var` | 单选 | numeric | — | 后测变量应为连续型 | | **卡方检验** | `var1` | 单选 | categorical | — | 要求分类变量 | | | `var2` | 单选 | categorical | — | 要求分类变量 | | **Fisher** | `var1` | 单选 | categorical | — | 要求分类变量 | | | `var2` | 单选 | categorical | — | 要求分类变量 | | **相关分析** | `var_x` | 单选 | numeric | — | 要求连续型变量 | | | `var_y` | 单选 | numeric | — | 要求连续型变量 | | **Logistic 回归** | `outcome_var` | 单选 | categorical | maxLevels=2 | 要求二分类结局变量 | | | `predictors` | 多选 | any | — | 预测变量 | | | `confounders` | 多选 | any | — | 混杂因素(可选) | | **线性回归** | `outcome_var` | 单选 | numeric | — | 要求连续型结局变量 | | | `predictors` | 多选 | any | — | 预测变量 | | | `confounders` | 多选 | any | — | 混杂因素(可选) | | **ANOVA** | `group_var` | 单选 | categorical | minLevels=3 | 要求3组及以上分组变量 | | | `value_var` | 单选 | numeric | — | 要求连续型因变量 | | **基线表** | `group_var` | 单选 | categorical | minLevels=2, maxLevels=5 | 需要分类分组变量 | | | `analyze_vars` | 多选 | any | — | 选择需要分析的变量 | | **描述统计** | `variables` | 多选 | any | — | 选择需要描述的变量 | | | `group_var` | 单选 | categorical | — | 分组变量(可选) | ### 🔍 专家需审核的问题 1. **水平限制是否准确?** - 基线表 `maxLevels=5` 是否合理?分组变量超过 5 组的情况是否存在? - ANOVA `minLevels=3` 是否排除了两组情况的正确性?(两组应走 T 检验) 2. **类型要求是否完整?** - 相关分析:Spearman 也可以接受有序分类变量,是否需要放宽为 `any`? - Logistic 回归的 `predictors`:是否应区分连续/分类? 3. **提示语是否专业且易懂?** - 面向临床医生,提示语是否够简明? --- ## 7. E 类:LLM Prompt 模板 ### 作用 Prompt 模板控制 LLM 在不同场景下的行为。所有 Prompt 存储在数据库中,通过 seed 脚本初始化。 ### 当前已配置的 12 个 Prompt #### 7.1 核心角色定义 | Prompt Key | 用途 | 统计相关度 | 审核重点 | |-----------|------|-----------|---------| | `SSA_BASE_SYSTEM` | LLM 基础角色定义 | ⭐⭐⭐ | 确认"不做计算"的边界描述是否准确 | **当前内容要点:** - 定义 LLM 为"分析规划者"和"结果解读者" - 严禁生成任何数值结果(P值、均值、标准差等) - 所有计算由 R 引擎完成 #### 7.2 意图分类 | Prompt Key | 用途 | 统计相关度 | 审核重点 | |-----------|------|-----------|---------| | `SSA_INTENT_ROUTER` | 意图分类器 | ⭐⭐ | 6 种意图的定义和典型示例是否准确 | | `SSA_QUERY_INTENT` | 分析意图解析 | ⭐⭐⭐⭐⭐ | Few-Shot 示例、goal 分类、confidence 评分 | **`SSA_QUERY_INTENT` 审核重点:** - **goal 分类是否完整?** 当前:comparison / correlation / regression / descriptive / cohort_study - 是否需要增加:`survival_analysis`, `diagnostic_test`, `agreement`, `meta_analysis`? - **Few-Shot 示例是否覆盖常见场景?** 当前 6 个示例 - 是否需要增加:生存分析、诊断试验、一致性分析的示例? - **Confidence 评分标准是否合理?** - 0.9-1.0 = 明确指定 Y 和 X - 0.7-0.8 = 指定 Y 但 X 需推断 - 0.5-0.6 = 意图清楚但无变量名 - <0.5 = 模糊表达需追问 #### 7.3 对话场景 | Prompt Key | 用途 | 统计相关度 | 审核重点 | |-----------|------|-----------|---------| | `SSA_INTENT_CHAT` | 自由对话 | ⭐ | — | | `SSA_INTENT_EXPLORE` | 数据探索 | ⭐⭐ | 数据质量问题的提醒清单是否完整 | | `SSA_INTENT_CONSULT` | 方法咨询 | ⭐⭐⭐⭐ | 推荐逻辑、前提条件说明是否准确 | | `SSA_INTENT_ANALYZE` | 分析协调 | ⭐⭐⭐ | 方案状态说明的措辞 | | `SSA_INTENT_DISCUSS` | 结果讨论 | ⭐⭐⭐⭐ | P 值解读指导、临床意义讨论准则 | | `SSA_INTENT_FEEDBACK` | 改进反馈 | ⭐⭐⭐ | 诊断问题的分类框架 | #### 7.4 核心任务 Prompt | Prompt Key | 用途 | 统计相关度 | 审核重点 | |-----------|------|-----------|---------| | `SSA_METHOD_CONSULT` | 方法推荐输出格式 | ⭐⭐⭐⭐ | 推荐理由、前提条件、降级方案的描述准则 | | `SSA_ANALYZE_PLAN` | 分析方案解释 | ⭐⭐⭐ | 方案解释的非技术化表达准则 | | `SSA_PICO_INFERENCE` | PICO 结构推断 | ⭐⭐⭐⭐⭐ | Few-Shot 示例、观察性研究处理、Confidence 准则 | | `SSA_REFLECTION` | 论文级结论生成 | ⭐⭐⭐⭐⭐ | 冲突处理准则、方法学说明格式、局限性模板 | ### 🔍 专家需审核的关键 Prompt **优先级 1(最重要):** 1. **`SSA_QUERY_INTENT`** — 决定了系统如何理解用户需求 - Few-Shot 示例是否覆盖临床常见场景? - 队列研究 vs 横断面调查的区分规则 - "统计学意义"这类表达的意图分类是否正确 2. **`SSA_REFLECTION`** — 决定了最终报告的质量 - 冲突处理准则(主分析与敏感性分析不一致时) - 方法学段落的撰写指导 - 局限性的标准表述 3. **`SSA_PICO_INFERENCE`** — 决定了数据理解的准确性 - 观察性研究 intervention=null 的判断准则 - 变量名引用规则 - Confidence 评分准则 **优先级 2:** 4. **`SSA_INTENT_CONSULT`** — 方法咨询的准确性 5. **`SSA_INTENT_DISCUSS`** — P 值和效应量的解读指导 6. **`SSA_METHOD_CONSULT`** — 推荐方法的输出格式 --- ## 8. F 类:意图识别规则 **文件:** `backend/src/modules/ssa/config/intent_rules.json` ### 作用 系统首先用 **关键词规则引擎**(零延迟)判断用户意图。规则无法确定时,才使用 LLM 兜底。 ### 当前已配置的 5 类意图规则 | 意图 | 关键词 | 排除词 | 前置条件 | 优先级 | |------|--------|--------|---------|--------| | **analyze** | 分析、检验、t检验、卡方、回归、比较一下、跑一下、执行分析、做个分析、方差分析、ANOVA、相关分析、logistic、生存分析、Cox、基线表 | 什么方法、用什么、应该怎么、推荐 | 有数据 | 10 | | **discuss** | 什么意思、说明什么、怎么解释、p值、置信区间、结果说明、为什么显著、为什么不显著、临床意义、效应量 | — | 有数据+有结果 | 9 | | **feedback** | 结果不对、不太对、换个方法、重新分析、有问题、不满意、重做 | — | 有数据+有结果 | 9 | | **explore** | 看看、分布、缺失、概况、有哪些变量、数据特征、异常值、样本量、描述一下数据、多少例、变量类型 | — | 有数据 | 8 | | **consult** | 什么方法、用什么、应该怎么分析、推荐方法、分析方案、哪种检验、怎么选、前提条件 | — | 有数据 | 7 | ### 🔍 专家需审核的问题 1. **关键词是否完整?** - analyze 缺少:生存分析相关(生存曲线、KM、hazard ratio)、诊断试验相关(ROC、AUC、敏感性) - consult 缺少:样本量估计、效能分析相关 - discuss 缺少:多重比较校正相关(Bonferroni、FDR) 2. **排除词是否合理?** - 当前 analyze 排除"什么方法、用什么"以避免误判为 consult,但用户说"用 T 检验分析"是否会被误排除? 3. **默认意图 `chat` 是否是最佳兜底?** --- ## 9. G 类:统计工具注册表 **文件:** `backend/src/modules/ssa/config/tools_registry.json` ### 作用 注册所有可用的统计工具元信息,包括工具代码、参数列表、输出类型、前提条件和降级方法。 ### 当前注册的 12 个工具 | 工具代码 | 工具名称 | 分类 | 前提条件 | 降级方法 | |---------|---------|------|---------|---------| | `ST_DESCRIPTIVE` | 描述性统计 | basic | — | — | | `ST_T_TEST_IND` | 独立样本T检验 | parametric | 正态分布 | ST_MANN_WHITNEY | | `ST_MANN_WHITNEY` | Mann-Whitney U检验 | nonparametric | — | — | | `ST_T_TEST_PAIRED` | 配对T检验 | parametric | — | — | | `ST_CHI_SQUARE` | 卡方检验 | categorical | — | ST_FISHER | | `ST_CORRELATION` | 相关分析 | correlation | — | — | | `ST_LOGISTIC_BINARY` | 二元Logistic回归 | regression | — | — | | `ST_FISHER` | Fisher精确检验 | categorical | — | — | | `ST_ANOVA_ONE` | 单因素方差分析 | parametric | 正态分布+方差齐性 | Kruskal-Wallis | | `ST_WILCOXON` | Wilcoxon符号秩检验 | nonparametric | — | — | | `ST_LINEAR_REG` | 线性回归 | regression | — | — | | `ST_BASELINE_TABLE` | 基线特征表 | composite | — | — | ### 🔍 专家需审核的问题 1. **前提条件字段(prerequisite)需要补全** - 多数工具未填写前提条件,但实际 R 代码中有检查 - 建议统一补全,用于向用户展示 2. **category 分类是否需要调整?** - 当前:basic / parametric / nonparametric / categorical / correlation / regression / composite - 是否需要更精细的分类? 3. **配对 T 检验缺少 fallback 声明** - `ST_T_TEST_PAIRED` 的 fallback 应为 `ST_WILCOXON` --- ## 10. 当前状态与待办事项 ### ✅ 已完成(系统可运行) | 项目 | 说明 | |------|------| | 12 个 R 工具全部实现 | 含内置护栏和自动降级 | | 11 条决策表规则 | 覆盖常见分析场景 | | 5 个流程模板 | 含队列研究全套模板 | | 12 个 Prompt 入库 | 含角色定义、意图分类、结论生成 | | 参数约束表全覆盖 | 12 工具 27 个参数 | | 变量可编辑化 | 医生可修改系统默认选择 | ### 🟡 需要专家审核/完善 | 优先级 | 项目 | 预估工作量 | |--------|------|-----------| | P0 | 决策表降级条件审核 | 1-2 小时 | | P0 | R 工具护栏阈值审核 | 2-3 小时 | | P0 | `SSA_QUERY_INTENT` Prompt Few-Shot 审核 | 1 小时 | | P0 | `SSA_REFLECTION` 冲突处理准则审核 | 1 小时 | | P1 | 参数约束表水平限制审核 | 30 分钟 | | P1 | 意图识别关键词补充 | 30 分钟 | | P1 | 队列研究模板步骤审核 | 1 小时 | | P2 | 工具注册表前提条件补全 | 30 分钟 | | P2 | PICO 推断 Prompt 示例审核 | 30 分钟 | ### 🔴 未来扩展(新统计方法) | 统计方法 | 涉及配置项 | 说明 | |---------|-----------|------| | **生存分析** | 新 R 工具 + 决策表 + 流程模板 + Prompt 示例 | Kaplan-Meier + Cox | | **诊断试验** | 新 R 工具 + 决策表 + 流程模板 | ROC/AUC/敏感性/特异性 | | **一致性分析** | 新 R 工具 + 决策表 | Kappa / ICC | | **倾向性评分** | 新 R 工具 + 流程模板 | PSM + 匹配后分析 | | **混合效应模型** | 新 R 工具 + 决策表 | 重复测量/多水平 | | **样本量估计** | 新 R 工具 + 意图规则 | 效能分析 | | **Meta 分析** | 新 R 工具 + 完整子系统 | 固定/随机效应 | --- ## 11. 专家审核工作流程建议 ### 推荐审核顺序 ``` 第一轮:理解架构(30 分钟) ├── 阅读本文档第 1 节(系统架构概览) └── 理解 QPER 四层流水线和配置关系 第二轮:审核统计核心(3-4 小时) ├── A. 决策表 → 确认方法选择规则和降级条件 ├── C. R 工具 → 审核护栏阈值和统计实现 ├── D. 参数约束 → 确认变量类型要求 └── B. 流程模板 → 审核步骤编排逻辑 第三轮:审核 LLM 指导(2-3 小时) ├── E. SSA_QUERY_INTENT → 审核 Few-Shot 和 goal 分类 ├── E. SSA_REFLECTION → 审核结论生成准则 ├── E. SSA_PICO_INFERENCE → 审核研究设计推断 └── F. 意图规则 → 补充统计领域关键词 第四轮:规划扩展(1-2 小时) ├── 确定优先需要新增的统计方法 ├── 为新方法准备决策表规则 └── 为新方法准备 Few-Shot 示例 ``` ### 配置文件位置速查 | 配置文件 | 路径 | |---------|------| | 决策表 | `backend/src/modules/ssa/config/decision_tables.json` | | 流程模板 | `backend/src/modules/ssa/config/flow_templates.json` | | 工具注册表 | `backend/src/modules/ssa/config/tools_registry.json` | | 参数约束 | `backend/src/modules/ssa/config/tool_param_constraints.json` | | 意图规则 | `backend/src/modules/ssa/config/intent_rules.json` | | Prompt 种子 | `backend/scripts/seed-ssa-*.ts` | | R 工具 | `r-statistics-service/tools/*.R` | ### 反馈格式建议 专家审核后,建议按以下格式反馈: ```markdown ## 审核反馈 — [配置项名称] ### 确认正确的部分 - [列出审核通过的规则/配置] ### 需要修改的部分 - [配置项]: [当前值] → [建议值] - [原因说明] ### 需要新增的部分 - [新规则/新工具/新示例] - [适用场景说明] ### 需要讨论的问题 - [有争议或需要权衡的决策] ``` --- **文档版本:** v1.0 **创建日期:** 2026-02-23 **维护者:** 开发团队 **下次更新触发条件:** 专家审核反馈后 / 新增统计工具时