【Google AIY Voice Kit】Google Assistant APIの設定からデモプログラムの実行まで

Google AIY Voice Kitの組み立て&設定に関する記事が続いています。今回は、Google Assistant APIを有効化するお話しです。

さて、オーディオチェックとWifi接続を完了させたら、次はGoogle Cloud Platform(GCP)で、Google Assistant APIを有効化する作業へと移ります。

が、そこでエラーのドツボにはまって苦労した話は前回の記事で紹介いたしました。

【Google AIY Voice Kit】Google Assistant APIの設定で大失敗
前回の記事の段階では、オーディオチェックとWifi接続を完了させました。次はGoogle Cloud Platform(GCP)...

今回は気を取り直して、再度トライします。ここの部分は、日本語で説明した情報があまりなかったので、自分のメモという意味も込めて、少し詳しめに書いてみました。

今回の作業は、付属のマニュアルの第5章に該当します。

Google のAIY Projectsのサイトでは、こちらで説明してあります。

Voice
This project demonstrates how to get a natural language recognizer up and running and connect it to the Google Assistant.

Google Cloud Platformで基本的に行なうステップとしては以下の通りです。

Google Cloud Platformへアクセス

Google Cloud Platformにアクセスして使用したいアカウントでサインインします。

最初にGoogle Cloud Platformにアクセスすると、トップ画面で無料トライアルの文字が出てきます。

「えっ、あとで有料になるサービスなわけ?」とアセるわけですが、とりあえずここでは無料トライアルせずに、次へ進むことはできますので、画面右上のコンソールというリンクをクリックします。

上の図の無料トライアルのうえの水色の「コンソール」って文字をクリックです。するとポップアップメニューが出てくるので、

「すべてのサービスと関連 API について、適用される利用規約を遵守して利用することに同意します。」等にチェックを入れてクリックします。

プロジェクトを新規作成

そして、Google Cloud Platformのロゴ横にある「プロジェクトを選択」をクリックするとポップアップメニューが出てくるので…

右の+(プラス)マークをクリックしてプロジェクトを新規作成します。

上の画面では「割り当てのプロジェクト数は残り8件です」なんて書いてありますが、最初は12件ありました…。私がミスしてプロジェクトを削除して…を繰り返してたら、結構減ってしまいました。

今思えば、エラーのドツボにはまってもプロジェクトは削除せずに、認証情報(Credentials)だけ変えれば良かったのかもしれません…。

Google Assistant APIの有効化

プロジェクトを作ったら、左側の三本線をクリックして、「APIとサービス」を選び、画面上部右の青字の「APIとサービスの有効化」をクリックします。

表示される検索ボックスに「Google Assistant API」と入れると…

1件、出てきました。「Google Assistant API」をクリックします。

そして、Google Assistant APIを「有効にする」をクリックします。

認証情報でOAuth クライアントIDを選択

すると、「この API を使用するには、認証情報が必要になる可能性があります。開始するには、[認証情報を作成] をクリックしてください。」と出てきていますが、ここでは、この青いボタンはクリックせず、左下「APIとサービス」のメニュー下に出てくる「認証情報」の文字(「ライブラリ」の下にある)をクリックします。

右側画面の青い「認証情報作成」をクリックすると、いろいろな選択肢が出てくるので、今回は「OAuth クライアント ID」を選択します。

すると、あれ?できないや。なんかメッセージが表示されます。

はじめて使用する場合、「OAuth クライアントを作成するには、まず同意画面でサービス名を設定する必要があります」と出てくるので、「同意画面を設定」をクリックします。

そして、認証情報の画面で、メールアドレスと、ユーザーに表示するサービス名を入力します。

ユーザーに表示するサービス名は、自分が判別可能なものを適当に付けるので大丈夫と思います。それで、「保存」ボタンを押します。

ふたたび、認証情報画面に戻りますと、

こんどは入力できるようになっているので、「アプリケーションの種類」から「その他」を選び、名前を入力します。名前は自分が判別できればなんでもOKです。そして、「作成」ボタンをクリックします。

すると「作成中…」という状態になり、間もなくポップアップウィンドウがあがってきます。こんな感じのウィンドウです。

これはこのまま、OKのボタンを押すと…

OAuth 2.0 クライアント IDが一つ出来上がりました。長々とクライアントIDというものが表示されている右側のダウンロードアイコン(↓)をクリックして、ファイルをダウンロードします。長々とした名前のJsonファイルがダウンロードされます。

Jsonファイルの名称変更&移動

次はダウンロードしたファイルをassistant.jsonにリネームして、/home/pi/直下に移動させ、/home/pi/assistant.jsonという感じにします。その方法は、いろいろあるとは思うのですが、本家のマニュアルの説明に従いますと…

ターミナル画面を開いて、まずは認証情報ファイルの場所を確認してみます。おそらくDownloadsフォルダにダウンロードされているので、それを表示し、リスト化して見てみます。

cd Downloads
ls

とコマンドを打つと、Downloadsフォルダ内のファイルが表示されるので、その中に、client_secret…ではじまる長々とした名前のJsonファイルが出てくるはずです。

この名前を変更するには、

mv client_secret

まで入力して、TABキーを押すと、残りの長々としたファイル名が表示されます。そのあとに、/home/pi/assistant.jsonと続けます。つまり、

mv client_secret_782639341204-79lf5nguo121gvvt0kgu410b35okrni17.apps.googleusercontent.com.json /home/pi/assistant.json

という形で入力します。上の、長々したjsonの名前は、公式マニュアルから拝借したものです。実際は、ご自分のマシンにダウンロードされたものが表示されます。mvとclient_secret…と、.jsonと/home/の間にスペースを入れることを忘れずに!

これで、ダウンロードしたファイルの名前変更したものが、piフォルダの直下に移動したはずです。

さて、終わりが少しずつ見えてきました。

アクティビティ管理画面で有効化する項目

同じGoogle アカウントのアクティビティ管理画面へ行き、

  • ウェブとアプリのアクティビティ(「Chrome の閲覧履歴と Google サービスを使用するウェブサイトやアプリでのアクティビティを含める」にチェックを入れる)
  • 端末情報
  • 音声アクティビティ

を有効にします。

なお、私の場合は最初からすべて有効になっていた情報でしたので、何もしませんでした。

デモプログラムを実行する

さて、ここでいったん、ブラウザを離れてラズベリーパイのデスクトップ画面に戻ります。

マシンのデスクトップ画面にある「Start dev terminal」のアイコンをダブルクリックするとターミナル画面が現れるので、そこに

src/assistant_library_demo.py

のコマンドを入力します。

これこそ、デモのプログラムです。完了まであと一歩!

「Google Assistant API」の許可にOKする

すると、同じタイミングで、ウェブブラウザ(Google Chromium)のページが突然表示され、

「Google Assistant API」が次の許可をリクエストしてます…というメッセージが表示されます。

そこで、「許可」を選択すると…

ようやくOK Googleが使えるようになりました。終了したいときは、Ctrl-Cを入力すればOKです。

さらに、同じ画面で、

src/assistant_grpc_demo.py

のコマンドを入力すると、これは「OK Google」と言うかわりに、ボタンを押して質問するとGoogle さんが答えてくれるようになっています。

メモ:私の場合…

思えば、最初にWindowsからリモート操作で設定した際には、最後に出てくるブラウザからのGoogle Assistant APIの許可画面に気づきませんでした。最初にエラーが出てしまったのは、Windows で設定したファイルだったからか、ここで「許可」に気づかなかったからか、厳密には原因は謎のままです。

次の記事

【Google AIY Voice Kit】OK Googleして知った落とし穴
さて、ドツボにはまったGoogle Assistant APIの有効化作業も何とか終了しました。無事、OKGoogleのデモプログ...

スポンサーリンク
最後までお読みいただき、ありがとうございます。

フォローする

スポンサーリンク
error: Content is protected !!