En esta página, se describe cómo importar datos de eventos de usuario de forma masiva desde eventos anteriores.
Para conocer los tipos de eventos de usuario que puedes importar, consulta el campo eventType
del objeto userEvents
. Si importas eventos de usuario, puedes mejorar la calidad de tus resultados. Por ejemplo, los eventos del usuario afectan la clasificación de los resultados de la búsqueda. Los resultados con tasas de clics más altas se potencian, mientras que los resultados con tasas de clics más bajas se ocultan. Importa solo los eventos de usuario de los documentos que ya importaste a tu almacén de datos.
Si un evento tiene documentos enumerados en userEvents.Documents
, Gemini Enterprise se une automáticamente a los eventos con ese documento.
La unión permite que Gemini Enterprise atribuya eventos, como clics y vistas, al documento correcto en un resultado de búsqueda o una recomendación. En el caso de las apps de búsqueda y recomendaciones personalizadas, la unión se produce de forma asíncrona, es decir, los eventos del usuario se unen a los documentos después de que se completa la importación por lotes (generalmente, esto sucede en cuestión de minutos).
Si usas una app de búsqueda con varios almacenes de datos adjuntos, importa los eventos del usuario a nivel de la ubicación en lugar de a nivel del almacén de datos. Esto permite que un evento del usuario determinado se envíe al almacén de datos con el que está asociado. Para importar eventos de usuario con documentos de diferentes dataStores
a nivel de la ubicación en lugar de a nivel del almacén de datos, consulta userEvents.import
.
Para importar eventos de usuario en tiempo real, consulta Registra eventos de usuario en tiempo real.
Puedes importar eventos históricos de las siguientes maneras:
Para obtener la representación JSON de los eventos de usuario, consulta userEvents
en la referencia de la API.
Antes de comenzar
Antes de importar eventos de usuario, haz lo siguiente:
- Crea un almacén de datos y una app.
- Revisa Acerca de los eventos de usuario para conocer los requisitos de los eventos de usuario.
Importa eventos históricos de usuarios desde Cloud Storage
REST
Para importar eventos de usuarios históricos de forma masiva desde Cloud Storage, sigue estos pasos:
Crea uno o más archivos de datos para los parámetros de entrada de la importación. Usa el objeto
gcsSource
para que apunte a tu bucket de Cloud Storage.{ "gcsSource": { "inputUris": ["INPUT_FILE_1", "INPUT_FILE_2"], "dataSchema": "user_event" }, "errorConfig":{ "gcsPrefix":"ERROR_DIRECTORY" } }
Reemplaza lo siguiente:
INPUT_FILE
: Es un archivo en Cloud Storage que contiene los datos de eventos del usuario. Asegúrate de que cada evento de usuario esté en su propia línea única, sin saltos de línea. Para obtener la representación JSON de los eventos de usuario, consultauserEvents
en la referencia de la API. Los campos del archivo de entrada deben tener el siguiente formato:gs://<bucket>/<path-to-file>/
.ERROR_DIRECTORY
: es opcional. Un directorio de Cloud Storage para obtener información sobre los errores de la importación, por ejemplo,gs://<your-gcs-bucket>/directory/import_errors
. Google recomienda dejar este campo vacío para que Gemini Enterprise cree automáticamente un directorio temporal.
Importa tus eventos realizando una solicitud POST al método
userEvents.import
y proporcionando el nombre del archivo de datos.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"
Si importas eventos de usuario a nivel de la ubicación, usa el endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.
Importa eventos históricos de usuarios desde BigQuery
Cuando crees tablas para eventos de usuario en BigQuery, usa los esquemas que se documentan en Acerca de los eventos de usuario.
Configura el acceso a BigQuery
Si tu conjunto de datos de BigQuery está en un proyecto diferente al de tu almacén de datos, sigue estos pasos para configurar el acceso a BigQuery.
- Abre la página IAM y administración en la consola de Google Cloud .
- Selecciona el proyecto que contiene el almacén de datos en el que deseas importar eventos del usuario.
- Selecciona la casilla de verificación Incluir asignaciones de funciones proporcionadas por Google.
- Busca la cuenta de servicio con el nombre Cuenta de servicio de Discovery Engine.
- Si no iniciaste una operación de importación con Discovery Engine, es posible que esta cuenta de servicio no aparezca en la lista. Si no ves esta cuenta de servicio, regresa a la tarea de importación para iniciar la importación. Cuando falle debido a errores de permisos, regresa aquí y completa esta tarea. Se mostrará la cuenta de servicio de Discovery Engine.
- Copia el identificador para la cuenta de servicio, que se parece a una dirección de correo electrónico (por ejemplo,
service-525@gcp-sa-discoveryengine.iam.gserviceaccount.com
). - Cambia a tu proyecto de BigQuery (en la misma página IAM y administración) y haz clic en Otorgar acceso.
- En Nuevos principales, ingresa el identificador de la cuenta de servicio y selecciona el rol BigQuery > Visualizador de datos de BigQuery.
- Haz clic en Guardar.
Para obtener más información sobre el acceso a BigQuery, consulta Controla el acceso a los conjuntos de datos en la documentación de BigQuery.
Importa eventos desde BigQuery
REST
Para importar eventos de usuarios históricos de forma masiva desde Cloud Storage, sigue estos pasos:
Importa tus eventos de usuario realizando una solicitud POST al método
userEvents.import
y proporcionando el nombre del proyecto de BigQuery, el ID del conjunto de datos y el ID de la tabla.Cuando importes tus eventos, usa el 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" } }'
Si importas eventos de usuario a nivel de la ubicación, usa el endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.
Importa eventos históricos de usuarios como datos JSON locales
Puedes importar eventos de usuario incluyendo datos JSON locales para los eventos en tu llamada al método userEvents.import
.
Para colocar los datos de eventos de usuario en un archivo JSON y especificar el archivo en una solicitud de API, sigue estas instrucciones:
Crea un archivo JSON que contenga los datos de tus eventos de usuario. Para obtener la representación JSON de los eventos de usuario, consulta
userEvents
en la documentación de referencia de la API.{ "inlineSource": { "userEvents": [ { USER_EVENT_1 }, { USER_EVENT_2 } ] } }
Importa tus eventos realizando una solicitud POST al método
userEvents.import
y proporcionando el nombre del archivo de datos.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"
Si importas eventos de usuario a nivel de la ubicación, usa el endpoint
https://discoveryengine.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:import
.