Azure Bot

Bot Framework V3 を試してみた

2016/11/19

Code での内職してたBot Framework V3 のネタです。

内職、第1段は、Windows 10 Aniversary Update を ISO イメージからインストールしたのですが、
ついでに、Visual Studio 2015 Ent Update 3 (なんとなく英語版)をインストールもしたので、Code の期間中で何か試そうかなって思いまして、Bot Framework v3 を試してみました。

ちなみに、Bot Framework v 1の時は、以前に試してみた記事を書いたのですが、それなりに変わっているという感じがしてます。

※ 2016/11/19 追記
Azure Bot Services を試したブログはこちら

開発環境のインストール

基本的には、V1 と一緒です。

詳しいことは、下記のサイトに書いてあります。
https://docs.botframework.com/en-us/csharp/builder/sdkreference/gettingstarted.html

「Download and install the Bot Application template」でテンプレートをDLすると、ZIP形式でDLできるので、
解凍したものを、「"%USERPROFILE%\Documents\Visual Studio 2015\Templates\ProjectTemplates\Visual C#\"」に貼り付けるだけです。

そうすると、プロジェクト作成時に「Bot Application」が選択できるようになります。

 

そのままプロジェクトを作ったら、きっと動きを確かめたくなりますよねー。
ってことで、エミュレーターもインストールしましょう。

さきほどのサイトの「Emulator」のあたりからエミュレータがダウンロードできます。

 

VSでデバッグ実行後、エミュレーターで動作確認すると、こんな感じ。
エミュレータは、V1のころから見るとちょっと変わってますね。
うまく動かないときは、localhostのポートが違っているかも。
デフォルトだと3978ポートですが、他のWeb アプリのデバックとかもやってたので、3979に変えて実行しています。

V1と比べると、テンプレートを実行するだけで動作するので、初めて触ってる人にも簡単になったと思います。

 

Emotional Bot

ここからは、Code から帰った後にやったことです。

下記の情報をもとに、Emotional Bot にしてみました。
https://docs.botframework.com/en-us/bot-intelligence/language/#example-emotional-bot

概要としては、文章を解析してセンチメンタル属性をみて、ネガポジ判定するような感じです。
この解析は、Microsoft Azure の Cognitive Service の、「Text Analytics API」です。

 

ドキュメントは、↓っすね。
https://azure.microsoft.com/ja-jp/documentation/articles/cognitive-services-text-analytics-quick-start/

感情分析にはまだ日本語は来てないみたいですね。

まだプレビューだからか使えるリージョンは、「West US」 のみで、価格はこんな感じです。
Free が白反転しちゃってるのは、Freeプランで作ったあとにスクリーンショットを取ったからです。
多分、1 リージョンで 1 つだけ Free が使えるとかっぽい。

あとは、ドキュメントの通りやると完成です。

 

作ったソースをAzure App Service にデプロイして、Bot Framework に登録するとこんな感じでできます。
V1とV3で違うのは、MicrosoftAppIDとパスワードを使うようになったことくらいかな。

 

まとめ

自分はまだ試してませんが、V1からV3へのアップデートを行うパスも用意されているみたいです。
https://docs.botframework.com/en-us/support/upgrade-to-v3/#navtitle

V1とV3 では、中身は結構変わってるなって印象を受けますが、V1はそんなに触ってなかったからいいやって思ったりします。
ただ、ブログ等で検索に引っかかってくるのは、V1 がまだ多い印象でもあります。

試せてないことですが、ドキュメントには、
「 Translation for automatic translation to more than 30 languages,」という記述がありまして、翻訳はFrameworkの中でやってくれるっぽいんですよね。。。
ってことは、日本語→英語をBot Frameworkでやって、Text Analytics には英文でわたしてあげることで、日本語の感情分析もできるような気がするので、Azure Cognitive Service で日本語対応されてないやつもそこそこ行けちゃうんじゃないかなって思います。

色々、遊べそうでたのしいな~。

 

 

-Azure, Bot
-, , , , ,