# **SSA-Pro: 智能统计分析项目开发管理与实施计划** **文档版本:** v1.0 **创建日期:** 2026-02-07 **项目代号:** SSA (Smart Statistical Analysis) **技术架构:** SSA-Pro V4.0 (Sync API \+ Guardrails \+ White-box) **产品目标:** 打造医疗科研领域最严谨、透明、可交付代码的智能统计助手。 ## **1\. 总体里程碑规划 (Milestones Map)** 我们将项目划分为三个阶段,采取 **"走通链路 \-\> 完善体验 \-\> 批量量产"** 的策略。 | 阶段 | 周期 | 核心目标 (OKR) | 交付物 | | :---- | :---- | :---- | :---- | | **Phase 1: 骨架与地基** | **Week 1-2** | **跑通 "Hello World"**。 打通 Node \-\> R 的调用链路,完成数据库与 Docker 环境搭建。 | ✅ R Docker 基础镜像 ✅ 核心数据库表 (tools\_library) ✅ 第 1 个工具 (T检验) 跑通 API | | **Phase 2: 智能与交互 MVP** | **Week 3-5** | **实现 "V2 原型体验"**。 完成 RAG 检索、AI 规划、前端交互卡片,集成 Top 10 核心工具。 | ✅ 完整 Chat 交互界面 ✅ 智能规划 (Planner) 上线 ✅ 10 个高频统计工具可用 | | **Phase 3: 量产与交付** | **Week 6-8** | **覆盖 80% 场景**。 批量迁移剩余工具,完善结果解释 (Critic) 与代码下载功能。 | ✅ 50+ 工具上线 ✅ 代码下载/Word导出功能 ✅ 生产环境部署与压测 | ## **2\. 详细任务清单 (To-Do List by Role)** ### **🏁 Phase 1: 骨架与地基 (Week 1-2)** **目标:** 不追求 UI 美观,只追求 API 通畅。实现 POST /execute 能返回 T 检验的 JSON 结果。 #### **🐹 后端工程 (Node.js)** * \[ \] **DB 设计**:根据 SSA-02 创建 ssa\_schema 及 tools\_library, execution\_logs 表。 * \[ \] **API 存根**:实现 POST /api/v1/ssa/execute 接口,目前仅做转发(Proxy)到 R 服务。 * \[ \] **RAG 基础**:复用 common/rag,创建 ToolSearchService,支持对工具描述的向量检索。 #### **📐 R 工程 (Statistics)** * \[ \] **环境构建**:编写 Dockerfile,基于 rocker/r-ver,安装 plumber, jsonlite, ggplot2 等基础包。 * \[ \] **Wrapper 规范**:根据 SSA-01,编写标准 wrapper\_template.R(含输入解析、错误捕获、Base64输出)。 * \[ \] **首个工具**:迁移并封装 ST\_T\_TEST\_IND (独立样本 T 检验),实现正态性检查逻辑。 * \[ \] **服务启动**:编写 plumber.R 入口文件,挂载 /run 端点。 #### **🎨 前端工程 (React)** * \[ \] **Mock 数据**:根据原型图,构造 PlanCard 和 ResultCard 的 Mock JSON 数据。 * \[ \] **组件开发**:开发基础的 ChatContainer(复用 AIA 模块)和侧边栏框架。 ### **🚀 Phase 2: 智能与交互 MVP (Week 3-5)** **目标:** 用户可以上传数据,AI 能听懂并规划,前端能展示“执行树”和“三线表”。 #### **🧠 AI 策略 (Prompt Engineering)** * \[ \] **Query Rewriter**:调试 Prompt,将用户口语("看差异")转化为术语("T检验")。 * \[ \] **Planner Agent**:根据 SSA-03,调试 DeepSeek-V3 的 Prompt,确保稳定输出符合 Schema 的 JSON 计划。 * \[ \] **元数据注入**:实现动态 Context 组装逻辑(只注入 Top-5 工具定义)。 #### **📐 R 工程 (Statistics)** * \[ \] **Top 10 工具迁移**:完成卡方、ANOVA、相关性、Mann-Whitney、Wilcoxon 等高频工具的封装。 * \[ \] **Trace Log 实现**:在 R 代码中埋点,记录 check\_normality, check\_variance 等步骤的状态。 * \[ \] **代码生成器**:实现 generate\_code() 函数,拼接可独立运行的 R 脚本字符串。 #### **🎨 前端工程 (React)** * \[ \] **卡片组件**:开发 ConfirmationCard (确认卡片) 和 ExecutionTree (执行路径树,支持动画)。 * \[ \] **结果渲染**:开发 ResultCard,支持 Tab 切换 (解读/图表/表格)。 * \[ \] **数据上传**:实现侧边栏文件上传,调用 DC 模块解析 Schema(不传数据给 LLM)。 #### **🐹 后端工程 (Node.js)** * \[ \] **编排逻辑**:实现 Retrieve \-\> Plan \-\> Wait \-\> Execute 的完整业务流。 * \[ \] **数据隐私**:确保传给 LLM 的只有 Schema,传给 R 的才有 Data。 ### **📦 Phase 3: 量产与交付 (Week 6-8)** **目标:** 工具库丰富,报告专业,具备生产环境稳定性。 #### **📐 R 工程 (Statistics)** * \[ \] **批量工厂**:编写脚本扫描旧 R 代码注释,自动生成 tools\_library.json 元数据(Metadata Engineering)。 * \[ \] **长尾工具迁移**:按优先级迁移剩余工具(回归、生存分析、降维等)。 * \[ \] **错误处理**:增强 tryCatch,对常见统计错误返回友好的 Message。 #### **🧠 AI 策略 (Critic)** * \[ \] **Critic Agent**:调试“结果解释” Prompt,确保输出严谨的学术结论(P值解读、置信区间)。 * \[ \] **模拟提问生成**:使用 Qwen-Max 离线生成 500+ 条模拟用户提问,更新向量库,提升检索准确率。 #### **🎨 前端工程 (React)** * \[ \] **三线表组件**:优化表格样式,符合 APA 格式。 * \[ \] **资产交付**:实现 R 代码下载(.zip)和 Word 报告导出(调用 Pandoc 服务)。 * \[ \] **图表预览**:集成 react-photo-view 实现图表点击放大。 #### **🛡️ 运维与测试** * \[ \] **网络隔离**:配置 SAE 网络策略,禁止 R 容器访问外网。 * \[ \] **并发测试**:测试 10 个并发请求下的 R 服务内存占用。 * \[ \] **端到端测试**:验证 20 个典型统计场景的准确性。 ## **3\. 关键依赖检查 (Dependencies)** 在项目启动前,请确认以下资源已就绪: 1. **基础设施**: * \[x\] SAE 环境 (Node.js \+ Python 已就绪,需新增 R 应用) * \[x\] RDS PostgreSQL (pgvector 插件已安装) * \[x\] OSS 存储 (用于存临时图表或大文件) 2. **技术资产**: * \[x\] DC 模块 (Tool C):用于前置数据清洗和 Excel 解析。 * \[x\] 通用 Chat 组件:AIA 模块已沉淀,可直接复用。 * \[x\] LLM 网关:DeepSeek-V3 接口已调通。 ## **4\. 风险管理 (Risk Management)** | 风险点 | 概率 | 影响 | 应对策略 | | :---- | :---- | :---- | :---- | | **R 工具封装进度慢** | 高 | 阻塞上线 | 优先封装 Top 10;编写代码生成脚本辅助封装。 | | **LLM 规划参数错误** | 中 | 运行报错 | 在 R 入口处做强类型校验;前端卡片允许用户人工修正参数。 | | **大文件导致 R 崩溃** | 中 | 服务不可用 | 严格限制上传文件 \< 2MB;SAE 配置内存监控和自动重启。 | | **统计结果解释幻觉** | 低 | 学术误导 | Critic Prompt 强制要求基于 R 输出的 JSON 说话,禁止脑补。 | ## **5\. 每日工作流建议 (Daily Workflow)** 建议采用 **"R 优先,前后端跟进"** 的模式: 1. **R 工程师**:每天封装 2-3 个工具,提交到代码库,并更新 tools\_metadata.json。 2. **后端工程师**:更新向量库数据,确保 LLM 能检索到新工具。 3. **前端工程师**:针对新工具的特殊参数(如生存分析的时间列),微调卡片展示逻辑。 4. **每日站会**:演示昨天封装的工具是否能跑通闭环。