Q&A をコーディングなしで BOT 化! Cognitive Services QnA Maker による Q&A Bot 作成

Cognitive Services の新サービス、QnA Maker

Cognitive Services に QnA Maker と呼ばれる新サービスが追加されました。

こちらは、質問&回答のリスト、または FAQ のような Web サイトから、Q&A を行う BOT をコーディングなしで自動生成できるサービスです。QnA Maker で作成した AI エンジンは、Web API 経由でアクセスして回答を得られる Web サービス として利用できるほか、Azure Bot Service のテンプレートとしても選択できるようになりました。
Q&A のリストを編集・追加も GUI の画面から行うことができます。

bluesky_20161222_01

* 日本語でも利用できますが、サポートは英語のみのため、機能が限定的である箇所もありますがご了承ください。

FAQ サイト または リストからの Q&A Bot 作成

新規 Q&A Bot サービス の作成

QnA Maker のページ  にアクセスし、上部バーの [Create New Service] をクリックします。

BOT のベースとなる FAQ のサイト URL を入力します。(こちらでは一例として Azure support FAQ page を入力しています。)

FAQ サイトの他、Q&A をペアにしたリストを使用することも可能です。(Unicode(UTF-16)、*.tsv  という拡張子で保存してください。) または、次のページで Q&A のペアを直接入力することもできます。

bluesky_20161222_02

[Knowledge Base] のページで、入力した FAQ のサイト (または アップロードしたリストファイル) が Q&A のナレッジベースとして作成されているのを確認できます。こちらのページから Q&A の編集や、追加、削除を行うことができます。左列バーから [Test] をクリックして、Bot の動作を確認します。

bluesky_20161222_03

Q&A Bot のテスト&学習

[Test] ページで、実際の Bot の動作を確認できます。想定された質問を入力すると、ナレッジベースから適切な答えを Bot が返答します。右列には、似た形式の質問をバリエーションとして登録できます。また、複数の答えが想定される場合は左列に表示されますので、その中から適切なものを選択することで学習させることができます。上部バーの [Save and retrain] をクリックして、Q&A Bot に学習させます。

bluesky_20161222_04

Bot サービスの Web 公開

Bot サービスを Web 公開することにより、Web API 経由でアクセスできる Web サービスとして利用できるようになります。その際はページに表示されている "knowledgebases" および "Subscription-Key" をバインドしてアクセスします。

bluesky_20161222_05

Q&A bot を Azure Bot Service で使う

Azure ポータルから 新規 Bot Service を作成します。Bot Service が作成されたら、Microsoft App ID と パスワードの設定を行います。(詳しい手順は Azure Bot Service による BOT アプリ作成&公開  をご覧ください)

[Choose a template] のセクションで、[QnA Maker] が選択できるようになっています。 上記で作成した Q&A Bot を選択する、または新規に作成することもできます。

bluesky_20161222_06 bluesky_20161222_07