Para pesquisar dados clínicos na Vertex AI para Pesquisa, siga um destes fluxos de trabalho:
- Crie um repositório de dados de saúde, importe dados do FHIR R4 para ele, conecte-o a um app de pesquisa de saúde e consulte os dados clínicos.
- Crie um app de pesquisa de saúde, crie um repositório de dados de saúde e importe dados do FHIR R4 para o repositório durante o processo de criação do app e consulte os dados clínicos. Para mais informações, consulte Criar um app de pesquisa de saúde.
Esta página descreve o primeiro método.
Sobre a frequência de importação de dados
É possível importar dados do FHIR R4 para um repositório de dados das seguintes maneiras:
Importação em lote: uma importação única. Os dados são importados para um repositório de dados em lotes. Para outras importações incrementais, consulte Atualizar dados de saúde.
Importação de streaming: uma importação de dados de streaming quase em tempo real. Todas as mudanças incrementais na loja FHIR de origem são sincronizadas no repositório de dados da Vertex AI para Pesquisa. O streaming exige um conector de dados, que é um tipo de armazenamento de dados. Para criar um conector de dados, você precisa configurar uma coletânea. Um conector de dados contém uma entidade, que também é uma instância de repositório de dados.
Também é possível pausar e retomar a transmissão e fazer a sincronização manual sempre que necessário. Para mais informações, consulte Gerenciar um repositório de dados de pesquisa de saúde.
A taxa de streaming de dados de um determinado projeto Google Cloud depende das cotas a seguir. Se você exceder a cota, poderá ocorrer atrasos no streaming.
- O número de gravações pendentes de streaming do FHIR ou do BigQuery por minuto. Para mais informações, consulte Cotas e limites.
- O número de operações de leitura FHIR por minuto por região. Para mais informações, consulte Cotas do FHIR da API Cloud Healthcare.
É possível selecionar a frequência de importação de dados no momento da criação do repositório de dados, e não é possível mudar essa configuração mais tarde.
Antes de começar
Antes de criar o repositório de dados de saúde e importar dados para ele, entenda o seguinte:
A relação entre apps e repositórios de dados para pesquisa de saúde. Para mais informações, consulte Sobre apps e repositórios de dados.
A Vertex AI para Pesquisa de saúde oferece serviços de pesquisa apenas na multirregião dos EUA (
us
). Portanto, o app de pesquisa e os repositórios de dados de saúde precisam estar na multirregiãous
.Se você estiver importando dados de saúde de uma loja FHIR da API Cloud Healthcare em um projeto Google Cloud para uma loja de dados de pesquisa da Vertex AI em um projeto Google Cloud diferente e usar o VPC Service Controls, os dois projetos precisam estar no mesmo perímetro.
Criar um repositório de dados e importar dados
É possível criar um repositório de dados e importar seus dados do FHIR R4 no console do Google Cloud ou usando a API com as seguintes abordagens:
- É possível criar um repositório de dados estático com uma importação em lote única. Para mais informações, consulte Criar um repositório de dados estático e realizar uma importação em lote única.
- É possível criar um repositório de dados de streaming com mudanças da armazenamento FHIR da API Cloud Healthcare transmitidas continuamente para o repositório de dados da Vertex AI para Pesquisa. Para mais informações, consulte Criar um repositório de dados de streaming e configurar uma importação de streaming.
Criar um repositório de dados estático e realizar uma importação em lote única
Esta seção descreve como criar um repositório de dados da Vertex AI para Pesquisa em que só é possível realizar importações em lote. É possível importar dados em lote quando você cria o repositório de dados e realizar importações incrementais em lote sempre que necessário.
Console
No Console do Google Cloud, acesse a página Criador de agentes.
No menu de navegação, clique em Repositórios de dados.
Clique em add_box Criar repositório de dados.
- No painel Selecionar uma fonte de dados, escolha API HealthCare (FHIR) como sua fonte de dados.
- Para importar dados do armazenamento FHIR, faça um destes procedimentos:
- Selecione o armazenamento de FHIR na lista de opções disponíveis:
- Abra o campo Armazenamento FHIR.
- Nessa lista, selecione um conjunto de dados que esteja em um local permitido e, em seguida, selecione um armazenamento de FHIR que use a versão R4.
- Insira o armazenamento FHIR manualmente:
- Abra o campo Armazenamento FHIR.
- Clique em Inserir armazenamento FHIR manualmente.
- Na caixa de diálogo Nome da loja FHIR, insira o nome completo da loja FHIR no seguinte formato:
project/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
- Clique em Salvar.
- Selecione o armazenamento de FHIR na lista de opções disponíveis:
- Na seção Sincronização, selecione uma das seguintes opções.
Essa seleção não pode ser alterada após a criação do repositório de dados.
- Única: para realizar uma importação única de dados em lote. Para mais importações incrementais, consulte Atualizar dados de saúde.
- Streaming: para realizar uma importação de dados de streaming quase em tempo real. Para transmitir dados, crie um conector de dados, que é um tipo de repositório de dados. Para configurar um repositório de dados de streaming usando a API REST, entre em contato com o engenheiro de clientes.
- Na seção Qual é o esquema desses dados?, selecione uma destas opções:
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após a criação do repositório de dados. Se você quiser
mudar o esquema após a criação do repositório de dados, selecione a opção
Esquema personalizado.
- Clique em Continuar.
- No campo Nome do repositório de dados, insira um nome para o repositório.
- Clique em Criar.
O repositório de dados que você criou é listado na página Repositórios de dados.
- Esquema personalizado: para definir suas próprias configurações de esquema, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Para configurar um esquema
configurável, entre em contato com o Engenheiro de clientes.
- Clique em Continuar.
- Revise o esquema, expanda cada campo e edite as configurações.
- Clique em Adicionar novos campos para adicionar novos campos aos recursos FHIR compatíveis. Não é possível remover os campos fornecidos no esquema definido pelo Google.
- Clique em Continuar.
- No campo Nome do conector de dados, insira um nome para o conector.
- Clique em Criar.
O conector de dados que você criou é listado na página Repositórios de dados. O armazenamento FHIR de origem é adicionado como uma entidade no conector de dados.
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após a criação do repositório de dados. Se você quiser
mudar o esquema após a criação do repositório de dados, selecione a opção
Esquema personalizado.
- Clique em Continuar.
REST
Crie um repositório de dados.
curl -X POST\ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json"\ -H "X-Goog-User-Project: PROJECT_ID" \ "https://us-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "HEALTHCARE_FHIR", "solutionTypes": ["SOLUTION_TYPE_SEARCH"], "searchTier": "STANDARD", "searchAddOns": ["LLM"], "healthcareFhirConfig": { "enableConfigurableSchema": CONFIGURABLE_SCHEMA_TRUE|FALSE } }'
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud .DATA_STORE_ID
: o ID do repositório de dados da Vertex AI para Pesquisa que você quer criar. Esse ID só pode conter letras minúsculas, dígitos, sublinhados e hifens.DATA_STORE_DISPLAY_NAME
: o nome de exibição do repositório de dados da Vertex AI para Pesquisa que você quer criar.CONFIGURABLE_SCHEMA_TRUE|FALSE
: um booleano que, quando definido comotrue
, permite configurar o esquema de armazenamento de dados usando o métodoschema.update
.
Se a loja de FHIR de origem e a loja de dados da Vertex AI para Pesquisa estiverem no mesmo projeto Google Cloud , chame o método a seguir para realizar uma importação em lote única. Se eles não estiverem no mesmo projeto, vá para a próxima etapa.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://us-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/us/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "reconciliation_mode": "FULL", "fhir_store_source": {"fhir_store": "projects/PROJECT_ID/locations/CLOUD_HEALTHCARE_DATASET_LOCATION/datasets/CLOUD_HEALTHCARE_DATASET_ID/fhirStores/FHIR_STORE_ID"} }'
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud .DATA_STORE_ID
: o ID do repositório de dados da Vertex AI para Pesquisa.CLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: o local do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.FHIR_STORE_ID
: o ID da loja FHIR R4 da API Cloud Healthcare.
Se o repositório FHIR de origem e o repositório de dados da Vertex AI para Pesquisa estiverem em projetos Google Cloud diferentes, chame o método a seguir para realizar uma importação em lote única. Se estiverem no mesmo projeto, volte para a etapa anterior.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://us-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/us/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "reconciliation_mode": "FULL", "fhir_store_source": {"fhir_store": "projects/SOURCE_PROJECT_ID/locations/CLOUD_HEALTHCARE_DATASET_LOCATION/datasets/CLOUD_HEALTHCARE_DATASET_ID/fhirStores/FHIR_STORE_ID"} }'
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud que contém o repositório de dados da Vertex AI para Pesquisa.DATA_STORE_ID
: o ID do repositório de dados da Vertex AI para Pesquisa.SOURCE_PROJECT_ID
: o ID do projeto Google Cloud que contém o conjunto de dados da API Cloud Healthcare e o armazenamento FHIR.CLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: o local do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.FHIR_STORE_ID
: o ID da loja FHIR R4 da API Cloud Healthcare.
Python
Para mais informações, consulte a documentação de referência da API Python do Vertex AI Agent Builder.
Para autenticar no Vertex AI Agent Builder, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Criar um repositório de dados
Importar documentos
A seguir
- Verifique a criação do repositório de dados e a importação de dados FHIR.
- Cancelar uma importação em lote em andamento.
- Atualize o esquema da sua loja de dados.
Criar um repositório de dados de streaming e configurar uma importação
Esta seção descreve como criar um repositório de dados de streaming da Vertex AI para Pesquisa que transmite continuamente as mudanças da sua loja FHIR da API Cloud Healthcare.
Console
No Console do Google Cloud, acesse a página Criador de agentes.
No menu de navegação, clique em Repositórios de dados.
Clique em add_box Criar repositório de dados.
- No painel Selecionar uma fonte de dados, escolha API HealthCare (FHIR) como sua fonte de dados.
- Para importar dados do armazenamento FHIR, faça um destes procedimentos:
- Selecione o armazenamento de FHIR na lista de opções disponíveis:
- Abra o campo Armazenamento FHIR.
- Nessa lista, selecione um conjunto de dados que esteja em um local permitido e, em seguida, selecione um armazenamento de FHIR que use a versão R4.
- Insira o armazenamento FHIR manualmente:
- Abra o campo Armazenamento FHIR.
- Clique em Inserir armazenamento FHIR manualmente.
- Na caixa de diálogo Nome da loja FHIR, insira o nome completo da loja FHIR no seguinte formato:
project/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
- Clique em Salvar.
- Selecione o armazenamento de FHIR na lista de opções disponíveis:
- Na seção Sincronização, selecione uma das seguintes opções.
Essa seleção não pode ser alterada após a criação do repositório de dados.
- Única: para realizar uma importação única de dados em lote. Para mais importações incrementais, consulte Atualizar dados de saúde.
- Streaming: para realizar uma importação de dados de streaming quase em tempo real. Para transmitir dados, crie um conector de dados, que é um tipo de repositório de dados. Para configurar um repositório de dados de streaming usando a API REST, entre em contato com o engenheiro de clientes.
- Na seção Qual é o esquema desses dados?, selecione uma destas opções:
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após a criação do repositório de dados. Se você quiser
mudar o esquema após a criação do repositório de dados, selecione a opção
Esquema personalizado.
- Clique em Continuar.
- No campo Nome do repositório de dados, insira um nome para o repositório.
- Clique em Criar.
O repositório de dados que você criou é listado na página Repositórios de dados.
- Esquema personalizado: para definir suas próprias configurações de esquema, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Para configurar um esquema
configurável, entre em contato com o Engenheiro de clientes.
- Clique em Continuar.
- Revise o esquema, expanda cada campo e edite as configurações.
- Clique em Adicionar novos campos para adicionar novos campos aos recursos FHIR compatíveis. Não é possível remover os campos fornecidos no esquema definido pelo Google.
- Clique em Continuar.
- No campo Nome do conector de dados, insira um nome para o conector.
- Clique em Criar.
O conector de dados que você criou é listado na página Repositórios de dados. O armazenamento FHIR de origem é adicionado como uma entidade no conector de dados.
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexabilidade, capacidade de pesquisa e recuperação, para os recursos e elementos
do FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após a criação do repositório de dados. Se você quiser
mudar o esquema após a criação do repositório de dados, selecione a opção
Esquema personalizado.
- Clique em Continuar.
REST
Crie um conector de dados para configurar o streaming.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us:setUpDataConnector" \ -d ' { "collectionId": "COLLECTION_ID", "collectionDisplayName": "COLLECTION_NAME", "dataConnector": { "dataSource": "gcp_fhir", "params": { "instance_uri": "projects/SOURCE_PROJECT_ID/locations/CLOUD_HEALTHCARE_DATASET_LOCATION/datasets/CLOUD_HEALTHCARE_DATASET_ID" }, "entities": [ { "entityName": "FHIR_STORE_NAME" "healthcareFhirConfig": { "enableConfigurableSchema": CONFIGURABLE_SCHEMA_TRUE|FALSE, "enableStaticIndexingForBatchIngestion": STATIC_INDEXING_TRUE|FALSE } } ], "syncMode": "STREAMING" } }'
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud .COLLECTION_ID
: o ID da coleção para a qual você quer transmitir os dados do FHIR R4.COLLECTION_NAME
: nome da coleção para onde você quer transmitir os dados do FHIR R4.SOURCE_PROJECT_ID
: o ID do projeto Google Cloud que contém o conjunto de dados da API Cloud Healthcare e o armazenamento FHIR.CLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: o local do conjunto de dados da API Cloud Healthcare que contém o armazenamento FHIR de origem.FHIR_STORE_ID
: o ID da loja FHIR R4 da API Cloud Healthcare.CONFIGURABLE_SCHEMA_TRUE|FALSE
: um booleano que, quando definido comotrue
, permite configurar o esquema do repositório de dados usando o métodoschema.update
.STATIC_INDEXING_TRUE|FALSE
: um booleano que, quando definido comotrue
, permite importar dados históricos com uma cota de indexação mais alta. Isso é útil quando você espera que o app de pesquisa encontre um volume maior de dados. No entanto, os registros individuais levam mais tempo para serem indexados. O Google recomenda definir esse campo comotrue
.
- Se a coleção for criada, um conector de dados será adicionado à lista de repositórios de dados na página Repositórios de dados no console do Google Cloud.
- O conector de dados criado contém uma entidade, que tem o mesmo nome do armazenamento FHIR R4 de onde você está transmitindo os dados.
A seguir
- Verifique a criação do repositório de dados e a importação de dados FHIR.
- Atualize o esquema da sua loja de dados.
- Pausar ou retomar o streaming.
Verificar a criação do repositório de dados e a importação de dados FHIR
Esta tarefa mostra como verificar se um repositório de dados foi criado e se os dados do FHIR foram importados para o repositório.
- No console do Google Cloud: selecione o repositório de dados e verifique os detalhes dele.
- Pela API REST:
- Use o método
dataStores.get
para conferir os detalhes do repositório de dados de saúde. - Use o método
operations.get
para conferir os detalhes da operação de importação.
- Use o método
Para verificar a criação e a importação de dados do repositório, siga estas etapas.
Console
No Console do Google Cloud, acesse a página Criador de agentes.
No menu de navegação, clique em Repositórios de dados.
A página Armazenamentos de dados mostra uma lista de repositórios de dados no projeto Google Cloud com os detalhes deles.
Verifique se o repositório de dados ou o conector de dados que você criou está na lista de repositórios de dados. Na lista de armazenamentos de dados, um conector que transmite dados contém um armazenamento de dados com o mesmo nome do armazenamento de FHIR da API Cloud Healthcare.
Selecione o repositório de dados ou o conector de dados e verifique os detalhes.
- Para um repositório de dados:
- A tabela de resumo lista os seguintes detalhes:
- O ID, o tipo e a região do repositório de dados.
- O número de documentos que indicam o número de recursos FHIR importados.
- O carimbo de data/hora em que o último documento foi importado.
- Opcionalmente, clique em Ver detalhes para conferir os detalhes da importação de documentos, como detalhes sobre uma importação bem-sucedida, parcial ou com falha.
- A guia Documentos lista os IDs dos recursos FHIR importados e os tipos de recursos em uma tabela paginada. É possível filtrar essa tabela para verificar se um recurso específico foi importado.
- A guia Atividade lista os detalhes da importação de documentos, como os detalhes sobre uma importação bem-sucedida, parcial ou com falha.
- A tabela de resumo lista os seguintes detalhes:
- Para um conector de dados:
- A tabela de resumo lista os seguintes detalhes:
- O ID, o tipo e a região da coleção.
- O nome do app conectado.
- O estado do conector, que pode ser ativo ou pausado.
- A tabela Entidades mostra a entidade no conector de dados.
O nome da entidade é o nome da loja FHIR de origem. O ID da entidade é
o ID do conector de dados anexado ao nome do armazenamento FHIR de origem.
- Clique no nome da entidade para conferir os detalhes. Como uma entidade é uma instância de armazenamento de dados em um conector de dados, os detalhes da entidade são iguais aos detalhes de um armazenamento de dados.
- A tabela de resumo lista os seguintes detalhes:
- Para um repositório de dados:
Na guia Esquema, confira as propriedades dos recursos e elementos do FHIR com suporte. Clique em Editar para configurar o esquema. Este é um recurso de pré-lançamento privado. Para configurar um esquema configurável, entre em contato com o engenheiro de clientes.
REST
Verifique a criação do repositório de dados.
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json"\ -H "X-Goog-User-Project: PROJECT_ID" \ "https://us-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID"
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud .DATA_STORE_ID
: o ID do repositório de dados da Vertex AI para Pesquisa.
Verifique se a operação de importação de dados FHIR foi concluída.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://us-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/operations/IMPORT_OPERATION_ID"
Substitua:
PROJECT_ID
: o ID do projeto Google Cloud .DATA_STORE_ID
: o ID do repositório de dados da Vertex AI para Pesquisa.IMPORT_OPERATION_ID
: o ID da operação de longa duração que é retornado quando você chama o métodoimport
.
A seguir
- Crie um app de pesquisa de saúde e conecte seu repositório de dados a ele.
- Pesquise dados de saúde no seu app de pesquisa de saúde.
- Atualizar dados de saúde.