name: health-report-interpreter description: "体检翻译官 —— 把看不懂的体检报告翻译成人话。适用场景:解读体检报告、化验单、影像结论,对比多年体检数据追踪趋势变化。触发词:体检报告、体检翻译官、解读体检、化验单、化验报告、体检解读、体检结果、指标解读、跨年对比。本技能将医学术语转译为通俗语言,异常项自动分级标记,检测跨年趋势(即使数值仍在正常范围内),生成复查时间轴和就诊问题清单。" agent_created: true
把医学黑话翻译成人话,让每份体检报告都成为可行动的健康计划。
体检翻译官是一名专职"翻译"——把化验单上的箭头、影像报告里的术语、医生小结中的缩写,全部转译成你能听懂、能用上的语言。不堆砌医学知识,只做一件事:让你看完报告知道下一步该做什么。
核心流水线:PDF 文本提取 → 指标通俗化解读 → 多维度分析(严重度分级、趋势检测、组合预警)→ 结构化输出报告(总览仪表盘 + 异常解读 + 复查时间轴 + 就诊问题清单)。
核心价值: 把体检从"扫一眼没红字就扔抽屉"变成"看懂每一个指标,知道下一步该做什么,带着正确的问题走进诊室"。每次解读产出两份 PDF:一页纸摘要(快速浏览/打印)和详细报告(带去就诊)。
体检报告属于高度敏感的个人隐私数据。本技能的执行必须严格遵守以下规则:
"帮我翻译一下这份体检报告" + 附上 PDF 文件
体检翻译官会自动提取所有指标,逐项翻译,标出哪些需要关注、哪些需要复查、哪些只是虚惊一场。
"对比我去年的体检报告,看看有哪些趋势变化"
翻译官会自动对齐同一指标跨年数据,找出"虽然还在正常范围但逐年恶化"的隐藏信号——这才是大多数人漏掉的关键信息。如果有更早年份的报告也一起提供,趋势分析会更精准。
"只帮我生成一份问医生的问题清单"
如果你已经看过报告、知道异常项目,只需要一份"带什么去问医生"的清单,翻译官可以跳过完整解读直接出。
| 输入类型 | 提供方式 | 说明 |
|---|---|---|
| PDF 报告 | 上传文件或提供路径 | 推荐方式,文本型 PDF 最佳 |
| 图片/截图 | 上传化验单或报告页截图 | 适用于单页化验单或影像结论 |
| 粘贴文本 | 复制粘贴报告文字内容 | PDF 不可用时的备选方案 |
| 多年报告 | 一次性提供所有文件 | 才能开启跨年趋势分析 |
每次解读产出 两个 PDF 文件,分别满足不同场景:
📄 文件一:一页纸摘要(适合快速浏览、打印随身携带、分享给家人) - 总览仪表盘(四项核心数字) - P1/P2/P3 异常项分级速览 - 核心指标跨年趋势简表 - 好消息汇总 - 复查时间轴
📄 文件二:详细解读报告(适合仔细阅读、带去就诊) 1. 总览仪表盘 —— 一目了然:各系统正常/关注/异常项数量 2. 异常项逐项解读 —— 通俗解释 + 严重度分级(P1=尽快就诊、P2=安排复查、P3=下次体检关注)+ 跨年趋势 + 建议科室 + 复查时间 3. 趋势预警 —— 虽然还在"正常范围"但逐年恶化的指标(这些是大多数人忽略的隐藏信号) 4. 复查时间轴 —— 按紧急程度排列的复查排期表 5. 就诊问题清单 —— 直接拿去问医生的现成问题,提升沟通效率
| 场景 | 建议 |
|---|---|
| 年度体检 | 每年跑一次完整解读,与往年对比 |
| 新发现异常 | 聚焦对应系统,生成就诊问题清单 |
| 慢性指标跟踪 | 仅追踪相关指标跨年变化 |
严格按照以下阶段顺序执行。仅在输入数据明确不支持某阶段时跳过(如只有一年数据则跳过趋势分析)。
目标: 从提供的报告中提取所有指标数据。
步骤:
1.1 判断输入类型 —— PDF 文件、图片,还是粘贴文本。
1.2 提取 PDF 文字 —— 使用 scripts/extract_pdf.py 提取:
python scripts/extract_pdf.py <pdf文件路径> --output text
多份报告分别运行。如用户只提供特定页码,使用 --pages 参数。
1.3 处理扫描件 PDF —— 如果 extract_pdf.py 返回空或极少文字(说明 PDF 是图片型扫描件),则改用 Read 工具直接读取 PDF(Read 工具支持多模态视觉识别图片型 PDF)。注意:扫描件 PDF 解析时间更长,建议优先使用可搜索文字版 PDF。
1.4 解析指标数据 —— 从提取的文字中识别: - 指标名称(标准化异名:如"谷丙转氨酶"同样识别为 ALT、丙氨酸氨基转移酶) - 检测值和单位 - 参考范围(如报告上有标注) - 报告日期 - 往年数值(如有跨年对比)
1.5 区分核心页与科普页 —— 大多数体检报告中约 60% 内容为健康科普和说明文字。聚焦提取含有实际检测数据、综合结论和医生建议的页面,跳过通用健康宣教页面。
目标: 将每一个指标翻译成通俗人能听懂的解释。
路径一:内置知识库(优先)
加载 references/indicators.tsv。该文件涵盖 10 大系统、40+ 常见指标,每条包含:
- 正常参考范围(区分男女的已标注)
- 偏高/偏低的通俗解释
- 临床意义说明
将提取的指标与知识库一一匹配,匹上的直接生成解读。
路径二:网络搜索补充
当某个指标在 references/indicators.tsv 中未找到时(罕见或不常见项目),使用 WebSearch 搜索:
搜索词格式:"<指标名称> 体检指标 正常范围 临床意义"
搜索结果生成的解读必须在输出中标注 [网络搜索]。提醒用户以报告上印的参考范围为准进行交叉核对。
目标: 超越单点数值,挖掘真正的健康信号。
3.1 异常分级(三色标记系统)
应用 references/trend-rules.md 中的规则:
| 级别 | 标记 | 定义 | 行动 |
|---|---|---|---|
| P1 🔴 | 紧急 | 显著异常或组合预警阳性 | 尽快就诊对应科室 |
| P2 🟠 | 关注 | 轻度异常,非紧急 | 3-6 个月内安排复查 |
| P3 🟡 | 观察 | 接近参考范围边界或孤立轻度异常 | 下次体检时关注 |
3.2 跨年趋势检测
应用 references/trend-rules.md 中的算法:
- 持续上升/下降 — 连续多年同一方向变动
- 同比显著变化 — 较上年变化超过阈值百分比
- 逼近边界 — 虽在正常范围内但距上下限不到 10%
- 反弹 — 之前好转后又恶化(通常提示生活方式反复)
- 持续异常 — 多年间一直处于轻度异常状态未改善
3.3 组合分析
应用 references/trend-rules.md 中的分析规则:
- 肝功能组合(谷丙转氨酶 + 谷草转氨酶 + γ-谷氨酰转肽酶)
- 肾功能组合(肌酐 + 估算肾小球滤过率 + 尿酸)
- 心血管风险组合(低密度脂蛋白 + 高密度脂蛋白 + 甘油三酯 + 体重指数 + 血压 + 血糖)
- 代谢综合征组合
组合阳性一律升级为 P1 级别。
目标: 产出两份 PDF —— 一页纸摘要(快速浏览) + 详细解读报告(带去就诊)。
4.1 生成详细解读报告 HTML —— 加载 assets/output-template.html,将分析结果填入模板各占位符:
- 仪表盘卡片 —— 检测总项数、正常项数、关注项数、异常项数
- 系统总览表 —— 按身体系统分类统计
- 异常项卡片 —— 每项使用 .item 容器,按 priority-1/2/3 分类,包含:指标名称+通俗名称、检测值 vs 参考范围、通俗解释、跨年趋势(如有)、建议科室+复查时间
- 趋势预警 —— 容易被忽视但值得关注的趋势项
- 复查时间轴 —— 按紧急到常规排序(P1 优先,其次 P2,最后 P3)
- 就诊问题清单 —— 5-10 条可直接使用的就诊问题
保存为 outputs/体检报告解读_当前年度.html
4.2 生成一页纸摘要 HTML —— 加载 assets/summary-template.html,填入精简内容:
- 四项核心数字仪表盘
- P1🔴/P2🟠/P3🟡 分层异常项速览(仅含指标名、数据、行动建议,不含详细解释)
- 核心指标跨年趋势简表(仅 8-12 项最关键指标,迷你表格格式)
- 好消息汇总(好转或稳定的指标)
- 复查时间轴(紧凑版)
保存为 outputs/体检报告摘要_当前年度.html
4.3 转为 PDF —— 使用 Playwright + 系统 Chrome 将两份 HTML 转为 PDF:
优先尝试 Chrome 路径:C:/Program Files/Google/Chrome/Application/chrome.exe,如不存在则尝试 Edge:C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe 或 C:/Program Files/Microsoft/Edge/Application/msedge.exe。
import asyncio
from playwright.async_api import async_playwright
async def html_to_pdf(html_path, pdf_path):
async with async_playwright() as p:
browser = await p.chromium.launch(executable_path=CHROME_PATH, headless=True)
page = await browser.new_page()
await page.goto('file:///' + html_path.replace('\\', '/'), wait_until='networkidle')
await page.pdf(path=pdf_path, format='A4', print_background=True,
margin={'top':'12mm','bottom':'12mm','left':'10mm','right':'10mm'})
await browser.close()
asyncio.run(html_to_pdf(html_in, pdf_out))
两份 HTML 各执行一次转换,产出两个 PDF。
4.4 呈现结果 —— 使用 present_files 将两份 PDF 一并呈现给用户,一页纸摘要排前面(优先预览)。
每次解读必须做到:
PDF 体检报告文字提取脚本。支持按页码范围提取和 JSON 格式输出。可直接执行,无需加载到上下文。
涵盖 10 大系统、40+ 常见体检指标的知识库。包含正常参考范围(区分男女)、异常值的通俗解释和临床说明。每次解读时必须加载。
趋势检测算法、变化阈值、组合分析规则和严重度分级标准。进行跨年对比或发现异常项时加载。
最终解读报告的 HTML 模板。包含三色严重度卡片、仪表盘、系统总览表、复查时间轴和就诊问题清单的 CSS 样式。将模板中的占位符({{PLACEHOLDER}} 格式)替换为实际分析结果。
7w4.net小葱技能站收录全网优质技能,值得收藏。
一页纸摘要的 HTML 模板。紧凑 A4 单页设计(210mm×297mm),包含仪表盘卡片、P1-P3 分层速览、核心趋势迷你表格、好消息汇总和紧凑版复查时间轴。将占位符替换为分析结果后转为 PDF。
这个体检翻译官Skill质量扎实,核心功能完整——能把PDF里的医学术语转成通俗解释,还能做跨年趋势对比和多维度健康预警。隐私保护做得很到位,报告数据不会上传云端。三色分级系统让异常指标一目了然,输出的就诊问题清单也很实用。美中不足的是缺少示例演示,新用户可能不知道该提供什么格式的输入;另外有些医学术语的解释不够通俗。总体来说,这是一个功能明确、隐私安全有保障的健康管理工具,适合需要定期解读体检报告的用户使用。