Résoudre les problèmes liés aux tutoriels

Si vous rencontrez des problèmes de configuration de votre tutoriel, cette page répertorie les problèmes que vous pouvez rencontrer et fournit des suggestions pour les résoudre.

Le dossier cloudshell_open est manquant

Si vous ne voyez pas le dossier cloudshell_open dans votre répertoire d'accueil en exécutant ls ~, le dossier et ses fichiers sont perdus. Ce problème se produit lorsque vous utilisez Cloud Shell en mode Éphémère et que vous perdez votre connexion Internet ou que vous actualisez la page. Pour résoudre ce problème, réexécutez le tutoriel depuis le début. Pour éviter de perdre vos fichiers à l'avenir, envisagez de passer en mode par défaut.

Impossible de détecter un ID de projet dans l'environnement actuel

L'erreur suivante se produit lorsque vous essayez d'exécuter un exemple de code :

ERROR Unable to detect a Project Id in the current environment.

Ce problème se produit lorsque votre projet Google Cloud n'est pas défini. Pour résoudre ce problème, définissez le projet en exécutant la commande suivante :

gcloud config set project <YOUR-PROJECT-ID>

Erreurs key.json lors de l'exécution d'exemples de code

L'une des erreurs suivantes se produit lorsque vous exécutez des exemples de code:

File /home/user/key.json is not a valid json file
no JSON input found
The file at /home/user/key.json does not exist, or it is not a file
Could not find file '/home/user/key.json'
Error reading credential file from location /home/user/key.json: Value cannot be null

Ce problème se produit lorsque le fichier key.json, qui permet d'authentifier un compte de service, est vide ou manquant. Pour le vérifier, exécutez la commande suivante:

cat ~/key.json

Le contenu du fichier ou le message No such file or directory s'affiche. Un fichier vide signifie qu'une erreur s'est produite lors de la création de la clé. Si un fichier est manquant, cela signifie que l'erreur s'est produite avant cela. Pour résoudre ce problème, suivez l'étape "Préparer votre environnement de travail" du tutoriel.

Vertex AI Search pour le commerce n'a jamais été utilisé dans un projet auparavant ou est désactivé

L'erreur suivante se produit lorsque vous essayez d'exécuter un tutoriel :

PERMISSION_DENIED: Vertex AI Search for retail API has not been used in project <YOUR-PROJECT-ID> before or it is disabled

Pour résoudre ce problème, activez Vertex AI Search pour le commerce sur la page Détails des API/services de la console Google Cloud ou exécutez la commande suivante :

gcloud services enable \
    retail.googleapis.com \
    --project=<YOUR-PROJECT-ID>

Le compte de service n'est pas autorisé à accéder à l'instance du projet

L'erreur suivante se produit lorsque vous attribuez des rôles au compte de service :

User [USER@YOUR-PROJECT-ID.] does not have permission to access projects instance [YOUR-PROJECT-ID:setIamPolicy] (or it may not exist): Policy update access denied.

Pour résoudre ce problème, vérifiez que le bon compte est actif en exécutant la commande gcloud auth list dans le terminal. Assurez-vous que le compte actif est le compte de service. Accédez à la page IAM de la console Google Cloud pour vérifier que le compte de service est bien le propriétaire de votre projet Google Cloud.

Authentification non valide à l'aide des identifiants de l'utilisateur final

L'erreur suivante se produit lorsque vous exécutez des exemples de code:

PERMISSION_DENIED: Your application has been authenticated using end user credentials from the Google Cloud SDK or Google Cloud Shell which are not supported by the retail.googleapis.com.

Ce problème se produit lorsque les identifiants de l'utilisateur final sont utilisés au lieu d'un compte de service. Ce problème peut également se produire lorsqu'un compte de service n'est pas actif ou que les variables d'environnement requises ne sont pas définies. Cette erreur peut s'afficher après avoir redémarré Cloud Shell ou ouvert une nouvelle fenêtre de terminal.

Pour remédier à ce problème :

  1. Suivez la procédure "Préparer votre environnement de travail" les étapes du tutoriel et assurez-vous qu'un compte de service est actif en exécutant gcloud auth list.
  2. Définissez les variables d'environnement :

    1. Pour tous les langages, exécutez la commande suivante:
    export GOOGLE_APPLICATION_CREDENTIALS=~/key.json
    
    1. Pour .NET, exécutez également la commande suivante :
    export GOOGLE_PROJECT_ID=<YOUR-PROJECT-ID>
    

Erreur d'autorisation lorsque le compte de service ne dispose pas des rôles nécessaires

L'erreur suivante se produit lorsque vous exécutez des exemples de code:

google.api_core.exceptions.PermissionDenied: 403 Permission 'retail.<YOUR-REQUEST>' denied on resource '//retail.googleapis.com/projects/<YOUR-PROJECT-ID>/locations/<YOUR-LOCATION>' (or it may not exist). [reason: "IAM_PERMISSION_DENIED"

Ce problème se produit lorsque votre compte de service ne dispose pas des rôles requis: retail.admin et Editor. Pour résoudre ce problème, configurez votre environnement de travail en suivant la procédure "Préparer votre environnement de travail" les étapes du tutoriel.

L'opération de recherche n'a renvoyé aucun résultat correspondant

Ce problème survient lorsqu'aucun produit du catalogue ne correspond à votre requête de recherche ou que le catalogue de produits est vide. Pour résoudre ce problème, vérifiez si votre catalogue contient des produits sur la page Catalogue de la console Google Cloud. Si ce n'est pas le cas, importez des données de catalogue en suivant l'étape "Importer des données de catalogue" du tutoriel.

Le problème persiste

Essayez de réinitialiser Cloud Shell et de suivre les tutoriels depuis le début.