从任务出发
场景假设:就诊者准备沟通材料,或诊后记录反馈供后续交流。演示与模型测试仅使用虚构句子,没有目标患者试用或医生评审。
模拟原话提取草稿 / 出处校验人工核对字段版本保存确认 / 更正 / 导出
| 优先级 | 需求 | 依据 |
|---|---|---|
| Must | 四类信息状态 | 未知、否认、已提供、未提供不能混为一类 |
| Must | 局部更新与来源证据 | 只补充日期时不能清空过敏等旧字段 |
| Must | 确认绑定版本 | 内容变化使旧确认立即失效 |
| Should | AI提取后可编辑草稿 | 降低整理负担但不自动替用户确认 |
| Won’t | 诊断、处方、紧急分诊 | 超出资料整理边界,也没有临床验证 |
比较过的方案与取舍
| 选项 | 主要问题 | 本版选择 |
|---|---|---|
| 自由文本覆盖整份摘要 | 可能因本轮输入不完整而丢失旧信息 | 按字段局部更新,未更新字段保持不变 |
| 模型决定已确认 | 模型可能把含糊回应解释为认可 | 确认是显式操作,SQLite版本号保证一致性 |
| 模型抽取不验证来源 | 可能把推测写成已知事实 | 每项source必须是输入原文连续子串,再由用户核对语义 |
用户完成任务的过程
- 输入模拟原话
- AI提取候选字段,保留原话出处
- 人工核对状态与摘要内容
- 保存版本并确认
- 更正或补充后重新核对,导出沟通记录
可操作界面与验收条件

实际界面截图。公开站点用于展示案例,程序在本机运行。
| 功能 | 交互与规则 | 验收 |
|---|---|---|
| M01 字段模型 | chief/onset/duration/allergy/medication/followup均包含state/value/source | 已提供内容必须有值;非未提供状态须有来源 |
| M02 更正 | 修改任何字段后清空confirmed_revision,保留其他字段与事件历史 | 空摘要不能确认;过期版本不能覆盖新记录 |
| M03 草稿 | 模型提取只填表,不直接保存;原话出处校验失败则停止 | unknown不能写成denied;人工核对后保存 |
完成证据与一次关键迭代
本项目功能检查:5/5
历史原型曾在补充日期后丢失其他字段,根因是整理节点没有收到已有记录。本版将已有记录作为明确的服务端状态,以字段补丁更新,并用版本检查阻止旧页面覆盖新内容。
| 类别 | 指标 | 验证状态 |
|---|---|---|
| 业务目标 | 整理时间、遗漏信息数、重复沟通次数 | 需要目标使用者与专业人员研究,尚未验证 |
| 一致性指标 | 未改字段保留、确认失效、冲突阻止 | 本机功能测试覆盖这些状态转换 |
| 模型约束 | 信息状态准确性与出处可定位 | 3条合成句子分别检查unknown/denied/reported |
| 隐私约束 | 本地存储与外部调用范围 | 仅本机SQLite;演示使用虚构信息,不采集真实患者数据 |
范围限制与面试追问
原话匹配只能证明出处存在,不能证明医学真实性或抽取语义正确。没有医疗系统对接、临床决策、真实患者或医生评价。
确认后是不是就准确了?
确认代表用户认可该版本整理内容,不是医学验证。来源可追溯也不等于原话客观正确。
为什么否认不能扩大为没有问题?
否认对应特定字段,例如无药物过敏不能推断没有其他健康问题。信息范围必须保持。
如何防止多轮信息丢失?
持久化已有记录,更新只应用明确字段补丁;回归验证补充某字段时其他字段不变。
并发修改怎么处理?
请求携带expected revision;后台在事务中比较当前版本,过期则拒绝并提示刷新,避免静默覆盖。
来源与证据
公开产品资料用于理解能力范围,没有假称开展竞品付费实测。
- AHRQ QuestionBuilder · https://www.ahrq.gov/questions/question-builder/index.html · 面向就诊准备与沟通的问题整理工具,作为场景参考,不用于支持临床有效性。
- MyChart · https://www.mychart.org/l/en-us/ · 患者健康信息与沟通入口;本项目不具备医院数据集成能力。