API Healthcare Natural Language

L'API Healthcare Natural Language fa parte dell'API Cloud Healthcare che utilizza modelli di linguaggio naturale per estrarre informazioni sanitarie da testi medici.

Questa guida concettuale illustra le nozioni di base sull'utilizzo dell'API Healthcare Natural Language, tra cui:

  • I tipi di richieste che puoi inviare all'API Healthcare Natural Language
  • Come creare richieste all'API Healthcare Natural Language
  • Come gestire le risposte dell'API Healthcare Natural Language

Panoramica

L'API Healthcare Natural Language estrae informazioni sanitarie da testi medici. Queste informazioni sanitarie possono includere:

  • Concetti medici, come farmaci, procedure e patologie
  • Elementi funzionali, come relazioni temporali, soggetti e valutazioni di certezza
  • Relazioni, ad esempio effetti collaterali e dosaggio dei farmaci

Scegliere tra l'API Healthcare Natural Language e AutoML Entity Extraction for Healthcare

L'API Healthcare Natural Language offre modelli di linguaggio naturale preaddestrati per estrarre concetti e relazioni mediche dal testo medico. L'API Healthcare Natural Language mappa il testo in un insieme predefinito di categorie di conoscenza medica.

AutoML Entity Extraction for Healthcare ti consente di creare un modello di estrazione delle entità personalizzato addestrato utilizzando il tuo testo medico annotato e le tue categorie. Per ulteriori informazioni, consulta la documentazione di AutoML Entity Extraction for Healthcare.

Sedi disponibili

L'API Healthcare Natural Language è disponibile nei seguenti paesi:

Nome della sede Descrizione della località
asia-south1 Mumbai, India
australia-southeast1 Sydney, Australia
europe-west2 Londra, Regno Unito
europe-west4 Paesi Bassi
northamerica-northeast1 Montréal, Canada
us-central1 Iowa, Stati Uniti

Funzionalità dell'API Healthcare Natural Language

L'API Healthcare Natural Language ispeziona il testo medico per rilevare concetti e relazioni medici. Esegui l'analisi delle entità utilizzando il metodo analyzeEntities.

Richieste di analisi delle entità

L'API Healthcare Natural Language è un'API REST ed è composta da richieste e risposte JSON. Le sezioni seguenti mostrano come estrarre diversi approfondimenti medici da un determinato testo medico:

La richiesta di analisi delle entità contiene i seguenti campi:

Campi di risposta dell'analisi delle entità

L'analisi delle entità restituisce un insieme di menzioni di conoscenze mediche rilevate, concetti medici e relazioni tra menzioni di conoscenze mediche, tra cui:

  • entityMentions: occorrenze di entità di conoscenza medica nel testo medico di origine. Ogni menzione di entità ha i seguenti campi:

    • mentionId: un identificatore univoco per una menzione di entità nella risposta.
    • type: la categoria di conoscenza medica della menzione dell'entità.
    • text: è costituito dal campo textContent e descrive l'estratto del testo medico contenente la menzione dell'entità e offset, la posizione della menzione dell'entità nel testo medico di origine.
    • temporalAssessment: specifica la relazione tra l'entità collegata e la menzione dell'entità, uno dei valori CURRENT, CLINICAL_HISTORY, FAMILY_HISTORY, UPCOMING o OTHER.
    • certaintyAssessment: la negazione o la qualificazione del concetto clinico, uno tra LIKELY, SOMEWHAT_LIKELY, UNCERTAIN, SOMEWHAT_UNLIKELY, UNLIKELY o CONDITIONAL.
    • subject: specifica l'argomento a cui si riferisce il concetto medico, tra PATIENT, FAMILY_MEMBER o OTHER.
    • linkedEntities: un elenco di concetti medici che potrebbero essere correlati a questa menzione di entità. Le entità collegate specificano il entityId, che collega un concetto medico a un'entità in entities.
  • entities: descrive i concetti medici dei campi delle entità collegate. Ogni entità è descritta utilizzando i seguenti campi:

    • entityId: un identificatore univoco del campo linkedEntities.
    • preferredTerm: un termine preferito per il concetto medico.
    • vocabularyCodes: la rappresentazione del concetto medico nei vocabolari medici supportati.
  • relationships: definisci le relazioni dirette tra le menzioni di entità. Nel campione, il soggetto della relazione è "Insulin regimen human" e l'oggetto della relazione è "5 units".

  • confidence: un'indicazione dell'affidabilità del modello nella relazione come numero compreso tra 0 e 1.

Oltre ai campi elencati, la risposta potrebbe contenere anche il campo additionalInfo, che indica eventuali descrizioni aggiuntive sul tipo di menzione dell'entità. Consulta la sezione Ulteriori informazioni.

Lingue supportate

L'API Healthcare Natural Language supporta solo l'estrazione di informazioni sanitarie da testo in inglese.

Vocabolari medici supportati

L'API Healthcare Natural Language supporta i seguenti vocabolari medici:

  • Modello di base dell'anatomia
  • Gene Ontology
  • HUGO Gene Nomenclature Committee
  • Ontologia del fenotipo umano
  • ICD-10 Procedure Coding System
  • ICD-10-CM
  • ICD-9-CM
  • LOINC
  • MeSH
  • Argomenti per la salute di MedlinePlus
  • Nomi del metathesaurus
  • Tassonomia NCBI
  • NCI Thesaurus
  • National Drug File
  • Online Mendelian Inheritance in Man
  • RXNORM
  • SNOMED CT (disponibile solo per gli utenti degli Stati Uniti)

Categorie di conoscenza medica supportate

L'API Healthcare Natural Language assegna una categoria di conoscenza medica al campo entityMentions.type. Di seguito è riportato un elenco delle categorie di conoscenza medica supportate. I tipi di menzione di entità che appartengono ai gruppi di oncologia, determinanti sociali della salute (SDOH) e informazioni sanitarie protette (PHI) sono disponibili solo in Anteprima:

Gruppo Categoria di conoscenza medica Descrizione
Generale ANATOMICAL_STRUCTURE Una parte complessa del corpo umano, come cellule, organi e sistemi.
BODY_FUNCTION Una funzione svolta dal corpo umano.
BF_RESULT Il risultato di una funzione del corpo.
BODY_MEASUREMENT Una misurazione normale del corpo umano, come i segni vitali, ottenuta senza test o procedure complesse utilizzando strumenti di base, come un termometro o uno stetoscopio.
BM_RESULT Il risultato di una misurazione corporea.
BM_UNIT L'unità di misura per una misurazione corporea.
BM_VALUE Il valore di una misurazione corporea.
LABORATORY_DATA I risultati del test di un campione biologico.
LAB_RESULT Una descrizione qualitativa dei dati di laboratorio, ad esempio "aumentato", "diminuito", "positivo" o "negativo".
LAB_VALUE Il valore di un'istanza dei dati di laboratorio.
LAB_UNIT L'unità di misura del valore di laboratorio.
MEDICAL_DEVICE Uno strumento fisico o virtuale.
MEDICINE Un farmaco o un'altra preparazione per la cura o la prevenzione di una malattia.
MED_DOSE Una dose di un farmaco.
MED_DURATION Il periodo di somministrazione di un farmaco.
MED_FORM Le caratteristiche fisiche di un farmaco specifico.
MED_FREQUENCY La frequenza con cui viene assunto un farmaco.
MED_ROUTE Una posizione nel corpo in cui viene somministrato un farmaco.
MED_STATUS Lo stato di un farmaco esistente, ad esempio "continua", "inizia", "riavvia", "interrompi", "passa", "aumenta" e "diminuisci".
MED_STRENGTH La quantità di principio attivo in una dose di un farmaco.
MED_UNIT L'unità di misura del principio attivo di un farmaco.
MED_TOTALDOSE La quantità di farmaco da assumere contemporaneamente.
PROBLEM Una condizione medica, inclusi risultati e malattie.
PROCEDURE Una procedura di diagnosi o cura.
PROCEDURE_RESULT I risultati di una procedura.
PROC_METHOD Il metodo utilizzato per eseguire una procedura.
SEVERITY La gravità della patologia.
SUBSTANCE_ABUSE Una descrizione dell'abuso di una sostanza psicoattiva.
Oncologia (anteprima) CLINICAL_STATUS Lo stato di una richiesta relativa al cancro, ad esempio "attivo", "ricorrente", "con recidiva" e "risolto".
DATE Un'annotazione della data, ad esempio la data della diagnosi, della procedura o della radioterapia. Estrae tutti gli elementi di una data e potrebbe non includere l'anno.
DIMENSIONS Le misurazioni di un tumore, una massa o una crescita anomala.
GENE_STUDIED I geni studiati che portano direttamente o indirettamente alla formazione di tumori, come BRCA1, p53 e ALK.
HISTOLOGICAL_GRADE Un sistema di classificazione per valutare l'aspetto di una cellula cancerosa.
LAB_SPECIMEN Materiale biologico raccolto dal corpo per test o campionamento.
RADIATION_DOSAGE La quantità di radiazioni somministrate a un paziente.
ONSET Un'annotazione della data per rappresentare la data in cui un paziente ha osservato per la prima volta problemi correlati al cancro.
VARIATION_CODE Un codice assegnato alla variante genomica specifica rilevata in un sistema di codifica principale come ClinVar e HGVS.
Determinanti sociali della salute (anteprima) AGE Un identificatore dell'età. Sono incluse frasi che descrivono l'età, ad esempio "sembra più giovane dell'età dichiarata", "di mezza età", "78 anni" o "adolescente".

Nota: l'HIPAA classifica l'età di una persona come PHI solo se supera i 90 anni. Per ulteriori informazioni, consulta il riepilogo del Regolamento sulla privacy HIPAA.

FAMILY Frasi che descrivono la struttura familiare o i parenti del paziente, ad esempio "sposato con due figli", "fratello", "moglie", "genitori di supporto" o "divorziato".
LIVING_SITUATION Frasi che descrivono la situazione di vita del paziente, ad esempio "con coinquilini ", "ha un'infermiera a domicilio 24 ore su 24, 7 giorni su 7" o "si è trasferito di recente".
SOCIAL_IDENTITY Frasi che descrivono l'identità sociale del paziente o della famiglia, inclusi gruppo etnico, orientamento sessuale, religione, nazionalità, lingue parlate o non parlate o paese di origine.
PHYSICAL_APPEARANCE Frasi che descrivono il tratto fisico più evidente o più evidente del paziente o della famiglia, ad esempio "cicatrice sulla guancia destra", "sindrome di Down", "obeso" o "gamba sinistra amputata".
OCCUPATION Frasi che descrivono la professione e lo stato di occupazione del paziente o della famiglia, ad esempio "madre in pensione", "ha lavorato come saldatore per 20 anni" o "ha perso il lavoro l'anno scorso".
Dati sanitari protetti (PHI) (anteprima) PERSON_NAME Un identificatore di nome generico per una persona. Include titoli, ad esempio "Dott.", "Sig.ra" o "Dott."
ORGANIZATION_NAME Un identificatore per un'organizzazione sanitaria che raccoglie PHI, ad esempio una clinica, una casa di cura o un ospedale.
GENERIC_ID Un ID generico che identifica cartelle cliniche, pazienti, medici, ospedali, ad esempio il numero di previdenza sociale del paziente o il numero di un fornitore.
LOCATION Una posizione geografica che potrebbe contenere nomi e numeri di edifici, strade, città, stati o codici postali.
PHONE_NUMBER Un numero per indicare un numero di telefono, di fax o di cercapersone.
EMAIL_ADDRESS Un identificatore dell'indirizzo email.
URL L'indirizzo di un sito web.
ZIPCODE Un identificatore di codice postale.

Categorie di funzionalità di supporto supportate

L'API Healthcare Natural Language può dedurre dal contesto le funzionalità o gli attributi di una menzione di entità. Ad esempio, nell'affermazione "La madre di Kusuma ha il diabete", la condizione "diabete" ha la caratteristica funzionale di subject FAMILY_MEMBER.

Relazioni temporali

Le relazioni temporali, restituite nel campo temporalAssessment, descrivono come questo riferimento all'entità si relaziona all'oggetto dal punto di vista temporale.

L'API Healthcare Natural Language supporta i seguenti rapporti temporali:

  • CURRENT
  • CLINICAL_HISTORY
  • FAMILY_HISTORY
  • UPCOMING
  • OTHER

Soggetti

I soggetti, restituiti nel campo subject, descrivono la persona a cui si riferisce la menzione dell'entità.

L'API Healthcare Natural Language supporta i seguenti argomenti:

  • PATIENT
  • FAMILY_MEMBER
  • OTHER

Valutazioni di certezza

Le valutazioni dell'attendibilità, restituite nel campo certaintyAssessment, descrivono la sicurezza dell'autore della nota originale. Ad esempio, se la nota originale contiene "Il paziente ha mal di gola", la valutazione della certezza restituisce un valore LIKELY per indicare la certezza di chi prendeva nota che era probabile che il paziente avesse mal di gola. Se la nota originale contiene "Il paziente non ha mal di gola", la valutazione della certezza restituisce un valore UNLIKELY per indicare la certezza di chi prendeva nota che era improbabile che il paziente avesse mal di gola.

Le valutazioni dell'attendibilità possono essere uno dei seguenti valori:

  • LIKELY
  • SOMEWHAT_LIKELY
  • UNCERTAIN
  • SOMEWHAT_UNLIKELY
  • UNLIKELY
  • CONDITIONAL

Informazioni aggiuntive

Il campo additionalInfo fornisce ulteriori dettagli su una menzione di entità. Ad esempio, il campo additionalInfo per una menzione di entità DATE potrebbe essere costituito da dettagli sul tipo di data, classificata come una delle seguenti:

  • 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

Relazioni supportate tra le menzioni di entità

L'API Healthcare Natural Language può dedurre le relazioni tra le menzioni di entità in base al testo medico circostante. Nella risposta, l'oggetto della relazione è identificato da subjectId e l'oggetto della relazione è identificato da objectId.

L'API Healthcare Natural Language supporta le seguenti relazioni tra le menzioni di entità:

Oggetto Oggetto
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 dell'API Healthcare Natural Language come bundle FHIR

Quando richiedi il metodo analyzeEntities con il campo alternativeOutputFormat impostato su FHIR_BUNDLE, la risposta include i seguenti oggetti JSON:

  • Le menzioni di entità, le entità e le relazioni
  • Un bundle FHIR R4 rappresentato come stringa, che include tutte le entità, le menzioni di entità e le relazioni in formato JSON

Per creare il bundle FHIR R4, l'API Healthcare Natural Language mappa le menzioni delle entità, le entità e le relazioni alle risorse FHIR e ai relativi elementi. La tabella seguente elenca alcune di queste mappature.

Menzioni di entità dell'API Healthcare Natural Language Categoria di conoscenza medica Risorse ed elementi 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

Per estrarre entità dal testo come pacchetto FHIR R4, consulta Estrarre l'output come pacchetto FHIR R4.