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 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, um repositório de dados de saúde e importe dados 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.
Nesta página, descrevemos 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 mais 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 no repositório 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 repositório de dados. Para criar um conector de dados, é preciso configurar uma coleta. Um conector de dados contém uma entidade, que também é uma instância de repositório de dados.
Você também pode pausar e retomar a transmissão e fazer uma 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 transmissão de dados para um determinado projeto Google Cloud depende das seguintes cotas. Se você exceder a cota, poderá ter 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 do FHIR por minuto por região. Para mais informações, consulte Cotas de 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, mas não é possível mudar essa configuração depois.
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 na área da saúde oferece serviços de pesquisa apenas na multirregião dos EUA (
us
). Portanto, seu app de pesquisa e repositórios de dados de saúde precisam estar na multirregiãous
.Se você estiver importando dados de saúde de um repositório de FHIR da API Cloud Healthcare em um projeto Google Cloud para um repositório de dados da Vertex AI Search em um projeto Google Cloud diferente e estiver usando o VPC Service Controls, os dois projetos precisarão estar no mesmo perímetro.
Criar um repositório de dados e importar seus dados
É possível criar um repositório de dados e importar seus dados do FHIR R4 no console doGoogle 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áticos e realizar uma importação em lote única.
- É possível criar um repositório de dados de streaming com as mudanças do seu repositório FHIR da API Cloud Healthcare transmitidas continuamente para o repositório de dados da Vertex AI Search. 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 fazer 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 fazer importações em lote. Você pode importar dados em lote ao criar o repositório de dados e fazer importações incrementais em lote sempre que necessário.
Console
No console Google Cloud , acesse a página Aplicativos de IA.
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 seu armazenamento FHIR, faça o seguinte:
- Selecione o armazenamento de FHIR na lista de armazenamentos disponíveis:
- Abra o campo Armazenamento FHIR.
- Nessa lista, selecione um conjunto de dados que esteja em um local permitido e um armazenamento de FHIR que use a versão R4 do FHIR.
- Insira o armazenamento FHIR manualmente:
- Abra o campo Armazenamento FHIR.
- Clique em Inserir armazenamento FHIR manualmente.
- Na caixa de diálogo Nome do armazenamento FHIR, insira o nome completo do armazenamento 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 armazenamentos disponíveis:
- Na seção Sincronização, selecione uma das seguintes opções:
Essa seleção não pode ser alterada depois que o repositório de dados é criado.
- Única: para realizar uma importação única de dados em lote. Para mais importações incrementais, consulte Atualizar dados de saúde.
- Streaming: para importar 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 seu engenheiro de clientes.
- Na seção Qual é o esquema para esses dados?, selecione uma destas opções:
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após criar o repositório de dados. Se quiser
mudar o esquema depois da 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 criado aparece na página Repositórios de dados.
- Esquema personalizado: para definir suas próprias configurações de esquema, como
capacidade de indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Para configurar um esquema configurável, entre em contato com seu engenheiro de clientes.
- Clique em Continuar.
- Revise o esquema, expanda cada campo e edite as configurações.
- Clique em Adicionar novos campos para adicionar 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 criado aparece 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
indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após criar o repositório de dados. Se quiser
mudar o esquema depois da 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 seu Google Cloud projeto.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 hífens.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 do repositório de dados usando o métodoschema.update
.
Se o armazenamento de FHIR de origem e o repositório de dados de destino da Vertex AI para Pesquisa estiverem no mesmo projeto Google Cloud , chame o seguinte método 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 seu Google Cloud projeto.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 do armazenamento FHIR R4 da API Cloud Healthcare.
Se o repositório FHIR de origem e o repositório de dados de pesquisa da Vertex AI de destino estiverem em projetos Google Cloud diferentes, chame o seguinte método para realizar uma importação em lote única. Se eles 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 e o armazenamento FHIR da API Cloud Healthcare.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 do armazenamento FHIR R4 da API Cloud Healthcare.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicativos de IA.
Para autenticar no AI Applications, 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 do repositório de dados.
Criar um repositório de dados de streaming e configurar uma importação de streaming
Esta seção descreve como criar um repositório de dados de pesquisa da Vertex AI de streaming que transmite continuamente as mudanças do seu repositório FHIR da API Cloud Healthcare.
Console
No console Google Cloud , acesse a página Aplicativos de IA.
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 seu armazenamento FHIR, faça o seguinte:
- Selecione o armazenamento de FHIR na lista de armazenamentos disponíveis:
- Abra o campo Armazenamento FHIR.
- Nessa lista, selecione um conjunto de dados que esteja em um local permitido e um armazenamento de FHIR que use a versão R4 do FHIR.
- Insira o armazenamento FHIR manualmente:
- Abra o campo Armazenamento FHIR.
- Clique em Inserir armazenamento FHIR manualmente.
- Na caixa de diálogo Nome do armazenamento FHIR, insira o nome completo do armazenamento 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 armazenamentos disponíveis:
- Na seção Sincronização, selecione uma das seguintes opções:
Essa seleção não pode ser alterada depois que o repositório de dados é criado.
- Única: para realizar uma importação única de dados em lote. Para mais importações incrementais, consulte Atualizar dados de saúde.
- Streaming: para importar 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 seu engenheiro de clientes.
- Na seção Qual é o esquema para esses dados?, selecione uma destas opções:
- Esquema predefinido do Google: para manter as configurações de esquema definidas pelo Google, como
indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após criar o repositório de dados. Se quiser
mudar o esquema depois da 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 criado aparece na página Repositórios de dados.
- Esquema personalizado: para definir suas próprias configurações de esquema, como
capacidade de indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Para configurar um esquema configurável, entre em contato com seu engenheiro de clientes.
- Clique em Continuar.
- Revise o esquema, expanda cada campo e edite as configurações.
- Clique em Adicionar novos campos para adicionar 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 criado aparece 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
indexação, capacidade de pesquisa e capacidade de recuperação, para os recursos e elementos
FHIR compatíveis. Depois de selecionar essa opção, não será possível
atualizar o esquema após criar o repositório de dados. Se quiser
mudar o esquema depois da 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 seu Google Cloud projeto.COLLECTION_ID
: o ID da coleção para onde você quer transmitir os dados 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 e o armazenamento FHIR da API Cloud Healthcare.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 do armazenamento 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 maior. 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 que você defina esse campo comotrue
.
- Se a criação for bem-sucedida, 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 com o mesmo nome do armazenamento de FHIR R4 de que 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 do repositório 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 com êxito e se os dados do FHIR foram importados para o repositório de dados com êxito.
- No console do Google Cloud : selecione o repositório de dados e verifique os detalhes.
- Pela API REST:
- Use o método
dataStores.get
para receber os detalhes do repositório de dados de saúde. - Use o método
operations.get
para receber os detalhes da operação de importação.
- Use o método
Para verificar a criação do repositório de dados e a importação de dados, siga estas etapas.
Console
No console Google Cloud , acesse a página Aplicativos de IA.
No menu de navegação, clique em Repositórios de dados.
A página Repositórios de dados mostra uma lista de repositórios no seu projeto Google Cloudcom 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 repositórios de dados, um conector de dados que transmite dados contém um repositório de dados com o mesmo nome do repositório 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 a quantidade de recursos FHIR importados.
- O carimbo de data/hora em que o último documento foi importado.
- Se quiser, clique em Ver detalhes para conferir os detalhes da importação de documentos, como informações sobre uma importação bem-sucedida, parcial ou com falha.
- A guia Documentos lista os IDs dos recursos FHIR importados e os tipos deles 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 informações 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 do armazenamento 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 ver os detalhes. Como uma entidade é uma instância de repositório de dados em um conector de dados, os detalhes da entidade são os mesmos 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 FHIR compatíveis. Clique em Editar para configurar o esquema.
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 seu Google Cloud projeto.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 seu Google Cloud projeto.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 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.