Importer des données de saisie semi-automatique pour la recherche

La saisie semi-automatique est une fonctionnalité permettant de prédire la fin d'un mot saisi par un utilisateur, ce qui améliore l'expérience de recherche des utilisateurs. Cette fonctionnalité peut fournir des suggestions basées sur l'ensemble de données ou sur les événements utilisateur que vous lui fournissez.

N'importez des données de saisie semi-automatique que si vous souhaitez disposer de commandes supplémentaires (liste "Ne pas supprimer", liste de refus) ou si vous devez utiliser vos propres données de saisie semi-automatique. L'activation de l'apprentissage automatique est suffisante dans la plupart des cas où l'autocomplétion est nécessaire. L'apprentissage automatique fournit un ensemble de données de suggestions basé sur le machine learning en fonction des événements de recherche des utilisateurs. Pour savoir comment activer l'apprentissage automatique, consultez la section Auto-complétement.

Ces instructions ne concernent que l'importation de vos propres données de saisie semi-automatique. Prévoyez des mises à jour régulières si vous comptez utiliser systématiquement votre propre ensemble de données de saisie semi-automatique. Pour obtenir les résultats de saisie semi-automatique au moment de la requête, consultez CompletionService.CompleteQuery. Les données de saisie semi-automatique ne sont utilisées que pour la recherche. Ces données ne sont pas utilisées par les recommandations.

Avant de commencer

Pour pouvoir importer vos informations de saisie semi-automatique, vous devez avoir suivi les instructions de la section Avant de commencer, en particulier celles spécifiques à la configuration de votre projet, à la création d'un compte de service et à l'ajout de votre compte de service à votre environnement local.

Vous devez disposer du rôle IAM Éditeur Retail pour effectuer l'importation.

Bonnes pratiques concernant l'importation de saisie semi-automatique

Lorsque vous importez des données de saisie semi-automatique, veillez à mettre en œuvre les bonnes pratiques suivantes:

  • Lisez le schéma BigQuery listé dans les sections suivantes et la documentation de l'API.

  • N'utilisez pas de valeurs d'espace réservé.

  • Incluez autant de champs que possible.

  • Si vous prévoyez d'utiliser votre propre ensemble de données de saisie semi-automatique, veillez à le mettre à jour régulièrement.

  • L'importation de données à partir d'un autre projet n'est pas autorisée.

Importer des données de saisie semi-automatique

Importer des données de saisie semi-automatique depuis BigQuery

Vertex AI Search for retail prend en charge l'importation de données BigQuery pour la liste de refus, la liste de non-suppression et la liste de termes de suggestion. Pour en savoir plus, consultez Saisie semi-automatique.

Pour importer des données de saisie semi-automatique au format approprié à partir de BigQuery, utilisez le schéma de saisie semi-automatique du Réseau de Recherche pour le commerce de Vertex AI pour créer une table BigQuery au bon format puis insérez dans la table vos données de saisie semi-automatique. Ensuite, importez vos données dans Vertex AI Search pour le commerce.

Pour plus d'informations sur les tables BigQuery, consultez la page Présentation des tables. Pour obtenir de l'aide sur les requêtes BigQuery, consultez la page Présentation des requêtes de données dans BigQuery.

Emplacement de l'ensemble de données BigQuery

Lorsque vous créez votre ensemble de données BigQuery pour vos tables BigQuery à saisie semi-automatique, assurez-vous que l'emplacement de l'ensemble de données est défini sur l'emplacement multirégional "US". Si vous ne le définissez pas correctement, votre requête d'importation échouera plus tard. Pour en savoir plus sur les emplacements des ensembles de données BigQuery, consultez la section Emplacements des ensembles de données dans la documentation BigQuery.

Insérer des données dans BigQuery

Utilisez le schéma de saisie semi-automatique du Réseau de Recherche pour le commerce de Vertex AI pour importer vos données de saisie semi-automatique dans BigQuery.

BigQuery peut utiliser le schéma pour vérifier si les données au format JSON présentent des noms et des types de champ corrects (tels que STRING, INTEGER et RECORD), mais n'est pas capable de vérifier :

  • Si un champ de chaîne est mappé sur une valeur d'énumération reconnaissable.
  • Si un champ de chaîne utilise le format approprié.
  • Si la valeur d'un champ de type entier ou nombre à virgule flottante se situe dans une plage valide.
  • Si un champ manquant est un champ obligatoire.

Pour garantir la qualité de vos données et de l'expérience de recherche des utilisateurs finaux, veillez à vous reporter au schéma et à la documentation de référence pour plus de détails sur les valeurs et sur les formats à utiliser.

Configurer l'accès à votre ensemble de données BigQuery

Pour configurer l'accès, assurez-vous que votre ensemble de données BigQuery se trouve dans le même projet que votre service de recherche Vertex AI pour le commerce, puis procédez comme suit.

  1. Ouvrez la page "IAM" dans Google Cloud Console.

    Ouvrir la page IAM

  2. Sélectionnez votre projet Vertex AI Search pour le commerce.

  3. Sur la page IAM et administration, cliquez sur  Accorder l'accès.

  4. Pour Nouveaux principaux, saisissez cloud-retail-customer-data-access@system.gserviceaccount.com, puis sélectionnez le rôle BigQuery > Lecteur de données BigQuery.

    Si vous ne souhaitez pas attribuer le rôle de lecteur de données sur l'ensemble du projet, vous pouvez l'ajouter directement au niveau de l'ensemble de données. En savoir plus

  5. Cliquez sur Enregistrer.

Déclencher l'importation de données dans Vertex AI Search pour le commerce

Console

  1. Accéder à la page "Contrôles"

  2. Accédez à l'onglet Commandes de saisie semi-automatique.

  3. Dans la section Listes de termes, recherchez le type de liste que vous prévoyez d'importer (Liste de refus, Liste de non-suppression ou Liste de termes suggérés), puis cliquez sur Importer ou Remplacer.

    Le volet Importer s'ouvre.

  4. Saisissez le chemin d'accès BigQuery de l'emplacement de vos données ou sélectionnez Parcourir pour le sélectionner.

    Le chemin d'accès BigQuery doit se trouver dans le même projet et son schéma doit être correct. Pour vérifier cela, cliquez sur Parcourir, puis sur le nom de la table pour afficher son contenu dans la console BigQuery.

  5. Dans le volet Importer, cliquez sur Importer.

    L'importation commence. Vous pouvez quitter la page sans interrompre l'importation.

cURL

  1. Créez un fichier de données pour les paramètres d'entrée de l'importation. Les valeurs de vos paramètres d'entrée varient selon que vous importez depuis Cloud Storage ou BigQuery.

    Utilisez l'objet BigQuerySource pour pointer vers votre ensemble de données BigQuery.

    {
      "inputConfig":{
        "bigQuerySource": {
          "datasetId":"dataset-id",
          "tableId":"table-id",
          "dataSchema":"data-schema"
        }
      }
    }
  2. Importez vos informations de saisie semi-automatique dans Vertex AI Search pour le commerce en envoyant une requête POST à la méthode REST CompletionData:import, en fournissant le nom du fichier de données (affiché sous la forme input.json dans l'exemple ci-dessous).

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" -d @./input.json
    "https://retail.googleapis.com/v2alpha/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/completionData:import"

    Vous pouvez vérifier l'état de manière automatisée avec l'API. Vous devriez recevoir un objet de réponse ressemblant à ceci :

    {
      "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/123456",
      "done": false
    }

    Le champ de nom est l'ID de l'objet d'opération. Pour demander l'état de cet objet, remplacez le champ de nom par la valeur renvoyée par la méthode d'importation. Une fois l'importation terminée, le champ done renvoie true:

    curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://retail.googleapis.com/v2alpha/projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/123456"

    Une fois l'opération terminée, l'objet renvoyé a une valeur done de true et inclut un objet Status semblable à l'exemple suivant :

    {
      "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/123456",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.retail.v2alpha.ImportMetadata",
        "createTime": "2020-01-01T03:33:33.000001Z",
        "updateTime": "2020-01-01T03:34:33.000001Z",
        "successCount": "2",
        "failureCount": "1"
      },
      "done": true
      "response": {
        "@type": "type.googleapis.com/google.cloud.retail.v2alpha.ImportCompletionDataResponse",
      }
    }

Format des données de saisie semi-automatique

Votre fichier JSON doit ressembler aux exemples suivants. Les sauts de ligne ne sont là que pour des raisons de lisibilité. Vous devez fournir une suggestion entière sur une seule ligne. Chaque suggestion doit figurer sur une ligne distincte.

Champs obligatoires pour la suggestion :

{
  "suggestion": "ABC",
  "globalScore": "0.5"
}

ou

{
  "suggestion": "ABC",
  "frequency": "100"
}

Durée d'importation des données de saisie semi-automatique

Une importation depuis BigQuery prend généralement de quelques minutes à une heure.

Une fois l'importation de l'ensemble de données terminée, le champ done de l'objet d'opération est marqué comme "true". Ensuite, il peut s'écouler un à deux jours supplémentaires pour que les données soient indexées et utilisées dans la diffusion en production.

Maintenir votre ensemble de données de saisie semi-automatique à jour

Si vous prévoyez d'utiliser votre propre ensemble de données importé, il est recommandé de maintenir régulièrement l'ensemble de données importé à jour.

Mise à jour groupée

Vous pouvez utiliser la méthode d'importation pour mettre à jour votre saisie semi-automatique de manière groupée. Vous procédez de la même manière que pour l'importation initiale. Il suffit de suivre la procédure décrite dans la section Importer des données de saisie semi-automatique. Cette action remplacera l'intégralité de l'ensemble de données importé.

Surveiller l'état des importations

Pour toujours obtenir des suggestions de haute qualité lorsque vous utilisez la saisie semi-automatique, il est important de maintenir votre ensemble de données à jour. Vous devez surveiller les taux d'erreur d'importation et prendre des mesures, le cas échéant.

Schéma de saisie semi-automatique Vertex AI Search pour le commerce

Lorsque vous importez un ensemble de données de saisie semi-automatique depuis BigQuery, utilisez le schéma Vertex AI Search for retail ci-dessous pour créer des tables BigQuery au format approprié dans lesquelles vous pourrez charger vos données de saisie semi-automatique.

Schéma des suggestions

Cet ensemble de données permet de fournir vos propres suggestions de saisie semi-automatique avec vos propres scores.

Schéma de la liste de blocage

Cet ensemble de données est utilisé comme liste de blocage pour empêcher la suggestion de certaines expressions.

Schéma de la liste d'autorisation

Cet ensemble de données permet d'ignorer les processus de post-traitement (correction orthographique et filtrage des résultats nuls, par exemple) pour toutes les expressions présentes dans cette liste d'autorisation.