药物不良反应识别(给出建议)
概述
对疑似药物不良反应(ADR)个案,逐一评估每种可疑药物的因果关联性,同时输出国内标准和WHO-UMC标准的评价等级,生成可视化评价矩阵和事件时间线,并输出包含临床建议的Word评价报告。
本skill在"药物不良反应识别"基础评价能力之上,增加以下增强功能:
- 生成SVG可视化评价矩阵(6种药物×5维度,颜色编码)
- 生成SVG事件时间线(用药-事件时间关系及混杂因素标注)
- 生成完整Word评价报告(三线表格式,含临床建议)
- 给出停药/换药、监测、排查他因、ADR上报等临床参考建议
触发条件
当用户(尤其是临床药师/医师)提供病例信息并要求分析药物不良反应原因、开展因果关联性评价、识别可疑药物并给出建议时触发。
典型触发语句:
- "分析这个病例的肝功能异常是哪种药物导致的,并给出建议"
- "帮我做ADR因果关联性评价,生成报告"
- "这个患者的不良反应跟哪个药有关,怎么处理"
- "药源性肝损伤分析,要双标准评价"
- "不良反应上报前评估,给出临床建议"
评价工作流
步骤1:案例信息梳理
提取并结构化以下信息,以表格形式呈现:
- 患者基本信息(性别、年龄、基础疾病、过敏史)
- 用药清单(药品名称、剂量、给药途径、频次、起止时间)
- 不良事件描述(发生时间、临床表现、严重程度、实验室指标变化)
- 既往病史与基线状态(术前/用药前相关指标是否正常)
- 混杂因素(手术、麻醉、合并疾病、合并用药、输血等)
步骤2:可疑药物器官毒性文献回顾
对每种用药,评估其与不良事件的已知关联性:
- 该药是否有文献报道可引起此类不良反应
- 药品说明书 / LiverTox / 文献个案报道是否支持
- 典型起病时间是否与实际时间窗吻合
- 毒性机制分类(剂量依赖型 vs 特异质型)
- 发生率数据(如可获得)
参考 references/常见药物器官毒性参考.md 获取常见药物毒性信息。对于未收录的药物,应主动检索文献补充。
将文献回顾结果以表格呈现,按肝毒性/肾毒性/心脏毒性等器官维度分类标注。
步骤3:逐药5维度评价
对每种可疑药物,逐一评估以下5个维度。两个标准共享同一分析框架,仅表述和判定逻辑略有差异:
| 维度 | 国内标准表述 | WHO-UMC表述 |
|---|---|---|
| 1.时间关联性 | 用药与ADR出现有无合理时间关系? | 时间关联性:用药与ADR发生时间顺序合理性,停药后反应变化 |
| 2.已知ADR | 反应符合该药已知ADR类型? | 反应类型:是否符合药物已知药理毒理特征、有文献依据 |
| 3.去激发 | 停药/减量后反应是否消失或减轻? | 去激发:停药/减量后不良事件是否缓解消退 |
| 4.再激发 | 再次使用可疑药品是否再次出现同样反应? | 再激发:再次使用后同类ADR是否复现 |
| 5.排除他因 | 反应是否可用合并用药、病情进展、其他治疗解释? | 排除其他原因:排除原发病、合并用药、合并疾病等 |
符号标注规则:
- + 肯定(支持ADR关联)
- ± 难以肯定或否定(证据不明确)
- ‑ 否定(不支持ADR关联)
- ? 不明(信息缺失,无法判断)
关键原则: 信息不完整时标注为"?",不可臆断。去激发和再激发数据常缺失,这是限制评价等级升级的最常见原因。
详细判定标准参见:
- references/国内ADR评价标准.md — 6等级定义与5问题判定矩阵
- references/WHO-UMC评价标准.md — 6等级定义与5要素判定矩阵
步骤4:输出双标准因果关联等级
根据5维度评估结果,分别给出两个标准的等级:
国内标准(6等级): 肯定 / 很可能 / 可能 / 可能无关 / 待评价 / 无法评价
WHO-UMC标准(6等级): Certain / Probable / Possible / Unlikely / Unrelated / Unassessable
对每种药物给出简短判定理由(1-2句话),说明定级依据。
步骤5:生成可视化评价矩阵(show_widget)
使用 show_widget 工具生成SVG评价矩阵,调用前需先加载 read_me(modules: diagram)。
评价矩阵图设计要点:
- 每种药物一行,展示5维度评估结果(Q1-Q5)
- 颜色编码:红色=+(#F7C1C1填充/#E24B4A边框),橙色=±(#FAC775填充/#BA7517边框),绿色=‑(#C0DD97填充/#639922边框),灰色=?(#D3D1C7填充/#888780边框)
- 双标准最终等级以色块标注(可能/Possible=琥珀色系,可能无关/Unlikely=青色系)
- 底部标注首要怀疑药物、次要怀疑药物、低怀疑药物
- 底部标注关键限制和备注声明
- SVG viewBox以"0 0 680"开头,width="100%"
事件时间线图设计要点:
- 水平时间轴标注术前基线、手术/用药开始、不良事件发生时间
- 标注用药-事件间隔天数
- 标注混杂因素(手术创伤、麻醉、缺血再灌注、双NSAID联用等)
- 底部附时间窗符合性分析(逐药对照典型起病时间)
- 颜色编码与评价矩阵一致
可视化要求:
- 使用浅色主题(light theme),背景透明
- 颜色编码全程一致:红(+)/橙(±)/绿(‑)/灰(?)
- SVG viewBox以"0 0 680"开头
步骤6:生成Word评价报告
使用 scripts/generate_adr_report.py 脚本生成完整Word报告。该脚本基于python-docx,采用三线表格式(仅顶线、表头下线、底线)。
报告结构:
1. 标题
2. 病例信息梳理(患者基本信息表、用药清单表、不良事件描述)
3. 可疑药物器官毒性文献回顾(表格)
4. 国内标准逐药5维度评价(评价矩阵表 + 逐药分析)
5. WHO-UMC标准逐药5要素评价(评价矩阵表 + 逐药分析)
6. 双标准因果关联等级汇总表
7. 无法升级至更高等级的原因分析
8. 临床参考建议(停药/换药方案、监测方案、需排查的其他病因、ADR上报建议)
9. 可补充以提升评价等级的关键信息清单
10. 备注(声明本评估属概率关联性评价,不等同临床诊断;再激发存在伦理风险)
脚本使用方式:
脚本为模板代码,需根据实际病例数据修改以下内容:
- 患者基本信息(info列表)
- 用药清单(drugs列表)
- 不良事件描述
- 肝毒性文献回顾数据(tox_data列表)
- 国内标准5维度评价数据(cn_data列表)
- WHO-UMC标准5维度评价数据(who_data列表)
- 双标准汇总数据(summary_data列表)
- 逐药评价分析文字
- 无法升级原因分析
- 临床参考建议
- 可补充信息清单(info_data列表)
脚本依赖:python-docx(已预装于managed venv)
运行命令:"C:/Users/华为/.workbuddy/binaries/python/envs/default/Scripts/python.exe" scripts/generate_adr_report.py
步骤7:综合判定与临床建议
输出内容包括:
- 可疑药物排序表:按可疑程度从高到低排列,标注双标准等级和关键依据
- 无法升级至更高等级的原因分析:如多药并存、基线异常、手术混杂、去激发缺失、再激发未实施等
- 临床建议:
- 停药/换药方案(优先停用最可疑药物)
- 监测方案(监测指标、频率)
- 需排查的其他病因
- ADR上报建议 - 可补充以提升评价等级的关键信息清单
输出格式要求
- 选择评价体系(国内标准 / WHO-UMC标准)
- 逐条对照对应标准全部评价要素开展个案拆解分析
- 输出最终因果关联等级
- 给出简短判定理由
- 根据判定结果给出临床参考建议
- 备注:本评估属于概率关联性评价,不等同临床诊断;再激发存在伦理风险,临床一般不主动实施
重要注意事项
- 评价基于现有病例信息,信息不完整时标注为"?",不可臆断
- 术前/用药前基线异常是重要混杂因素,必须在分析中体现
- 多药联用时,应识别是否存在不合理联用(如双NSAID联用)并明确指出
- 两个标准的5个维度本质相同,但判定逻辑有细微差异:国内标准更强调"引发ADR的药品不止1种"时降级,WHO-UMC更强调"再激发阳性"为升级至Certain的关键证据
- 去激发数据是升级"很可能/Probable"的必要条件;再激发阳性是升级"肯定/Certain"的必要条件
- 再激发存在伦理风险,临床一般不主动实施,评价中不应建议进行再激发试验
- 最终结论须包含声明:本评估属于概率关联性评价,不等同临床诊断
- 可视化输出须匹配当前IDE主题(浅色主题使用浅色背景+深色文字)
- Word报告须采用三线表格式(仅3条横线:顶线、表头下线、底线)
参考文件
references/国内ADR评价标准.md— 国内标准6等级完整定义、5问题判定矩阵、符号说明references/WHO-UMC评价标准.md— WHO-UMC标准6等级完整定义、5要素判定矩阵references/常见药物器官毒性参考.md— 常见药物肝毒性/肾毒性/心脏毒性/血液毒性参考表scripts/generate_adr_report.py— Word评价报告生成脚本模板(基于python-docx,三线表格式)