#はじめに
TISの社内ポータルにチャットボットが登場してからはや一ヶ月。
一つのシナリオをリリースするまでの裏話です。
チャットボットの対話制御としてDialogPlayを活用。
社員からの問い合わせにはWatson Natural Language Classifierを用いたチャットボットを作成し、社内ポータルサイトへ公開しています。
#社内チャットボット「ティボンヌ」
TIS社内の社内ポータルのトップページにチャットボット。
社内ルール検索や社員情報の検索に日々、汗を流してくれています。
#DialogPlay
DialogPlay
TIS株式会社より提供されているチャットボットプラットフォームです。
業務向けチャットボット作成ができるということで、現場担当者がノンプログラミングでシナリオが作成でき、様々なAPI連携も可能です。
#Watson Natural Language Classifier
Natural Language Classifier
言わずと知れたIBMCloudより提供されているコグニティブサービスAPIの一つ。
多岐に渡る社員の問い合わせから社内ルールを引き当てるために利用しました。
#チャットボットの構造
社内ルール検索における構造イメージはこのようになっています。
#勤務ルールの分類器作成
社内ルールの分類を実現するためには、NLCに社員の問い合わせ文とその分類先となる社内ルールのペアを学習させなければなりません。
Q.「フレックス勤務に変更したい」
A.「AとBとCの申請をしてください」
のような、FAQページがあるようならばそれを基に作成する。
しかし、弊社の社内ルールにFAQなんてものは存在しない。
#学習データ構造
NLCへ入れる学習データの構造はこのようになっています。
テキスト | クラス |
---|---|
(入力文) | (分類先) |
社内ルールを答えさせる場合、社内ルールごとにFAQを作成しました。
- 入力:社内ルールそのものへの質問文、状況ごとの対応方法を問う質問文
- 出力:社内ルールのURL
質問文 | 社内ルールURL |
---|---|
個人情報取り扱いについて教えて | TISの個人情報の取り扱いはこちらです。http://example.com |
フレックス勤務ってなんですか? | 勤務形態はこちらです。http://example.com |
転勤時にすることを教えて | 家賃補助はこちらです。http://example.com |
###チャットボットのリリースまでに作成した学習データ件数はこちら
- 対象にした社内ルール:約100件
- 学習データ件数:約1000件
#実際にやってみることでの課題
###サイトの親子関係を考慮した学習データ作成
社内ルールの構造上、一覧とその詳細で親子関係が作られています。
下の例で言うと、休暇ルールの一覧ページを見たい場合と各休暇ルールのページを見たい場合では、
クラスを分けて作成する必要がありました。
---(例)---
休暇
└ 年次休暇
└ 半日休暇
└ 介護休暇
###質問文がわからない
学習データ作成にあたり、係員クラスが目にするような勤務時間や休暇の取得に関するページへの質問文は作成できました。しかし、社内ルールによっては上級の役職者しか普段参照しないようなルールも存在しました。どのような質問文となるのかは、実際にルールを使う人でしかわからないため、上から下まで巻き込んでの学習データ作成となりました。
#あとがき
チャットボットの公開後は、ユーザの問い合わせログから、
学習データとして採用できる文言をピックアップし、追加しています。