【音声アシスタント開発】世界で話題の音声アシスタント、Amazon Echoを自作してみた!

AI音声アシスタントやりたい!

ロボットエバンジェリストの西田です。

最近AI音声アシスタント流行ってますよね! Google HomeとかAmazon Echoとか!

残念なことに国内では販売されていないし、仮に手に入っても技適が通っておらず、国内では法律違反になるため使用できません。


amazon tap13

ロボスタにあるAmazon Echoたち。全部、日本では電源入れられなくてつまんない・・・。

amazon tap08

バッテリー内蔵で持ち運びもできる Amazon Tap。ボタンを押して命令するタイプ。これも使えない・・・。

海外では注目されている音声アシスタントが日本で体験できないなんて・・・。



だったら自作しよう!

「つまらないなー」と思っていたら、朗報が! Amazonの Alexa Voice Services (AVS) というサービスを使えば、Amazon Echo(的なもの)を自作できるとのこと。

さっそく、やってみることにしました!



デバイスを作成しよう!

まずは、Amazon Developerにログインします。AWSのほうじゃなくて、Amazonアプリストアのほうなので注意しましょう。


スクリーンショット 2017-03-22 16.21.13

Alexaのタブが新設されています! いつのまに!

右側の、Alexa Voice Serviceを選ぶと、Register your product with Alexa Voice Serviceのページに移動します。ここで、自分のAlexaを登録できます。


スクリーンショット 2017-03-22 16.30.33

オレンジのボタンからdeviceを選ぶと登録できます。写真は登録済みの状態。アイコンのサイズが変になる・・・。

基本的には、Getting Started Guideをみながら設定していきます。


スクリーンショット 2017-03-22 16.54.33

今回は、このガイドを見ながらやっていきました!


西田メモ
なぜか日本語版だとリンク切れで見ることができないので、英語版のGetting Started Guideを見ながら作業しました。なので若干自己流かもしれません。はやく日本語版のページがほしいですね!

無事設定が終わると、deviceが出来上がります。


スクリーンショット 2017-03-22 16.25.06

こんな感じ! ガイドを見ながらやれば出来ると思います。

今回は、Alexchanというdeviceを作成しました!

▽外部リンク
Amazon Developer https://developer.amazon.com/ja/


ハードウェアを用意しよう!

デバイスの用意ができたので、ハードウェアの用意をします。今回は、Raspberry Pi 3を用意しました。


IMG_3238

今回用意したハードウェア、この他にキーボードとマウス、HDMIディスプレイを使いました。

USBマイクとスピーカーも用意しました。(このスピーカーはブルートゥース接続ができてマイクもついているのですが、今回はピンジャック接続で、スピーカー機能だけ使っています。)

ハードウェアの用意はこんな感じです。



インストールしてみよう!

先程のGetting Started Guideで紹介されていた、alexa-avs-sample-appをみながら、ソフトをインストールしていきます。


スクリーンショット 2017-03-22 17.23.19

GitHubにソースが置いてあるので便利!

完了したら、ラズベリーパイの画面からコマンド・プロンプトを表示して、アプリを起動します。Alexaの実行には、2つのアプリの起動が必要です。

うまくいくと、このような画面が出て、Alexaが使えるようになります!


スクリーンショット 2017-03-22 17.36.18

VNCの画面をキャプチャしたので右側がきれています。

Listenボタンを押すと聞き取りモードになります。マイクに話しかけると、通信を行った後にスピーカーから音声が流れてきますよ!

実際に試して動画を取ってみました!



いい感じですね! 本物っぽい感じがします!



本物との違いは?

本物のAmazon Echoとの大きな違いは、「Alexa」という言葉で起動できない点です。あと、当然ですがマイクの読み取り精度などは用意したハードウェアに依存します。

【追記】Alexaの声で起動する方法もあるそうです! Getting Started Guideに書いてあるんだけど勘違いして手順を飛ばしたっぽいです・・・。次回は挑戦してみます!



IMG_3251

ダンボールに入れてみた。なんかそれっぽい。(けど、熱くなったからすぐ外しました。火事に注意!)


管理画面(?)を使ってみよう

せっかくAlexaのユーザーになったので、管理画面(?)も覗いてみることにしましょう。


スクリーンショット 2017-03-22 17.50.18

青いロゴがカッコイイ!

Amazon Developerと同じアカウントでログインすることができました。


スクリーンショット 2017-03-22 18.03.10

URLがpitanguiとかspaなのはなんでなのかな。

HOMEのタグでは、いままで話しかけた履歴を見ることができます。

Voice feedback の再生ボタンを押すと、自分がさっき話しかけた声がパソコンから聞こえてきます!



音声認識のフィードバック用とはいえ、リアルな音声のログまで取っているとは・・・。

常時ログを取っているわけではなく、Listenボタンを押した後(Alexaと話しかけた後)の、声だけをログに取っているようです。

ちなみに、話しかけた内容によっては、ログが残らないみたいです。

たとえば、「What time is it in Japan?」はログが残るのですが、「What time is it now」は残っていませんでした。もしかしたら、クライアントだけで処理しているワードは、ログが残らないのかもしれません。

▽外部リンク
管理画面(?) pitangui.amazon.com

こうおもった

Amazon Echoが作れたのでうれしい! これで、スキルの開発とかもできちゃうかもです。ただ、ログを取ってるのはびっくりですね。アレクサと呼びかけたときだけしか保存しないとはいえ、背景に流れている音や他の人の声も保存されちゃうのは怖い気も・・・。この機能を利用して、ダイイング・メッセージにAlexaに話しかけていて事件が解決した・・・みたいなことが将来起こるかもしれませんね!

ABOUT THE AUTHOR / 

西田 寛輔
西田 寛輔

とのさまラボ代表。ハイパーメディア・ロボット・クリエイターとして、ロボットアプリの開発を行うほか、自身でもロボットを開発中。ソフトバンクロボティクスが主催する公式アプリコンテストでは2大会連続ファイナリストに選出されるなど、数々の実績を持つ。2016年に、ヒトとロボットの音楽ユニット mirai capsule を結成。ロボスタでは、ロボットエバンジェリストとして活動中。