maziyarpanahi/openmed
Local-first healthcare AI: clinical NER and HIPAA PII de-identification on hardware you control. 2,200+ medical models, 35 model-backed PII languages, and Python, MLX, Android and browser runtimes. Apache-2.0 SDK.
OpenMed – 온디바이스 임상 텍스트 AI
개요 – OpenMed는 의료 텍스트 추출과 보호 건강 정보(PHI/PII) 비식별화를 사용자가 통제하는 하드웨어에서 로컬로 실행할 수 있게 해주는 오픈소스 SDK입니다. 필요한 모델 파일을 다운로드한 후(Hugging Face 또는 OpenMed 모델 카탈로그에서), 런타임은 완전히 오프라인으로 작동하며 구조화된 엔터티, 마스킹된 텍스트 또는 FHIR 지원 출력을 반환합니다.
주요 기능
- 임상 NER – 질병, 약물, 해부학, 유전자 등(예:
disease_detection_superclinical). - PII 탐지 및 비식별화 – 18개 Safe-Harbor 범주, 다양한 마스킹 전략(마스크, 대체, 해시, 날짜 이동) 지원.
- 다국어 지원 – 35개 모델 지원 언어, 42개 언어 코드.
- 다양한 런타임 – CPU, CUDA, Apple-Silicon MLX, Android ONNX Runtime Mobile, 브라우저 Transformers.js, REST 서비스.
- 에이전트 지원 스킬 카탈로그 – Claude Code, OpenAI Codex 등에서 바로 사용할 수 있는 “Agent Skills”.
- 배치 및 스트리밍 파이프라인 – 많은 문서를 효율적으로 처리하고, 스마트 엔터티 병합으로 날짜, ID 등을 유지합니다.
사용 방법
from openmed import analyze_text
result = analyze_text(
"Patient started on imatinib for chronic myeloid leukemia.",
model_name="disease_detection_superclinical",
)
for e in result.entities:
print(e.label, e.text, f"{e.confidence:.2f}")
CLI를 호출하거나 FastAPI 스타일 서비스(python -m openmed.service.logging)를 실행하거나, 모바일 기기에서 Kotlin/Swift 라이브러리를 호출할 수도 있습니다.
지원 플랫폼
- Python(pip install
openmed[hf], Apple Silicon 가속을 위한 선택적[mlx]). - Swift / iOS – Swift Package Manager를 통한
OpenMedKit; 빠른 토큰 분류를 위해 MLX 사용. - Kotlin / Android – JitPack 아티팩트로 패키징된 ONNX Runtime Mobile 모델.
- Web – Transformers.js로 ONNX 내보내기, WebGPU 지원 브라우저에서 실행 가능.
- 컨테이너 / 서비스 – Docker 이미지와 내장 REST 서버.
모델 카탈로그 – 이 저장소에는 특화된 NER 모델(질병, 제약, 해부학, 유전자, PII)의 엄선된 목록이 포함되어 있으며, 매개변수 규모는 약 1억에서 약 4억 3,400만에 이릅니다. 모델은 Hugging Face의 OpenMed/ 네임스페이스에서 호스팅되며, SDK는 에어갭 배포를 위해 로컬 디렉터리에서 로드할 수도 있습니다.
프라이버시 입장 – OpenMed는 규제 준수를 보장하지 않습니다. Safe-Harbor 준수 PII 범주와 구성 가능한 임계값을 제공하지만, 배포 조직은 자체 검증과 HIPAA/GDPR 검토를 수행해야 합니다.
라이선스 – SDK 소스 코드는 Apache-2.0. 모델 및 데이터셋 라이선스는 다양하며 모델 카탈로그에 표시됩니다.
빠른 시작 체크리스트
pip install "openmed[hf]"(Apple Silicon의 경우openmed[mlx]).- 모델 다운로드(예:
openmed download disease_detection_superclinical). - Python에서
analyze_text/extract_pii/deidentify호출 또는 모바일 SDK 사용. - 프로덕션에서는 제공된 REST 서비스로 SDK를 감싸거나 iOS/Android 앱에 내장하세요.
결론 – OpenMed는 온디바이스 임상 텍스트 처리를 위한 진정한 오픈소스 플랫폼으로, 다양한 하드웨어와 언어 전반에 걸쳐 엔터티 추출과 프라이버시 보호 비식별화를 모두 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch