音声ファイルをテキストに変換するためにGoogle Speech APIを使用しようとしていますが、ドキュメントに関するいくつかの問題に直面しています。音声APIを有効にし、サービスアカウントファイルを作成しました。また、サービスアカウントの資格情報をアクティブにしました。次に、サービスアカウントを使用して認証トークンを取得する次のコマンドを作成しました。
gcloud auth application-default print-access-token
Compute EngineでVMインスタンスが既に作成されているため、これがなぜ発生しているのかわかりません。アカウントを認証してGoogle Speech APIを呼び出しますか?
gcloud認証情報とアプリケーションのデフォルト認証情報は別々に管理されます。サービスアカウントキーファイルをアクティブにした場合、これはgcloudコマンドにのみ使用できますが、アプリケーションのデフォルト認証情報には使用できません。
gcloud auth application-default
コマンドのセットは、アプリケーションのデフォルトを管理するためだけにあり、gcloud auth
のコマンドとは関係ありません。
アプリケーションのデフォルト認証情報を「アクティブ化」する方法はいくつかあります。
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)"
configディレクトリへのパスを取得します。
今のようなコマンド
gcloud auth application-default print-access-token
動作するはずです。
ソリューションとして、GCLOUDコンソールをダウンロードし、プロジェクトアクセスを持つgmailアカウントでコンソール「gcloud auth application-default」ログインでこのコマンドを実行すると、有効なgoogle apiにアクセスできます。