ピカチュウと会話する系のアシスタントを作ってみる #dialogflow


ピカチュウと会話する系のアシスタント

Google homeのお持ちの方は今すぐ、Google homeに向かって「OK Google ピカチュウとおしゃべり」と言ってみてください。するとこちらの動画の用にピカチュウと会話(!?)することができます。

Google home + IRKit

ピカチュウと会話する系のアシスタントを作ってみよう

動画にあったようなアシスタントはDialogflowを使えば簡単に作成することができるので紹介したいと思います。ピカチュウの音声だと著作権的にやばいので、犬とか猫のフリー音声素材で試したいと思います。※友人の声を録画したものを使うと忘年会で盛り上がるかも

準備

  • 再生したい音声ファイルを準備する
  • 音声ファイルをサーバーにアップロードする
    • 今回はGCSを使います
    • httpsが使えればサーバーはどこでもOK
  • Dialogflowの登録
    • 新しいAgentをjaで作成

音声ファイルをサーバーに設置

既に音声ファイルアップ済の方は飛ばして大丈夫です!

GCSに音声ファイルをアップロード

GCSにバケットを作成し音声ファイルをアップロードします。

一般公開にチェックを入れURLを取得します

Intentの作成

Intentにトリガーのワードやレスポンス内容を入力します。

User saysの登録

User saysにトリガーにしたいワードをどんどん入れていきます。Intentの名前はDogにしました。

再生したい音声ファイルを指定

音声ファイルのURLをText Responseに入力します。複数登録することも可能です。記入する時は以下の様なタグで囲う必要があります。また、タグの中にドットでもいいので何か文字を入れてください。入れないとエラーになります。音声ファイルと同じテキストをいれるといいです。

TextResponse
<speak>
    <audio src="https://YOUR_AUDIO_URL"></audio> .
</speak>

テスト

IntegrationsのGoogle Assistantからシュミレータを起動しテストします。デフォルトの場合「テストアプリにつないで」と言うと、テストが実行されます。呼び出しキーワードは、Actions on Google のOverviewから変更可能です。

スクリーンショットだと分かりにくいですが、ちゃんと「わん!」と鳴いてくれてます

会話終了用のIntentを作成

ユーザーが会話から抜けれないとストレスになってしまうので、会話終了用のワードを用意しましょう。

終了ワードを準備

End conversationにチェック

補足

終了方法や利用方法をDefault Welcome IntentのText Responseに入れておくといいかも。

おわりに

Dialogflowを使えば簡単に会話アプリを作成することができるので、ぜひ一度試してみてください。面白い会話アプリを作れば、忘年会や新年会で盛り上がるかも!?