#project #gcloud
#проект #gcloud
Вопрос:
Я использую gcloud для реализации speech2text. Мне пришлось перезагрузить свой сервер, и теперь у меня проблемы с тем, чтобы gcloud распознал правильный проект.
transscript= $(curl -s -H «Content-Type: application / json» -H «Авторизация: на предъявителя» $ (gcloud auth print-access-token)https://speech.googleapis.com/v1/speech:recognize -d @$mailpath/sync_request.json)
результаты в
«код»: 403, «сообщение»: «Облачный API преобразования речи в текст ранее не использовался в проекте 32555940559 или он отключен. Включите его, посетивhttps://console.developers.google.com/apis/api/speech.googleapis.com/overview?project = затем повторите попытку. Если вы недавно включили этот API, подождите несколько минут, пока действие распространится на наши системы, и повторите попытку.»,
Я понятия не имею, откуда взялся неправильный номер проекта.
Я попробовал список конфигураций gcloud config, и отображается правильный проект. Я полностью деинсталлировал sdk. Я назначил переменную среды GOOGLE_APPLICATION_CREDENTIALS
все безуспешно.
ожидаемый результат — присвоен правильный проект
Ответ №1:
в документации говорится:
gcloud auth application-default print-access-token генерирует и печатает токен доступа для текущих учетных данных приложения по умолчанию (ADC). ADC можно указать либо путем установки
GOOGLE_APPLICATION_CREDENTIALS
переменной среды в путь к файлу ключа учетной записи службы (JSON), либо с помощью gcloud auth application-логин по умолчанию.
Ответ №2:
Вы используете недокументированный (и не рекомендованный) проект gcloud auth print-access-token
. При этом будет использоваться идентификатор клиента SDK по умолчанию (который, как я предполагаю, находится в project 32555940559
), а Speech API в этом проекте не включен.
Как предложил Мартин, вместо использования gcloud auth print-access-token
вам следует использовать gcloud auth application-default print-access-token
.
Вы можете проверить, прав ли я относительно идентификатора клиента, выполнив grep -r 'CLOUDSDK_CLIENT_ID =' $(dirname $(which gcloud))/../
(я только что проверил, и действительно, этот идентификатор проекта соответствует проекту с идентификатором клиента по умолчанию).