Suche in Gesundheitsdaten filtern

Wenn Sie Gesundheitsdaten abfragen, können Sie Filter verwenden, um die Suchergebnisse einzugrenzen. In einer Suchanfrage können Sie Filter angeben, um Kriterien zu erzwingen, die bestimmte Suchantworten ein- oder ausschließen.

Wenn Sie beispielsweise die Daten eines einzelnen Patienten durchsuchen, muss der Anfragetext der Suchanfrage den folgenden Filterausdruck enthalten, der die Patienten-ID angibt:

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

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

Hinweise

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 der Antwort auf die Suchanfrage sein. Wenn die Antwort beispielsweise eine Beobachtungsressource enthält, kann die patient_id, auf die sich die Beobachtungsressource bezieht, als Filterliteral verwendet werden.

In den folgenden Abschnitten finden Sie einige Beispiele für die Erstellung von Filtern.

resource_datetime-Filter definieren

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

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: 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 durchsuchen möchten.
  • DATE_TIME_VALUE: Der Wert des Felds resource_datetime, das ein Datum und eine Uhrzeit im FHIR-Format dateTime darstellt. Hier einige Beispiele für dieses Feld:
    • So geben Sie ein Datum und eine Uhrzeit mit einer durch das Trennzeichen T getrennten Zeitzone an: 2022-08-05T01:00:00+00:00
    • So geben Sie ein Datum an: 2022-08-05
    • So geben Sie einen Monat an: 2022-08
    • So geben Sie ein Jahr an: 2022

Filter für Ressourcentyp definieren

Im folgenden Beispiel wird gezeigt, wie Sie einen Filter erstellen, der mit dem Operator AND zuerst alle Composition-Ressourcen und dann diejenigen filtert, 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

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

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