3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Bot Framework Composer v2.0のチュートリアルをやってみた

Last updated at Posted at 2021-05-27

はじめに

これまで何度かAzure Bot Serviceを使用したのですが、いちようプログラマーなのでコードを使用してボットを作成していました。
ですが、どうせならコードかかないで作ってみたいなと思い、今更ながらBot Framework Composerのチュートリアルをやってみました。
ちなみに、このBot Framework Componser、つい1週間ほど前にv2.0がリリースされたようなので、今回はBot Framework Componser v2.0を使用しています。

環境

  • windows10
  • .NET Core SDK3.1
  • ボットフレームワークエミュレータ
  • Azureのサブスクリプション

Bot Framework Componser v2.0の新機能・改善点

そもそも1.0を使ったことがないので、あまり比較できないのですが、個人的に気になった部分です。

  • テンプレート

V1.0
image.png

V2.0
image.png

v1.0にもTemplateなるものはあるようですが、2.0と比較するとだいぶ変わっている印象。
そして、Previewですが、Nodeも選べるようですね!
ちなみに、それぞれのテンプレート内容は以下の通りの様です。Empty Botはこの後使うので後ほど説明を載せています。

テンプレート名 内容
Core Bot with Language Azure言語理解(LUIS)と、会話フローを指示するために使用される一般的なトリガーフレーズを備えたシンプルなボット
Core Bot with QnA Maker Azure QnAMakerを使用した簡単な質疑応答ボット
Core Assistant Bot Azure言語理解(LUIS)と、会話フローを指示し、顧客が基本的なタスクを実行するのを支援するために使用される一般的なトリガーフレーズを備えたボット
Enterprise Assistant Bot Azure言語理解(LUIS)、カレンダースキル、Peopele Skeill、および会話フローを指示して顧客が一般的なビジネスタスクを実行できるようにするために使用される一般的なトリガーフレーズを備えたボット※補足画像を下に表示
Enterprise Calendar Bot MicrosoftGraphを使用してM365カレンダーと対話する機能を備えたボット。カレンダー イベントを表示、作成、および修正することで、ユーザーのスケジュールを管理するのに役立つ。
Enterprise People Bot MicrosoftGraphを使用してAzureActiveDirectory内のユーザーを検索する機能を備えたボット

image.png

チュートリアル通りに作成してみる

最初にちょっと謝罪…

アプリは日本語対応はしてないのかなと思って、英語で進めてしまいましたが、日本語ありました。。。
以降のスクショがすべて英語になってしまっていて申し訳ないです。。。
image.png

ボットを作成

とりあえず、Bot FrameworkComposerをインストールする必要があるようなので、インストール。
デスクトップアプリケーションとしてインストールしました。

インストールが終わったらBot FrameworkComposerを起動し、テンプレートからプロジェクトを作成します。

こんな画面が立ちあがり、+Create newをクリックすると作成できます。

image.png

今回はチュートリアル通りにEmpty Botを選択。
Empty Botでは、あいさつと、不明な意図に関して何言ってるかわかりません的なアクションをしてくれるようです。

image.png

次にBotの名前、保存場所、ランタイムタイプを選べます。
ランタイムタイプはWeb AppとFunctionsから選べました。
今回はWeb Appで。
image.png

Createを押してしばらくすると、下の画面になりました。

image.png

Greeting(案内)を押すと、フローのような感じの図が登場。

image.png

「Send a response」とかかれているトリガーを選択すると、右にBot Response(ボット応答)というのが表示され、そこからTextを編集できました。

image.png

この状態で一旦テストしてみます。
image.png

image.png

image.png

コードを書かずに一瞬でできました。
(Bot Framework SDKの方もぜんぜんコードかかないでできるけど…)

ダイアログを追加する

Add a dialogを選択して、ダイアログを追加します。

image.png

BeginDialogに移動して+をクリック。
image.png

いっぱい選べるのですが、「Send a response(応答の送信)」を選択。
image.png

先ほどと同じような感じで応答内容を編集できました。
image.png

ダイアログとダイアログを接続する

今作成したgetWeatherDialogと最初のメインダイアログを接続します。
image.png

メインの方の「Recognizer Type(認識エンジンの種類)」を「Regular expression recognizer(正規表現認識エンジン)」に変更します。
image.png

add new trigerを選択
image.png

Please input regEx pattern(正規表現パターンを入力してください)に入力した言葉をチャットで入力するとボットが応答してくれるようになります。
image.png

Being a new dialog(ダイアログの管理→新しいダイアログの開始)を選択すると、、、
image.png

このようにダイアログが作成されます。
Dialog nameで先ほど作成したダイアログを選択します。
image.png

テストしてみるとこのような感じ
image.png

BotのAzureへの発行

プロファイルの作成

Publishing profileからAdd newを選択
image.png

Botの名前と発行するtargetを選択
image.png

今回はCreate new resourcesを選択します。
ちなみに、それぞれの意味は次の通り。

内容
Create new resources 新しいAzureリソースを作成
Import existing resources 既存のAzureリソースのインポート
Hand off to admin Azureを使用するための適切なアクセス許可がない場合、または他のクラウドサービスからリソースを生成する場合に、管理者に必要なリソースを作成するように依頼できる

image.png

Microsoftのサインインを求められるので、サインインをすると、AzureDirectoryやSubscriptionが選べるようになります。
image.png

追加するリソースを選択します。
Optionで必要なものを選べます。今回は必須のみだけ。
image.png
image.png
image.png

発行するリソースが確認できたらCreateをクリック。
image.png

Azureのリソースグループを確認したところ、先ほど発行したリソースがきちんとアップされていました。
image.png

発行

発行したいBotを選択して、Publish selected botsを選択。
image.png

最初、なぜか失敗したのですが、もう一度発行しなおしたところ成功。
image.png

Azure側でのテストもできました。
image.png

さいごに

ほんの1時間ほど試してみただけですが、GUIなので感覚的に作成することができました。
これだったら開発課などでない事務の方とかでも作成できるのではないかなという所感です。
発行もデスクトップアプリケーションで完結できてしまうのもいい感じです。

参考

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?