Soluciona problemas con los instructivos

Si tienes problemas para configurar el instructivo, en esta página se enumeran los problemas que puedes encontrar y se proporcionan sugerencias para solucionarlos.

Falta la carpeta cloudshell_open

Si no puedes ver la carpeta cloudshell_open en tu directorio principal cuando ejecutas ls ~, significa que la carpeta y sus archivos se perdieron. Este problema ocurre cuando usas Cloud Shell en modo efímero y pierdes la conexión a Internet o actualizas la página. Para resolver este problema, vuelve a ejecutar el instructivo desde el principio. Para evitar la pérdida de tus archivos en el futuro, considera cambiar al modo predeterminado.

No se puede detectar un ID del proyecto en el entorno actual.

El siguiente error ocurre cuando intentas ejecutar una muestra de código:

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

Este problema ocurre cuando tu proyecto de Google Cloud no está configurado. Para resolver este problema, ejecuta el siguiente comando para configurar el proyecto:

gcloud config set project <YOUR-PROJECT-ID>

Se producen errores de key.json cuando se ejecutan muestras de código.

Uno de los siguientes errores se produce cuando ejecutas muestras de código:

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

Este problema ocurre cuando falta el archivo key.json, que se usa para autenticar una cuenta de servicio. Para comprobar si es así, ejecuta el siguiente comando:

cat ~/key.json

Esto imprime el contenido del archivo o el mensaje No such file or directory. Un archivo vacío significa que el error se produjo durante la creación de la clave. Si falta un archivo, significa que el error ocurrió antes. Para resolver este problema, sigue el paso del instructivo "Prepara tu entorno de trabajo".

Vertex AI Search for Retail no se usó en el proyecto antes o está inhabilitada

El siguiente error ocurre cuando intentas ejecutar un instructivo:

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

Para resolver este problema, habilita Vertex AI Search for Retail en la página Detalles de la API o los servicios de la consola de Google Cloud o ejecuta el siguiente comando:

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

La cuenta de servicio no tiene permiso para acceder a la instancia del proyecto

El siguiente error ocurre cuando asignas roles a la cuenta de servicio:

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.

Para resolver este problema, verifica que tengas la cuenta correcta activa. Para ello, ejecuta el comando gcloud auth list en la terminal. Asegúrate de que la cuenta activa sea la cuenta de servicio. Ve a la página IAM de la consola de Google Cloud para verificar que la cuenta de servicio sea propietaria de tu proyecto de Google Cloud.

Autenticación no válida con credenciales de usuario final

El siguiente error ocurre cuando ejecutas muestras de código:

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.

Este problema ocurre cuando se usan las credenciales de usuario final en lugar de una cuenta de servicio. Este problema también puede ocurrir cuando una cuenta de servicio no está activa o las variables de entorno necesarias no están configuradas. Es posible que veas este error después de reiniciar Cloud Shell o abrir una nueva ventana de Terminal.

Para solucionar este problema, sigue estos pasos:

  1. Sigue las instrucciones de la sección “Prepara tu entorno de trabajo” pasos del instructivo y asegúrate de tener una cuenta de servicio activa ejecutando gcloud auth list.
  2. Configura las variables de entorno:

    1. Para todos los lenguajes, ejecuta el siguiente comando:
    export GOOGLE_APPLICATION_CREDENTIALS=~/key.json
    
    1. Además, para .NET, ejecuta el comando:
    export GOOGLE_PROJECT_ID=<YOUR-PROJECT-ID>
    

Error de permisos cuando la cuenta de servicio no tiene los roles necesarios

El siguiente error ocurre cuando ejecutas muestras de código:

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"

Este problema ocurre cuando tu cuenta de servicio no tiene los roles requeridos: editor y retail.admin. Para resolver este problema, configura tu entorno de trabajo siguiendo los pasos del instructivo "Prepara tu entorno de trabajo".

La operación de búsqueda no devolvió ningún resultado que coincida

Este problema ocurre cuando ningún producto del catálogo coincide con tu búsqueda o el catálogo de productos está vacío. Para resolver este problema, verifica si tienes productos en tu catálogo en la página Catálogo de la consola de Google Cloud. De lo contrario, sigue el paso del instructivo "Importa datos de catálogo" para importar los datos.

Aún hay problemas

Intenta restablecer Cloud Shell y ejecuta instructivos desde el principio.