サーバレスとGoogle Cloud Platformで実現 「ピカチュウトーク」アプリ開発の裏側:『ピカッ』『ピカー』『ピカピーカ』の違いが分かるか?(1/2 ページ)
「Google Cloud Next'18」において、ポケモン社 マネジャー プロダクトエンジニアの小川慧氏が「ピカチュウトーク」開発の背景や、サーバレスを活用したアーキテクチャについて説明した。
Googleは2018年9月19、20日に「Google Cloud Next'18」を開催した。本稿では、ポケモン社でマネジャー プロダクトエンジニアを務める小川慧氏の講演「Google Homeアプリをサーバレスで実現! 『ピカチュウトーク』開発の裏側」の内容から注目すべきポイントを抜粋してお伝えする。
利用者の「とりあえず試してみる」に応えるアプリとして開発
ピカチュウトークは、ポケモンの「ピカチュウ」と会話できるVUI(音声ユーザーインタフェース:Voice User Interface)アプリだ。「Amazon Echo」や「Google Home」などのスマートスピーカーから無料で利用できる。
小川氏は、ピカチュウトーク開発のいきさつについて、「上司が『Google Home』を購入して社内に持ち込んだところ、評判が良く『何かやってみない?』という社員の一声からアイデア出しが始まった」と振り返る。
社内からさまざまなアイデアが出たが、「『手が使えないときに利用する』『サクッと試せる』というVUIの特性に合わせてアイデアを選定。「携帯ゲーム機やスマートフォンを操作できない子どもが『声で遊べる』という特長も生かそう」と考えた。
結果、声で受け取った質問にピカチュウが返事をするという、“スマートスピーカーを買ったらすぐに試せるアプリ”の開発に至ったのだという。
「サーバにコストをかけたくない」 サーバレスでシンプルに構築
小川氏はピカチュウトークのアーキテクチャについて説明する。「ピカチュウトークの開発では、Googleが提供する『Dialogflow』やGoogle Cloud Platformのサーバレスの実行環境『Google Cloud Functions』、NoSQL データベースの『Google Cloud Datastore』、オブジェクトストレージの『Google Cloud Storage』を利用した」
Dialogflowは、ユーザーが発話した内容を理解して返答する自然言語処理機能や、ユーザーの発話内容を基に学習する機能を持つ、対話処理を開発するためのプラットフォームだ。ユーザーの発話内容から返答に必要な単語を抽出する「Entity」や、ユーザーの質問に対して最適な返答を定義する「Intent」などの機能を使ってVUIアプリを開発できる。VUIアプリでは、開発側が意図しなかった表現や語順でユーザーが質問をしてくる場合があるが、これらの機能によって最適な返答ができるようになる。
Dialogflowの「ありがとうIntent」の例 ユーザーの発話内容にTraining phrasesの単語が含まれていた場合、このIntentが選択され、Intentにひも付けられた返答がスマートスピーカーから流れる仕組みだ
ピカチュウトークでは、スマートスピーカーが、受け取った音声を文字列に変換してjson形式のデータとしてDialogflowに送信。Dialogflowは、受け取ったデータからEntityを基に必要な情報を抽出し、発話内容の返答として最適なIntentを選択する。その後、Intentを基に、Node.jsで定義したGoogle Cloud Functionsが、Google Cloud Storageにあるピカチュウの鳴き声の音声ファイルを再生する。
「『サーバにコストをかけるのは避けたい』『ユーザー数によってサーバ側に自動でスケールさせたい』という考えから、ピカチュウトークのアーキテクチャは、スマートスピーカーのアプリ開発でよくあるサーバレスの構成になった。アプリの維持費は月1000円弱で運用できている」
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- DialogflowでGoogleアシスタント対応アプリを作成しよう
Dialogflowと呼ばれるツールを使い簡単なアプリを作成しながら、Googleアシスタントアプリ作成の基礎知識を見ていこう。 - 「スマートスピーカー」の中にある「人工知能」は何をしているのか、作り方から理解する
世界の名だたるプラットフォーマーが開発に力を入れる「スマートスピーカー」。どのような手順でどんな処理が行われているのかは完全にブラックボックスだ。「スマートスピーカーを理解するには、自作するのが早道」と提唱する開発者に話を聞いた。 - Googleが機械学習/AI活用で見せた「これまでとは違った景色」、トップ7
Googleは「Google I/O 2018」で、同社サービスにおける機械学習/AIの活用によって、人々の生活を大きく変えられる可能性を示した。紹介された多数の新機能の中から、筆者の独断でトップ7を紹介する。