Healthcare Natural Language API adalah bagian dari Cloud Healthcare API yang menggunakan model bahasa alami untuk mengekstrak informasi layanan kesehatan dari teks medis.
Panduan konseptual ini menjelaskan dasar-dasar penggunaan Healthcare Natural Language API, termasuk:
- Jenis permintaan yang dapat Anda ajukan ke Healthcare Natural Language API
- Cara membuat permintaan ke Healthcare Natural Language API
- Cara menangani respons dari Healthcare Natural Language API
Ringkasan
Healthcare Natural Language API mengekstrak informasi layanan kesehatan dari teks medis. Informasi layanan kesehatan ini dapat mencakup:
- Konsep medis, seperti obat-obatan, prosedur, dan kondisi medis
- Fitur fungsional, seperti hubungan temporal, subjek, dan penilaian kepastian
- Hubungan, seperti efek samping dan dosis obat
Memilih antara Healthcare Natural Language API dan AutoML Entity Extraction for Healthcare
Healthcare Natural Language API menawarkan model bahasa alami terlatih untuk mengekstrak konsep dan hubungan medis dari teks medis. Healthcare Natural Language API memetakan teks ke dalam serangkaian kategori pengetahuan medis yang telah ditentukan sebelumnya.
AutoML Entity Extraction for Healthcare memungkinkan Anda membuat model ekstraksi entitas kustom yang dilatih menggunakan teks medis beranotasi Anda sendiri dan menggunakan kategori Anda sendiri. Untuk mengetahui informasi selengkapnya, lihat dokumentasi AutoML Entity Extraction for Healthcare.
Lokasi yang tersedia
Healthcare Natural Language API tersedia di lokasi berikut:
Nama lokasi | Deskripsi lokasi |
---|---|
asia-south1 |
Mumbai, India |
australia-southeast1 |
Sydney, Australia |
europe-west2 |
London, Inggris |
europe-west4 |
Belanda |
northamerica-northeast1 |
Montréal, Kanada |
us-central1 |
Iowa, Amerika Serikat |
Fitur Healthcare Natural Language API
Healthcare Natural Language API memeriksa teks medis untuk menemukan konsep dan hubungan medis. Anda melakukan analisis entity menggunakan metode
analyzeEntities
.
Permintaan analisis entity
Healthcare Natural Language API adalah REST API dan terdiri dari permintaan dan respons JSON. Bagian berikut menunjukkan cara mengekstrak berbagai insight medis dari teks medis tertentu:
- Mengekstrak entity, relasi, dan atribut kontekstual
- Menyertakan kosakata berlisensi
- Mengekstrak output sebagai paket FHIR R4
Permintaan analisis entitas berisi kolom berikut:
documentContent
: Data untuk permintaan, yang terdiri dari teks medis. Ukuran maksimum teks medis adalah 20.000 karakter Unicode.licensedVocabularies[]
: Opsional. Kosakata SNOMED CT. Hanya tersedia untuk pengguna di Amerika Serikat.alternativeOutputFormat
: Opsional. Format paket FHIR.
Kolom respons analisis entity
Analisis entitas menampilkan serangkaian penyebutan pengetahuan medis yang terdeteksi, konsep medis, dan hubungan antara penyebutan pengetahuan medis, termasuk berikut ini:
entityMentions
: kemunculan entity pengetahuan medis dalam teks medis sumber. Setiap sebutan entitas memiliki kolom berikut:mentionId
: ID unik untuk sebutan entity dalam respons.type
: kategori pengetahuan medis dari sebutan entity.text
: terdiri dari kolomtextContent
, dan menjelaskan kutipan teks medis yang berisi sebutan entity, danoffset
, lokasi sebutan entity dalam teks medis sumber.temporalAssessment
: menentukan hubungan entitas tertaut dengan penyebutan entitas, salah satu dariCURRENT
,CLINICAL_HISTORY
,FAMILY_HISTORY
,UPCOMING
, atauOTHER
.certaintyAssessment
: negasi atau kualifikasi konsep medis, salah satu dariLIKELY
,SOMEWHAT_LIKELY
,UNCERTAIN
,SOMEWHAT_UNLIKELY
,UNLIKELY
, atauCONDITIONAL
.subject
: menentukan subjek yang terkait dengan konsep medis, salah satu dariPATIENT
,FAMILY_MEMBER
, atauOTHER
.linkedEntities
: daftar konsep medis yang mungkin terkait dengan sebutan entitas ini. Entitas tertaut menentukanentityId
, yang menautkan konsep medis ke entitas dientities
.
entities
: menjelaskan konsep medis dari kolom entity tertaut. Setiap entitas dijelaskan menggunakan kolom berikut:entityId
: ID unik dari kolomlinkedEntities
.preferredTerm
: istilah pilihan untuk konsep medis.vocabularyCodes
: representasi konsep medis dalam kosakata medis yang didukung.
relationships
: menentukan hubungan terarah antara sebutan entity. Dalam sampel, subjek hubungan adalah "Insulin regimen human" dan objek hubungan adalah "5 units".confidence
: indikasi keyakinan model dalam hubungan sebagai angka antara 0 dan 1.
Selain kolom yang tercantum, respons juga dapat berisi kolom additionalInfo
, yang menyatakan deskripsi tambahan tentang jenis sebutan entitas.
Lihat Informasi tambahan.
Bahasa yang didukung
Healthcare Natural Language API hanya mendukung ekstraksi informasi layanan kesehatan dari teks berbahasa Inggris.
Kosakata medis yang didukung
Healthcare Natural Language API mendukung kosakata medis berikut:
- Model Dasar Anatomi
- Gene Ontology
- HUGO Gene Nomenclature Committee
- Human Phenotype Ontology
- ICD-10 Procedure Coding System
- ICD-10-CM
- ICD-9-CM
- LOINC
- MeSH
- Topik Kesehatan MedlinePlus
- Nama Metathesaurus
- Taksonomi NCBI
- Tesaurus NCI
- National Drug File
- Online Mendelian Inheritance in Man
- RXNORM
- SNOMED CT (hanya tersedia untuk pengguna di Amerika Serikat)
Kategori pengetahuan medis yang didukung
Healthcare Natural Language API menetapkan kategori pengetahuan medis ke kolom entityMentions.type
.
Daftar kategori pengetahuan medis yang didukung adalah sebagai berikut. Jenis sebutan entitas yang termasuk dalam grup onkologi, penentu sosial kesehatan (SDOH), dan informasi kesehatan terlindungi (PHI) hanya tersedia dalam Pratinjau:
Grup | Kategori pengetahuan medis | Deskripsi |
---|---|---|
Umum | ANATOMICAL_STRUCTURE
|
Bagian tubuh manusia yang kompleks, seperti sel, organ, dan sistem. |
BODY_FUNCTION
|
Fungsi yang dilakukan oleh tubuh manusia. | |
BF_RESULT
|
Hasil fungsi isi. | |
BODY_MEASUREMENT
|
Pengukuran normal tubuh manusia, seperti tanda vital, yang diperoleh tanpa tes atau prosedur yang rumit menggunakan instrumen dasar, seperti termometer atau stetoskop. | |
BM_RESULT
|
Hasil pengukuran tubuh. | |
BM_UNIT
|
Satuan untuk pengukuran tubuh. | |
BM_VALUE
|
Nilai pengukuran tubuh. | |
LABORATORY_DATA
|
Hasil pengujian sampel tubuh. | |
LAB_RESULT
|
Deskripsi kualitatif data laboratorium, seperti "meningkat", "menurun", "positif", atau "negatif". | |
LAB_VALUE
|
Nilai instance data laboratorium. | |
LAB_UNIT
|
Satuan ukur untuk nilai laboratorium. | |
MEDICAL_DEVICE
|
Instrumen fisik atau virtual. | |
MEDICINE
|
Obat atau sediaan lain untuk pengobatan atau pencegahan penyakit. | |
MED_DOSE
|
Dosis obat. | |
MED_DURATION
|
Periode pemberian obat. | |
MED_FORM
|
Karakteristik fisik obat tertentu. | |
MED_FREQUENCY
|
Frekuensi penggunaan obat. | |
MED_ROUTE
|
Lokasi di tubuh tempat obat diberikan. | |
MED_STATUS
|
Status pengobatan yang ada, seperti "lanjutkan", "mulai", "mulai lagi", "berhenti", "ganti", "tambah", dan "kurangi". | |
MED_STRENGTH
|
Jumlah bahan aktif dalam dosis obat. | |
MED_UNIT
|
Satuan ukuran untuk bahan aktif dalam obat. | |
MED_TOTALDOSE
|
Jumlah obat yang harus diminum dalam satu waktu. | |
PROBLEM
|
Kondisi medis, termasuk temuan dan penyakit. | |
PROCEDURE
|
Prosedur diagnosis atau perawatan. | |
PROCEDURE_RESULT
|
Hasil prosedur. | |
PROC_METHOD
|
Metode yang digunakan untuk melakukan prosedur. | |
SEVERITY
|
Tingkat keparahan kondisi medis. | |
SUBSTANCE_ABUSE
|
Deskripsi penyalahgunaan zat psikoaktif. | |
Onkologi (Pratinjau) | CLINICAL_STATUS
|
Status kasus kanker seperti "aktif", "berulang", "kambuh", dan "sembuh". |
DATE
|
Anotasi tanggal, seperti tanggal diagnosis, tanggal prosedur, atau tanggal perawatan radiasi. Metode ini mengekstrak semua elemen tanggal dan mungkin tidak menyertakan tahun. | |
DIMENSIONS
|
Pengukuran tumor, massa, atau pertumbuhan abnormal. | |
GENE_STUDIED
|
Gen yang dipelajari yang secara langsung atau tidak langsung menyebabkan pembentukan tumor, seperti BRCA1, p53, dan ALK. | |
HISTOLOGICAL_GRADE
|
Sistem klasifikasi untuk menilai penampilan sel kanker. | |
LAB_SPECIMEN
|
Materi biologis yang dikumpulkan dari tubuh untuk pengujian atau pengambilan sampel. | |
RADIATION_DOSAGE
|
Jumlah radiasi yang diberikan kepada pasien. | |
ONSET
|
Anotasi tanggal untuk merepresentasikan tanggal saat pasien pertama kali mengamati masalah terkait kanker. | |
VARIATION_CODE
|
Kode yang diberikan untuk varian genomik spesifik yang terdeteksi dalam sistem pengodean utama seperti ClinVar dan HGVS. | |
Determinan sosial kesehatan (SDoH) (Pratinjau) | AGE
|
ID usia. Hal ini mencakup frasa yang menggambarkan usia, seperti "terlihat lebih muda dari usia yang dinyatakan", "paruh baya", "berusia 78 tahun", atau "remaja".
Catatan: HIPAA mengklasifikasikan usia seseorang sebagai PHI hanya jika usianya di atas 90 tahun. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Aturan Privasi HIPAA. |
FAMILY
|
Frasa yang menggambarkan struktur keluarga atau kerabat pasien, seperti "menikah dengan dua anak", "saudara laki-laki", "istri", "orang tua yang mendukung", atau "bercerai". | |
LIVING_SITUATION
|
Frasa yang menggambarkan situasi hidup pasien, seperti "dengan teman sekamar", "memiliki perawat homecare 24/7", atau "baru pindah". | |
SOCIAL_IDENTITY
|
Frasa yang menggambarkan identitas sosial pasien atau keluarga, termasuk ras, etnis, orientasi seksual, agama, kebangsaan, bahasa yang digunakan atau tidak digunakan, atau negara asal. | |
PHYSICAL_APPEARANCE
|
Frasa yang mendeskripsikan ciri fisik pasien atau keluarga yang paling terlihat atau jelas, seperti "bekas luka di pipi kanan", "sindrom Down", "obesitas", atau "kaki kiri diamputasi". | |
OCCUPATION
|
Frasa yang menjelaskan pekerjaan dan status pekerjaan pasien atau keluarga, seperti "ibu pensiunan", "bekerja sebagai tukang las selama 20 tahun", atau "kehilangan pekerjaan tahun lalu". | |
Informasi kesehatan terlindungi (PHI) (Pratinjau) | PERSON_NAME
|
ID nama generik untuk seseorang. Mencakup gelar, seperti "Dr.", "Ibu", atau "MD" |
ORGANIZATION_NAME
|
ID untuk organisasi medis yang mengumpulkan PHI, seperti klinik, panti jompo, atau rumah sakit. | |
GENERIC_ID
|
ID generik yang mengidentifikasi rekam medis, pasien, dokter, rumah sakit, seperti SSN pasien, atau nomor penyedia. | |
LOCATION
|
Lokasi geografis yang mungkin berisi nama dan nomor untuk bangunan, jalan, kota, negara bagian, atau kode pos. | |
PHONE_NUMBER
|
Nomor untuk menunjukkan nomor telepon, nomor faks, atau nomor pager. | |
EMAIL_ADDRESS
|
ID alamat email. | |
URL
|
Alamat situs. | |
ZIPCODE
|
ID kode pos. |
Kategori fitur fungsional yang didukung
Healthcare Natural Language API dapat menyimpulkan fitur fungsional, atau atribut,
dari penyebutan entity dari konteks. Misalnya, dalam pernyataan
"Ibu Kusuma menderita diabetes", kondisi "diabetes" memiliki fitur
fungsional subject
FAMILY_MEMBER
.
Hubungan temporal
Hubungan temporal, yang ditampilkan di kolom temporalAssessment
, menjelaskan
bagaimana sebutan entitas ini berhubungan dengan subjek secara temporal.
Healthcare Natural Language API mendukung hubungan temporal berikut:
CURRENT
CLINICAL_HISTORY
FAMILY_HISTORY
UPCOMING
OTHER
Subjek
Subjek, yang ditampilkan di kolom subject
, menjelaskan individu yang terkait dengan sebutan entitas.
Healthcare Natural Language API mendukung subjek berikut:
PATIENT
FAMILY_MEMBER
OTHER
Penilaian kepastian
Penilaian kepastian, yang ditampilkan di kolom certaintyAssessment
, menjelaskan keyakinan pencatat asli. Misalnya, jika catatan asli
berisi "Pasien mengalami sakit tenggorokan", penilaian kepastian
akan menampilkan nilai LIKELY
untuk menunjukkan keyakinan pencatat bahwa
pasien kemungkinan mengalami sakit tenggorokan. Jika catatan asli berisi "Pasien tidak mengalami sakit tenggorokan", penilaian kepastian akan menampilkan nilai UNLIKELY
untuk menunjukkan keyakinan pencatat bahwa pasien kemungkinan tidak mengalami sakit tenggorokan.
Penilaian kepastian dapat berupa salah satu nilai berikut:
LIKELY
SOMEWHAT_LIKELY
UNCERTAIN
SOMEWHAT_UNLIKELY
UNLIKELY
CONDITIONAL
Informasi tambahan
Kolom additionalInfo
memberikan detail tambahan tentang sebutan entitas. Misalnya, kolom additionalInfo
untuk sebutan entitas DATE
mungkin
berisi detail tentang jenis tanggal, yang dikategorikan sebagai salah satu dari berikut ini:
ADMISSION_DATE
CONSULTATION_DATE
DISCHARGE_DATE
SERVICE_DATE
VISIT_DATE
DIAGNOSIS_DATE
MED_STARTED_DATE
MED_ENDED_DATE
NOTE_DATE
PROCEDURE_DATE
RADIATION_STARTED_DATE
RADIATION_ENDED_DATE
STAGE_DATE
Hubungan yang didukung antara penyebutan entity
Healthcare Natural Language API dapat menyimpulkan hubungan antara sebutan entitas berdasarkan teks medis di sekitarnya. Dalam respons, subjek
hubungan diidentifikasi oleh subjectId
dan objek
hubungan diidentifikasi oleh objectId
.
Healthcare Natural Language API mendukung hubungan berikut antara sebutan entitas:
Subjek | Objek |
---|---|
ANATOMICAL_STRUCTURE |
MEDICAL_DEVICE |
BODY_FUNCTION |
BF_RESULT |
BODY_MEASUREMENT |
BM_RESULT |
BODY_MEASUREMENT |
BM_UNIT |
BODY_MEASUREMENT |
BM_VALUE |
LABORATORY_DATA |
LAB_RESULT |
LABORATORY_DATA |
LAB_UNIT |
LABORATORY_DATA |
LAB_VALUE |
MEDICINE |
MED_DOSE |
MEDICINE |
MED_DURATION |
MEDICINE |
MED_FORM |
MEDICINE |
MED_FREQUENCY |
MEDICINE |
MED_ROUTE |
MEDICINE |
MED_STATUS |
MEDICINE |
MED_STRENGTH |
MEDICINE |
MED_TOTALDOSE |
MEDICINE |
MED_UNIT |
PROBLEM |
ANATOMICAL_STRUCTURE |
PROBLEM |
MEDICINE |
PROBLEM |
PROCEDURE |
PROBLEM |
SEVERITY |
PROCEDURE |
ANATOMICAL_STRUCTURE |
PROCEDURE |
PROC_METHOD |
PROCEDURE |
PROCEDURE_RESULT |
SUBSTANCE_ABUSE |
SEVERITY |
Output Healthcare Natural Language API sebagai paket FHIR
Saat Anda meminta metode analyzeEntities
dengan kolom
alternativeOutputFormat
yang ditetapkan ke FHIR_BUNDLE
, respons akan menyertakan objek JSON berikut:
- Penyebutan entity, entity, dan hubungan
- Paket FHIR R4 yang ditampilkan sebagai string, yang mencakup semua entitas, sebutan entitas, dan hubungan dalam format JSON
Untuk membuat paket FHIR R4, Healthcare Natural Language API memetakan sebutan entitas, entitas, dan hubungan ke resource FHIR dan elemennya. Tabel berikut mencantumkan beberapa pemetaan ini.
Penyebutan entitas Healthcare Natural Language API | Kategori Pengetahuan Medis | Resource dan elemen FHIR R4 |
---|---|---|
PROBLEM |
Condition |
|
PROBLEM |
Condition.category |
|
PROBLEM |
Condition.status |
|
PROBLEM |
ANATOMICAL_STRUCTURE |
Condition.bodySite |
PROBLEM |
ANATOMICAL_STRUCTURE |
Condition.evidence |
PROBLEM |
SEVERITY |
Condition.severity |
PROCEDURE |
Procedure |
|
PROCEDURE |
Procedure.status |
|
PROCEDURE |
Procedure.code |
|
PROCEDURE |
ANATOMICAL_STRUCTURE |
Procedure.bodySite |
PROCEDURE |
MEDICAL_DEVICE |
Procedure.usedCode |
PROCEDURE |
PROBLEM |
Procedure.reasonReference |
MEDICINE |
MedicationStatement |
|
MEDICINE |
MedicationStatement.status |
|
MEDICINE |
MedicationStatement.medication |
|
MEDICINE |
PROBLEM |
MedicationStatement.reasonReference |
MEDICINE |
MED_DOSE |
MedicationStatement.dosage.doseAndRate.doseQuantity |
MEDICINE |
MED_FREQUENCY |
MedicationStatement.dosage.text |
MEDICINE |
MED_ROUTE |
MedicationStatement.dosage.route |
MEDICINE |
MED_STRENGTH |
MedicationStatement.dosage.doseAndRate.doseQuantity |
MEDICINE |
MED_UNIT |
MedicationStatement.dosage.doseAndRate.doseQuantity |
Untuk mengekstrak entitas dari teks sebagai paket FHIR R4, lihat Mengekstrak output sebagai paket FHIR R4.