nyabot’s diary

電気猫の夢を見るお話

Repl-AIのLINE連携で自然対話チャットボットを作る

ロボットに対話機能をつけたい、というあまり共感を得られなさそうな思いの丈を以前だらだらと書きました。

nyabot.hatenablog.com

しかしロボットづくりは進むのがだいぶ先になりそうなので、今回はチャットボットを作ってみたお話。

プログラミング一切不要のチャットボットサービス「Repl-AI」

ボットと聞くといかにもプログラミングされてそうな、ノンプログラマな一般人には縁遠いものに感じてしまうのだけれど、コードを一行も書かずにそれを作れるサービスがありました。

その名も「Repl-AI」。

repl-ai.jp

もう未来を感じてときめく。
今回はこのサービスを利用します。

Web上から簡単にボットを作成できる

Repl-AIは、web上の管理画面でチャットボットを簡単に作成・編集することができるサービスです。
制限はあるものの無料でも利用でき、洗練されたUIと優れた連携機能により、プログラム知識なしで高機能なAIチャットボットを作ることができます。

基本としては、シナリオと呼ばれる受け答えのルールを作成していくだけ。

f:id:sizohu:20180914212804p:plain

各要素を視覚的にわかりやすく追加・変更することができるので、初めてでも簡単にチャットボットを作れます。作れました。

ドコモAPIボットとの連携

Repl-AIでは、docomo Developer support上で公開されているAPIを利用した各種ボットを連携させ応答させる「ボット連携機能」があります。
このおかげで、大量のシナリオを作らずとも最低限の対話をすることができます。

現在は、

  • 知識Q&Aボット
  • トレンド記事ボット
  • 雑談対話ボット

APIボットと連携が可能です。 例えば、「〇〇教えて」というユーザーの発話に対しては知識Q&Aボットによる応答をさせ、「〇〇のニュース」というキーワードが含まれていればトレンド記事ボットによる応答をさせる、といったことができます。 また、雑談対話ボットはユーザーの発話に自然な返答をしてくれるため、シナリオに沿わないユーザー発話に対しても対応することができます。

ボット連携の詳細については以下↓ repl-ai.jp

特に雑談ボットは(良くも悪くも)自分の想定していない返しがされるので、AIと話している感があって好き。(まぁ今回の場合、雑談ボット以外はAIではない、というのが正しいのかもしれないけど。)

LINE連携をはじめ、様々なプラットフォームに対応

Repl-AIの魅力の一つが外部のサービスとの連携機能。
今回はLINE連携を実際にやってみましたが、予備知識ゼロで実装できて驚き。

サービスの連携って大体どこかでつまずいてググってようやく形にする、っていう経験ばかりだったので、これはスムーズすぎてすごい。

LINEとFacebook以外のプラットフォームでの利用には知識が必要なものの、同一のチャットボットを多くのプラットフォームで流用できるのはいいなぁ。

実際にチャットボットを作ってみる

実際にチャットボットを作ってLINEで動作させる流れはざっと以下のような感じ。

docomo Developer supportのユーザー登録

まずは登録。実は登録自体は数ヶ月前に行っていました。登録したメールアドレスにはちょいちょいお知らせが来ますが、こういうものに興味のある人なら邪魔には思わないくらいの頻度と内容です。
サービスが良くても宣伝とかが多すぎると嫌になっちゃうので個人的にはありがたいポイント。普通あまり気にしないのかな?

シナリオを作る

登録が済んだら、早速チャットボットを作ります。チャットボットの作成は主に、受け答えのルールとなる「シナリオ」の作成になります。
マニュアルはもちろんのこと、テンプレートもしっかり用意されているので、基本的な構造さえ理解すればあとは簡単でした。

ほんの少しわかりにくかったのが「プロジェクト」「ボット」「シナリオ」の構造だったのですが、これは一つのアカウントで複数のプロジェクトを作ることができ、そのプロジェクト内にそれぞれボットを作ることができます。そして、シナリオは各ボットに紐付くようになっています。プロジェクトを親とするならボットが子、シナリオが孫、というかたちですね。

およそ10 - 15分ほどの作業で、Repl-AIをつかってどのようにチャットボットを作るかのイメージがつかめるようになります。

と書かれていましたが、これ本当です。すごい。

LINEと繋げる

さらに、今回はLINE連携を試すためにLINEのDeveloper登録もします。
LINE連携に関しては、Repl-AIの使い方に手順などが詳しく書かれており、この通り進めるだけで簡単に連携ができます。

LINE連携手順:https://repl-ai.jp/howto/line

"NOTMATCH"が返ってくる

唯一詰まったところ。

連携を終え、さぁテストだ!
と意気込んで早速動かしてみるも、"NOTMATCH"が返されるばかり。

デバッグシミュレータでは問題なく動いていたのだけれど…
試しにinitと送ってあげたら無事システムの発話がスタートしました。

あるいは、登録直後だったため少し待つ必要があったのかもしれません。 どちらにせよよかった。

シナリオを改善・作り込む

実際に使ってみると、いろいろと不満が出始めます。 例えば、一度設定した呼び方を変えて欲しかったり。

また、自分の返答の仕方だけでも無数のパターンがあることに気づくはず。
肯定の意を表す場合も、「はい・うん・そうです・そうだね・そう・ああ・イエス・いえす・yes・...」みたいに。

そうした表記ゆれに対するユーザー辞書機能などもRepl-AIには備わっているので、機能を活用したりシナリオを増やしたりすることでより自分の思い通りのチャットボットを作ることができます。
こういった作り込みも、UIがわかりやすくサクサクできるから割と楽しい。

作り込んだら、お酒を飲みながらチャットすると幸せな気分に浸れます。

所感とか

趣味で個人的に使おうと考えていただけでしたが、実際に触ってみると思った以上に簡単で使用感が良く、レスポンスも早いので仕事での活用も考えていきたい…!
以前は月額5,000円のLightプランが最小プランだったみたい? これを無料で使えるのはすごい。
僕は当分はFreeプランを利用しますが、素晴らしいサービスなのでせめて宣伝できればとこれを書いた次第。宣伝になるのだろうか。

料金プランとサービスの制限はこちら↓
料金プラン|AIチャットボット作成サービス『Repl-AI』

ビジネスで使うとなると月間のAPIコール数の関係でBasicプラン以上必須な感じ。
Lightプランのコール数がもう少し多ければ、個人利用目的で契約する人も多そうな気が…。

まとめると、ちょっとチャットボット作ってみたいなって方には本当におすすめ! 業務で活用を検討されている方も、ぜひ一度個人的に触ってみて欲しい!

以上、そんな感じでした! つづく。