开源的医疗 AI 数据隐私方案:OpenMed,2271 个医疗专用模型,全部跑在你自己的设备上,患者数据一步都不出网,为医疗 AI 团队提供了一个通过医院伦理审批的思路和方案。
一句话介绍:从临床文本里抽出疾病、药物等实体,OpenMed 把病历里的患者身份信息脱敏,能在你自己的机器、iPhone、安卓、甚至浏览器里跑,病人数据不必送上云。
OpenMed:你的数据,你的模型,你的硬件(图源:OpenMed 官方仓库)
01场景对象
手上有真实病历数据、既想用 NLP 又不能把数据送出内网的医院 IT、医疗信息化团队、临床研究者。
它的价值不在模型多聪明,在于把"数据不出院"这件事的路径铺齐了:从服务器到手机到浏览器。
02六个看点
▸ 2271 个专科模型:疾病、药物、解剖、基因、PII,都是领域微调过的 NER,不是通用大模型硬套。HuggingFace 上的 OpenMed 组织现在挂着 2271 个模型和 26 个数据集,官方 README 横幅上写着累计下载 3.4 亿+、安装 1000 万+。
▸ PII 去标识化做到了合规级:覆盖 HIPAA Safe Harbor 全部 18 项标识符,四种脱敏方式(掩码 / Faker 伪造替换 / 哈希 / 日期偏移),还内置了 CPF、BSN、Codice Fiscale、Aadhaar、NPI 这些各国证件号 provider。
实时脱敏:左边原始病历,右边红条盖掉的就是检测出的患者身份信息(图中均为合成数据,图源:OpenMed 官方)
▸ 35 种语言、247 个 PII:中东、南亚、日语、土耳其语都覆盖。官方最新口径是支持 35 个 PII 语言代码,其中 33 条由专门模型支持。
▸ Privacy Filter 直接复用了 OpenAI privacy-filter 架构(gpt-oss 风格稀疏 MoE + 局部注意力 + sink token + RoPE/YaRN),出了 Nemotron-PII 微调版和多语言版,同一套 API 换个 model_name 就行。
▸ 端侧:CPU / CUDA / Apple Silicon MLX 全支持,还有 Swift 包 OpenMedKit,PII 检测能原生跑在 iPhone 上。模型名跨平台自动回退,写一次到处跑——在非 Apple 硬件上,MLX 模型名会自动回落到对应的 PyTorch 检查点。
iPhone 上跑完整流程:输入病历 → 两个引擎并排脱敏对比 → 挑要抽取的临床标签。界面上那句话是"从这里开始,一切都留在这台设备上"(图源:OpenMed 官方)
▸ 离线 / 内网隔离场景可用,Apache-2.0,无需依赖云端模型或接口。
03为什么这个思路重要
医疗 AI 落地最大的坎从来不是模型能力,是数据不能出院的伦理审批。
这个项目的思路是把整条链路压到本地——这才是医院信息科真正签得下字的形态。
04上手
Python 3.10+,装完三行代码就能跑:
from openmed import analyze_textresult = analyze_text( "Patient started on imatinib for chronic myeloid leukemia.", model_name="disease_detection_superclinical",)for entity in result.entities: print(f"{entity.label} {entity.text} {entity.confidence:.2f}")# DISEASE chronic myeloid leukemia 0.98# DRUG imatinib 0.95四条端侧路径官方都给了文档:Apple Silicon 走 MLX、iOS 走 Swift 包 OpenMedKit、安卓走 ONNX Runtime Mobile、浏览器走 Transformers.js。另外还提供 MCP 服务器和带类型的工具注册表,方便接进 agent。
仓库现在 4995 star、622 fork,SDK 是 Apache-2.0,配套论文在 arXiv 2508.01630。注意模型和数据集各自的许可条款不一定跟 SDK 相同,部署前要逐个核。
项目地址GitHub:https://github.com/maziyarpanahi/openmed官网:https://openmed.life/模型目录:https://huggingface.co/OpenMed论文:https://arxiv.org/abs/2508.01630