Ошибка 403, поскольку клиент Google Cloud Vision указывает не на тот проект

Я пытаюсь использовать пример Pyhon Google Cloud Vision, но получаю ошибка аутентификации.

Это не единственный мой проект Google Cloud, и в моей переменной среды GOOGLE_APPLICATION_CREDENTIALS задан путь к моему проекту bigquery. Я думал, что могу переопределить это, используя этот оператор:

client = vision.ImageAnnotatorClient.from_service_account_json(key_path)

где key_path - это путь к ключевому файлу json, связанному с моим проектом Vision (с поддержкой Cloud Vision API). Однако я получаю ошибку 403 из-за этого

response = client.label_detection(image=image)

По-видимому, даже несмотря на то, что я указал путь к ключевому файлу для ImageAnnotatorClient, он по-прежнему смотрит на учетные данные моего проекта bigquery и выплевывает пустышку, потому что для него не включен API Vision.

Мне действительно нужно менять переменную окружения каждый раз, когда я меняю проект?


person AltShift    schedule 28.08.2018    source источник


Ответы (1)


Похоже, что идентификатор проекта Cloud Vision не распространяется в среду Python ни из Cloud Console, ни из файла учетных данных. Я исправил ссылку с помощью облачной консоли:

gcloud config set project my_vision_project

Вызов label_detection теперь работает.

person AltShift    schedule 29.08.2018