Sincronize a partir do Firestore

Para carregar dados do Firestore, siga os passos abaixo para criar um repositório de dados e carregar dados através da Google Cloud consola ou da API.

Se os seus dados do Firestore estiverem no mesmo projeto que o Gemini Enterprise, aceda a Importar dados do Firestore.

Se os seus dados do Firestore estiverem num projeto diferente do seu projeto do Gemini Enterprise, aceda a Configurar acesso ao Firestore.

Configure o acesso ao Firestore a partir de um projeto diferente

Para conceder ao Gemini Enterprise acesso aos dados do Firestore que se encontram num projeto diferente, siga estes passos:

  1. Substitua a seguinte variável PROJECT_NUMBER pelo número do seu projeto do Gemini Enterprise e, em seguida, copie o conteúdo deste bloco de código. Este é o identificador da sua conta de serviço do Gemini Enterprise:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. Aceda à página IAM e administrador.

    IAM e administrador

  3. Mude para o seu projeto do Firestore na página IAM e administrador e clique em Conceder acesso.

  4. Para Novos membros, introduza o identificador da conta de serviço da instância e selecione a função Datastore > Administrador de importação/exportação do Cloud Datastore.

  5. Clique em Guardar.

  6. Volte ao seu projeto do Gemini Enterprise.

Em seguida, aceda a Importar dados do Firestore.

Importe dados do Firestore

Consola

Para usar a consola para carregar dados do Firestore, siga estes passos:

  1. Na Google Cloud consola, aceda à página Gemini Enterprise.

    Gemini Enterprise

  2. Aceda à página Armazenamentos de dados.

  3. Clique em Criar arquivo de dados.

  4. Na página Selecione uma origem de dados, selecione Firestore.

  5. Especifique o ID do projeto, o ID da base de dados e o ID da coleção dos dados que planeia importar.

  6. Clique em Continuar.

  7. Escolha uma região para o seu repositório de dados.

  8. Introduza um nome para o arquivo de dados.

  9. Clique em Criar.

  10. Para verificar o estado do carregamento, aceda à página Armazenamentos de dados e clique no nome do armazenamento de dados para ver os respetivos detalhes na página Dados. Quando a coluna de estado no separador Atividade muda de Em curso para Importação concluída, a ingestão está concluída.

    Consoante o tamanho dos seus dados, a carregamento pode demorar vários minutos ou várias horas.

REST

Para usar a linha de comandos para criar um repositório de dados e carregar dados do Firestore, siga estes passos:

  1. 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://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "industryVertical": "GENERIC",
      "solutionTypes": ["SOLUTION_TYPE_SEARCH"],
    }'
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATA_STORE_ID: o ID do armazenamento de dados. O ID só pode conter letras minúsculas, dígitos, sublinhados e hífenes.
    • DISPLAY_NAME: o nome a apresentar da loja de dados. Isto pode ser apresentado na Google Cloud consola.
  2. Importe dados do Firestore.

      curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \
      -d '{
        "firestoreSource": {
          "projectId": "FIRESTORE_PROJECT_ID",
          "databaseId": "DATABASE_ID",
          "collectionId": "COLLECTION_ID",
        },
        "reconciliationMode": "RECONCILIATION_MODE",
        "autoGenerateIds": "AUTO_GENERATE_IDS",
        "idField": "ID_FIELD",
      }'
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto do Gemini Enterprise.
    • DATA_STORE_ID: o ID do armazenamento de dados. O ID só pode conter letras minúsculas, dígitos, sublinhados e hífenes.
    • FIRESTORE_PROJECT_ID: o ID do seu projeto do Firestore.
    • DATABASE_ID: o ID da sua base de dados do Firestore.
    • COLLECTION_ID: o ID da sua coleção do Firestore.
    • RECONCILIATION_MODE: opcional. Os valores são FULL e INCREMENTAL. A predefinição é INCREMENTAL. A especificação de INCREMENTAL provoca uma atualização incremental dos dados do Firestore para o seu arquivo de dados. Esta ação faz uma operação de inserção/atualização, que adiciona novos documentos e substitui os documentos existentes por documentos atualizados com o mesmo ID. A especificação de FULL provoca uma nova base completa dos documentos no seu repositório de dados. Por outras palavras, os documentos novos e atualizados são adicionados ao seu repositório de dados, e os documentos que não estão no Firestore são removidos do seu repositório de dados. O modo FULL é útil se quiser eliminar automaticamente documentos de que já não precisa.
    • AUTO_GENERATE_IDS: opcional. Especifica se os IDs dos documentos devem ser gerados automaticamente. Se estiver definido como true, os IDs dos documentos são gerados com base num hash da carga útil. Tenha em atenção que os IDs dos documentos gerados podem não permanecer consistentes em várias importações. Se gerar automaticamente IDs em várias importações, a Google recomenda vivamente que defina reconciliationMode como FULL para manter IDs de documentos consistentes.
    • ID_FIELD: opcional. Especifica os campos que são os IDs dos documentos.

Passos seguintes

  • Para anexar o seu arquivo de dados a uma app, crie uma app e selecione o seu arquivo de dados seguindo os passos em Crie uma app de pesquisa.

  • Para pré-visualizar a apresentação dos resultados da pesquisa após a configuração da app e do arquivo de dados, consulte o artigo Pré-visualizar resultados da pesquisa.