Cognitive Services を使ったインテリジェントな Bot の作り方

Microsoft Japan Data Platform Tech Sales Team
阪本真悟

11 月に開催した Microsoft Tech Summit 2016 の基調講演でも “Democratizing AI (AI の民主化)” として Microsoft Bot Framework & Cognitive Services の紹介がありましたが、最近お客様からエンタープライズ環境での Bot のビジネス活用について相談を受ける機会が増えてきました。

 

インテリジェントな Bot とは

Bot とは『Skype』『Facebook Messenger』『Slack』などのメッセンジャーサービス上でユーザのメッセージに自動応答して対話が行えるプログラムです。近年の人工知能技術の発展により学習機能を備え、実際に人と話しているように意図を解釈して、より自然な対応ができるインテリジェントな Bot に進化しています。

企業内でもこれらの機能をカスタマー サービス、ヘルプ デスク、工場の製造現場などで活用する事例が増えてきています。


ビジネスへの活用事例のご紹介

Rockwell Automation は製造工程における制御システム、情報システム、及びその保守サービスを世界80ヵ国で提供していますが「製造工程の今の状況を迅速に知りたい」というカスタマーの声に応えるために Microsoft の Bot Framework と Cognitive Services を活用しています。カスタマーが知りたい製造工程の状況を IoT の仕組みで企業のデータ基盤に集約し、さらにその情報を自然な言語でインタラクティブに確認可能な Shelby という Bot が実際に業務を支援しています。

 

インテリジェントな Bot が出来ること

① 様々なチャネルからのリクエスト処理

② 意図の解釈

③ 意図に応じたアクションの実行

④ チャネルを通した回答

botoverview

それぞれについて詳細を解説します。

① 様々なチャネルからのリクエスト処理

ユーザからのリクエストを受けて、回答を返すためのインタフェースです。現時点で以下の 10 チャネルをサポートしています。
•Text/sms
•Office 365 mail
•Skype
•Slack
•GroupMe
•Telegram
•Facebook Messenger
•Kik
•Web
•Direct Line

 

② 意図の解釈

LUIS(Language Understanding Intelligent Service)による高度な認知機能と連携し会話の意図を理解します。

LUIS は会話の文脈を解釈して、人が何を意図しているのかを認識してくれる便利なサービスで 2016 年の 9 月から日本語に対応しています。ただし、何も教えていない初期状態では何も理解することが出来ません。例文を使って教育を行います。

 

・例文による意図理解の教育

LUIS の Web サイト (https://luis.ai/) を使って様々な例文を入力して、その例文が持つ意図を教え込むことで Bot の知性を高めます。

luis

文章解析エンジン部分の作成方法と、アプリから LUIS を呼び出す利用方法について以下の弊社ブログで詳しく紹介しています。

https://blogs.msdn.microsoft.com/bluesky/2016/09/21/luis-language-understanding-intelligent-service-japanese-available/

③ 意図に応じたアクションの実行

LUIS によってユーザからのリクエストの意図を正しく解釈した後は、ニーズに応じたアクションを実行して回答を準備します。

明日の天気を聞かれたら、Bot が外部の天気予報 API から天気を確認して回答することも出来ますし、会議室の予約を依頼された場合はスケジュールや人数を確認して会議室の予約をすることも出来ます

また完全に代行が難しい作業であってもオペレータを支援するための情報(作業手順の提示や言語の翻訳結果など)を Cognitive Services と連携してインタラクティブに提供することも出来ます。

 

・Bot Framework や Azure Bot Services による開発

インテリジェントな Bot を実現するためには、LUIS の教育だけでなく、さらにそれに紐づくリクエスト処理のためのアプリケーションの開発が必要です。

 

Bot Framework や Azure Bot Services を使って REST API の呼び出しから簡単なタスクを 実行する Bot を開発し、業務の省力化を実現しましょう。

botservices

Azure Bot Services を使うとブラウザ上で Bot の開発を行い、LUIS や REST API との連携確認のための会話のテストも行うことが出来ます。

 

BOT アプリの作成の仕方や、Cognitive Services との連携の詳しい手順については以下の弊社ブログで詳しく紹介しています。

https://blogs.msdn.microsoft.com/bluesky/2016/11/15/5-step-tutorial-smilescorebot-bot-framework-cognitive-services-ja/

https://blogs.msdn.microsoft.com/bluesky/2016/11/16/how-to-create-publish-bot-using-azure-bot-service/

 

・統計情報や新たな洞察のための機械学習モデリング

Machine Learning を用いて顧客の持つ膨大な情報の中から、新たな洞察や未来予測分析の結果を回答するなど Advanced Analytics との連携も可能です。

Microsoft のデータ分析基盤を使って企業内に蓄積したデータに関する統計情報を回答したり、Azure Machine Learning を使って過去のデータから未来を予測するための分析モデルを作成する手順も過去の Data Platform Teamブログで詳しく紹介しています。

https://blogs.msdn.microsoft.com/dataplatjp/2016/12/07/azure-machine-learning-%e3%81%ae%e3%82%b5%e3%83%b3%e3%83%97%e3%83%ab%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e6%a9%9f%e6%a2%b0%e5%ad%a6%e7%bf%92%e3%82%92%e5%a7%8b%e3%82%81%e3%81%a6%e3%81%bf%e3%82%88/

④ チャネルを通した回答

アクションの実行によって得た回答をインテリジェント Bot のインタフェースを使ってユーザに渡します。

 

まとめ

Microsoft Bot Framework & Cognitive Services(LUIS)による インテリジェントな Bot による、企業の業務効率化やビジネス価値を向上のための具体的な流れをご紹介しました。

企業に蓄積したデータ基盤を中心として Advanced Analytics と組み合わせることで、さらに役立つビジネスのパートナーになるかもしれません。是非、ご活用下さい。