Healthcare-Suche filtern

Wenn Sie Gesundheitsdaten abfragen, können Sie die Suche mit Filtern eingrenzen Antworten. In einer Suchanfrage können Sie Filter angeben, um Kriterien durchzusetzen, die bestimmte Suchantworten ein- oder ausschließen.

Wenn Sie beispielsweise nach den Daten eines einzelnen Patienten suchen, muss der Suchanfragekörper den folgenden Filterausdruck enthalten, in dem die Patienten-ID angegeben ist:

"filter": "patient_id: ANY(\"PATIENT_ID\")"

Auf dieser Seite erfahren Sie, wie Sie Filter für die Suche im Gesundheitswesen definieren.

Hinweis

Führen Sie zuerst folgende Schritte aus:

Filter definieren

Filter werden im Feld filter im Anfragetext der Methode servingConfigs.search angegeben.

Die Filterdefinition folgt der Syntax für Filterausdrücke. Im Filterausdruck kann das Literal ein beliebiges indexierbares Feld aus dem Antwort auf die Suchanfrage. Wenn die Antwort beispielsweise eine Beobachtungsressource enthält, Die patient_id, auf die die Ressourcen vom Typ „Beobachtung“ verweisen können als Filter literal.

In den folgenden Abschnitten finden Sie einige Beispiele zur Erstellung von Filtern.

resource_datetime-Filter definieren

In diesem Beispiel wird gezeigt, wie Sie einen Filter für eine Suche angeben, der nur Ressourcen mit einem resource_datetime-Wert enthält, der nach dem angegebenen Datum und der angegebenen Uhrzeit liegt.

REST

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/servingConfigs/default_search:search" \
    -d '{
"query": "QUERY",
"filter": "patient_id: ANY(\"PATIENT_ID\") AND resource_datetime > \"DATE_TIME_VALUE,
"contentSearchSpec":{"snippetSpec":{"returnSnippet":true}}
}'

Ersetzen Sie Folgendes:

  • PROJECT_ID ist die ID Ihres Google Cloud-Projekts.
  • DATA_STORE_ID: die ID des Vertex AI Search-Datenspeichers.
  • QUERY: die Suchanfrage.
  • PATIENT_ID: die Ressourcen-ID des Patienten, dessen Daten Sie suchen möchten.
  • DATE_TIME_VALUE: der Wert des Feld resource_datetime, das ein Datum und eine Uhrzeit darstellt im FHIR-Format dateTime. Hier einige Beispiele für dieses Feld:
    • So geben Sie ein Datum und eine Uhrzeit mit einer Zeitzone an, die durch ein T-Trennzeichen getrennt ist: 2022-08-05T01:00:00+00:00
    • So legen Sie ein Datum fest: 2022-08-05
    • Monat angeben: 2022-08
    • So geben Sie ein Jahr an: 2022

Ressourcentypfilter definieren

Im folgenden Beispiel wird gezeigt, wie ein Filter mit einem AND-Operator erstellt wird, um zuerst alle Kompositionsressourcen und dann diejenigen zu filtern, deren Datum nach einem bestimmten Datum und einer bestimmten Uhrzeit liegt.

"filter": "resource_type: ANY("Composition") AND Composition.date > "2022-08-05T01:00:00+00:00""

FHIR-Ressourcenfilter definieren

Sie können einen Filter verwenden, um zu überprüfen, ob eine FHIR-Ressource im Vertex AI Search-Datenspeicher. Mit dem folgenden Filter können Sie beispielsweise nach einer DocumentReference-Ressource mit der ID 6112d1ac-c6bd-4755-d689-bfb71d59afc5 suchen.

"filter": "DocumentReference.id: ANY(\"6112d1ac-c6bd-4755-d689-bfb71d59afc5\")"