GOOGLE_APPLICATION_CREDENTIALS 错误

GOOGLE_APPLICATION_CREDENTIALS error

我正在尝试使用 google 语音 API 将音频文件转换为文本,但遇到一些问题 documentation.I 已启用语音 API并创建了一个服务帐户文件。我还激活了服务帐户凭据。然后我编写了以下命令来使用我的服务帐户检索授权令牌。

gcloud auth application-default print-access-token

但是它正在返回这条消息

我不明白为什么会这样,因为我已经在我的 Compute Engine 中创建了一个 VM 实例。谁能解释我哪里出错了?另外,有没有其他方法可以验证我的帐户并调用 google 演讲 API?

gcloud 凭据和应用程序默认凭据是分开管理的。如果您激活了服务帐户密钥文件,则该文件只能用于 gcloud 命令,不能用于应用程序默认凭据。

gcloud auth application-default 组命令仅用于管理应用程序默认值,与 gcloud auth.

中的命令无关

有几种方法可以 "activate" 应用程序默认凭据:

  • 使用您的用户帐户
    • 运行gcloud auth application-default login,或
  • 使用服务帐号(首选)

    • 设置环境变量GOOGLE_APPLICATION_CREDENTIALS=path/to/your/service_accont_key_file.json
    • 复制 path/to/your/service_accont_key_file.json 到 ~/.config/gcloud/application_default_credentials.json`

      • 在 windows 这可能会有所不同,运行

        gcloud info --format="value(config.paths.global_config_dir)"
        

        获取配置目录的路径。

现在命令像

gcloud auth application-default print-access-token

应该可以。

作为解决方案,您可以下载 GCLOUD 控制台,然后 运行 在控制台上执行此命令 "gcloud auth application-default" 使用具有项目访问权限的 gmail 帐户登录,然后您将获得 google api 已启用。

您可以使用以下命令在 gcloud 上生成密钥 json 文件: gcloud auth application-default login

google 将显示一个 link 以确认,一旦您这样做,将显示临时文件夹中的 json 文件