40代でも動ける体を維持したい!

hachidoriでLINE上にChatbotを作成してわかったこと2

WRITER
 
この記事を書いている人 - WRITER -

シナリオの作成

シナリオとは、チャット上での会話の流れの作成だ。ユーザーとチャットボットのLINEでの対話は、ユーザーが、何かを発言するところからスタートする。ハチドリには、説明用にチュートリアルというシナリオが一つ設定されている。

その設定では、最初に「チュートリアル」とユーザーが入力すると、「こんにちは。(名前)さん。何か発現してください。」と返してくれる。ユーザーの名前情報は、端末から取得が可能な情報の一つだ。スムーズな会話であれば、まるで人間と会話しているように感じる。チャットボットがこのようにメッセージを返した後に、ユーザーの入力を待つこともできるし、続けてが話をすることもできる。ここでは、何か入力することでチャットボットが次の話に移る。

チャットボットが指定する言葉を発言することで次のやりとりへと進む。hachidoriでは、このやりとりの一かたまりを「シナリオ」と呼び一つ一つに名前をつけることができる。シナリオは、意味的なかたまりごとに切り分けておけば、その中での順序や内容を入れ替えたり、変更したりしやすくなる。また、選択肢によって、会話が分岐していく場合には、その分岐の数だけ並列のシナリオが必要だ。このように、チャットボットでの会話では、想定されるやりとりの数だけシナリオが必要ということになる。今、説明した部分だと数ターンのやりとりだ。さまざまな発言を想定したチャットボットの作成は、かなり手間がかかりそうだ。

クエリー編集

クエリとは、言葉のグループのこと。

hachidoriの例では、遊びのグループに「カラオケ/映画/ボーリング」、地名のグループに「渋谷/銀座/六本木」というキーワードが入っている。その他の例として、リフォームのというグループを作ってみた。キーワードは「キッチン/洗面/トイレ」とした。グループ名もキーワードもどちらもいつでも編集できる。

ユーザーが、そのキーワードのいずれかを発言すると、チャットボットは、そのグループの言葉の一つとして理解することができる。そうする理由は、後ほど説明するライブラリという項目を使用するための準備ともなっている。ユーザーが発言する言葉を想定しクエリを作成する。

シソーラス編集

シソーラスとは、同義語の集まりをグループにしたもの。クエリーに登録した単語が、完全な形でチャットで発言されるとは限らない。その単語を全てクエリに登録するのではなく、同じ意味の言葉として、シソーラスにまとめておくことで、言葉が整理しやすくなっている。キッチンという言葉の場合だと、「台所」「調理スペース」「kitchen」などになる。推定される言葉を登録しておくことで、発言に対してチャットボットが柔軟で人っぽいやりとりを行うことができる。クエリーもシソーラスも最初から全てを網羅することはできないかもしれないが、やりとりのデータを見ながら追加していくことで、どんどんと賢くなる。

ライブラリの登録

クエリに指定した単語を組み合わせ、発言に対して回答を行うデータベース。例えば、リフォームのグループに属する「キッチン」と価格帯のグループに属する「おすすめ」の二つのキーワードが含まれる発言を行った時に、「おすすめのキッチンは、LIXILです!」のような定型文を返すためのリストのこと。このリストが使える流れをやりとり上で作り、ユーザーがライブラリのリストの回答で納得できるようにする。そこで、一つの問いに対する答えまでの流れが出来上がる。途中には分岐することがあるので、選択肢は増えていく。それに対する答えと、答えられなかった時の対応をスムーズにすることがチャットボットのシナリオ作成をするということだ。ライブラリは回答集と言える。

 

クエリ、シソーラス、ライブラリと分岐を組み合わせれば基本的な流れができる。あとは、画像やファイル、カレンダーなどとの連携によって、さまざまな情報を呼び出すことができる。それを活用し、質問や答えの幅を広げていく。これが、シナリオの一番基本部分だ。

この記事を書いている人 - WRITER -

- Comments -

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Copyright© FUN! 草野球人 , 2018 All Rights Reserved.