Vertex AI Search pour le commerce propose une fonctionnalité qui vous permet de spécifier les enregistrements à mettre en avant dans les recherches. Vous pouvez contrôler le classement des résultats en appliquant une règle d'optimisation pour augmenter ou réduire le niveau de priorité des éléments de recherche renvoyés.
L'optimisation vous permet de contrôler le classement des résultats en mettant en avant (optimisant) ou en mettant en retrait (enterrant) des éléments spécifiques en fonction des critères que vous définissez. Contrairement au filtrage, qui supprime des éléments de l'ensemble de résultats, l'optimisation ajuste la position des éléments qui sont déjà éligibles à être renvoyés.
Boost et remplacement des filtres
Voici des exemples de types de filtres courants qui ont la priorité sur les règles d'amplification :
- Spécifié par l'utilisateur Il peut s'agir du prix ou de la marque, par exemple. Ils s'affichent sous forme de tuiles ou de facettes sur le site Web pour l'utilisateur final.
- Thématique (pertinence) : Ces filtres n'existent que pour les requêtes de recherche (et non pour la navigation). Ils excluent les produits moins pertinents des résultats de recherche. Par exemple, la recherche réfrigérateur ne renvoie pas de micro-ondes ni d'accessoires, comme des poignées de réfrigérateur. Le filtre reconnaît qu'il ne faut pas mettre en avant un micro-ondes pour une recherche de réfrigérateur.
Règles d'optimisation
Les règles d'optimisation ne peuvent être appliquées que lorsqu'il existe un score de pertinence de base, par exemple dans les recherches triées par pertinence ou les résultats de navigation avec des scores de pré-tri. Le boosting est une fonction de multiplicateur appliquée aux résultats de recherche et de navigation. La syntaxe et la logique du boosting peuvent être décomposées comme suit :
Disponibilité. Le boosting ne peut pas remplacer les règles de disponibilité. Si un article est filtré (par exemple, s'il est en rupture de stock), le fait de le mettre en avant ne le fera pas apparaître.
Opérateurs Vous pouvez utiliser des opérations telles que "supérieur à" et "inférieur à" pour les champs numériques dans les conditions de boosting, qui ne sont pas disponibles dans le filtrage strict standard.
Valeurs de boosting ou de rétrogradation
Un produit peut être soumis à plusieurs règles de mise en avant ou de mise en arrière-plan, qui sont définies dans la classe boostSpec de l'API Search. Une valeur d'amélioration est un nombre à virgule flottante compris entre -1.0 et 1.0.
Valeur positive (de 0,0 à 1,0) : promeut l'article, ce qui le fait remonter dans les résultats. Une valeur de 1,0 correspond à la promotion maximale.
Valeur négative (de -1,0 à 0,0) : rétrograde (masque) l'article, en le déplaçant plus bas dans les résultats. Une valeur de -1,0 correspond à la rétrogradation maximale.
Plusieurs règles de mise en avant ou de mise en retrait pour un même produit
Plusieurs règles de mise en avant ou d'exclusion peuvent affecter un produit. La somme ou le maximum des valeurs de mise en avant détermine le score final. Lorsque plusieurs règles d'optimisation sont appliquées au même produit, vérifiez toujours si le score d'un autre produit a détrôné le produit en question. Le mode maximal est défini par défaut pour réduire le risque de problème.
Supposons qu'un produit reçoive des boosts de 2, 3 et 0,5, et qu'un autre produit reçoive un boost de 0,5. Bien que le produit n'ait reçu qu'un score de boost de 0, 5, il est mieux classé que l'autre produit lorsqu'il est boosté à plusieurs reprises. Vérifiez attentivement la spécification de boosting pour vous assurer qu'elle ne se chevauche pas (ou qu'elle se chevauche, si c'est ce que vous souhaitez).
Résolution de conflits
Si plusieurs règles de boosting s'appliquent au même produit, vous pouvez définir leur interaction.
Règle d'optimisation maximale (par défaut) : Vertex AI Search pour le commerce vérifie la valeur maximale et ignore les autres règles.
Somme de l'effet de boost (paramètre alternatif) : si une rétrogradation et une promotion sont appliquées, Vertex AI Search for Commerce additionne les valeurs de toutes les règles de boost et d'enfouissement applicables. Cela permet un effet cumulatif. La somme obtenue correspond à un effet de boost réduit ou à un effet d'enfouissement net.
Configurer le boost
Pour configurer un ensemble de données avec des règles de boost ou d'enfouissement, vous définissez des conditions basées sur des attributs de produit (tels que la marque ou le prix) et attribuez une valeur de boost comprise entre -1,0 (enfouissement) et 1,0 (boost) pour ajuster le score de classement des éléments correspondants. Les produits suivants sont disponibles pour configurer les contrôles de mise en avant ou de masquage :
Recherche : filtre de pertinence thématique plus tous les autres filtres appliqués par l'utilisateur, tels que les facettes sur le site. Découvrez comment configurer l'amplification pour la recherche.
Parcourir : comme il n'y a pas de requête textuelle, seuls les filtres appliqués par l'utilisateur sont appliqués. Des filtres sont également appliqués pour vérifier que le produit (par exemple, un costume) appartient à la bonne catégorie de produits (et non à celle des pulls). Découvrez comment configurer l'optimisation pour les recommandations.
Exemple d'ensemble de données
Options de configuration
Dans Vertex AI Search pour le commerce, l'optimisation est appliquée en tant que multiplicateur au score de pertinence de base généré par l'algorithme de recherche. Vous pouvez configurer des règles de boosting directement dans une requête de recherche à l'aide d'une spécification de boost ou en associant des contrôles de diffusion à une configuration de diffusion. Dans la réponse, les éléments correspondant à ces conditions reçoivent un score de pertinence modifié, ce qui les fait apparaître plus haut ou plus bas dans la liste des résultats sans être complètement supprimés. Pour configurer une commande de boosting ou de rétrogradation de la recherche :
Cloud Console
Accédez à la page Contrôles dans la console Search pour le commerce.
Accéder à la page "Contrôles"Dans l'onglet Commandes de diffusion, cliquez sur Modifier edit à droite d'une commande.
Dans le menu déroulant Modifier le contrôle, cliquez sur le champ sous Nom du contrôle pour modifier le nom du contrôle.
Facultatif : Pour la recherche, dans la section Déclencheurs, sélectionnez le type de comportement utilisateur qui déclenche ce contrôle. Les sections Parcourir les catégories et Rechercher sont grisées.
Facultatif : modifiez les termes de recherche correspondants.
Facultatif : Cliquez sur l'option Ajouter une période pour ajouter une ou plusieurs périodes auxquelles ce contrôle peut s'appliquer.
Cliquez sur Continuer pour accéder à la section Actions.
Ajoutez des filtres pour les attributs de produit dans le champ Remonter/redescendre le produit.
Utilisez la syntaxe d'expression de filtre décrite dans Filtrer et trier les résultats. Par exemple, pour spécifier les versions rouge et bleue de "product1" et "product2" :
(id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))Pour Remonter/redescendre la valeur, utilisez le curseur pour définir l'intensité du changement. Les valeurs positives font remonter les résultats et les valeurs négatives les font redescendre. Cliquez sur Continuer.
Dans la section Configurations de diffusion, sélectionnez les configurations de diffusion auxquelles appliquer le contrôle.
Envoyez vos paramètres de contrôle.
Vous trouverez désormais la règle de contrôle "Booster ou enterrer" ajoutée en tant que nouveau type de contrôle sous les Contrôles de diffusion de votre projet. Découvrez comment créer un contrôle booster/enterrer dans la section Créer des contrôles.
JSON
Voici un exemple d'optimisation par prix.
Supposons que vous souhaitiez privilégier les produits moins chers (moins de 95$) et réduire le niveau de priorité donné aux produits onéreux (plus de 95$). Vous pouvez appliquer une spécification d'amélioration.
{ "condition_boost_specs": [ { "condition": "price: IN(*, 95.0e)", "boost": 0.5 }, { "condition": "price: IN(95.0e, *)", "boost": -0.5 } ] }
Dans cet exemple, les produits de moins de 95 USD bénéficient d'une promotion (0,5), tandis que ceux de plus de 95 USD sont rétrogradés (-0,5).
Dans ce résultat, "nest_mini_2nd_gen", "google_home_mini" et "nest_hub" pourraient être les trois premiers, tandis que "nest_audio", "nest_hub_max" et "google_home_max" pourraient être les trois derniers. Cependant, aucun ordre spécifique n'est prédéterminé (contrairement au tri par prix) comme indiqué dans la section Filtrer et trier les résultats.
Meilleur classement dans les résultats de recherche
Pour la recherche, appliquez dynamiquement le score de classement des éléments correspondants en incluant une spécification de boost (boostSpec) avec condition_boost_specs directement dans SearchRequest.
Conditions et déclencheurs
Le boosting de recherche peut être conditionnel. Vous pouvez déclencher une règle d'amplification en fonction des conditions suivantes :
Termes de la requête : n'appliquez le boost que lorsque l'utilisateur recherche des termes spécifiques (par exemple, boostez les manteaux d'hiver lorsque la requête contient le terme veste).
Périodes : appliquez le boost uniquement pendant une période promotionnelle spécifique.
Global : appliquez l'optimisation à toutes les requêtes traitées par une configuration spécifique.
Exemple de requête de recherche et de réponse
Dans l'exemple d'ensemble de données présenté précédemment, si vous recherchez "enceinte Google", vous obtenez "nest_mini_2nd_gen", "nest_audio", "nest_hub_max", "nest_hub", "google_home_max" et "google_home_mini" sans ordre spécifique.
Mise en avant dans les recommandations
L'amplification des recommandations est gérée à l'aide des contrôles de diffusion. Contrairement à la recherche, l'amplification des recommandations n'est pas compatible avec les conditions basées sur les requêtes (car il n'y a pas de requête utilisateur). Au lieu de cela, le contrôle s'applique à toutes les prédictions générées par la configuration de diffusion à laquelle il est associé. Pour cette raison, vous configurez généralement les recommandations en associant des contrôles de diffusion de type "Booster" ou "Enterrer" à la configuration de diffusion, plutôt qu'en transmettant une spécification de boost dans la requête.
Champs compatibles pour les recommandations
Lorsque vous définissez les produits à booster dans les recommandations, utilisez une expression de filtre. Alors que le filtrage des recommandations standards est limité aux champs textuels, le renforcement prend en charge des champs numériques supplémentaires.
| Field type (Type de champ) | Champs disponibles | Description |
| Textuel | productId, brands, categories, genders, ageGroups, colorFamilies, colors, sizes, title,materials, patterns, conditions, attributes.key, tags
|
Champs standards disponibles pour le filtrage et l'optimisation. Notez que tags sont des tags personnalisés associés au produit.
|
| Numérique | price, discount, rating, ratingCount
|
Exclusivement pour le boosting/la rétrogradation. Ces champs vous permettent de mettre en avant des produits en fonction de leur prix, des remises ou des notes des utilisateurs. |
Pour en savoir plus, consultez la section Champs compatibles avec l'amplification/l'enfouissement dans Filtrer les recommandations.
Mettre en avant les produits bien notés
Imaginons que vous souhaitiez vous assurer que les films les mieux notés apparaissent plus haut dans le panneau de recommandations "Autres articles susceptibles de vous intéresser". Pour ce cas d'utilisation, créez un contrôle de diffusion afin de booster les éléments dont le nombre de notes est supérieur à 100. Configurez vos contrôles en tenant compte des points suivants :
Type de contrôle : Remonter ou redescendre
Sélection de produits : recommandation
Action :
Expression de filtre :
ratingCount > 100Valeur du boost :
0.5
Ce contrôle permet de s'assurer que les articles populaires et bien notés sont prioritaires dans la liste de recommandations, tout en conservant la pertinence de la personnalisation pour l'utilisateur.
Déboguer et résoudre les problèmes
Tous les produits peuvent être boostés de manière illimitée, mais les filtres appliqués par les utilisateurs les éliminent de la réponse de recherche. Pour déterminer pourquoi un produit sponsorisé ne s'affiche pas dans les résultats de recherche et de navigation, vérifiez les points suivants :
- Règles de boost multiples (y compris les rétrogradations) : vérifiez la configuration du mode Boost (somme ou max) et déterminez le score final.
- Pertinence : un produit doit être pertinent pour la requête et passer les filtres de pertinence. Si une requête de recherche porte sur des chaussures Nike et que le titre du produit est Air Jordans,les mots ne correspondent pas, mais leur relation sémantique étroite génère un score de pertinence élevé. Un titre de produit tel que veste jaune présente un faible score de pertinence pour une requête de recherche Nike. De même, si le titre du produit est un numéro de modèle obscur qui n'a aucun rapport avec un mot quelconque, le score de pertinence sera faible pour n'importe quelle requête.
- Filtres : les règles de filtrage remplacent toutes les règles de mise en avant et empêchent les produits mis en avant d'apparaître dans les résultats. Le filtre est toujours appliqué en plus du boost. Si un produit est associé à des filtres appliqués par l'utilisateur ou si une catégorie de produits est filtrée pour la navigation, le boost ne fonctionnera pas du tout.
Utiliser le boosting
Ce tutoriel vous présente quelques exemples de boosting de produits.
Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :