Azure Bot Servicesを利用したBot(ボット)構築

こんにちは!テクバン サポートチーム 渡辺です。
今回は、人間からの問いかけに自動応答する「Bot(ボット)」について、
マイクロソフト社のクラウドサービスを利用した構築例をお届けします!
問いかけの方法については、音声又はチャット(Skype, LINE, etc…)などが考えられますが、
今回は任意のWebサイト(もちろんSharePoint Onlineにも!)組み込み可能な
「Webチャット」をメインに考えます。

[デモ]
まずは、以下のデモをご確認ください。
「Type your message…」と表示されている場所がメッセージの入力欄です。
メッセージを入力して送信後、回答を返します。
試しに「複数のSharePointサイトを検索するには」などと入力後、Enterキーをクリックしてみてください。

このデモでは、弊社のOffice 365向けサポートメニューである「プロアクティブ サポート」サービスで
提供しているBotを動かしています。
お客様からの問合せとそれに対する回答をセットで「ナレッジ」として蓄積し、そこから回答を返しています。

[構成図]

QnA Maker
マイクロソフト社が提供している、ナレッジの蓄積と検索を行うためのサービスです。
「質問」と「回答」のセットを1レコードとして扱います。
以下画像はQnA Makerのナレッジ編集画面です。

Web APP Bot
マイクロソフト社が提供しているPaaSの一つで、
自社で開発したWebアプリケーションを公開するためのサービスです。
この説明だけですとApp Serviceに似ていますが、これに加えて「チャンネル」という機能を持っています。
「チャンネル」は、Botを他のアプリケーション(WebサイトやSkype、Facebookなど)と
連携するための機能です。
Webサイト用のチャンネルを作成することで、
Web APP Botで公開するWebアプリケーションをBotとして任意のWebサイトで利用可能になります。
また、Web APP Botは、Azure管理ポータル上で作成した時点で
最低限のBotとして機能するアプリケーションが搭載された状態になっています。
開発者用のサービスとなりますので設定によるBotの挙動変更はできません。
搭載されているアプリケーションのソースコードをダウンロードし、編集して再度アップロードするという
開発手順が必要になります。

[終わりに]
いかがでしたでしょうか。
今回は、マイクロソフト社が提供しているサービスを利用したBotの構築例をご紹介致しました。
Bot構築に利用できるサービスは各社から提供されていますので、
導入に関する技術的な難易度はかなり下がってきており、
ナレッジをどう収集するかという課題が大きなウェイトを占める場合が多いです。
弊社プロアクティブ サポートでは、今まで社内にあったナレッジに加えて、
お問合せ回答フォームから直接ナレッジを収集する仕組みを構築し、
運用しながら自然にナレッジが溜まるように工夫しています。

お問合せ機能に限らず、Bot構築をご検討の際は、是非弊社にお声がけください。
次回はSharePoint Onlineの話題に戻り、
Azure SQL Databaseとの連携についてご紹介致します。
Flow活用例:SharePointサイトの多言語対応 についてご紹介します。