Rechercher des données de santé

Après avoir importé des données FHIR R4 dans votre application de recherche de services de santé, vous pouvez interroger les données importées pour obtenir des résultats pertinents. Vous pouvez effectuer des recherches à l'aide des types de requêtes suivants:

  • Requête par mot clé
  • Requête Natural Language
  • Requête en langage naturel avec une réponse générée par IA

Vous pouvez également filtrer votre recherche à l'aide de requêtes filtrées par date. Pour en savoir plus, consultez la section Définir un filtre resource_datetime.

Lorsque vous effectuez une recherche dans la console Google Cloud, vous devez d'abord fournir un ID de patient et une recherche sur les données d'un seul patient à la fois. Lorsque vous effectuez une recherche à l'aide de l'API REST, vous pouvez effectuer une recherche dans l'ensemble de votre magasin de données.

Cette page explique comment rechercher des données de santé à l'aide des différents types de requêtes.

Utilisation prévue de Vertex AI Search pour rechercher des données de santé

Vertex AI Search n'est pas destiné à fournir des informations sur la prévention, le diagnostic ou le traitement de maladies. Les questions concernant le diagnostic ou les recommandations de traitement ne sont pas devant être traités par le produit. Ce produit est destiné à de récupérer et de résumer les informations médicales fournies par les utilisateurs.

En raison de données de test limitées, ce produit peut être applicable ou non aux groupes d'âge de 0 à 18 ans et de 85 ans et plus. Lors de l'examen du résultat généré, les clients doivent tenir compte du caractère représentatif des sous-populations données sources.

Voici quelques exemples d'utilisation prévue de ce produit:

  • Requêtes exploratoires pour trouver des informations sur un patient en rapport avec un sujet:

    • "Résume les utilisations de l'aspirine"
    • "tension artérielle"
    • « gestion du diabète ? »
  • Requêtes de navigation pour trouver des ressources spécifiques qui pourraient être mappées à une requête structurée :

    • "Show me the recent a1c" (Montre-moi l'a1c la plus récente)
  • Questions et réponses extractives permettant de répondre à des questions spécifiques dont les preuves peuvent être réparti entre les ressources:

    • "Ce patient a-t-il déjà été traité avec de la céphalsporine ?"
    • "Le patient a-t-il déjà fait l'objet d'une évaluation psychiatrique ?"

Voici des exemples d'utilisations non prévues pour ce produit :

  • Recommandations de diagnostic et de traitement :

    • "Quel est le diagnostic différentiel de ce patient ?"
    • "Quels médicaments dois-je prescrire au patient ?"

Avant de commencer

Avant d'effectuer une recherche, procédez comme suit:

Vous pouvez effectuer une recherche dans votre data store de santé à l'aide d'un mot clé. Par exemple : peuvent effectuer des recherches à l'aide de mots clés tels que "a1c", "insuline" ou "ulcère" ; pour obtenir des réponses Ressources FHIR.

L'image suivante montre les résultats de recherche lorsque le mot clé est "lipid". Cet exemple n'inclut pas de résumé ni de réponse de l'IA générative.

La requête est "lipid".
Figure 1. Effectuer une recherche à l'aide de mots clés

Pour effectuer une recherche à l'aide d'un mot clé, 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 médicale 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 les données que vous souhaitez interroger. Les ID des patients 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 le mot clé à rechercher.

    Si vous avez activé la saisie semi-automatique, vous verrez une liste de suggestions de saisie semi-automatique ci-dessous. la barre de recherche lors de la saisie.

  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. Facultatif. Pour filtrer les résultats, sélectionnez une ou plusieurs catégories de ressources FHIR qui se trouvent sous la barre de recherche.

  9. Facultatif. Pour classer les résultats en fonction de leur pertinence pour la composition, DocumentReference et DiagnosticReport, cliquez sur le lien Trier: Chronologique inversé et dans la liste sélectionnez Pertinence. Pour en savoir plus, consultez Ordonner les résultats de recherche de prestataires de santé.

REST

L'exemple suivant montre comment rechercher les données FHIR R4 d'un seul patient dans l'application de recherche de soins de santé à l'aide d'un mot clé. Cet exemple utilise la méthode servingConfigs.search.

Par défaut, les résultats de recherche sont renvoyés dans l'ordre chronologique inverse. Lorsque vous effectuez une recherche dans la composition, DiagnosticReport et les ressources DocumentReference, vous pouvez ordonner vos résultats de recherche. en fonction de leur pertinence. Pour en savoir plus, consultez Ordonner les résultats de recherche de prestataires de santé.

  1. Effectuez une recherche à l'aide d'un mot clé.

    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": "patientId: ANY(\"PATIENT_ID\")",
    "contentSearchSpec":{"snippetSpec":{"returnSnippet":true}}
    }'
    

    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 ressource du patient dont vous souhaitez rechercher les données.

Avec Vertex AI Search, vous pouvez obtenir des résultats pour des requêtes dans vos requêtes linguistiques. Par exemple, l'image suivante montre les résultats de la requête en langage naturel "Résultats d'analyse liés au diabète".

La requête est "Quels sont les résultats des analyses lipidiques du patient ?".
Figure 2. Effectuez une recherche en langage naturel.

Pour effectuer une recherche à l'aide d'une requête en langage naturel, 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 des patients 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 une requête en langage naturel, par exemple "Résultats d'analyse liés au diabète".

    Si vous avez activé la saisie semi-automatique, vous verrez une liste de suggestions de saisie semi-automatique ci-dessous. la barre de recherche lors de la saisie.

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

    • Les résultats de la recherche s'affichent dans des tableaux paginés classés par catégories. en fonction de leur type de ressource FHIR.
    • Par défaut, les résultats de la recherche pour tous les types de ressources FHIR sont affichés dans un ordre chronologique inverse.
  8. Facultatif. Sélectionnez une ou plusieurs catégories de ressources FHIR situées sous la barre de recherche pour filtrer les résultats.

  9. Facultatif. Pour trier les résultats en fonction de la pertinence pour les ressources Composition, DocumentReference et DiagnosticReport, cliquez sur le filtre Trier : ordre chronologique inverse, puis sélectionnez Relevance (Pertinence) dans la liste. Pour plus plus d'informations, consultez Trier les résultats de recherche liés à la santé.

REST

L'exemple suivant montre comment rechercher les données FHIR R4 d'un seul patient dans l'application de recherche de services de santé à l'aide d'une requête en langage naturel. Cet exemple utilise la méthode servingConfigs.search. Pour effectuer une recherche à l'aide d'un requête en langage, vous devez ajouter naturalLanguageQueryUnderstandingSpec dans le corps de la requête.

Par défaut, les résultats de la recherche sont renvoyés dans l'ordre chronologique inverse. Lorsque vous effectuez une recherche dans les ressources Composition, DiagnosticReport et DocumentReference, vous pouvez trier les résultats de recherche en fonction de leur pertinence. Pour en savoir plus, consultez Classer les résultats de recherche concernant les soins de santé

  1. Publiez une requête en langage naturel.

    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": "NATURAL_LANGUAGE_QUERY",
    "filter": "patientId: ANY(\"PATIENT_ID\")",
    "contentSearchSpec":{"snippetSpec":{"returnSnippet":true}},
    "naturalLanguageQueryUnderstandingSpec":{"filterExtractionCondition":"ENABLED"}
    }'
    

    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.
    • NATURAL_LANGUAGE_QUERY: requête en langage naturel, par exemple "Résultats de l'atelier liés à le diabète » ou "Le patient suit-il actuellement un traitement ?".
    • PATIENT_ID: ID de ressource du patient dont vous souhaitez rechercher les données.

Effectuer des recherches à l'aide d'une requête en langage naturel avec réponse de l'IA générative

Lorsque vous recherchez les données FHIR d'un patient à l'aide d'une requête en langage naturel, vous pouvez d'obtenir une réponse basée sur l'IA générative dans les résultats de recherche. La réponse résume les résultats de recherche et affiche également les références utilisées pour générer la réponse.

Lorsque vous utilisez la console, vous pouvez sélectionner le grand modèle de langage (LLM) pour les réponses de l'IA générative. Pour en savoir plus, consultez Configurer les résultats de recherche pour les données de santé.

Lorsque vous utilisez l'API REST, vous pouvez spécifier l'un des modèles LLM suivants pour fournir réponses de l'IA générative dans le domaine version:

  • gemini-1.5-flash-001/answer_gen/v1 ou stable : modèle stable, disponible en général, basé sur le modèle gemini-1.5-flash-001. Pour en savoir plus, consultez la section Modèles en disponibilité générale (DG).
  • gemini-1.0-pro-002/answer_gen/v1 : recherche Vertex AI basée sur le modèle gemini-1.0-pro-002. Pour en savoir plus, consultez la section Modèles en disponibilité générale (DG).
  • medlm-medium/answer_gen/v1 ou preview: modèle de prévisualisation basé sur le modèle MedLM. Pour en savoir plus, consultez la section Modèle MedLM.

L'image suivante présente un exemple de requête en langage naturel avec Réponse de l'IA. Le résumé de recherche fournit une réponse à la requête en résumant les conclusions des résultats pertinents. Vous pouvez développer les segments contenant des citations pour afficher les références utilisées pour générer le segment sélectionné. Toutes les réponses générées ne comportent pas de citations.

Requête : Quels sont les
dans les laboratoires lipidiques du patient. Les résultats de recherche sont affichés dans un format tabulaire. La
les résultats de recherche s'accompagnent d'un résumé généré par IA générative sur lequel figure la citation. Le patient n'a pas
allergies connues endcitation.
Figure 3 : Effectuez des recherches à l'aide d'une requête en langage naturel avec une réponse basée sur l'IA générative.

Pour effectuer une recherche avec l'IA générative, 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 Configurations.

  4. Personnalisez le widget Recherche :

    1. Dans le champ Type de recherche, sélectionnez Rechercher à l'aide d'une réponse.
    2. Sélectionnez le modèle que vous souhaitez utiliser pour générer le résumé. Pour plus informations, consultez Configurer les résultats de recherche pour les données de santé.
    3. Enregistrez et publiez vos préférences.
  5. Dans le menu de navigation, cliquez sur Aperçu.

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

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

  8. Dans la barre de recherche Rechercher ici, saisissez une requête en langage naturel, telle que "nsaids", "Quels sont les laboratoires lipidiques du patient ?" ou "Quelle est la A1C result".

    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.

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

    • La réponse de l'IA générative s'affiche sous la barre de recherche.
    • Les résultats de la recherche s'affichent dans des tableaux paginés classés par catégories. en fonction de leur type de ressource FHIR.
    • Par défaut, les résultats de la recherche pour tous les types de ressources FHIR sont affichés dans un ordre chronologique inverse.
  10. Facultatif. Développez un segment de la réponse contenant des citations pour afficher les références de les résultats de recherche.

  11. Facultatif. Sélectionnez une ou plusieurs catégories de ressources FHIR situées sous la barre de recherche pour filtrer les résultats.

  12. Facultatif. Pour classer les résultats en fonction de leur pertinence pour la composition, DocumentReference et DiagnosticReport, cliquez sur le lien Trier: Chronologique inversé et dans la liste sélectionnez Pertinence. Pour en savoir plus, consultez Ordonner les résultats de recherche de prestataires de santé.

REST

L'exemple suivant montre comment rechercher les données FHIR R4 d'un seul patient dans l'application de recherche de soins de santé à l'aide d'une requête en langage naturel avec des réponses d'IA générative. Cet exemple utilise la méthode servingConfigs.search.

  • Pour effectuer une recherche à l'aide d'une requête en langage naturel, vous devez ajouter la méthode naturalLanguageQueryUnderstandingSpec au corps de la requête.
  • Pour inclure des index de citations en ligne, vous devez ajouter le champ includeCitations. Il s'agit d'un champ booléen dont la valeur par défaut est false.

Par défaut, les résultats de recherche sont renvoyés dans l'ordre chronologique inverse. Lorsque vous effectuez une recherche dans la composition, DiagnosticReport et les ressources DocumentReference, vous pouvez ordonner vos résultats de recherche. en fonction de leur pertinence. Pour en savoir plus, consultez Ordonner les résultats de recherche de prestataires de santé.

  1. Publiez une requête en langage naturel.

    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": "QUERY",
            "filter": "patientId: ANY(\"PATIENT_ID\")",
            "contentSearchSpec": {
              "snippetSpec": {
                "returnSnippet": true
              },
              "summarySpec": {
                "summaryResultCount": 1,
                "includeCitations": true,
                "modelSpec": {
                  "version": "MODEL_VERSION"
                }
              }
            },
            "naturalLanguageQueryUnderstandingSpec": {
              "filterExtractionCondition": "ENABLED"
            }
          }'
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet Google Cloud
    • APP_ID: ID de l'application Vertex AI Search que vous que vous souhaitez interroger.
    • QUERY: requête en langage naturel par exemple "nsaïdes", "Quels sont les patients résultat A1C le plus récent". Si la requête inclut une apostrophe ', vous devez la remplacer par la référence de caractère numérique d'une apostrophe: '.
    • PATIENT_ID : ID de la ressource du patient dont vous souhaitez rechercher les données.
    • MODEL_VERSION : version du modèle que vous souhaitez utiliser pour générer la réponse.