ガンマンチャットボット
IBM Watson Assistant を使って、ガンマンのチャットボットを作ります。
【会話の学習】
IBM Cloud の IBM Watson Assistantで、学習をします。
-
リソースに「Watson Assistant」を追加
-
「Watson Assistant」の設定の中で、「ツールの起動」をクリック
-
学習は、すべて、Web上でできます。
-
「Skill」を作成
-
「Intent」で、文章を覚えさせる。
-
その文章で、何に興味(Intent)を持つのかを教える。
-
例えば、「いま何時ですか?」「何時だろう?」「時計がみたい」「いまの時間を教えてください」「現在時刻は?」に対して、「#clock」に興味がある、と教える。
-
例えば、「白がいいです」「赤が好きです」「青でお願いします」「黄色」に対して、「#color」に興味がある、と教える。
-
-
「Entity」で、言葉の概念を覚えさせる。
-
例えば、「@色」というEntityの中で、
-「赤」「赤い」「赤色」「レッド」「red」は、「赤」と教える
-「白」「白い」「白色」「ホワイト」「white」は、「白」と教える
-
-
「Dialog」で、会話を覚えさせる。
-
フローを書くツールで、覚えさせる。
-
「Intent」と「Entity」を条件に、表示する文章や画像(外部URL指定可能)、次のフローを設定
-
例えば、「Intent」が「#clock」のとき(時計に興味がありそうなとき)、
「時計を表示します。好きな時計の色は何ですか?」を応答するように設定。 -
次の入力で「@color」のEntityの中で、何色を指定されたかを判別し、
-
次のフローで、指定した色の時計の画像を表示する
-
-
-
ということで、結局は、フローを設定するプログラムの要素が色濃く、大変。
-
対話の例を大量に教えれば、フローまで自動学習してくれる、というのは、過度の期待と、判明。
【Webでプレビュー】
誰でもアクセスできると思います。
【LINE】
LINE 版。
QRコードで友達になれば、だれでも、ポッドと対話可能。
-
参考ページ
https://medium.com/@taiponrock/lineチャットボットとwatsonを連携する-8a7d89a49e57 -
Node-REDに、IBM watson assistant用の箱があるので、それを利用。
今回は IBM Cloud に配備。
https://gunman-node-red.mybluemix.net/red/#flow/24d4cd02.0bf392
-
ボット側は、LINE Developers で、LINEアプリを設定
-
Messaging API で、「チャネル」を設定。
node-RED の入口を指定。 -
Bot情報に、LINEアプリへのQRコードがあるので、
それを、知り合いに紹介すれば、だれでも利用可能。
【Facebook Messenger】
Facebook Messenger 版。
(開発者のみ利用可能)
-
facebook for developer で設定をします。
-
設定の参考ページ
https://qiita.com/schiyoda/items/b96b270ee259a21a8907 -
公開をするには、「審査」が必要。
テスト中は作成者のみ、Messenger でメッセージ交換が可能。
(他の人は、messengerで、「ガンマンボット」の検索はできるが、メッセージを投げても、無視される。)
-
【Slack】
Slackアプリ版。
Slackの仲間の中に、アプリを仕込む感じ。
-
IBM watson assistantの標準のインタフェースで、Slack公開ができます。
-
設定の参考ページ
https://qiita.com/schiyoda/items/f1dc9766614c28768b15