ラズパイで「OK Google」

ホーム / IT / IoT(アイオーティー) / ラズパイで「OK Google」

OK Googleでお馴染みのGoogleホームは、1万5000円程度で購入できます

Googleホームはスピーカーの中で、Googleアシスタントというアプリケーションが動いています。スマホの中に入っているものと同じです。このGoogleアシスタントのSDKは公開されているため、手元のラズパイにインストールすることで、自作のGoogleホームを作ることができます。

さっそくやってみました。

必要なもの

マイクやスピーカーはラズパイが認識してくれるものなら大丈夫そうです。

ラズパイ Raspberry Pi 3 MODEL B
USBマイク MM-MCU02BK
スピーカー 今回はHDMIケーブルで接続したテレビを利用

セットアップする

Google公式のセットアップ手順に詳しく書かれています。ただし英語ですが・・・。
日本語で説明されているサイトもありますので参考までに。

ハマったポイントだけを箇条書き

  • スピーカーとマイクのセットアップが正しくできていないとGoogleアシスタントがエラーになります
  • Configure and Test the Audioを参考に音声の録音と再生ができるようにしておきましょう。

  • Install the SDK and Sample CodeのGet the package以降の作業はすべてvenv仮想環境での実行になります
  • プロンプトが(env)になっていることを確認してからコマンドを実行してください。なっていない場合は、
    source env/bin/activate
    を実行してください。

  • 手順の通りに作業をしていると/home/pi/env以下の環境にインストールされます
  • おかしいと感じてやり直したいときには、env以下を削除して、
    python3 -m venv env
    から再開すればOKです。

  • 一通りセットアップが済んでもアクティビティの追加をしないと機能してくれません
  • ウェブとアプリ、端末情報、音声を有効にします。

googlesamples-assistant-hotword が起動して、OKGoogleに反応してくれれば完了です。最初は言語が英語なので、英語の発音を意識してなげかけてみましょう(^^;)。

やりとりを日本語にする

これを待っていました!
SDKは2017年4月に公開されていましたが、英語のみの対応でした。また2017年12月20日に日本語対応したとリリースされましたが、hotwordのサンプルはまだ日本語に対応していない、と書かれている記事もありました。2018年1月12日時点では、hotwordも日本語に対応していました。

言語を変更するには、スマホのGoogleアシスタントアプリが必要です。

右上のアイコンから進み、

さらに右上の「・・・」アイコン⇒設定⇒自分で登録した端末名と進み、言語を日本語に変更します。

私が試したGoogleアカウントはGSuiteアカウントだったため、Googleアシスタントアプリの実行にはさらにひと手間が必要でした。

仕上がりはこんな感じ。

OKグーグルしてみた

早速アシスタントと遊んでみました。

今何時? 10時54分です
君はだれ? Googleアシスタントです。よろしくおねがいします。例えば為替レートをお調べすることができます。
明日の天気を教えて 最高気温6度、最低気温-2度で、晴れるでしょう。
ここはどこ? 茨城県です。
歌って ららららーらららららー
ドルとユーロのレートは? 1ドル0.819ユーロです。
30秒後にタイマーをセット スタート・・・(30秒後に)ピコピコ

やけにドラえもんをライバル視しているのが面白かったです。

ドラえもん 四次元ポケットはもっていませんが、ひみつ道具的な機能は持っていますよ。
タケコプター持ってる? もってませんが、テッテケテッテ テッテケテッテーテー Googleアース~!これを使えば地球上を自由に移動することができますよ。

4 Comments

  • nawata

    同じくアシスタントがインストールできない(バージョンは対応しているはずなのに)というトラブルに見舞われています。
    それにしても、ラズパイにSDKが載っているのに、どうしてスマホからでないとSDKの言語設定が変更できないのかが不思議ですね。

    • nawataさん、コメントありがとうございます。仰るとおり不思議ですね。SDKも同じGoogleアシスタントをめざすのであれば、同じ機能を備えていてほしいです。開発者向けプレビューの段階だそうなので、いずれ言語設定もSDKからできるようになるかもしれません。

コメントを残す

Translate »