Para pesquisar dados clínicos no Vertex AI Search, pode seguir um dos seguintes fluxos de trabalho:
- Crie um arquivo de dados de cuidados de saúde, importe dados FHIR R4 para o arquivo de dados, associe-o a uma app de pesquisa de cuidados de saúde e consulte os dados clínicos.
- Criar uma app de pesquisa de cuidados de saúde, criar um armazenamento de dados de cuidados de saúde e importar dados FHIR R4 para o armazenamento de dados durante o processo de criação da app, e consultar os dados clínicos. Para mais informações, consulte o artigo Crie uma app de pesquisa de cuidados de saúde.
Esta página descreve o primeiro método.
Acerca da frequência da Importação de dados
Pode importar dados FHIR R4 para um repositório de dados das seguintes formas:
Importação em lote: uma importação única. Os dados são importados para um armazenamento de dados em lotes. Para importações incrementais adicionais, consulte o artigo Atualize os dados de cuidados de saúde.
Importação com streaming: uma importação de dados com streaming quase em tempo real. Todas as alterações incrementais na loja FHIR de origem são sincronizadas na loja de dados do Vertex AI Search. O streaming requer um conetor de dados, que é um tipo de arquivo de dados. Para criar um conetor de dados, tem de configurar uma recolha. Um conetor de dados contém uma entidade, que também é uma instância de armazenamento de dados.
Também pode pausar e retomar o streaming, bem como fazer a sincronização manual sempre que necessário. Para mais informações, consulte o artigo Faça a gestão de um arquivo de dados de pesquisa de cuidados de saúde.
A taxa de streaming de dados para um determinado Google Cloud projeto depende das seguintes quotas. Se exceder a quota, pode sofrer atrasos no streaming.
- O número de escritas de streaming pendentes do FHIR ou do BigQuery por minuto. Para mais informações, consulte o artigo Quotas e limites.
- O número de operações de leitura de FHIR por minuto por região. Para mais informações, consulte as quotas da API Cloud Healthcare FHIR.
Pode selecionar a frequência da Importação de dados no momento da criação do arquivo de dados e não pode alterar esta configuração posteriormente.
Antes de começar
Antes de criar o arquivo de dados de cuidados de saúde e importar dados para o mesmo, compreenda o seguinte:
A relação entre as apps e os arquivos de dados para a pesquisa de cuidados de saúde. Para mais informações, consulte o artigo Acerca das apps e das lojas de dados.
O Vertex AI Search for healthcare fornece serviços de pesquisa apenas na multirregião dos EUA (
us
). Por conseguinte, a sua app de pesquisa de cuidados de saúde e os repositórios de dados têm de residir na multirregiãous
.Se estiver a importar dados de cuidados de saúde de uma loja FHIR da Cloud Healthcare API num Google Cloud projeto para uma loja de dados do Vertex AI Search num Google Cloud projeto diferente e estiver a usar os VPC Service Controls, os dois projetos têm de estar no mesmo perímetro.
Crie um arquivo de dados e importe os seus dados
Pode criar um repositório de dados e importar os seus dados FHIR R4 na Google Cloud consola ou através da API com as seguintes abordagens:
- Pode criar um arquivo de dados estático com uma importação em lote única. Para mais informações, consulte Crie um arquivo de dados estático e faça uma importação em lote única.
- Pode criar um repositório de dados de streaming com alterações do seu repositório FHIR da Cloud Healthcare API transmitidas continuamente para o seu repositório de dados do Vertex AI Search. Para mais informações, consulte o artigo Crie um arquivo de dados de streaming e configure uma importação de streaming.
Crie um arquivo de dados estático e faça uma importação em lote única
Esta secção descreve como criar um arquivo de dados do Vertex AI Search no qual só pode fazer importações em lote. Pode importar dados em lote quando cria o arquivo de dados pela primeira vez e fazer importações em lote incrementais sempre que necessário.
Consola
Na Google Cloud consola, aceda à página Aplicações de IA.
No menu de navegação, clique em Armazenamentos de dados.
Clique em add_box Criar arquivo de dados.
- No painel Selecione uma origem de dados, selecione API Healthcare (FHIR) como origem de dados.
- Para importar dados da sua loja FHIR, faça uma das seguintes ações:
- Selecione a loja FHIR na lista de lojas FHIR disponíveis:
- Expanda o campo FHIR store.
- Nesta lista, selecione um conjunto de dados que esteja numa localização permitida e, em seguida, selecione um arquivo FHIR que use a versão R4 do FHIR.
- Introduza a loja FHIR manualmente:
- Expanda o campo FHIR store.
- Clique em Introduzir loja FHIR manualmente.
- Na caixa de diálogo Nome da loja FHIR, introduza o nome completo da loja FHIR no seguinte formato:
project/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
- Clique em Guardar.
- Selecione a loja FHIR na lista de lojas FHIR disponíveis:
- Na secção Sincronização, selecione uma das seguintes opções.
Não é possível alterar esta seleção após a criação do arquivo de dados.
- Uma vez: para fazer uma importação de dados em lote única. Para mais importações incrementais, consulte o artigo Atualize os dados de cuidados de saúde.
- Streaming: para fazer uma importação de dados de streaming em tempo quase real. Para transmitir dados, tem de criar um conetor de dados, que é um tipo de armazenamento de dados. Para configurar um arquivo de dados de streaming com a API REST, contacte o seu engenheiro de clientes.
- Na secção Qual é o esquema destes dados?, selecione uma destas opções:
- Esquema predefinido da Google: para reter as configurações do esquema definido pela Google, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e os elementos FHIR suportados. Depois de selecionar esta opção, não pode
atualizar o esquema depois de criar o arquivo de dados. Se quiser poder alterar o esquema após a criação do repositório de dados, selecione a opção Esquema personalizado.
- Clique em Continuar.
- No campo Nome da sua loja de dados, introduza um nome para a loja de dados.
- Clique em Criar.
O arquivo de dados que criou é apresentado na página Arquivos de dados.
- Esquema personalizado: para definir as suas próprias configurações de esquema, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e elementos FHIR suportados. Para configurar um esquema configurável, contacte o seu engenheiro de clientes.
- Clique em Continuar.
- Reveja o esquema, expanda cada campo e edite as definições dos campos.
- Clique em Adicionar novos campos para adicionar novos campos aos recursos FHIR suportados. Não pode remover os campos fornecidos no esquema definido pela Google.
- Clique em Continuar.
- No campo Nome do conetor de dados, introduza um nome para o conetor de dados.
- Clique em Criar.
O conetor de dados que criou é apresentado na página Armazenamentos de dados. O FHIR store de origem é adicionado como uma entidade no conetor de dados.
- Esquema predefinido da Google: para reter as configurações do esquema definido pela Google, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e os elementos FHIR suportados. Depois de selecionar esta opção, não pode
atualizar o esquema depois de criar o arquivo de dados. Se quiser poder alterar o esquema após a criação do repositório de dados, selecione a opção Esquema personalizado.
- Clique em Continuar.
REST
Crie um arquivo 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 o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .DATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search que quer criar. Este ID só pode conter letras minúsculas, dígitos, sublinhados e hífenes.DATA_STORE_DISPLAY_NAME
: o nome a apresentar do arquivo de dados do Vertex AI que quer criar.CONFIGURABLE_SCHEMA_TRUE|FALSE
: um valor booleano quando definido comotrue
permite-lhe configurar o esquema do repositório de dados através do métodoschema.update
.
Se a loja FHIR de origem e a loja de dados do Vertex AI Search de destino estiverem no mesmo Google Cloud projeto, chame o seguinte método para fazer uma importação em lote única. Se não estiverem no mesmo projeto, avance para o passo seguinte.
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 o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .DATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search.CLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: a localização do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.FHIR_STORE_ID
: o ID do arquivo FHIR R4 da Cloud Healthcare API.
Se a loja FHIR de origem e a loja de dados do Vertex AI Search de destino estiverem em Google Cloud projetos diferentes, chame o seguinte método para fazer uma importação em lote única. Se estiverem no mesmo projeto, regresse ao passo 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 o seguinte:
PROJECT_ID
: o ID do projeto que contém o arquivo de dados do Vertex AI Search. Google CloudDATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search.SOURCE_PROJECT_ID
: o ID do projeto que contém o conjunto de dados da Cloud Healthcare API e o armazenamento FHIR. Google CloudCLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: a localização do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.FHIR_STORE_ID
: o ID do arquivo FHIR R4 da Cloud Healthcare API.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Crie um arquivo de dados
Importe documentos
O que se segue?
- Valide a criação do repositório de dados e a importação de dados FHIR.
- Cancele uma importação em lote em curso.
- Atualize o esquema do seu repositório de dados.
Crie um arquivo de dados de streaming e configure uma importação de streaming
Esta secção descreve como criar um arquivo de dados do Vertex AI Search de streaming que transmite continuamente alterações do seu arquivo FHIR da Cloud Healthcare API.
Consola
Na Google Cloud consola, aceda à página Aplicações de IA.
No menu de navegação, clique em Armazenamentos de dados.
Clique em add_box Criar arquivo de dados.
- No painel Selecione uma origem de dados, selecione API Healthcare (FHIR) como origem de dados.
- Para importar dados da sua loja FHIR, faça uma das seguintes ações:
- Selecione a loja FHIR na lista de lojas FHIR disponíveis:
- Expanda o campo FHIR store.
- Nesta lista, selecione um conjunto de dados que esteja numa localização permitida e, em seguida, selecione um arquivo FHIR que use a versão R4 do FHIR.
- Introduza a loja FHIR manualmente:
- Expanda o campo FHIR store.
- Clique em Introduzir loja FHIR manualmente.
- Na caixa de diálogo Nome da loja FHIR, introduza o nome completo da loja FHIR no seguinte formato:
project/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
- Clique em Guardar.
- Selecione a loja FHIR na lista de lojas FHIR disponíveis:
- Na secção Sincronização, selecione uma das seguintes opções.
Não é possível alterar esta seleção após a criação do arquivo de dados.
- Uma vez: para fazer uma importação de dados em lote única. Para mais importações incrementais, consulte o artigo Atualize os dados de cuidados de saúde.
- Streaming: para fazer uma importação de dados de streaming em tempo quase real. Para transmitir dados, tem de criar um conetor de dados, que é um tipo de armazenamento de dados. Para configurar um arquivo de dados de streaming com a API REST, contacte o seu engenheiro de clientes.
- Na secção Qual é o esquema destes dados?, selecione uma destas opções:
- Esquema predefinido da Google: para reter as configurações do esquema definido pela Google, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e os elementos FHIR suportados. Depois de selecionar esta opção, não pode
atualizar o esquema depois de criar o arquivo de dados. Se quiser poder alterar o esquema após a criação do repositório de dados, selecione a opção Esquema personalizado.
- Clique em Continuar.
- No campo Nome da sua loja de dados, introduza um nome para a loja de dados.
- Clique em Criar.
O arquivo de dados que criou é apresentado na página Arquivos de dados.
- Esquema personalizado: para definir as suas próprias configurações de esquema, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e elementos FHIR suportados. Para configurar um esquema configurável, contacte o seu engenheiro de clientes.
- Clique em Continuar.
- Reveja o esquema, expanda cada campo e edite as definições dos campos.
- Clique em Adicionar novos campos para adicionar novos campos aos recursos FHIR suportados. Não pode remover os campos fornecidos no esquema definido pela Google.
- Clique em Continuar.
- No campo Nome do conetor de dados, introduza um nome para o conetor de dados.
- Clique em Criar.
O conetor de dados que criou é apresentado na página Armazenamentos de dados. O FHIR store de origem é adicionado como uma entidade no conetor de dados.
- Esquema predefinido da Google: para reter as configurações do esquema definido pela Google, como
a capacidade de indexação, a capacidade de pesquisa e a capacidade de obtenção, para os
recursos e os elementos FHIR suportados. Depois de selecionar esta opção, não pode
atualizar o esquema depois de criar o arquivo de dados. Se quiser poder alterar o esquema após a criação do repositório de dados, selecione a opção Esquema personalizado.
- Clique em Continuar.
REST
Crie um conetor 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 o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .COLLECTION_ID
: o ID da recolha para a qual quer transmitir os dados FHIR R4.COLLECTION_NAME
: nome da recolha para a qual quer transmitir os dados FHIR R4.SOURCE_PROJECT_ID
: o ID do projeto que contém o conjunto de dados da Cloud Healthcare API e o armazenamento FHIR. Google CloudCLOUD_HEALTHCARE_DATASET_ID
: o ID do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.CLOUD_HEALTHCARE_DATASET_LOCATION
: a localização do conjunto de dados da Cloud Healthcare API que contém o FHIR store de origem.FHIR_STORE_ID
: o ID do arquivo FHIR R4 da Cloud Healthcare API.CONFIGURABLE_SCHEMA_TRUE|FALSE
: um valor booleano quando definido comotrue
permite-lhe configurar o esquema do repositório de dados através do métodoschema.update
.STATIC_INDEXING_TRUE|FALSE
: um valor booleano quando definido comotrue
permite-lhe importar dados históricos com uma quota de indexação mais elevada. Isto é útil quando espera que a sua app de pesquisa encontre um volume de dados mais elevado. No entanto, os registos individuais demoram mais tempo a ser indexados. A Google recomenda vivamente que defina este campo comotrue
.
- Se a recolha for criada com êxito, é adicionado um conetor de dados à lista de arquivos de dados na página Arquivos de dados na Google Cloud consola.
- O conector de dados criado contém uma entidade com o mesmo nome que o repositório FHIR R4 a partir do qual está a fazer streaming dos dados.
O que se segue?
- Valide a criação do repositório de dados e a importação de dados FHIR.
- Atualize o esquema do seu repositório de dados.
- Pausar ou retomar o streaming.
Valide a criação do arquivo 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 FHIR foram importados para o repositório de dados com êxito.
- Na Google Cloud consola: selecione o arquivo de dados e verifique os respetivos detalhes.
- Através da API REST:
- Use o método
dataStores.get
para obter os detalhes do arquivo de dados de cuidados de saúde. - Use o método
operations.get
para obter os detalhes da operação de importação.
- Use o método
Para validar a criação do arquivo de dados e a importação de dados, conclua os seguintes passos.
Consola
Na Google Cloud consola, aceda à página Aplicações de IA.
No menu de navegação, clique em Armazenamentos de dados.
A página Armazenamentos de dados apresenta uma lista de armazenamentos de dados no seu Google Cloud projeto com os respetivos detalhes.
Verifique se o arquivo de dados ou o conector de dados que criou está na lista de arquivos de dados. Na lista de armazenamentos de dados, um conetor de dados que transmite dados contém um armazenamento de dados com o mesmo nome que o armazenamento FHIR da Cloud Healthcare API.
Selecione o arquivo de dados ou o conector de dados e valide os respetivos detalhes.
- Para um armazenamento de dados:
- A tabela de resumo apresenta os seguintes detalhes:
- O ID, o tipo e a região do arquivo de dados.
- O número de documentos que indicam o número de recursos FHIR importados.
- A data/hora em que o último documento foi importado.
- Opcionalmente, clique em Ver detalhes para ver os detalhes da importação de documentos, como os detalhes sobre uma importação bem-sucedida, parcial ou falhada.
- O separador Documentos apresenta os IDs dos recursos FHIR importados e os respetivos tipos de recursos numa tabela paginada. Pode filtrar esta tabela para verificar se um recurso específico foi importado.
- O separador Atividade apresenta os detalhes da importação de documentos, como os detalhes acerca de uma importação bem-sucedida, parcial ou com falhas.
- A tabela de resumo apresenta os seguintes detalhes:
- Para um conector de dados:
- A tabela de resumo apresenta os seguintes detalhes:
- O ID, o tipo e a região da coleção.
- O nome da app associada.
- O estado do conetor, que é ativo ou em pausa.
- A tabela Entidades mostra a entidade no conetor de dados.
O nome da entidade é o nome da loja FHIR de origem. O ID da entidade é o ID do conetor de dados anexado ao nome do FHIR store de origem.
- Clique no nome da entidade para ver os respetivos detalhes. Uma vez que uma entidade é uma instância de armazenamento de dados num conetor de dados, os detalhes da entidade são iguais aos detalhes de um armazenamento de dados.
- A tabela de resumo apresenta os seguintes detalhes:
- Para um armazenamento de dados:
No separador Esquema, veja as propriedades dos recursos e elementos FHIR suportados. Clique em Editar para configurar o esquema.
REST
Valide a criação do arquivo 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 o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .DATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search.
Verifique se a operação de importação de dados FHIR está 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 o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .DATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search.IMPORT_OPERATION_ID
: o ID da operação de longa duração devolvido quando chama o métodoimport
O que se segue?
- Crie uma app de pesquisa de cuidados de saúde e associe-lhe o seu repositório de dados.
- Pesquise dados de cuidados de saúde na sua app de pesquisa de cuidados de saúde.
- Atualize os dados de cuidados de saúde.