Voir des recommandations

Cette page explique comment demander des recommandations de produits pour un événement utilisateur et utilisateur spécifique.

Une fois que vous avez importé vos produits et enregistré des événements utilisateur, vous pouvez demander des recommandations de produits pour des utilisateurs spécifiques en fonction des événements enregistrés pour cet utilisateur et de son activité actuelle. Il peut s'écouler jusqu'à 48 heures avant que les nouveaux produits et les événements utilisateur soient reflétés dans le modèle de recommandation.

Vertex AI Search pour le commerce renvoie une liste de codes produit classés. Vous êtes responsable de l'affichage des résultats sur votre site Web avec les images et le texte.

Ne mettez jamais en cache les résultats personnalisés d'un utilisateur final et ne les renvoyez jamais à un autre utilisateur.

Avant de commencer

Vous devez créer un projet Google Cloud et configurer l'authentification en suivant les étapes de la section Avant de commencer.

En outre, avant de pouvoir demander des prédictions à partir de recommandations, vous devez disposer d'une recommandation entraînée et ajustée (modèle), et d'une ou plusieurs configurations de diffusion actives.

Évaluer les recommandations

Avant de mettre à jour le code de votre site Web pour demander des recommandations, vous pouvez prévisualiser les résultats de prédiction afin de vérifier que votre modèle et votre configuration de diffusion fonctionnent comme prévu.

Pour en savoir plus sur les configurations de diffusion, consultez la page À propos des configurations de diffusion.

Vous pouvez prévisualiser les résultats de la configuration de diffusion à partir de la page Évaluation ou en accédant à la page Détails d'une configuration de diffusion dans la console, puis en cliquant sur l'onglet Évaluer. Les étapes suivantes vous expliquent comment effectuer un aperçu à partir de la page Évaluation.

Pour prévisualiser les recommandations renvoyées par votre configuration de diffusion:

  1. Accédez à la page Évaluation de la console Search for Retail.

    Accéder à la page "Évaluation"

  2. Cliquez sur l'onglet Recommandations s'il n'est pas déjà sélectionné.

  3. Sélectionnez la configuration de diffusion que vous souhaitez prévisualiser.

  4. (Facultatif) Saisissez un ID de visiteur pour prévisualiser les recommandations destinées à cet utilisateur.

  5. Si la section Éléments associés s'affiche, cliquez sur Ajouter un article, puis saisissez un ID produit pour obtenir les recommandations associées à cet article. Vous pouvez ajouter plusieurs éléments associés.

    L'ajout d'éléments n'est disponible que si le type de modèle de la configuration de diffusion sélectionnée nécessite des produits en entrée pour les recommandations. Les modèles "Recommandé pour vous" ne nécessitent pas la saisie d'éléments associés.

  6. Cliquez sur Aperçu de prédiction pour afficher les résultats de prédiction.

Pour afficher la page Détails de la configuration de diffusion que vous prévisualisez, cliquez sur Afficher la configuration de diffusion sous le champ Sélectionner une configuration de diffusion.

Obtenir une recommandation

Pour en savoir plus sur les coûts liés aux prédictions, consultez la section Tarifs.

curl

Pour obtenir une recommandation, envoyez une requête POST à la méthode REST predict et fournissez le corps de requête approprié :

  • Le compte de service que vous utilisez doit disposer du rôle "Lecteur Retail" ou d'un rôle avec des privilèges supérieurs.

  • Remplacez SERVING_CONFIG_ID par la configuration de diffusion dans laquelle vous utiliserez les prédictions. En savoir plus

  • Si vous avez importé des événements utilisateur Google Analytics 360 en utilisant BigQuery, définissez visitorId sur l'ID client Google Analytics. Consultez la documentation Google Analytics pour savoir comment obtenir l'ID client.

  • Si vous exécutez un test A/B, définissez experimentIds sur l'ID correspondant au groupe de test. En savoir plus

  • Renseignez un objet événement utilisateur pour l'action utilisateur qui a déclenché la requête de recommandation.

    Notez que cet événement utilisateur n'est pas enregistré. Il sert uniquement à fournir un contexte pour cette requête. Vous devez également enregistrer l'événement utilisateur de la même manière que vous enregistrez les autres événements utilisateur.

  • Si vous le souhaitez, ajoutez un filtre pour limiter les résultats potentiels à certains produits. En savoir plus

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

Un résultat semblable aux lignes suivantes doit s'afficher :

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

Vous devez associer la valeur attribution_token à ou aux URL que vous diffusez en tant que résultat de prédiction, puis la renvoyer avec les événements utilisateur correspondant à ces URL. En savoir plus.

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;
}

Reclassement du prix

Le reclassement du prix permet de classer par prix les produits ayant une probabilité de recommandation similaire, la priorité étant donnée aux articles ayant le prix le plus élevé. La pertinence étant toujours utilisée pour trier les articles, l'activation du reclassement du prix est différente d'un simple tri des articles par prix décroissant.

Le reclassement du prix peut être défini au niveau de la configuration de diffusion ou par requête de prédiction.

Lorsque vous choisissez un paramètre de reclassement du prix lors de la création d'une configuration de diffusion dans la console Search for Retail, ce paramètre s'applique à toutes les recommandations diffusées par cette configuration, sans aucune action supplémentaire de votre part.

Si vous devez contrôler le reclassement du prix d'une recommandation particulière, vous pouvez le faire à l'aide du champ PredictRequest.params. Cette opération remplace tout paramètre de reclassement au niveau de la configuration qui s'appliquerait autrement à cette recommandation.

Diversité des recommandations

La diversification détermine si les résultats renvoyés par une requête de prédiction donnée proviennent de différentes catégories de votre catalogue de produits.

La diversification peut être définie au niveau de la configuration de diffusion ou par requête de prédiction.

Lorsque vous choisissez un paramètre de diversification lors de la création d'une configuration de diffusion dans la Search for Retail, ce paramètre s'applique par défaut à toutes les recommandations diffusées par cette configuration, sans que vous ayez à intervenir.

Si vous devez contrôler la diversité d'une recommandation particulière, vous pouvez utiliser le champ PredictRequest.params. Cette opération remplace tout paramètre de diversification au niveau de la configuration qui s'appliquerait autrement à cette recommandation. Consultez les valeurs acceptées.

Utiliser des filtres de recommandations

Vous pouvez filtrer les recommandations renvoyées à l'aide du champ filter dans la méthode predict. Pour en savoir plus, consultez Filtrer les recommandations.

Appels de prédiction avec des modèles d'optimisation au niveau de la page

L'utilisation de l'optimisation au niveau de la page pour fournir des recommandations nécessite une étape d'appel de prédiction supplémentaire.

Effectuez un appel de prédiction initial à l'aide d'une configuration de diffusion contenant le modèle d'optimisation au niveau de la page. La réponse de prédiction renvoie une liste triée d'ID de configuration de diffusion représentant le modèle à utiliser pour chaque panneau.

Effectuez ensuite un appel de prédiction pour chaque panneau à l'aide de l'ID de configuration de diffusion recommandé par le modèle d'optimisation au niveau de la page. La réponse de prédiction contient le nom du modèle (par exemple, "Recommandé pour vous") et la liste des éléments recommandés à afficher dans ce panneau.

Le reclassement des prix, la diversité des recommandations et les filtres de recommandations ne sont pas disponibles pour les configurations de diffusion à l'aide du modèle d'optimisation au niveau de la page.

Surveiller et dépanner les recommandations

Une fois que vous avez configuré votre site Web pour obtenir des recommandations, nous vous recommandons de configurer des alertes. Consultez Configurer une alerte pour les erreurs de prédiction.

Pour résoudre les erreurs, consultez l'article Surveiller et résoudre les problèmes.