Obtener recomendaciones

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

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 usuario pueden tardar hasta 48 horas en aparecer en el modelo de recomendación.

Vertex AI Search for Retail devuelve una lista de identificadores de productos clasificados. Eres responsable de mostrar los resultados en tu sitio web con imágenes y texto.

Nunca almacenar en caché los resultados personalizados de un usuario final ni devolver resultados personalizados los resultados a un usuario final diferente.

Antes de comenzar

Debes crear Google Cloud en el proyecto y configura la autenticación con los pasos Antes de comenzar.

Además, antes de que puedas solicitar predicciones a recomendaciones, necesitas recomendación (modelo) entrenada y ajustada y una o más recomendaciones la configuración de entrega.

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 en la página Evaluar o mediante ir a la página Detalles de una configuración de entrega en la consola y hacer clic en Evaluar. En los siguientes pasos, se muestra cómo obtener una vista previa Evaluar.

Para obtener una vista previa de las recomendaciones que muestra la 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 Evaluar

  2. Haz clic en la pestaña Recomendaciones si 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 Elementos asociados, haz clic en Agregar elemento y, luego, ingresa un ID del producto para obtener recomendaciones asociadas con 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 usuario del mismo modo en que registras otros eventos de 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 precio crear una configuración de entrega en Search for Retail en la consola, se aplicará ese parámetro de configuración a todas las recomendaciones que publique actual sin tener que realizar ninguna acción adicional.

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 por lo que usar 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 más información, consulta Recomendaciones de filtros.

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.

Realizar una llamada de predicción inicial usando una configuración de entrega que contenga la optimización a nivel de página un modelo de responsabilidad compartida. La respuesta de la predicción muestra una lista ordenada de entregas IDs de configuración que representan el modelo que se usará para cada panel.

Luego, haz una llamada de predicción para cada panel usando el ID de configuración de entrega Se recomienda el modelo de optimización a nivel de la página. La respuesta de la predicción contiene el modelo nombre (como Recomendaciones para ti) y una lista de elementos recomendados para mostrar en ese panel.

La reclasificación de precio, la diversidad de recomendaciones y los filtros de recomendaciones no disponibles para los parámetros de configuración de entrega que usan el modelo de optimización a nivel de la página.

Recomendaciones de supervisión y solución de problemas

Después de configurar tu sitio web para obtener recomendaciones, te recomendamos que establezcas las alertas de seguridad cibernética. Consulta Configura una alerta para errores de predicción.

Para solucionar errores, consulta Supervisa y soluciona problemas.