バイタリフィ制作部の堀です。
今回は最近私が勉強しているバイタリフィの自社商品FirstContactについて書いていきたいと思います。
まず、FirstContactとはなに?と思われている方がほとんどだと思うので簡単に説明していきます。
FirstContactとは?
FirstContactは課題解決型AIチャットボットです。
チャットボットとは?
チャット(会話、おしゃべり)
+
ボット(ロボット、自動で何かをプログラム)
⇒自動でおしゃべりをするプログラム
特に、文字会話
FirstContactで出来る事
FirstContactで出来ることは大きく分けて3つあります。
-
会話を組み立てる
会話をツリー状に組み立てて、直前
の会話と関連のある出力できます。 -
会話から情報を取り出す
ユーザーの入力から特定の情報を
取り出すことができます。
日付などを取り出す機能が用意され
ているほか、正規表現も使えます。 -
情報を再利用する
取り出したユーザー情報は保存され、
次回訪問時も使うことができます。
チャットボットが得意な事
- 必要な情報だけを選んでくれる
- 応答が早い
- 同じことを聞いたら同じことを返してくれる
チャットボットが苦手な事
- 一度に多くの質問に答える
- 複雑な問題に対応する
- 感情をくみとる
シナリオ構築
シナリオの構築には、IBM WatsonAssistantを使用します。
WatsonAssistantでは以下の3つの要素を使い分けてAIとユーザーの会話を作成していきます。
1 Dialog
Dialogでは、WatsonAssistantが顧客に返す応答メッセージを定義します。
2 Intents
言葉のゆらぎへの対応をするために定義します。
「文」単位で分析を行う
(例)車が動かない ⇒ 何かが動かない/故障したんだな
とAIが認識してくれます。
3 Entities
言葉のゆらぎへの対応をするために定義します。
「単語」単位で分析を行う
(例)車が動かない ⇒ 車について話しているな
とAIが認識してくれます。
これらのようにFirstContactでは、Dialog、Intents、Entitiesを組み合わせることによって話を構築していきます。
ぶっちゃけ話
ここからは、FirstContactを勉強し始めた僕の正直な感想を述べたいと思います。
まず、一言で表すと「マジムズイ」笑です。
基本的には、上記に記載した、Dialog、Intents、Entitiesで会話は構築できるのですが、実際に会話を組んでいると
・時間によって会話のだし分けをしたい
・ユーザーの自由入力に対応したい
・ユーザーの属性情報を取得して、管理画面に表示したい
などやりたいことが増えてきます。
そういった際、チャットボットは基本的に覚えさせたことしか出来ないので、しっかりとやりたいことを階層ごとに設定したり、シナリオを組んであげないとやりたいことはうまく実現できません。
まだまだ自分は勉強中なので、出来ないことが多く「ん~~わかんない!!」となることが多く大変ですが、プログラミングと同じで出来ることが増え実際に構築できた時は「やった!!」と達成感も得られます。
せっかくバイタリフィに入社したんだから、自社商品のFirstContactを自由自在に操れるようになって、良いチャットボットを組んで案件をばしばしさばけるようになりたいこれが今の目標です!
しばらくして、自由自在に操れるようになったら、ブログで操れるようになったよ自慢投稿をしたいと思います!
では!