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. 모델 및 데이터셋 라이선스는 다양하며 모델 카탈로그에 표시됩니다.


빠른 시작 체크리스트

  1. pip install "openmed[hf]"(Apple Silicon의 경우 openmed[mlx]).
  2. 모델 다운로드(예: openmed download disease_detection_superclinical).
  3. Python에서 analyze_text / extract_pii / deidentify 호출 또는 모바일 SDK 사용.
  4. 프로덕션에서는 제공된 REST 서비스로 SDK를 감싸거나 iOS/Android 앱에 내장하세요.

결론 – OpenMed는 온디바이스 임상 텍스트 처리를 위한 진정한 오픈소스 플랫폼으로, 다양한 하드웨어와 언어 전반에 걸쳐 엔터티 추출과 프라이버시 보호 비식별화를 모두 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch