Nesta página, descrevemos como importar em massa os dados de eventos do usuário de eventos anteriores.
Para saber os tipos de eventos do usuário que podem ser importados, consulte o campo eventType
do objeto
userEvents
. Ao importar eventos do usuário, você pode melhorar a qualidade dos resultados. Por exemplo, os eventos do usuário afetam a classificação dos resultados da pesquisa. Os resultados com taxas de cliques mais altas são promovidos, enquanto os resultados com taxas de cliques mais baixas são ocultados. Importe apenas eventos de usuários para documentos
que já foram importados para seu repositório de dados.
Se um evento tiver documentos listados em userEvents.Documents
, o Gemini Enterprise vai associar automaticamente os eventos a esse documento.
A junção permite que o Gemini Enterprise atribua eventos, como cliques e visualizações, ao documento correto em um resultado de pesquisa ou recomendação. Para apps de pesquisa personalizada e recomendações, a junção ocorre de forma assíncrona. Ou seja, os eventos do usuário são unidos aos documentos depois que a importação em lote é concluída (geralmente em minutos).
Se você estiver usando um app de pesquisa com vários repositórios de dados anexados, importe eventos do usuário no nível do local em vez do nível do repositório de dados. Isso permite que um determinado evento do usuário seja enviado ao repositório de dados associado a ele. Para importar eventos do usuário com documentos de diferentes dataStores
no nível do local em vez do repositório de dados, consulte userEvents.import
.
Para importar eventos do usuário em tempo real, consulte Registrar eventos do usuário em tempo real.
É possível importar eventos históricos das seguintes maneiras:
Para a representação JSON de eventos do usuário, consulte
userEvents
na referência da API.
Antes de começar
Antes de importar eventos do usuário:
- Crie um repositório de dados e um app.
- Consulte Sobre eventos do usuário para saber os requisitos.
Importar eventos históricos de usuários do Cloud Storage
REST
Para importar eventos históricos do usuário em massa do Cloud Storage, siga estas etapas:
Crie um ou mais arquivos de dados para os parâmetros de entrada da importação. Use o objeto
gcsSource
para apontar para o bucket do Cloud Storage.{ "gcsSource": { "inputUris": ["INPUT_FILE_1", "INPUT_FILE_2"], "dataSchema": "user_event" }, "errorConfig":{ "gcsPrefix":"ERROR_DIRECTORY" } }
Substitua:
INPUT_FILE
: um arquivo no Cloud Storage que contém os dados de evento do usuário. Verifique se cada evento de usuário está em uma linha única, sem quebras de linha. Para a representação JSON de eventos do usuário, consulteuserEvents
na referência da API. Os campos do arquivo de entrada precisam estar neste formato:gs://<bucket>/<path-to-file>/
.ERROR_DIRECTORY
: opcional. Um diretório do Cloud Storage para informações de erro sobre a importação. Por exemplo,gs://<your-gcs-bucket>/directory/import_errors
. O Google recomenda deixar esse campo em branco para permitir que o Gemini Enterprise crie automaticamente um diretório temporário.
Importe seus eventos fazendo uma solicitação POST para o método
userEvents.import
, fornecendo o nome do arquivo de dados.curl -X POST \ -v \ -H "Content-Type: application/json; charset=utf-8" \ -H "Authorization: Bearer "$(gcloud auth print-access-token)"" \ --data @DATA_FILE.json \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/global/dataStores/DATA_STORE_ID/userEvents:import"
Se você estiver importando eventos de usuário no nível do local, use o endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.
Importar eventos históricos do usuário do BigQuery
Ao criar tabelas para eventos de usuário no BigQuery, use os esquemas documentados em Sobre eventos de usuário.
Configurar o acesso ao BigQuery
Se o conjunto de dados do BigQuery estiver em um projeto diferente do seu repositório de dados, siga estas etapas para configurar o acesso ao BigQuery.
- Abra a página IAM e administrador no console Google Cloud .
- Selecione o projeto que contém o repositório de dados em que você quer importar eventos do usuário.
- Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google.
- Encontre a conta de serviço com o nome Conta de serviço do Discovery Engine.
- Se você ainda não iniciou uma operação de importação com o Discovery Engine, essa conta de serviço pode não estar listada. Se essa conta de serviço não for exibida, retorne à tarefa de importação e inicie a importação. Quando ela falhar devido a erros de permissão, volte aqui e conclua esta tarefa. A conta de serviço do Discovery Engine vai aparecer.
- Copie o identificador da conta de serviço, que se parece com um endereço de
e-mail, por exemplo,
service-525@gcp-sa-discoveryengine.iam.gserviceaccount.com
. - Alterne para seu projeto do BigQuery (na mesma página IAM e administrador) e clique em Conceder acesso.
- Em Novos principais, insira o identificador da conta de serviço e selecione o papel BigQuery > Visualizador de dados do BigQuery.
- Clique em Salvar.
Para mais informações sobre o acesso ao BigQuery, consulte Como controlar o acesso a conjuntos de dados na documentação do BigQuery.
Importar eventos do BigQuery
REST
Para importar eventos históricos do usuário em massa do Cloud Storage, siga estas etapas:
Importe os eventos do usuário fazendo uma solicitação POST para o método
userEvents.import
, fornecendo o nome do projeto do BigQuery, o ID do conjunto de dados e o ID da tabela.Ao importar eventos, use o valor
user_event
paradataSchema
.curl \ -v \ -X POST \ -H "Content-Type: application/json; charset=utf-8" \ -H "Authorization: Bearer "$(gcloud auth print-access-token)"" \ "https://discoveryengine.googleapis.com/v1/projects/[PROJECT_NUMBER]/locations/global/dataStores/DATA_STORE_ID/userEvents:import" \ --data '{ "bigquerySource": { "projectId":"PROJECT_ID", "datasetId": "DATASET_ID", "tableId": "TABLE_ID", "dataSchema": "user_event" } }'
Se você estiver importando eventos de usuário no nível do local, use o endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.
Importar eventos históricos do usuário como dados JSON locais
É possível importar eventos do usuário incluindo dados JSON locais para os
eventos na chamada ao método userEvents.import
.
Para colocar dados de eventos de usuário em um arquivo JSON e especificar o arquivo em uma solicitação de API, siga estas instruções:
Crie um arquivo JSON com os dados de eventos do usuário. Para a representação JSON de eventos do usuário, consulte
userEvents
na documentação de referência da API.{ "inlineSource": { "userEvents": [ { USER_EVENT_1 }, { USER_EVENT_2 } ] } }
Importe seus eventos fazendo uma solicitação POST para o método
userEvents.import
, fornecendo o nome do arquivo de dados.curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @[JSON_FILE] \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/global/dataStores/DATA_STORE_ID/userEvents:import"
Se você estiver importando eventos de usuário no nível do local, use o endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.