猿问

如何在多项目/多配置设置中使用 Tensorflow 的 `file_io`?

我是多个 GCP 组织和项目的成员。当我运行时,gcloud config configurations list我得到:


NAME        IS_ACTIVE   ACCOUNT          PROJECT

default     False       knub@org_1.com   org1

project_b   True        knub@org_2.com   org2

现在我想跑


from tensorflow.python.lib.io import file_io


file_io.file_exists("gs://bucket_from_project_b/test.txt")

但我得到了错误


knub@org_1.com does not have storage.objects.get access to

gs://bucket_from_project_b/test.txt`

即使活动项目是project_b. 其他所有东西,比如gcloudand gsutil,工作并尊重当前活动的配置。


我如何file_io尊重我的活动配置?


偶然的你
浏览 157回答 1
1回答

白衣染霜花

问题是file_io使用应用程序凭据~/.config/gcloud/application_default_credentials.json而不是~/.config/gcloud/active_config. 此外,application_default_credentials.json在项目之间切换时不会更新(通过gcloud config configurations activate default),但每次都必须通过gcloud auth application-default login切换后调用手动更新。
随时随地看视频慕课网APP

相关分类

Python
我要回答