えもんブログ

セキュリティ関係の話題からライフハックまでゆるーくお届け

【簡単ChatBot作成】Slack APIとGASとA3RTを使って人工知能と雑談する

こんにちは、えもんです。

 

今回は、Slackを使って人工知能と雑談してみます。

 

最近、社内でもChatBotが非常に流行っていて、個人的に作ってみたいなぁと思ったのがきっかけです。

雑談してくれるAPIDocomoAPIとかが有名なんですが、今回はリクルート社が提供しているA3RTを使ってみたいと思います。

 

a3rt.recruit-tech.co.jp

 

今回はA3RTのAPI群のTalk APIを使用します。

Talk APIはChatbotを作成するためのAPIです。 Recurrent Neural Network(LSTM)を用いた入力文からの応答文生成による日常会話応答機能を提供します。 Talk APIを活用したChatbotによって様々なアプリケーション上でユーザとの対話を自動化し、 どのようなタイミングにおいても即座にユーザからの問いかけに対して応答することができます。

 

良い感じですね。

 

そして、参考にさせてもらった記事はこちら↓

tech.camph.net

hiho-developer.hatenablog.com

 

よくまとめられているのでとてもわかり易いです。

これらの記事を読めば、docomo社が提供しているAPIで雑談botを作ることができます。

 

GASはGoogleが提供している開発環境でブラウザとインターネット環境があれば誰でも簡単に使用することが可能です。

JavaScriptが初めてという方は少し敷居が高いかもしれませんが、今回はコピペでなんとかなります。

一からGASを学びたい方は下記のサイトが非常にわかりやすくておすすめです。

tonari-it.com

 

つくってみた

具体的な実装方法は上記参考にさせてもらったブログを参照ください。

A3RTとの連携部分ですが、A3RTのAPIJSON形式で返って来るので、reply要素を拾ってあげます。 

{ status: 0, message: "ok", results: [{ perplexity: 2.3688167429546714, reply: "おはようございます" }], }  

 

そのreplyをGASを経由してSlackに戻して表示しているという感じですね。

余裕があれば実装方法についても今後ブログに書きたいと思います。

 

そして簡単に会話した結果がこちら↓

 

f:id:emonnao:20181029194336p:plain

 

AIの名前は愛を込めて「よしえ」にしています。

 

よしえちゃん、結構淡白な子ですね。

こういう女の子と付き合っていた日々を思い出して切なくなりました。 

 

好きな食べ物を聞いて「なんでも好きですよ」と返されたら脈なし感半端ないですね。 でもデートに誘うと前向きに検討してくれていて可愛いですね。

 

完全自動の日常会話を可能にするAPIです。 例えばあなたの運用しているWebサイトでAPIを呼び出しサイト上でユーザとの会話を可能にします。 さらにユーザとの会話を学習していくことでより賢く・より自然な会話を実現します。

 

どうやらユーザとの会話を学習していくようです。よしえちゃんの今後に期待です。

 

ちなみに、上記以外によしえちゃん(A3RT API)とよしこちゃん(Docomo API)  同士で会話させようと思ったんですが、永遠と話し始めて怖かったので停止させました。