feat(ai): AI 健康管家 V2 基础设施 — 功能开关 + 角色沙箱准备 + 体征页 AI 趋势分析

- 迁移 000153: 新增 ai_feature_flags / ai_usage_daily / ai_suggestion_feedback 三张表,
  ai_tenant_configs 增加 billing_enabled 列, seed 12 个功能开关 + 2 个管理权限码
- 新增 FeatureFlagService: 5 分钟缓存 + DB 回退 + 即时更新
- VitalSignsTab 添加 AI 趋势分析按钮 (SSE 流式)
- 新增 3 个 Entity (ai_feature_flags / ai_usage_daily / ai_suggestion_feedback)
- AiState 扩展 feature_flags 字段
- 设计规格 + 讨论记录文档

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
iven
2026-05-18 22:55:40 +08:00
parent d623f8b2ff
commit bf37acc681
18 changed files with 2065 additions and 68 deletions

View File

@@ -0,0 +1,119 @@
# AI 功能战略方向发散式探讨
> 日期: 2026-05-18 | 参与者: 用户 + Claude
## 背景
HMS 健康管理平台综合评分 6.8/10功能完整度 87%,但六维度分析评价 AI 为"有弹药没上膛"——底层能力完整3 Provider + SSE 分析 + Copilot 引擎 + Agent Phase 0用户触达断裂4 个 SSE 端点无 UI 入口、客服"小华"仅为简单问答)。
在 AI Agent Phase 0 刚完成之际,对 AI 功能的五个维度进行全面发散式探讨,确定战略方向。
## 讨论维度与决策
### 维度 1产品定位 — 统一入口"AI 健康管家"
**结论:统一入口"AI 健康管家"+ 分级沙箱隔离**
- 前端统一为一个入口——用户感知是"问小华"
- 后端按角色创建隔离沙箱:患者沙箱、医护沙箱、管理沙箱
- 每个沙箱有独立的 Tool 白名单、数据范围、Prompt 策略
- 统一体验 ≠ 统一权限
**数据安全机制5 层防护):**
| 风险层 | 防护措施 |
|--------|----------|
| 跨患者 | Tool 自动注入当前用户 patient_idLLM 无法伪造 |
| 跨租户 | session_id + tenant_id 双过滤,沿用现有中间件 |
| 跨角色 | ToolRegistry.get_allowed_tools(role) 硬过滤,非 Prompt 约束 |
| 越权 Tool | 后端按 role 限定可用 Tool 集合 |
| Prompt 注入 | 输出层关键词检测 + 输入层 sanitize |
**三个角色沙箱定义:**
- **患者沙箱**:查自己体征/化验、科普知识、预约挂号。数据范围仅自己、输出脱敏。
- **医护沙箱**查所管患者、AI 分析、风险评分、文书辅助。数据范围本科室患者、含诊断信息。
- **管理沙箱**:成本统计、用量趋势、效果分析、功能开关。数据范围本机构汇总、无个体数据。
### 维度 2数据智能闭环 — 先打通最短路径
**结论:先 AAI→用户可见同步设计 B 数据结构C 远期愿景**
- **A1-2 周)**Web 化验报告页"AI 解读"按钮 + 小程序体征页"AI 趋势分析"按钮。复用现有 SSE 端点,前端 3-5 天。
- **B2-4 周)**Copilot 每日扫描高风险患者 → 生成洞察 → 消息中心推送 → 患者"采纳/忽略/咨询医生"反馈 → 数据写入 `ai_suggestion` 度量。
- **C3-6 个月)**:洞察 → 行动 → 效果追踪 → 模型优化的完整飞轮。
### 维度 3多角色 AI 体验 — 角色 Prompt 为基础设施
**结论A 必做B 医护端最有价值C 管理看板纳入第一阶段**
- **A2-3 周)**system_prompt 根据 user_role 动态组装。患者版温和通俗带情绪安抚、医护版专业简洁引用数据来源、管理版汇总对比。Tool Registry 按角色过滤。
- **B3-5 周)**Web 后台右侧常驻 AI 侧边栏。查看患者档案时 AI 自动总结、随访页 AI 辅助生成小结。上下文感知的智能摘要,非对话模式。
- **C**:合并到 AI 管理看板(见维度 5 + 跨维度决策)。
### 维度 4技术架构 — 云端部署 + pgvector RAG + 在线/本地语音
**结论:纯云端部署,不调本地 LLM**
| 能力 | 技术选型 |
|------|----------|
| LLM 推理 | Claude / OpenAI云端Ollama 仅开发测试 |
| RAG 知识库 | pgvector 扩展 PostgreSQL + 在线 Embedding APItext-embedding-3-small |
| 语音识别 | 在线Whisper API / 讯飞降级Whisper.cpp (CPU) |
| 语音合成 | 在线OpenAI TTS / 讯飞降级edge-tts (免费) |
RAG 架构:知识文档 → 在线 Embedding API → pgvector 存储 → 用户提问 → 同款 Embedding → pgvector 语义检索 → Top-K 注入 Agent 上下文。
语音方案:默认在线 API质量好、延迟低降级时 CPU 本地(零成本、可接受延迟)。
### 维度 5 + 跨维度AI 用量付费 + 综合管理看板
**结论:按机构(租户)颗粒度用量付费,管理看板与 AI 能力同步搭建**
**计费模式:**
- 按机构月度 Token 用量阶梯计价
- 基础 AI本地规则引擎、Copilot 风险评分)不消耗 Token
- 高级 AILLM 对话、化验解读、趋势分析)消耗 Token
- 机构管理员可设预算上限和预警线
**管理看板模块:**
| 模块 | 内容 |
|------|------|
| 用量总览 | 调用量趋势、按角色/功能分布、峰值均值 |
| 成本分析 | Token 消耗、按 Provider/功能类型、日/周/月、预算预警 |
| 效果追踪 | 分析完成率、建议采纳率、异常检出率、人工干预率 |
| 功能开关 | AI 分析(全局+按类型、AI 聊天(全局+按角色、AI 预警推送、RAG 知识检索、语音交互、Copilot 辅助 |
| 配置管理 | Provider 配置、配额管理、Prompt 模板管理、知识库管理、告警阈值 |
**功能开关粒度:** 全局开关 + 按子功能开关,支持关闭单个功能而保留其他。
## 实施优先级共识
| 阶段 | 内容 | 工期 |
|------|------|------|
| **Phase 1A** | 打通 AI→用户可见Web 化验 AI 解读按钮 + 小程序体征趋势分析按钮) | 1-2 周 |
| **Phase 1B** | 角色分级 Prompt 策略 + Tool 权限沙箱 | 2-3 周 |
| **Phase 1C** | AI 管理看板(用量/成本/效果/开关) | 2-3 周 |
| Phase 1A/1B/1C 同步推进1C 与 1A/1B 并行开发 |
| **Phase 2A** | 医护端 AI 助手面板(侧边栏 + 患者摘要 + 随访辅助) | 3-5 周 |
| **Phase 2B** | 洞察→推送→反馈闭环Copilot 每日扫描 + 消息推送 + 采纳反馈) | 2-4 周 |
| **Phase 3A** | RAG 知识库pgvector + Embedding API + 语义检索 Tool | 3-5 周 |
| **Phase 3B** | 语音交互(在线为主 + CPU 降级) | 3-4 周 |
| **远期** | 主动关怀引擎飞轮、多 Agent 协作、领域微调 | 6-12 个月 |
## 与现有 Agent 计划的关系
本次讨论的方向在已有 AI Agent 突破口设计(`docs/superpowers/specs/2026-05-18-ai-agent-breakthrough-design.md`)基础上扩展:
- Agent Phase 1-3 的 Tool 扩展、会话持久化、行动类 Tool **按原计划推进**
- 新增角色沙箱机制、管理看板、AI→UI 触点打通、RAG 知识库
- 新增管理看板需要:`ai_feature_flags` 表(功能开关)、`ai_usage_daily` 聚合表(用量统计)
- 计费相关:`ai_billing_records`Token 消耗记录)、`ai_tenant_quotas` 扩展(月度预算)
## 待定事项
1. Embedding API 选型OpenAI text-embedding-3-small vs 国内智谱/阿里)
2. 语音服务商选型(讯飞 vs 阿里 Paraformer vs Whisper API
3. 管理看板是独立页面还是嵌入现有设置中心
4. AI 用量付费的阶梯定价具体方案