Files
zyt/app/research/ai_full_context_implementation_20260821.md
T
2026-08-22 08:51:35 +08:00

3.4 KiB

AI 全量患者上下文与处方闭环(2026-08-21)

范围

本次改造覆盖 app 医生工作台实际调用的患者级 AI 入口:AI 问诊助手(普通与流式)、AI 智能分析、诊断报告生成、患者纵向报告,以及新增的 AI 处方草稿。客户端不再自行拼装或截断患者资料,统一由服务端在完成诊单权限校验后聚合。

全量上下文覆盖矩阵

必须资料 权威数据源 发给 AI 的内容
当前信息、现病史、病例/病历 tcm_diagnosis(同一稳定患者全部未删除诊单) 结构化字段与完整纵向记录
医生备注 tcm_doctor_note 备注正文、分类、时间及附件
舌苔/舌象 tcm_doctor_note.tongue_images 等附件字段 文字描述与原图文件
报告信息 医生备注、诊单等记录中的报告附件 元数据与报告原文件
每日视频面诊文字 tcm_call_recordtcm_call_transcript_segment 完整转写文本;有录像地址时同时发送视频文件
日常记录 tcm_blood_recordpatient_diet_recordpatient_exercise_record 血糖/血压/用药、饮食、运动等完整明细
聊天与随访 IM/微信消息与关联随访记录 可用的完整文本和附件
正式处方与记录病历 tcm_prescription 处方药味、剂量、用法、处方病历、审核状态

聚合结果不再使用客户端 320/500 字符截断,也不再只取当前诊单。超长纵向报告仍可分段送入模型,但不会在分段前丢弃资料。图片、文档、音频和视频通过上游文件参数发送;无法读取的附件要求模型明确说明,不能臆测其内容。

AI 处方闭环

  1. 医生在 AI 问诊助手选择“AI 生成处方”。
  2. 服务端使用同一份全量纵向上下文生成严格 JSON 处方草稿。
  3. 客户端只接受诊断、药味剂量、用法、辨证与风险说明;患者身份、诊单、预约、医生身份不得由模型覆盖。
  4. 草稿必须进入现有处方编辑器,由医生复核并签名。
  5. 保存后始终进入 audit_status = 0 的待审核状态,沿用现有审核发布流程;AI 不能伪造签名或绕过审核直接生效。

权限与数据完整性

  • 服务端先按“我的患者”权限校验入口诊单,再按稳定患者 ID 聚合同一患者历史。
  • 处方新增时再次校验诊单归属,并由服务端回填患者、预约、医生和病例字段,忽略客户端对权威身份字段的伪造。
  • 处方编辑仅允许创建者,诊单关联不可被改写。
  • 关键处方写接口在菜单配置缺失时不再默认放行。
  • 含文档/音视频的请求不会静默降级为不带附件的文本请求。

验证结果

  • 桌面端 AI/处方相关回归:244 passed。
  • 桌面端重点 AI/仓储/处方回归:116 passed。
  • 服务端 AI 上下文、权限、流式、快照、处方、安全与配置契约测试:通过。
  • 所有本次涉及的 PHP 与 Python 文件语法检查:通过。

部署验收

  • 配置可接收文件输入的 Dify 工作流,并确保模型/工作流能够读取所需附件类型。
  • 使用包含舌象、报告、转写、日常记录和历史处方的真实患者,检查 Dify 调用日志中的文本上下文和 files
  • 让 AI 生成处方,确认医生签名不可省略、保存后为待审核、患者身份不能被请求参数篡改。