Edited at
TISDay 14

DialogPlayとWatsonNLCによる社内ルール回答チャットボットを作った話

More than 1 year has passed since last update.


はじめに

TISの社内ポータルにチャットボットが登場してからはや一ヶ月。

一つのシナリオをリリースするまでの裏話です。

チャットボットの対話制御としてDialogPlayを活用。

社員からの問い合わせにはWatson Natural Language Classifierを用いたチャットボットを作成し、社内ポータルサイトへ公開しています。


社内チャットボット「ティボンヌ」

TIS社内の社内ポータルのトップページにチャットボット。

社内ルール検索や社員情報の検索に日々、汗を流してくれています。

image.png


DialogPlay

DialogPlay

TIS株式会社より提供されているチャットボットプラットフォームです。

業務向けチャットボット作成ができるということで、現場担当者がノンプログラミングでシナリオが作成でき、様々なAPI連携も可能です。


Watson Natural Language Classifier

Natural Language Classifier

言わずと知れたIBMCloudより提供されているコグニティブサービスAPIの一つ。

多岐に渡る社員の問い合わせから社内ルールを引き当てるために利用しました。


チャットボットの構造

社内ルール検索における構造イメージはこのようになっています。

image.png


勤務ルールの分類器作成

社内ルールの分類を実現するためには、NLCに社員の問い合わせ文とその分類先となる社内ルールのペアを学習させなければなりません。

Q.「フレックス勤務に変更したい」

A.「AとBとCの申請をしてください」

のような、FAQページがあるようならばそれを基に作成する。

しかし、弊社の社内ルールにFAQなんてものは存在しない。


学習データ構造

NLCへ入れる学習データの構造はこのようになっています。

テキスト
クラス

(入力文)
(分類先)

社内ルールを答えさせる場合、社内ルールごとにFAQを作成しました。

- 入力:社内ルールそのものへの質問文、状況ごとの対応方法を問う質問文

- 出力:社内ルールのURL

質問文
社内ルールURL

個人情報取り扱いについて教えて
TISの個人情報の取り扱いはこちらです。http://example.com

フレックス勤務ってなんですか?
勤務形態はこちらです。http://example.com

転勤時にすることを教えて
家賃補助はこちらです。http://example.com


チャットボットのリリースまでに作成した学習データ件数はこちら


  • 対象にした社内ルール:約100件

  • 学習データ件数:約1000件


実際にやってみることでの課題


サイトの親子関係を考慮した学習データ作成

社内ルールの構造上、一覧とその詳細で親子関係が作られています。

下の例で言うと、休暇ルールの一覧ページを見たい場合と各休暇ルールのページを見たい場合では、

クラスを分けて作成する必要がありました。

---(例)---

休暇

 └ 年次休暇

 └ 半日休暇

 └ 介護休暇


質問文がわからない

 学習データ作成にあたり、係員クラスが目にするような勤務時間や休暇の取得に関するページへの質問文は作成できました。しかし、社内ルールによっては上級の役職者しか普段参照しないようなルールも存在しました。どのような質問文となるのかは、実際にルールを使う人でしかわからないため、上から下まで巻き込んでの学習データ作成となりました。


あとがき

チャットボットの公開後は、ユーザの問い合わせログから、

学習データとして採用できる文言をピックアップし、追加しています。