Obtener recomendaciones

En esta página, se describe cómo solicitar recomendaciones de productos para un usuario y un evento de usuario específicos.

Después de subir los productos y los eventos de usuarios registrados, puedes solicitar recomendaciones de productos para usuarios específicos en función de los eventos de usuario registrados para ese usuario y su actividad actual. Los productos nuevos y los eventos de los usuarios pueden tardar hasta 48 horas en reflejarse en el modelo de recomendación.

Vertex AI Search para la venta minorista muestra una lista de identificadores de productos clasificados. Eres responsable de procesar los resultados en tu sitio web con imágenes y texto.

Nunca almacenes en caché los resultados personalizados de un usuario final ni muestres resultados personalizados a un usuario final diferente.

Antes de comenzar

Debes crear un proyecto de Google Cloud y configurar la autenticación con los pasos que se indican en Antes de comenzar.

Además, antes de que puedas solicitar predicciones de las recomendaciones, debes tener un modelo de recomendación entrenado y ajustado, y una o más configuraciones de publicación activas.

Evalúa las recomendaciones

Antes de actualizar el código de tu sitio web para solicitar recomendaciones, puedes usar los resultados de la vista previa de la predicción para confirmar que tu modelo y la configuración de entrega funcionen como esperas.

Para obtener más información sobre las configuraciones de publicación, consulta Acerca de las configuraciones de publicación.

Puedes obtener una vista previa de los resultados de la configuración de entrega desde la página Evaluar o ir a la página Detalles de una configuración de entrega en la consola y hacer clic en la pestaña Evaluar. En los siguientes pasos, se muestra cómo obtener una vista previa desde la página Evaluar.

Para obtener una vista previa de las recomendaciones que muestra tu configuración de entrega, sigue estos pasos:

  1. Ve a la página Evaluar en la consola de Search for Retail.

    Ir a la página Evaluación

  2. Haz clic en la pestaña Recomendaciones si aún no está seleccionada.

  3. Selecciona la configuración de publicación de la que deseas obtener una vista previa.

  4. Opcional: Ingresa un ID de visitante para obtener una vista previa de las recomendaciones de ese usuario.

  5. Si se muestra la sección Artículos asociados, haz clic en Agregar artículo y, luego, ingresa un ID de producto para obtener recomendaciones asociadas para ese artículo. Puedes agregar varios elementos asociados.

    La opción para agregar elementos solo está disponible si el tipo de modelo de la configuración de entrega seleccionada requiere productos como entrada para las recomendaciones. Los modelos de Recomendado para ti no requieren que se ingresen elementos asociados.

  6. Haz clic en Vista previa de la predicción para ver los resultados de la predicción.

Para ver la página Detalles de la configuración de publicación que estás visualizando, haz clic en Ver configuración de publicación en el campo Seleccionar configuración de publicación.

Cómo obtener una recomendación

Para obtener detalles sobre los costos de la predicción, consulta Precios.

curl

Para obtener una recomendación, realiza una solicitud POST al método predict de REST y proporciona el cuerpo de solicitud adecuado:

  • La cuenta de servicio que uses debe tener la función “Visualizador de venta minorista” o una versión superior.

  • Reemplaza SERVING_CONFIG_ID por la configuración de publicación en la que usarás las predicciones. Obtén más información.

  • Si importaste eventos de usuario de Google Analytics 360 con BigQuery, configura visitorId como el ID de cliente de Google Analytics. Consulta la documentación de Google Analytics para saber cómo obtener el ID de cliente.

  • Si ejecutas un experimento A/B, configura experimentIds como el ID de este grupo de experimentos. Obtenga más información.

  • Proporciona un objeto de evento del usuario correspondiente a la acción que inició la solicitud de recomendación.

    Ten en cuenta que no se registra este evento del usuario; solo se utiliza para proporcionar contexto sobre esta solicitud de recomendación. También debes registrar el evento del usuario de la misma manera en la que registras otros eventos del usuario.

  • De forma opcional, proporciona un filtro para limitar los productos potenciales que se muestran. Más información

curl -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data '{
              "filter": "FILTER_STRING",
              "validateOnly": false,
              "userEvent": {
                  "eventType": "detail-page-view",
                  "visitorId": "VISITOR_ID",
                  "userInfo": {
                      "userId": "USER_ID",
                      "ipAddress": "IP_ADDRESS",
                      "userAgent": "USER_AGENT"
                  },
                  "experimentIds": "EXPERIMENT_GROUP",
                  "productDetails": [{
                      "product": {
                        "id": "PRODUCT_ID"
                     }
                  }]
              }
            }' \
https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/servingConfigs/SERVING_CONFIG_ID:predict

Deberías ver resultados similares a los siguientes:

{
  "results": [{"id": "sample-id-1"}, {"id": "sample-id-2"}],
  "attribution_token": "sample-atr-token"
}

Debes asociar el valor attribution_token con cualquier URL que entregues como resultado de esta predicción y mostrarla con los eventos de usuario para esas URL. Obtén más información.

Java

public static PredictResponse predictWithNextPageToken(UserEvent userEvent, int pageSize,
    String nextPageToken)
    throws IOException, InterruptedException {
  PredictionServiceClient predictionClient = getPredictionServiceClient();

  PredictRequest request = PredictRequest.newBuilder()
      .setPlacement(HOME_PAGE_PLACEMENT_NAME)
      .setUserEvent(userEvent)
      .setPageSize(pageSize)
      .setPageToken(nextPageToken)
      .setValidateOnly(true)
      .build();

  PredictResponse response = predictionClient.predict(request);

  predictionClient.shutdownNow();
  predictionClient.awaitTermination(2, TimeUnit.SECONDS);

  return response;
}

Reclasificación de precio

La reclasificación de precio hace que los productos sugeridos con una probabilidad de recomendarse similar se ordenen según el precio, con los elementos de precio más alto primero. La relevancia también se usa para ordenar elementos, por lo que habilitar la reclasificación de precio no es lo mismo que ordenarlos por precio.

La reclasificación de precios se puede establecer a nivel de la configuración de entrega o por solicitud de predicción.

Cuando eliges una configuración de reclasificación de precios al crear una configuración de entrega en la consola de Búsqueda para venta minorista, esa configuración se aplica a todas las recomendaciones que entrega esa configuración, sin que tengas que realizar ninguna acción.

Si necesitas controlar la reclasificación de precios de una recomendación en particular, puedes hacerlo con el campo PredictRequest.params. Esto anula cualquier configuración de reclasificación a nivel de configuración que, de lo contrario, se aplicaría a esta recomendación.

Diversidad de recomendaciones

La diversificación afecta si los resultados que se muestran de una sola solicitud de predicción son de diferentes categorías de tu catálogo de productos.

La diversificación se puede establecer a nivel de configuración de entrega o por solicitud de predicción.

Cuando eliges una configuración de diversificación al crear una configuración de entrega en la consola de Search for Retail, esa configuración se aplica de forma predeterminada a todas las recomendaciones que entrega esa configuración, sin que debas realizar ninguna acción.

Si necesitas controlar la diversidad de una recomendación en particular, puedes hacerlo con el campo PredictRequest.params. Esto anula cualquier configuración de diversificación a nivel de configuración que, de lo contrario, se aplicaría a esta recomendación. Consulta los valores aceptados.

Usa filtros de recomendación

Puedes filtrar las recomendaciones que muestra Recomendaciones IA mediante el campo filter del método predict. Para obtener información, consulta Cómo filtrar recomendaciones.

Llamadas de predicción con modelos de optimización a nivel de la página

Proporcionar recomendaciones con la optimización a nivel de la página requiere un paso adicional de llamada de predicción.

Realiza una llamada de predicción inicial con una configuración de publicación que contenga el modelo de optimización a nivel de la página. La respuesta de la predicción muestra una lista ordenada de los IDs de configuración de publicación que representan el modelo que se usará para cada panel.

Luego, realiza una llamada de predicción para cada panel con el ID de configuración de publicación que el modelo de optimización a nivel de la página recomendó para él. La respuesta de la predicción contiene el nombre del modelo (como Recomendado para ti) y la lista de elementos recomendados que se mostrarán en ese panel.

La reclasificación de precios, la diversidad de recomendaciones y los filtros de recomendaciones no están disponibles para las configuraciones de publicación que usan el modelo de optimización a nivel de la página.

Supervisa y soluciona problemas con las recomendaciones

Después de configurar tu sitio web para obtener recomendaciones, te recomendamos que configures alertas. Consulta Configura una alerta para los errores de predicción.

Para solucionar errores, consulta Supervisa y soluciona problemas.