LoginSignup
9
4

More than 5 years have passed since last update.

Chatbaseを触ってみて思ったこと

Last updated at Posted at 2017-12-03

Chatbaseとは?

Chatbase.png

Chatbaseとは、Google が開発した、

  • ユーザーはどのようなトピックを経由しながら会話をしているのか
  • 会話のどこでユーザーが離脱してしまうのか

といったchat特有のアナリティクスを提供してくれるツールです。Dialogflow(旧API.ai)とも既に連携しており、さらに使える機能は増える見込みのようです。

会話のstatusを送りつけることのできるAPIがあり、そこにuser idとともにintentやmessageを送るだけでどんなチャットサービスのbotでも使用することができます。

今年5月のGoogle I/Oでお披露目があり、クローズドで利用されていましたが、11月にようやくPublicになりました

Chatbaseは、Chatbox UX :Crafting a Valuable Conversation (邦訳:チャットボットのUX:価値ある会話デザインの方法 | UX MILK)でも紹介されています。余談ですが、この記事はサービス企画時に役立ちそうなことが書かれたいい記事でした。

Quickstart

チュートリアルは以下のドキュメントを読んでいただくとして、後の自分のためにすこしメモをしておきます。

Chatbaseが得意そうなこと

対話式のbotが応答文を返す際、まずユーザーからの入力に対して何らかのIntentを判定し、そのスコアに応じて応答文を返す、といったことが実用上多いようです。

QuickStartにも書かれていますが、Chatbaseではintentについて、「ユーザーからの、同じ意味を持つメッセージの集合へのラベルとして使える」という記載がなされているので、そうした理解でいいのだと思います。

botの応答をチューニングする際、そのスコアが一定の閾値以下だったりして、事実上うまくうあてはまるintentがなかったりする場合に、改善をしたいですよね。

そういった場合に、「判定がうまくいかなかったフラグ」をつけてChatbaseに送っておいて、後で集計して改善策を練る、というための仕組みがHandled & Not Handled Messagesという概念です。

なおDialogflowであれば、https://dialogflow.com/docs/machine-learning#ml_classification_threshold にあるように、一定の閾値を設定することができます。
※ MicrosoftのLUISでは2017年12月現在同等の機能はなく、Mircrosoft Bot Framework SDK側で閾値を設定します

Chatbaseが現時点で得意じゃないこと

Dialogflowのドキュメントでは、Slot Fillingという概念が紹介されています。

たとえば、botを介してホテルを予約(検索)させる際には

  • 目的地
  • チェックイン日
  • チェックアウト日

という3つの要素を確定させることが必要です。これを、「スロットを埋める」という表現をしているのですが、現行のChatbaseの仕組みでは、どのintentからどのintentに遷移したかは辿れても、「slotをいくつ埋めたか?」というトラッキングをする仕組みは提供されていません。Dialogflowとの連携・改善を考えると、いずれ何かしら仕組みが提供されたらうれしいなと思います。

簡単ですが、本日はここまでで終わります。明日は @shunXnegiさんです。

9
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4