根据手术相关病历素材生成规范的手术记录。输入术前小结、术中记录、术后记录等,调用内部医疗大模型,输出结构化手术记录(含手术日期、时间、地点、医生、手术名称、指征、诊断、经过、异常情况、术后情况、签名等 14 个字段)。
编程
unisound-medical-term-normalization
试用将口语化通用医学记录转换为标准化、规范化的医学记录。输入口语化病历文本,调用内部医疗大模型,输出符合临床病历书写规范的标准化记录(术语规范、表述严谨、数据规范、结构规范)。
它能做什么
将口语化通用医学记录转换为标准化、规范化的医学记录。输入口语化病历文本,调用内部医疗大模型,输出符合临床病历书写规范的标准化记录(术语规范、表述严谨、数据规范、结构规范)。
技能文档
医学术语规范化
概述
根据患者提供的口语化通用医学记录(涵盖门诊、住院日常场景),本技能调用内部医疗大模型将其转换为标准化、规范化的医学记录。
医学术语规范化是提升病历质量、确保信息准确传递的重要环节,适用于病历归档、质控审核、医保结算、科研数据统计等场景。转换后需符合临床病历书写规范,术语准确,表述严谨。
数据安全、隐私与伦理声明
- 最小必要原则:仅处理术语规范化所需的病历内容;不要求也不鼓励包含姓名、证件号、手机号、详细地址等身份信息。
- 严格脱敏:在发送至任何模型/接口前,请确保病历已完成脱敏/去标识化处理。
- 不做本地持久化:不将输入与中间结果写入本地持久化存储;本次调用结束即销毁。
- 医疗边界:本技能用于医学记录规范化表达的辅助处理,不构成医疗诊断或治疗建议;请由执业医生复核并承担最终医疗责任。
输入格式
统一入口支持 pdf/doc/docx/xls/xlsx/csv/txt/json。JSON 可包含结构化病历字段;普通病历文件会先预处理为文本。
JSON 输入示例
{
"records": [
{
"section": "患者基本情况",
"content": "男,62 岁,今天早上来门诊看病,说自己最近一周老是觉得胸口闷..."
},
{
"section": "主诉",
"content": "最近一周胸口发闷、喘气费劲,偶尔咳嗽、有白痰..."
},
{
"section": "现病史",
"content": "患者一周前没什么原因就开始胸口闷,活动之后更厉害..."
}
]
}
也支持直接传入完整 prompt:
{
"prompt": "请你作为医学术语规范化专家,将提供的口语化通用医学记录转换为标准化、规范化的医学记录...\n\n待规范化医学记录:\n1. 患者基本情况:男,62 岁...\n"
}
普通文本输入
对于 TXT/PDF/DOC 等格式的口语化病历文件,文件内容会被预处理为纯文本,然后通过命令行参数传入。
快速开始
python doctor/emr-gen/medical-term-normalization/scripts/run.py \
--input data/med-medical-term-normalization/gen_records.json \
--appkey
参数说明
--input PATH:必填。输入 JSON 文件或病历文本文件路径。--input-type auto|pdf|doc|docx|xls|xlsx|csv|txt|json:输入类型,默认auto。--sheet STRING:读取 Excel 时指定 sheet(可选)。--encoding STRING:txt/csv编码,默认utf-8。--base URL:内部大模型 base URL,默认https://maas-api.hivoice.cn/v1。--model STRING:模型名称,默认u2-med。--timeout SECONDS:HTTP 超时秒数;0表示一直等待,默认0。--appkey STRING:必填。内部医疗大模型鉴权 key,使用 Bearer 方式认证。--output-json PATH:可选。保存输出 JSON。--output PATH:可选。输出规范化记录文本文件路径。--save-prepared:可选。保存预处理后的文本,便于调试。
输出约定
- 输出为 UTF-8 文本,符合 6 个标准模块规范:
医学记录(规范化版)
1. 患者基本情况:男性,62 岁,门诊就诊,主诉胸闷、气短伴偶发咳嗽、少量白痰 1 周,既往高血压病史 8 年,长期规律口服降压药物,血压控制可。
2. 主诉:胸闷、气短 1 周,伴偶发咳嗽、少量白痰,无发热、腹痛、腹泻。
3. 现病史:患者 1 周前无明显诱因出现胸闷,活动后加重,休息后可缓解,偶发咳嗽,咳少量白痰,无发热、畏寒,无恶心、呕吐,无腹泻,食欲可,睡眠一般。既往高血压病史 8 年,长期规律口服降压药物,血压控制尚可,否认糖尿病、冠心病等病史。
4. 体格检查:体温 36.8℃,脉搏 76 次/分,呼吸 18 次/分,血压 138/88mmHg;双肺呼吸音粗,可闻及少量湿性啰音;心率齐,各瓣膜听诊区未闻及病理性杂音;腹平软,无压痛、反跳痛;神志清楚,一般情况可。
5. 辅助检查:胸部 CT 示肺部炎症;心电图未见明显异常。
6. 处理建议:1. 给予抗生素口服,每次 1 片,每日 2 次,疗程 5 天;2. 继续规律口服原有降压药物,不可擅自停药;3. 嘱患者多饮水,避免熬夜、受凉;4. 1 周后门诊复诊,若出现胸闷加重、发热等不适,立即就诊。
- 若输出路径父目录不存在,会自动创建。
核心规范化要求
- 术语规范:口语化表述替换为标准医学术语("肚子"→"腹部"、"发烧"→"发热"、"拉肚子"→"腹泻")
- 表述严谨:删除口语化语气词、冗余表述,调整为规范的医学书面句式
- 数据规范:生命体征、检查结果、时间、剂量等数据格式统一规范
- 结构规范:保留原始记录的核心模块顺序,每个模块表述规范、简洁
依赖
前置 Skill
scripts/run.py 依赖 _shared/doc-preprocess 提供的公共文件预处理库(preprocess.py)。
请确保 _shared/doc-preprocess/ 位于 skills/ 根目录下。
运行环境
- Python 3.7+
外部 API
- 内部医疗大模型:
https://maas-api.hivoice.cn/v1/chat/completions- 方法:POST,OpenAI 兼容格式
- 需要传入
--appkey参数进行 Bearer 认证
Python 第三方包(可选,run.py 使用非 txt/json 输入时需要)
| 包名 | 用途 | 必要条件 |
|---|---|---|
openpyxl | 读取 .xlsx 文件 | 输入为 xlsx 时必须 |
pypdf | 提取 PDF 文本 | 输入为 pdf 时必须 |
安装:pip install openpyxl pypdf
仅使用 TXT/JSON 输入时,无需安装任何额外包。
测试命令
从 skills 根目录执行:
# 离线自测(检查输入和构造请求)
python self_tests/med-medical-term-normalization/self_test_medical_term_normalization.py
# 在线自测(调用内部接口)
python self_tests/med-medical-term-normalization/self_test_medical_term_normalization.py --run-network
备注
scripts/run.py是唯一对外入口。- 示例输入放在
example/gen_records.json。
相关技能
根据住院病历生成标准出院记录。输入入院记录、病程记录等,调用内部医疗大模型,输出结构化出院记录(含主诉、入院情况、入院诊断、诊疗经过、出院诊断、出院情况、出院医嘱七个字段)。
医学科普、文档摘要、术语释义、教学案例与诊疗文书辅助生成。通过 --task 选择类型;仅含 `scripts/run.py`,可独立拷贝部署。
医学考试、专科问答、文献阅读理解、名词规范解释与术语同义匹配等知识问答。由调用方传入题目,经内部医疗大模型作答;通过 --task 选择具体场景提示词;仅含 `scripts/run.py`,可独立拷贝部署。
居民健康档案管理。从非结构化就诊记录/体检报告/问卷文本中抽取结构化居民健康档案,符合《国家基本公共卫生服务规范(第三版)》(JSON + 自然语言摘要)。
基层转诊指导。输入患者病情摘要,判断是否需要转诊、紧急程度、目标科室/医院级别,给出转诊前处置和随附材料清单(JSON + 自然语言摘要)。