NAGOYA AI Blog

愛知・名古屋の人工知能・AIのニュースとブログ - N2i Blog

チャットボットの種類と開発でぶつかる問題点

f:id:n2i-ishikawa:20171204104322j:plain

こんにちは。
今日は、チャットボットの作り方について、その種類と直面するであろう問題点についてのお話しです。

 

チャットボットは基本的に、前回の文脈と今回の相手の発言の2つから次の文脈を決定し、発言をさせ、裏で処理をするということの繰り返しです。
一見当たり前の事のようですが、この「文脈」という言葉自体が何を以て文脈とするのか曖昧なのでなかなか複雑です。

 

これを実現するための方法として、

  1. 返事の決定方法を手書きで作っておくパターン
  2. 返事の返しを学習によって作るパターン

という大きく分けて二つの方法がありますが、以下は1についての解説です。

 

1は自身で各文脈内での判定プログラムを用意する必要があります。
そして自分で定義した返事をプログラム内やファイルやデータベースから引っ張ってきます。
それをパターンでサポートしてくれるAIMLなどのマークアップもあります。

さてそれでは、これらのやり方を取るときにどんな問題にぶつかるのでしょうか。

 

「割り込みメッセージ」問題

自分はこう呼んでいるのですが、例えば配達の案内をしているときに別の配達に関する通知がそのチャット上に流れてきたとします。
どうしましょう?通知の種類や文脈の種類が多いと、文脈内の割り込みパターンを用意するのはとても大変です。
こういう場合は自分は諦め?て、文脈を積み重ねるようにしています。
具体的に言うと、別の配達の通知を一旦はじめて、そこを抜けたらもとの配達の案内が始まるというような方法を取ります。

 

「戻るってどこまで戻るんだ?」問題

チャットボットは流れの体験だと思っています。普通のWeb画面はユーザーのやることが決まっていて、ボタンを探しながらここだ!と押していきます。しかしチャットボットはユーザーとの対話を通じて、やることを提供していきます。


当然意図しないことが起きるので「戻る」という操作は絶対に発生しますし、どこまで「戻る」のかユーザーにも分かりやすくする必要があります。
これに関しては、階層が分からなくなるほど複雑なアプリはチャットボットで実装するべきではないということにして機能を見直しています。

 

チャットボットを作りたい!こんな連携は可能なのか?などのご依頼、ご質問・ご相談お待ちしております。

 

------------------------------------------------------------------------

N2iでは、企業向け人工知能の受託開発や

人工知能を使ったビックデータ解析を行っています。

【ご相談・お問い合わせこちら

-------------------------------------------------------------------------