「LINE Clova×ラーメンWalker」スキル開発記 第2回
LINEにラーメン店の情報が送られてくるスキルがほぼ完成!?
LINE Clova向けラーメンWalkerスキル実稼働!その出来栄えは?
2019年05月24日 13時00分更新
ムラリン「え?できあがった?」
それはカイからの1本の電話だった。
MENSHO TOKYOでラーメンWalkerの麺達3人と落ち合い、LINE Clova向けに、ラーメンWalkerのスキルの開発を約束して固い握手を交わしてからおよそ1ヵ月半ほどが経っていた。
ラーメンという庶民的グルメを扱うスキルの受け皿になるスマートスピーカーとして、可愛いルックスでファミリー層にも人気のLINE Clovaで開発することが決まった。
と同時に、せっかくラーメン店の情報を得るスキルなのだからということで、これもLINE Clovaだけが持つ特徴として、取得したデータをLINEに送る、という機能も盛り込むことが決まった。
しかし、カイの話によれば、確か角川アスキー総合研究所(アスキー総研)の精鋭プログラマーを動員しても、その開発には3ヵ月かかると言っていたのではなかったか。それが約半分の1ヵ月半でできあがったというのか。さすが仕事のできる男カイ!! いや、これはアスキー総研の精鋭プログラマーの力と言うべきだろうか。今回は、その天才プログラマーにも引き合わせてくれると言う。
ムラリン「ぜひ伺います!」
ラーメンWalkerスキルは精鋭プログラマーが一人で作っていた!
ラーメンWalkerを擁する角川アスキー総合研究所(アスキー総研)の本社は、アスキー編集部とは別のビルにある。早速本社へと足を運んだムラリンを待っていたのは、前回同様、黒い衣装で決めたマツモト・Dと、ラーメン柄のTシャツに黒いジャケット姿のカイだった。相変わらず黒い。
カイ「どうも、お待ちしてました」
そして案内された会議室には、もうひとり、黒いTシャツを着た純朴そうな青年が待っていた。今回の主役であるメインプログラマーの“もっち”こと山本紘一氏だった。
もっち「ど、どうも……」
「この人が?」と思わずにはいられなかった。短髪で丸メガネを掛けたその風貌と、やや内気そうな喋り方。失礼だがムラリンが想像していた凄腕プログラマーの姿とはかけ離れていたのだ。
「こんにちはー!」
そこに、元気よく会議室のドアをブチ開けて入ってきたのは、次代を継ぐ女・モリだった。お盆いっぱいに有名ラーメン店とコラボしたカップ麺を載せて現れたモリは、一人一人にそのカップ麺を配っていく。
ムラリン「……これは?」
モリ「ムラリンさん、お久しぶりです!先日はあんまりお話もできなくてすみませんでした!これはラーメンWalker流の歓迎です!お茶代わりにどうぞ!特におすすめのを持ってきましたよ!さあ、どうぞどうぞ!」
モリは口数の少ない女性だと思っていたが、ラーメンを食べていないときには語尾に必ずエクスクラメーションマークが入るほど元気いっぱいにしゃべる元気娘だった。これでアスキー総研の麺達3人が揃ったことになる。加えて今回はスーパープログラマーもっちがこのプロジェクトに加わるのだ。
それにしてもお茶代わりにカップ麺とは。
ムラリン「さすがラーメンWalkerですね」
マツモト「ムラリンさんにお出ししたのは『蔦』のカップ麺ですね。ラーメン店で初めてミシュランに載ったお店で、醤油のスープにトリュフって合わせづらいものなんですが、それを見事に合わせたんですよ。カップ麺はトリュフの香りが実際のお店のラーメンよりよく感じられますよ。最近だと『中本の蒙古タンメン』のカップ麺もおすすめですよ。いま一番売れていると言っていいぐらいですね。カップ麺でありながらかなり辛く作られていて、そこが逆に受けて……」
カイ「そろそろ本題に入りましょうか」
ラーメンが目の前に現れると、うんちくが止まらなくなるマツモトを遮るようにしてカイが切り出した。さすが仕事のできる男カイ!!!
悲報!ラーメンWalkerスキルが動かない!?
ムラリン「ラーメンWalkerスキルがもうできあがっているというのは本当ですか?」
もっち「ええ。もうほぼできてます」
ムラリン「カイさんの話では、開発には3ヵ月はかかると聞いていたんですが……」
もっち「プログラム部分はほぼ完成しています。あとは発話の聞き取りを調整する必要があるのと、データベースをきっちり作り込む必要がありますが」
ムラリン「本当ですか? いまここで見られますか?」
うかつだった。人は見かけによらないとはこのことだ。カイの言う通り、もっちは凄腕プログラマーだったのだ。もっちは、Clovaに向かって話しかけた。
もっち「ねぇClova、ラーメンWalkerを起動して」
Clova「すみません、わかりませんでした」
その場にいる全員が盛大にズッコケた。
もっち「音声の発話認識の設定がちょっとおかしいのかなぁ。実はここが今一番調整が必要なところなんです」
そう言うともっちは調整をほどこしにそそくさと会議室を出ていった。
マツモト「実はもっちとは業務でもあまり話したことがないんですよね。ふだんはプロデューサーを介しているのでプログラマーとは直接やりとりしませんし」
カイ「ちゃんと話すのは我々も今回がはじめてなんですよ」
ちゃんと話したこともないのにスーパープログラマーと認められているもっち。実際、見た目以上の実力の持ち主なのかもしれないが、今目の前で起きた失態はいったいどういうことなのか……。謎は深まるばかりである。
数分してもっちが戻ってきた。今度こそうまく動いてくれるのか?
もっち「自分の作業デスクではきちんと動作するんで、どうやら会議室のWi-FiがClovaにちゃんと認識されていなかったようですね」
スマホでClovaのWi-Fi設定をし直し、再度チャレンジ。
もっち「ねぇClova。ラーメンWalkerを起動して」
Clova「練馬区の醤油ラーメンを教えて、と、聞いてみてください」
無事ラーメンWalkerスキルが起動した。
モリ「やっぱりWi-Fiの接続が悪かったんですね!よかったですね!」
では、いよいよラーメンWalkerスキルの実証実験といこう。
天才プログラマー・もっち独占インタビュー
もっち「ではカイさん、何か聞いてみてください」
カイ「美味しい醤油ラーメンを教えて」
少しすると、Clovaは「柴崎亭 梅ヶ丘店」を勧めてきた。同時にもっちのスマホのLINEにラーメン店の情報が届く。音声で返答するだけでなく、同時にLINEにも情報を飛ばせるのがLINE ClovaのラーメンWalkerスキルの特徴なのだ。
ムラリン「これはすごい!これって地域を指定しなくてもいいんですか?」
もっち「はい。地域を指定しないと、東京全域のオススメ店をランダムで紹介してくれます」
ムラリン「これ、もっちさん一人で作ったんですか?」
もっち「データベース設計は他の人にやってもらってますが、そこからデータを引っ張ってきて発話させる処理までは私一人作りました」
優秀!
ムラリン「データベースの設計って難しいものなんですか?」
もっち「今回はそんなに複雑なものではないのでそれほど難しくはないと思います。しゃべるときに必要な情報、発話応答に必要な情報を拾えるように項目立てしています。ラーメン店名とラーメンWalkerのURL、メニューと価格、ラーメンタイプで醤油、味噌、塩、とんこつなど、それにエリアですね。データベースはまだ調整中ですが、プログラミング作業は、テストデータが登録されていさえすれば、完全でなくてもできますので」
ムラリン「プログラミングも問題なく?」
もっち「データベースの連携がちょっと不安だったぐらいですね。以前にClovaのスキルを作ったときに、だいぶプログラミング方法は覚えたので、今回ほとんど悩まずにコードが書けました。ただ、データベース連携に関しては今回が初めてだったので」
ムラリン「データベースで取得したデータをLINEへ送るのはどうなんですか?」
もっち「LINEの連携も初めてでしたが、予想以上に簡単でした。LINE Developers KitにあるLINE Bot Designerをインストールすれば誰でも簡単に作れます。一般の人がLINEにデータを送るスキルを作るのもそんなに難しくないと思います」
ムラリン「開発していて苦労したところとかないんですか?」
もっち「Clovaのプログラムは基本的に非同期処理なのですが、データベースからデータを取得するのに時間がかかるので、非同期だとデータを取得する前に発話してしまうんですね。なのでそのタイミングを同期させる必要があって、そこがいままでのプログラムと違うところでしたね」
半分くらい何言ってるかわかんないけどなんか凄そう!
もっち「要するに、リクエストしたデータをデータベースから取り出す前に、Clovaが答えを言おうとしてしまうので、データが送られてきたあとに答えを返すように調整したということです」
なるほど!
もっち「あとは発話の認識ぐらいでしょうか。ここが一番引っかかっているところで、現在も調整中です」
ムラリン「そこが一番難しいんですか?」
もっち「Clovaがユーザーの発話をどう認識したのかというのがdevelopercenterの画面でわかるので、それを見て調整していきます。ユーザーの対話パターンは無数にあるので、例えば、おすすめのラーメン屋、美味しい醤油ラーメン、渋谷区のおすすめ醤油ラーメン、などユーザーが何と発話するのかを考え、Intentの発話リストにパターンを追加していってます。developercenterで発話パターンを試し、地域に関する発話があった場合はAreaSlotが返されるようにIntentを調整しました」
途中から呪文みたいになってますが!
カイ「彼の席はコピー機の近くなので、たまにコピーをとりに行くと、もっちが“ラーメンWalkerを起動して”とか“美味しい塩ラーメン”とか言っているのが聞こえたりしますよ(笑)。そうやって何度も発話を繰り返して調整していくんです」
ムラリン「会社でスマートスピーカーのスキル開発をするのも大変そうですね。一人で何度もブツブツ言わなきゃならなくて、ちょっと恥ずかしそうですもんね(笑)。ちなみに、ここまでどれぐらいの期間でできたんですか?」
もっち「LINE Clovaの知識がすでにあったので、データベースの設計を含まなければ、数日ぐらいですね。プログラミングにかかる以上に、データベースの設計・構築と発話の調整、それとテストとデバッグに時間がかかるんです」
さすがカイも認める天才プログラマーもっち。見た目は地味だが仕事は早い。発注してから1ヵ月半の短期間でここまで作り上げているとは。来月には完成すると思わせる仕上がりっぷりに驚きを隠せない。これなら、自ら店舗検索しなくてもすむ日も近い。
残すはデータベース構築とテスト&デバッグのみ!
ムラリン「あとはデータベースの構築とテスト・デバッグだけということですが、ふだんテストってどのくらいかけ、どんなことするんですか?」
カイ「とくに期間は決まっていないですが、だいたい2週間ぐらいですかね。テストでは総出で、熊本なまりとか、英語なまりとかでもテストをしてますよ」
ムラリン「え、そんなことまでやってるんですか? 熊本出身の人とか使ったりして?」
マツモト「いやフィーリングですよフィーリング。私もふだんスマートスピーカーを使ってるんですが、スマートスピーカー使う時って意外と方言が出るんですよ。実家の母親と話しているような感覚になるというか(笑)」
しかし、東京出身のムラリンにはあまりピンと来ていないようだった。
マツモト「私は静岡出身ですが、訛り出ますよ」
モリ「私は鹿児島です!」
もっち「私は富山出身で“~しとんがけ”とかたまに出ちゃいますよ」
ムラリン「じゃあモリさん、熊本弁で試してみてくださいよ」
モリ「うんまかラーメンを教えて!」
カイ「いやいや、さすがにそれでは認識してくれないでしょ(笑)」
とまぁ、とりあえず誰が話しかけても普通に喋れば認識してくれるようだ。
ムラリン「ラーメンWalkerでは、ふだんからラーメンの話は結構してるんですか?」
マツモト「基本的にお昼はラーメンを食べるので、今日は何を食べようかって話をよくしてますよ」
ムラリン「さすがですね。もっちさんもお昼はラーメンだったんですか?」
もっち「いや、自分はお弁当です(キリッ)」
黒いTシャツを着てラーメンWalker魂をまとっているのかと思いきや、仕事と私生活はキッパリ分ける男もっち。自分の考えにブレがないのは天才肌たるゆえんなのか。
一方、帰りがけに次代を継ぐ女・モリのデスクを覗かせてもらうと、カップ麺に囲まれ幸せそうに仕事に励んでいた。彼女もぜひこのままブレずに育っていただきたい。
まだ暫定版とはいえ、ラーメンWalkerスキルを確認し、やはりLINE Clova向けにしたのは正解だったと確信した。スピーカーから返答が返ってくるだけでなく、LINEと連携して自分のスマホに情報が送られてくるのは、ラーメン店へ向かう際、思った以上に便利そうだ。今から完成が楽しみでならない。続報では、きっちり完成したラーメンWalkerスキルの全容をお届けできるだろう。乞うご期待!
(提供:LINE)
この連載の記事
-
第3回
sponsored
LINE Clova向け「ラーメンWalkerスキル」で美味いラーメンとの出会いが待っている -
第1回
sponsored
MENSHO TOKYOの美味い「ラム豚骨らーめん」を食べながらLINE Clovaのスキルを考える - この連載の一覧へ