在哪里设置GOOGLE_APPLICATION_CREDENTIALS环境变量?

3

我正在尝试使用Python调用Google Cloud AI平台的训练API。我的服务帐户密钥JSON文件路径为“/Users/my_mac_username/service_account_key.json”,并在bash_profile文件中添加了导出语句,使其如下所示:

# Setting PATH for Python 3.8
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.8/bin:${PATH}"
export PATH
export GOOGLE_APPLICATION_CREDENTIALS="/Users/my_mac_username/service_account_key.json"

但是,我仍然遇到了错误:

google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials.

此外,我已安装了 google-cloud-sdk 文件夹。请问我应该在哪个文件中设置环境变量?感谢您的帮助!

如果你在命令行中运行 echo $GOOGLE_APPLICATION_CREDENTIALS,你会得到正确的数据吗?自从在你的bash_profile中设置了该值后,你是否打开了一个新的控制台? - Brettski
我得到了一个空字符串。 - Xi Liu
1
运行 source ~/.bash_profile 来加载您的配置文件或打开一个新的终端窗口。您也可以直接从控制台运行 export GOOGLE_APPLICATION_CREDENTIALS="/Users/my_mac_username/service_account_key.json" - Brettski
谢谢,问题解决了!有没有办法永久设置环境变量? - Xi Liu
假设您正在运行bash终端,那么您在~/.bash_profile中的设置将会生效。您可以通过在终端中运行echo $SHELL来查看。 - Brettski
1个回答

0
假设您的终端 shell 是 bash,并且您正确设置了环境变量。新增的变量在重新打开终端或在当前终端运行 source ~/.bash_profile 命令之前不会生效。
如果您正在运行 zsh,则将导出命令添加到您的 ~/.zshrc 文件中。
要确定当前运行的 shell,请从命令行中使用 echo $SHELL 命令。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接