Pesquisar dados de saúde

Depois de importar dados do FHIR R4 para seu app de pesquisa de saúde, você pode consultar os dados importados para receber resultados relevantes. Você pode pesquisar usando os seguintes tipos de consultas:

  • Consulta de palavra-chave
  • Consulta do Natural Language
  • Consulta de linguagem natural com uma resposta de IA generativa

Além disso, é possível filtrar sua pesquisa usando consultas com filtro de data. Para mais informações, consulte Defina um filtro resource_datetime.

Ao pesquisar no console do Google Cloud, primeiro você precisa informar um ID de paciente e pesquisar dados de um paciente por vez. Quando você pesquisa usando a API REST, é possível pesquisar todo o repositório de dados.

Esta página mostra como pesquisar dados de saúde usando os vários tipos de consultas.

Uso pretendido da Vertex AI para Pesquisa na pesquisa de dados de saúde

A Vertex AI para Pesquisa não tem como objetivo fornecer informações relacionados à prevenção, diagnóstico ou tratamento de uma doença. As perguntas sobre recomendações de diagnóstico ou tratamento não são destinadas a serem abordadas pelo produto. O uso pretendido deste produto é extrair e resumir as informações médicas fornecidas pelos usuários.

Devido aos dados de teste limitados, este produto pode ou não ser aplicável aos grupos de 0 a 18 anos e 85 anos ou mais. Portanto, ao analisar a saída gerada, os clientes precisam considerar a representatividade das subpopulações nos dados de origem.

Confira abaixo alguns exemplos de como esse produto deve ser usado:

  • Consultas exploratórias para encontrar informações de um paciente relevantes para um tópico:

    • "Resumir os usos da aspirina"
    • "pressão arterial"
    • "diabetes management?"
  • Consultas de navegação para encontrar recursos específicos que podem ser mapeados para uma consulta estruturada:

    • "Mostre a versão a1c mais recente"
  • Perguntas e respostas extrativas para responder a perguntas específicas quando as evidências possam ser distribuídos entre os recursos:

    • "Este paciente já foi tratado com cefalsporina?".
    • "O paciente já fez avaliação psiquiátrica?"

Confira a seguir exemplos de como não usar o produto:

  • Recomendações de diagnóstico e tratamento:

    • "Qual é o diagnóstico diferencial deste paciente?"
    • "Quais medicamentos devo prescrever para o paciente?"

Antes de começar

Antes de pesquisar, faça o seguinte:

Você pode pesquisar seu repositório de dados de saúde usando uma palavra-chave. Por exemplo, pode pesquisar usando palavras-chave como "a1c", "insulína" ou "úlcera" para se tornar relevante recursos FHIR.

A imagem a seguir mostra os resultados da pesquisa quando a palavra-chave é "lipid". Este exemplo não inclui um resumo ou uma resposta de IA generativa.

A consulta é "lipid".
Figura 1. Pesquisar usando palavra-chave.

Para pesquisar usando uma palavra-chave, conclua as etapas a seguir.

Console

  1. No Console do Google Cloud, acesse a página Criador de agentes.

    Agent Builder.

  2. Selecione o app de pesquisa de saúde que você quer consultar.

  3. No menu de navegação, clique em Visualizar.

  4. No campo ID do paciente, insira o ID do paciente cujos dados você quer consultar. Os IDs dos pacientes diferenciam maiúsculas de minúsculas.

  5. Pressione Enter ou clique em Visualizar para enviar o ID do paciente.

  6. Na barra de pesquisa Pesquisar aqui, digite uma palavra-chave.

    Se você tiver ativado o preenchimento automático, verá uma lista de sugestões abaixo. na barra de pesquisa enquanto digita.

  7. Pressione Enter para enviar a consulta.

    • Os resultados da pesquisa são exibidos em tabelas paginadas que são categorizadas com base no tipo de recurso FHIR.
    • Por padrão, os resultados da pesquisa de todos os tipos de recursos FHIR são exibidos em ordem cronológica inversa.
  8. Opcional. Para filtrar os resultados, selecione uma ou mais categorias de recursos FHIR que estão abaixo da barra de pesquisa.

  9. Opcional. Para ordenar os resultados de acordo com a relevância para a composição, os DocumentReference e os recursos do DiagnosticReport, clique nos Sort: Reverse Chronological (Classificar: ordem cronológica inversa) do filtro da lista selecione Relevância. Para mais informações, consulte Ordenar resultados de pesquisa de saúde.

REST

O exemplo a seguir mostra como pesquisar os dados FHIR R4 de um único paciente no aplicativo de pesquisa de saúde usando uma palavra-chave. Este exemplo usa o método servingConfigs.search.

Por padrão, os resultados da pesquisa são retornados em ordem cronológica inversa. Ao pesquisar nos recursos Composition, DiagnosticReport e DocumentReference, você pode ordenar os resultados da pesquisa de acordo com a relevância. Para mais informações, consulte Ordenar resultados de pesquisa de saúde.

  1. Pesquise usando uma palavra-chave.

    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}}
    }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Google Cloud.
    • APP_ID: o ID do app da Vertex AI para Pesquisa que você quer consultar.
    • KEYWORD_QUERY: a palavra-chave que você quer pesquisar nos dados clínicos do paciente filtrado, como "diabetes" ou "a1c".
    • PATIENT_ID: o ID do recurso do paciente cujos dados você quer pesquisar.

Com a Vertex AI para Pesquisa, é possível gerar resultados para pesquisas naturais consultas em outros idiomas. Por exemplo, a imagem a seguir mostra os resultados da consulta de linguagem natural: "Resultados de laboratório relacionados à diabetes".

A consulta é "Quais são os exames de lípidos do paciente?".
Figura 2. Pesquisa usando consulta em linguagem natural.

Para pesquisar usando uma consulta de linguagem natural, siga estas etapas.

Console

  1. No Console do Google Cloud, acesse a página Criador de agentes.

    Agent Builder.

  2. Selecione o app de pesquisa de saúde que você quer consultar.

  3. No menu de navegação, clique em Visualizar.

  4. No campo ID do paciente, insira o ID do paciente cujos dados você quer consultar. Os IDs dos pacientes diferenciam maiúsculas de minúsculas.

  5. Pressione Enter ou clique em Visualizar para enviar o ID do paciente.

  6. Na barra de pesquisa Pesquisar aqui, insira uma consulta de linguagem natural, como "Resultados de laboratório relacionados a diabetes".

    Se você tiver ativado o preenchimento automático, uma lista de sugestões vai aparecer abaixo da barra de pesquisa conforme você digita.

  7. Pressione Enter para enviar a consulta.

    • Os resultados da pesquisa são exibidos em tabelas paginadas que são categorizadas com base no tipo de recurso FHIR.
    • Por padrão, os resultados da pesquisa de todos os tipos de recursos FHIR são exibidos em em ordem cronológica inversa.
  8. Opcional. Selecione uma ou mais categorias de recursos do FHIR que estão abaixo da barra de pesquisa para filtrar os resultados.

  9. Opcional. Para ordenar os resultados de acordo com a relevância para os recursos Composition, DocumentReference e DiagnosticReport, clique no filtro Sort: Reverse Chronological e selecione Relevance na lista. Para mais informações, consulte Ordenar resultados de pesquisa de saúde.

REST

O exemplo a seguir mostra como pesquisar os dados FHIR R4 de um único paciente no app de pesquisa de saúde. usando uma consulta de linguagem natural. Este exemplo usa o método servingConfigs.search. Para pesquisar usando um é necessário adicionar o naturalLanguageQueryUnderstandingSpec ao corpo da solicitação.

Por padrão, os resultados da pesquisa são retornados em ordem cronológica inversa. Ao pesquisar nos recursos Composition, DiagnosticReport e DocumentReference, você pode ordenar os resultados da pesquisa de acordo com a relevância. Para mais informações, consulte Ordenar resultados de pesquisa de saúde.

  1. Postar uma consulta em linguagem natural.

    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"}
    }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Google Cloud.
    • APP_ID: o ID do app da Vertex AI para Pesquisa que você quer consultar.
    • NATURAL_LANGUAGE_QUERY: a consulta em linguagem natural, como "Resultados de laboratório relacionados a diabetes" ou "O paciente está tomando algum medicamento?".
    • PATIENT_ID: o ID de recurso do paciente com os dados que você quer pesquisar.

Pesquisar usando a consulta de linguagem natural com a resposta de IA generativa

Ao pesquisar os dados FHIR de um paciente usando uma consulta de linguagem natural, você pode escolher receber uma resposta de IA generativa junto com os resultados da pesquisa. A resposta resume os resultados da pesquisa e também mostra os referências usadas para gerar a resposta.

Ao usar o console, você pode selecionar o modelo de linguagem grande (LLM) para respostas de IA generativa. Para mais informações, consulte Configurar resultados da pesquisa para dados de saúde.

Ao usar a API REST, você pode especificar um dos seguintes modelos de LLM para receber respostas de IA generativa no campo version:

  • gemini-1.5-flash-001/answer_gen/v1 ou stable: um modelo estável e geralmente disponível com base no modelo gemini-1.5-flash-001. Para mais informações, consulte Modelos de disponibilidade geral (GA).
  • gemini-1.0-pro-002/answer_gen/v1: uma pesquisa da Vertex AI baseada no modelo gemini-1.0-pro-002. Para mais informações, consulte Modelos de disponibilidade geral (GA).
  • medlm-medium/answer_gen/v1 oupreview: um modelo de pré-visualização baseado no MedLM. Para mais informações, consulte Modelo MedLM.

A imagem a seguir mostra um exemplo de consulta de linguagem natural com resposta de IA generativa. O resumo de pesquisa fornece uma resposta para a consulta as descobertas de resultados relevantes. Você pode expandir segmentos que têm citações para ver as referências usadas para gerar o segmento selecionado. Nem todas as respostas geradas têm citações.

A consulta é "Quais são os
laboratórios de lípidos do paciente?". Os resultados da pesquisa são mostrados em um formato
tabular. Os
resultados da pesquisa são acompanhados por um resumo gerado pela IA generativa que diz "O paciente não tem
alergias conhecidas".
Figura 3. Pesquise usando a consulta de linguagem natural com a resposta de IA generativa.

Para pesquisar com a resposta de IA generativa, faça o seguinte:

Console

  1. No Console do Google Cloud, acesse a página Criador de agentes.

    Agent Builder.

  2. Selecione o app de pesquisa de saúde que você quer consultar.

  3. No menu de navegação, clique em Configurações.

  4. Personalize o widget de pesquisa:

    1. No campo Tipo de pesquisa, selecione Pesquisar com uma resposta.
    2. Selecione o modelo que você quer usar para gerar o resumo. Para mais informações, consulte Configurar resultados de pesquisa para dados de saúde.
    3. Salve e publique suas preferências.
  5. No menu de navegação, clique em Visualizar.

  6. No campo ID do paciente, insira o ID do paciente cujos dados você quer consultar. Os IDs dos pacientes diferenciam maiúsculas de minúsculas.

  7. Pressione Enter ou clique em Visualizar para enviar o ID do paciente.

  8. Na barra de pesquisa Pesquisar aqui, insira uma consulta de linguagem natural, como "nsaids", "Quais são os laboratórios de lipídios do paciente" ou "Qual é a clonagem mais recente resultado de A1C".

    Se você tiver ativado o preenchimento automático, verá uma lista de sugestões abaixo. na barra de pesquisa enquanto digita.

  9. Pressione Enter para enviar a consulta.

    • A resposta da IA generativa aparece abaixo da barra de pesquisa.
    • Os resultados da pesquisa são mostrados em tabelas paginadas categorizadas com base no tipo de recurso do FHIR.
    • Por padrão, os resultados da pesquisa de todos os tipos de recursos FHIR são exibidos em em ordem cronológica inversa.
  10. Opcional. Abra um segmento da resposta que tenha citações para conferir as referências nos resultados da pesquisa.

  11. Opcional. Selecione uma ou mais categorias de recursos do FHIR que estão abaixo da barra de pesquisa para filtrar os resultados.

  12. Opcional. Para ordenar os resultados de acordo com a relevância para os recursos Composition, DocumentReference e DiagnosticReport, clique no filtro Sort: Reverse Chronological e selecione Relevance na lista. Para mais informações, consulte Ordenar resultados de pesquisa de saúde.

REST

O exemplo a seguir mostra como pesquisar os dados FHIR R4 de um único paciente no App de pesquisa de saúde usando uma consulta de linguagem natural com respostas de IA generativa. Este exemplo usa o método servingConfigs.search.

  • Para pesquisar usando uma consulta de linguagem natural, adicione o campo naturalLanguageQueryUnderstandingSpec ao corpo da solicitação.
  • Para incluir índices de citação inline, adicione o campo includeCitations. Este é um campo booleano com o padrão definido como false.

Por padrão, os resultados da pesquisa são retornados em ordem cronológica inversa. Ao pesquisar nos recursos Composition, DiagnosticReport e DocumentReference, você pode ordenar os resultados da pesquisa de acordo com a relevância. Para mais informações, consulte Solicitar resultados de pesquisa de saúde.

  1. Publique uma consulta em linguagem natural.

    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"
            }
          }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Google Cloud.
    • APP_ID: o ID do app Vertex AI para Pesquisa que você o que você quer consultar.
    • QUERY: a consulta em linguagem natural. como "nsaids", "Quais são os laboratórios de lipídios dos pacientes" ou "Qual é resultado mais recente de A1C". Se a consulta incluir um apóstrofo ', substitua-o pela referência numérica do caractere apóstrofo: '.
    • PATIENT_ID: o ID de recurso do paciente com os dados que você quer pesquisar.
    • MODEL_VERSION: a versão do modelo que você quer usar para gerar a resposta.