La navigation est une recherche de navigation sans requête. La navigation utilise des méthodes de navigation pour afficher les résultats de recherche qui correspondent aux catégories ou aux filtres sélectionnés par l'utilisateur final. Lorsqu'il est utilisé en collaboration avec l'engagement utilisateur, vous pouvez proposer à vos utilisateurs une navigation personnalisée. La navigation personnalisée fournit des flux en temps réel et spécifiques à l'utilisateur, basés sur l'historique de ses interactions et les caractéristiques du contenu. Elle vise à optimiser les résultats de recherche pour les KPI définis tout en respectant vos contrôles stratégiques. Par exemple, un site Web immobilier peut proposer différentes pages d'accueil à ses utilisateurs à Londres (Royaume-Uni) et à Sydney (Australie). Un site Web de shopping peut proposer des résultats personnalisés en fonction du profil de l'utilisateur.
Cette page explique comment obtenir des résultats de navigation pour les data stores de recherche personnalisée et présente quelques bonnes pratiques pour configurer votre application de recherche.
À propos de la navigation personnalisée
La navigation personnalisée Vertex AI Search utilise des réseaux de neurones pour classer les documents en fonction de l'engagement et de la conversion des utilisateurs prédits. Par exemple, avec la navigation personnalisée, vous pouvez diffuser des entrées classées dans un catalogue d'hôtels ou des articles sur un site Web, et les renvoyer aux utilisateurs en fonction de la probabilité de clics ou de demandes prédite.
Au fond, la navigation personnalisée est un modèle sophistiqué qui apprend les relations complexes entre les habitudes de navigation des utilisateurs, le contenu et les caractéristiques de vos documents, et les événements de conversion des utilisateurs. Voici quelques fonctionnalités importantes :
Classement : le modèle classe les éléments en fonction des performances prévues par rapport à l'objectif que vous avez défini, en tenant compte des paramètres de recherche configurés, tels que les filtres, le classement personnalisé et les commandes de diffusion (comme "Booster", "Promouvoir" ou "Synonymes").
Entraînement et affinement : après l'entraînement initial, le modèle est affiné en continu à l'aide de flux d'événements utilisateur en direct. Le modèle s'adapte et s'améliore au fil du temps.
Diversité : le modèle apprend implicitement la diversité, car il enregistre les signaux négatifs de non-interaction, tels que les liens ignorés, le temps passé sur une page et les taux de saut.
Différence entre la navigation et la recherche
Le tableau suivant présente les différences entre la recherche et la navigation.
Fonctionnalité | Rechercher | Parcourir |
---|---|---|
Objectif | Trouver des informations spécifiques | Explorer et découvrir des contenus |
Exemple | Recherche de "meilleurs restaurants coréens à Vancouver" dans la recherche Google | Parcourir les catégories dans lesquelles un restaurant peut figurer, par exemple "Restaurants > Coréens > Vancouver > 4 étoiles et plus" |
User Intent | Généralement axées sur des objectifs | Exploratoire |
Point de départ | Requête ou mot clé, généralement dans une barre de recherche | Un site Web ou une plate-forme spécifique, généralement à l'aide d'un menu, d'un fil d'Ariane, de liens ou d'autres méthodes de navigation comme les facettes |
Méthode | Saisie de mots clés ou d'expressions et application de la configuration de la recherche et de la diffusion | Rechercher avec une requête vide, appliquer une configuration de recherche et de diffusion |
Résultats | Une liste de résultats pertinents | Tous les documents du data store qui correspondent aux filtres |
Workflow et bonnes pratiques
La navigation personnalisée est un service géré par Google. Google gère les modèles de deep learning et les pipelines de données sous-jacents. Pour tirer le meilleur parti de ce service, lorsque vous développez votre application de recherche, vos principales responsabilités techniques incluent les suivantes :
- Provisionnement des données : collectez et fournissez un data store complet de documents et d'événements utilisateur.
- Définition de l'objectif : spécifiez les KPI pour l'optimisation, tels que le taux de clics (CTR), les actions à forte valeur et le revenu par session avec les événements utilisateur fournis. Assurez-vous que les types d'événements utilisateur que vous collectez sont compatibles avec les objectifs.
- Paramètres de recherche : définissez et configurez les paramètres de recherche et les contrôles de diffusion dans votre requête de recherche. Par exemple, les plages de dates permettant de filtrer les fiches ou les articles autorisés, ou les commandes d'amplification permettant de réorganiser les blogs en fonction de leur note.
Dans une application de recherche AI Applications, parcourir signifie effectuer une recherche sans requête ou avec une requête vide. Pour obtenir des résultats de navigation dans un data store de recherche personnalisée, vous pouvez appeler la méthode search
en laissant la requête vide.
Voici les étapes à suivre pour obtenir les meilleurs résultats de navigation personnalisée :
Avoir des données correctes et cohérentes :
- Horodatage précis pour chaque événement utilisateur.
- ID utilisateur cohérents pour tous les événements utilisateur.
- ID de document correspondant entre les événements utilisateur et le data store. Si vous utilisez un sitemap, ses URL doivent correspondre à celles des événements utilisateur.
- Filtres permettant de diffuser le contenu exact des pages que vous avez consultées. Pour en savoir plus, consultez Filtrer la recherche sur un site Web et Filtrer la recherche personnalisée pour les données structurées et non structurées.
Préparez et ingérez vos documents :
- Définissez votre schéma avec autant d'attributs que possible. Plus il y a d'attributs, plus la personnalisation est efficace.
- Si vous explorez vos sites Web, activez l'indexation avancée et enrichissez vos pages Web avec des données structurées.
- Préparez vos données pour l'ingestion en suivant les instructions de la section Préparer les données pour l'ingestion.
- Créez un datastore de recherche pour ingérer vos données. Vous pouvez également créer et mettre à jour des documents qui peuvent gérer les données à rechercher ou à parcourir.
- Si vous utilisez des sitemaps pour les données de votre site Web, veillez à les tenir à jour afin d'indexer les pages Web les plus récentes. Vous pouvez également actualiser manuellement les pages spécifiques qui ont été mises à jour récemment. Un index à jour permet d'obtenir de meilleurs résultats.
Préparez et ingérez les événements utilisateur :
- Préparez au moins 30 jours d'événements utilisateur pour l'entraînement initial du modèle. Vous pouvez utiliser l'historique des événements utilisateur et/ou les événements utilisateur en temps réel. Les événements en temps réel permettent d'obtenir de meilleurs résultats de personnalisation.
- Enregistrez et partagez l'événement
search
(utilisé pour capturer les données de navigation), l'événementview-item
et l'événementconversion
. - Tous les événements utilisateur doivent inclure les éléments suivants :
eventType
, commesearch
pour la recherche et la navigation,view-item
etconversion
.userPseudoId
, qui est un identifiant utilisateur pseudonymisé cohérent.eventTime
, qui correspond à un code temporel ISO 8601 (UTC) indiquant la date et l'heure auxquelles l'événement a été enregistré.documents.id
affiché dans l'ordre dans lequel il apparaît à l'utilisateur, correspondant aux ID de document.searchInfo.searchQuery
pour enregistrer la requête de recherche de l'utilisateur.pageInfo.pageCategory
qui ajoute un contexte, tel que "HomepageCarousel", "Properties > VIC > Richmond".filter
qui décrit la logique de filtrage utilisée pour générer la liste des impressions. Cette information est souvent capturée par le champpageCategory
ou par la compréhension du système.
Pour en savoir plus, consultez la page
userEvents
.Activez l'entraînement du modèle et le pipeline de modèle :
Après avoir préparé vos données et collecté les événements utilisateur, contactez votre ingénieur client Google. L'équipe d'assistance peut examiner vos données et activer le modèle de personnalisation pour votre application.
Obtenir des résultats de navigation personnalisés
Ajoutez d'autres champs à votre demande de recherche, comme des filtres et des ajustements de classement (par exemple, un boost ou un classement personnalisé).
Gérez vos données et actualisez-les régulièrement :
Au fil du temps, veillez à ce que les documents de votre data store soient à jour et continuez d'importer de nouveaux événements utilisateur. Cela permet au modèle d'accéder aux derniers documents et interactions utilisateur pour fournir des résultats personnalisés.
Obtenir des résultats de navigation pour une application avec des données de site Web
Pour utiliser l'API afin d'obtenir des résultats de navigation pour une application avec des données de site Web, procédez comme suit :
Trouvez l'ID de votre application. Si vous avez déjà votre ID d'application, passez à l'étape suivante.
Dans la console Google Cloud , accédez à la page Applications d'IA.
Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.
Appelez la méthode
engines.servingConfigs.search
avec une requête vide ou sans requête comme suit :REST
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "orderBy": "ORDER_BY", "params": { "searchType": "0" }, "filter": "FILTER", "boostSpec": "BOOST_SPEC", }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Google Cloud .APP_ID
: ID de l'application Vertex AI Search que vous souhaitez interroger.ORDER_BY
(facultatif) : Ordre dans lequel les résultats sont organisés. L'attribut sur lequel effectuer le tri doit avoir une interprétation numérique, par exempledate
. Pour en savoir plus, consultez Trier les résultats de recherche sur le Web.FILTER
: facultatif, mais recommandé. Champ de texte permettant de filtrer votre recherche à l'aide d'une expression de filtre. La valeur par défaut de cet attribut est une chaîne vide. Pour en savoir plus sur l'utilisation du champfilter
, consultez Filtrer la recherche générique pour les données structurées ou non structurées et Filtrer la recherche sur le site Web.BOOST_SPEC
(facultatif) : Spécification permettant de mettre en avant ou d'enterrer des documents. Valeurs :BOOST
: nombre à virgule flottante compris dans la plage [-1,1]. Lorsque la valeur est négative, les résultats sont rétrogradés (ils apparaissent plus bas dans les résultats). Lorsque la valeur est positive, les résultats sont mis en avant (ils apparaissent plus haut dans les résultats).CONDITION
: expression de filtre de texte permettant de sélectionner les documents auxquels le boost est appliqué. Le filtre doit renvoyer une valeur booléenne. Pour en savoir plus sur l'optimisation de la recherche structurée, consultez Optimiser les résultats de recherche.
Vous devriez recevoir une réponse JSON semblable à la réponse tronquée suivante. La réponse contient des résultats de recherche détaillés, listés dans l'ordre déterminé par les champs définis dans la demande de recherche.