Classer les résultats de recherche dans le secteur de la santé

Par défaut, lorsque vous recherchez des données de santé, les résultats de recherche sont renvoyés dans l'ordre chronologique inverse. Lorsque vous effectuez une recherche sur les types de ressources FHIR suivants qui contiennent du texte non structuré, vous pouvez trier les résultats de recherche en fonction de leur pertinence par rapport à votre requête:

  • Composition
  • DiagnosticReport
  • DocumentReference

Exemple de scénario

Supposons que vous recherchiez le mot clé insulin pour un patient donné et que vous ayez filtré les résultats pour afficher les ressources contenant du texte non structuré. Vous recevez, entre autres, les documents suivants:

  • Résultat 1: Une ressource DocumentReference datée du 24 avril 2024 contenant des notes sur les niveaux d'hémoglobine A1c du patient.
  • Résultat 2: Une ressource DiagnosticReport, datée du 11 janvier 2024, qui contient des notes sur le "régime d'insuline" que le patient doit suivre.

Par défaut, le résultat 1 s'affiche plus haut dans les résultats, car il s'agit d'un document plus récent. Toutefois, lorsque vous triez les résultats par pertinence, le résultat 2 s'affiche plus haut. En effet, il est plus pertinent pour la requête de recherche insulin.

Trier les résultats de recherche sur les établissements de santé

Pour trier vos résultats de recherche en fonction de leur pertinence, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page Agent Builder.

    Agent Builder

  2. Sélectionnez l'application de recherche de services de santé que vous souhaitez interroger.

  3. Dans le menu de navigation, cliquez sur Aperçu.

  4. Dans le champ ID du patient, saisissez l'ID du patient dont vous souhaitez interroger les données. Les ID de patient sont sensibles à la casse.

  5. Appuyez sur Entrée ou cliquez sur Aperçu pour envoyer l'ID du patient.

  6. Dans la barre de recherche Rechercher ici, saisissez votre requête.

    Si vous avez activé la saisie semi-automatique, une liste de suggestions de saisie semi-automatique s'affiche sous la barre de recherche à mesure que vous saisissez du texte.

  7. Appuyez sur Entrée pour envoyer la requête.

    • Les résultats de la recherche sont affichés dans des tableaux paginés classés en fonction de leur type de ressource FHIR.
    • Par défaut, les résultats de recherche pour tous les types de ressources FHIR sont affichés dans l'ordre chronologique inverse.
  8. Pour les ressources Composition, DocumentReference et DiagnosticReport, cliquez sur le filtre Trier: ordre chronologique inverse, puis sélectionnez Rélevabilité dans la liste. Les résultats de ces ressources sont ensuite triés par pertinence.

REST

Pour trier les résultats de recherche en fonction de leur pertinence, modifiez votre requête search comme suit:

  • Ajoutez le champ filter à votre requête pour limiter les résultats de recherche aux seules ressources FHIR contenant du texte non structuré: Composition, DiagnosticReport et DocumentReference.
  • Ajoutez le champ orderBy à votre requête de recherche et définissez sa valeur sur _RELEVANCE pour obtenir des réponses de recherche triées en fonction de leur pertinence.
  1. Envoyez la requête de recherche.

    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/engines/APP_ID/servingConfigs/default_search:search" \
      -d '{
    "query": "KEYWORD_QUERY",
    "filter": "patient_id: ANY(\"PATIENT_ID\") AND resource_type: ANY(\"Composition\", \"DiagnosticReport\", \"DocumentReference\")",
    "orderBy": "_RELEVANCE"
    }'
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • APP_ID: ID de l'application Vertex AI Search que vous souhaitez interroger.
    • KEYWORD_QUERY: mot clé que vous souhaitez rechercher dans les données cliniques du patient filtré, par exemple "diabète" ou "a1c".
    • PATIENT_ID: ID de la ressource du patient dont vous souhaitez rechercher les données.

    Vous devriez recevoir une réponse JSON contenant les résultats de recherche détaillés, classés par ordre de pertinence.