OSC (オープンソースカンファレンス) 2018 北海道 ~ ハンズオンの補足

今回のハンズオンで触れたの補足記事になります。参加者向けとなります。

https://osc2018-kitaazu.azurewebsites.net/

の下部にある share からスライドを見ていただくとわかるかもしれません。

[slideshare id=104957665&doc=20180707kitaazuv5-180709124212]

要約

今回の実装したところは以下のようになります。
Basic C# テンプレートを元に、特定のアクティビティ (メッセージ)で、添付ファイル (Attachment Class)があるときだけ、Bot Frameworkが提供してくれているイメージのURLを引数として、Custom Vision – Custom Vision Prediction 2.0 – PredictImageUrl を呼び出し、結果を文字列にして返す。

Bot Service

ボットの実装をぐっと楽にしてくれるものになります。
https://docs.microsoft.com/en-us/azure/bot-service/?view=azure-bot-service-3.0

Bot Framework Bot Builder (https://github.com/Microsoft/BotBuilder)

また、ハンズオン中にこれはどういうメンバーを持っているか?といったような質問がありました。リファレンスとして参照するものは、. NET SDK のものを見ていただければよいかと思います。(下のリンク)

https://docs.microsoft.com/en-us/azure/bot-service/dotnet/bot-builder-dotnet-overview?view=azure-bot-service-3.0

C# スクリプト

今回のハンズオンでは、.NET を扱えて、Visual Studio が不要な C# スクリプト(.csx)をベースに、API呼び出しを追加しました。この記事(++C++; // 未確認飛行 C – C#スクリプト実行)を参考にするとわかりやすいかもしれません。 #r で必要とするアセンブリの参照を追加すること。 #load で追加した csx ファイルを読み込んでいます。それ以外は、スクリプトではない、C#と全く同じになります。

Visual Studio を使って、C#として同じこともできますので、Visual Studio をお持ちの方はそちらのほうが、ぐっと楽になります。

Custom Vision プレビュー

ボットの判断能力となるものになります。概要としては、こちらを
これは、画像と分類を教えてあげることで勉強してくれます。
成果として、画像を分類してくれます。教えられたそれぞれの分類に対して、0 ~ 1.00のスコアが与えられます。展示・ハンズオン用の「ラムネ判別機」は、ラムネ、ボトル、チュアブル、飲み物、フローズン、などの分類を教えました。
これは、ブラウザで作ることができるため、今回のハンズオンにぴったりでした。また、受け取った画像は、学習データとして蓄積させていくことができます。もちろん、学習データとして蓄積しないようにもできます。
ラムネ判別機の画像は100程度からスタートして、展示中も学習を続けて130枚程度になりました。

App Service

Web Chat を配置したものになります。概要としては、こちらを
見ていただくとわかりますが、本来はアプリケーションを動作させるものです。
が、今回はオンラインでの編集機能を使いたいためこれを利用しました。
App Service Editor

Azure Functions

ボットの本体の部分です。
しかし、これは、Bot Service (Functions Bot)の一部となります。
概要はこちら

まとめ

というわけで、実はこのハンズオンに参加された方、30分弱で大きく3つ以上のサービスに触れていました。
目的としては、動くものができる!としていましたので、それぞれの使い方を触れる時間はありませんでした。
なお、プレビューの機能も含まれていることは注意してください。
もしどこかの機能に興味があれば、ぜひ、チャレンジしてみてください!
それでは!