Power Virtual Agentsを利用してみた!

2022.03.25
Power Virtual Agentsを利用してみた!

弊社ブログをご愛読の皆様、お疲れ様です。MS開発部の種田です。
今回は、Microsoft Ignite 2019の目玉の一つ?でもあるPower Virtual Agentsを触ってみようかと思います。

と、その前に弊社のTwitterができておりました!
ブログ更新などがあった際はこちらのTwitterにも投稿されますので、是非ご興味ございましたら、フォローいただけますと幸いです!!!

Power Virtual Agentsですが、項目や回答を定義するだけで、簡単にチャットボットを作成できるサービスとなります。
つまりはキーワードとその回答を設定しておくだけで、入力内容から関連性のある回答を導きだして、返信してくれるチャット機能を提供してくれます。
しかも設定した文字を返信するだけではなく、Power Automate(Flow)を利用し別のサービス(MS製品など)と連携もできる優れもののチャットボットも作る事ができます。

ただ便利な機能の反面、利用するにはOffice365とは別のライセンスを購入する必要があり、その値段は2000セッションで$1,000と中々お高い価格設定となっております。
※60日の試用期間もあるので、今回はこちらで試してみます。

【2022年3月25日追記】:追記時点では2000セッションで¥108,720となっております。
詳細はPower Virtual Agents 価格をご確認ください。

早速、試してみた

それではPower Virtual Agentsにアクセスし、チャットボットを作成してみます。

Power Virtual Agents トップ

Power Virtual Agents トップ

基本的にHomeのGet startedに手順が記載されているので、これに従っていけば簡単にボットを作成することができます。
それではGet startedに記載の通り、Topicsにアクセスしてみます。

Power Virtual Agents トピック

Power Virtual Agents トピック

開発者用に予めLesson 1 ~ Lesson 4までトピックが追加されていました。
きっと技術者じゃない人でもボットを作成していただく為に、Microsoftさんが学習用のトピックを用意してくれているんですかね (笑)
そんなご厚意に甘えてLesson 1 – A simple topicのTrigger phrasesをチャットに打ち込んでみます。

Power Virtual Agents トピック Lesson 1 ~ Lesson 4

Power Virtual Agents トピック Lesson 1 ~ Lesson 4

フレーズが4つ設定されているようですので、今回は一番上の”When are you closed”を入力してみます。

Power Virtual Agents チャット

Power Virtual Agents チャット

各店舗の営業時間的なのが返ってきました。

ここで”closed”や”are you closed”と打ち込んでも同じ返事が返ってきます。
この入力内容から最適なトピックを導き出し、(存在すれば)返事をしてくれるのが、このサービスの1つのポイントではないでしょうか。

1から同じようなボットを作るときは、入力内容を分解、トピック一覧から検索、ヒットしたものを返すといった処理を作る必要もありますし、それに伴うDBやらなんやらで、非常にハードルが高いイメージなのでかなり取っつき易いです。

トピックを追加してみる

Power Virtual Agents トピック追加

Power Virtual Agents トピック追加

画面の上部にあるNew topicを選択することでトピックを追加することができます。
※ちなみにSuggest topicsは既存コンテンツ(httpsから始まるページ)からトピックを取り込む事ができるようです。なので試しにSharePointにFAQリスト(質問と回答の2列)を作って、Suggest topicsから取り込もうとしたけどエラーが表示されてできませんでした。恐らく全体的に公開されているHTMLページにテーブルなどでFAQなどを掲載している場合は、このボタンから取り込めるのかなと思います。

Power Virtual Agents トピック追加

Power Virtual Agents トピック追加

トピックの追加画面ですが、至ってシンプルです。
・Name = トピック名
・Description = トピックの説明
・Triger phrases = 入力されるフレーズ集
上記の要領で、適当な値を入力してみます。

Power Virtual Agents トピック追加

Power Virtual Agents トピック追加

次に右側のGo to authoring canvasを押してトリガーされた際の動作を作成してみます。

Power Virtual Agents トリガー

Power Virtual Agents トリガー

なんか既視感(Flowっぽい)のあるページに遷移しました。
とりあえず、Messageに文字を入力してみます。

Power Virtual Agents メッセージ設定

Power Virtual Agents メッセージ設定

右上の保存を選択し、テスト用のチャットで試してみます。

Power Virtual Agents チャットテスト

Power Virtual Agents チャットテスト

上記で設定したフレーズ「会社の歴史」を入力します。

Power Virtual Agents チャット応答

Power Virtual Agents チャット応答

想定通りですがMessageに入力した内容が返ってきました。
上の手順でトピックとフレーズを充実させれば、それだけでも簡単なチャットボットはできてしまいそうです。(トピック数の上限は1000件ですが)
もう一度キャンバス(Flowっぽい画面)に戻って処理を追加してみます。

一番下の⊕を選択すると追加したい処理の種類が選べます。

Power Virtual Agents 処理追加

Power Virtual Agents 処理追加

・Ask a question = チャットの送信者に質問をする
・Call an action = Power Automate(Flow)で定義したフローを呼び出す
・Show a message = メッセージを送信する
・Go to another topic = 別に定義したトピックの処理を実施する
・End the conversation = 終了処理として、満足度アンケートなどが行える
上記の要領で処理を追加することができます。

それではAsk a questionを利用して、どの歴史を知りたいかを確認し、その歴史を返答するように変更してみます。

Power Virtual Agents Ask a question

Power Virtual Agents Ask a question

まずはAsk a questionで「どの歴史が知りたいですか?」という文字を表示し、併せて4つの選択肢を表示させます。
その選択肢で選択された内容を元に4通りのメッセージを表示させるフローになりました。

それでは早速試してみます。

Power Virtual Agents Ask a question

Power Virtual Agents Ask a question

「会社の歴史」と入力すると、Ask a questionで設定した質問文と選択肢が表示されましたので、「会社設立」を選択してみます。

Power Virtual Agents Ask a question

Power Virtual Agents Ask a question

上記で設定した通り、設立記念日が表示されました。
このように対話をして目的の情報をユーザーに送信する、いかにもボットぽい動作も簡単に作成できてしまいました。

Power Automateを利用して別サービスと連携

ついでにPower Automateを利用して、簡単にエスカレーションっぽい動作をしてくれるボットを作成してみました。
まずは「申請」と入力

Power Virtual Agents 他サービス連携

Power Virtual Agents 他サービス連携

「その他」を選択

Power Virtual Agents 他サービス連携

Power Virtual Agents 他サービス連携

担当者への問い合わせ有無を聞かれるので「はい」を選択

Power Virtual Agents 他サービス連携

Power Virtual Agents 他サービス連携

名前を聞かれるので、名前を入力

Power Virtual Agents 他サービス連携

Power Virtual Agents 他サービス連携

連絡先を聞かれるので、連絡先も入力

Power Virtual Agents 他サービス連携

Power Virtual Agents 他サービス連携

最後にリストに登録したアイテムのID(フローから値を貰う)を発券番号として返答し、終了です。
実際に利用されるような流れで試してみたかったのですが、まあこんな使い方はしないか・・!笑

ちなみにPower AutomateのフローをPower Virtual Agentsで利用するためには、作成したフローをソリューションに追加する必要があります。
その際、SharePointのコネクタを利用したフローは追加できないのですが、一度ソリューションに追加してからSharePointのコネクタを利用する分には問題なく使えてしまいました。(Microsoftさんがこれを意図しているのかどうかは不明ですが・・・)

最後に

恐らくPower AutomateのUI Flowと同様に日本語には対応しきっていない感じ(日本語のフレーズを含むトピックを複数用意すると何もトリガーされなくなったり・・)ではありましたが、直感的な操作で簡単にボットが作れるのであれば今後のニーズに期待がもてそうです。

余談ですがPower Virtual AgentsやPower Automateなど言い間違いが増えそう・・
(この記事を掲載している最中にもどっちがどっちか一瞬わからなくなりました)

【2022年3月25日追記】新機能について

本記事初回投稿時、2019年12月13日以降、多数の新機能が追加されています!

下記、公式サイトのリリース計画のリンクと注目の内容をピックアップします!

Power Virtual Agents 2020年リリースサイクル1リリース計画
Power Appsから直接Power Virtual Agentsを作成して管理
Power Appsから開発
Power Virtual Agents 2020年リリースサイクル2リリース計画
Microsoft TeamsでPower Virtual Agentsを使用
Teamsから開発 Teamsで利用
Power Virtual Agents 2021年リリースサイクル1リリース計画
Power Virtual Agents の従業員 FAQ チャットボット テンプレート
Botテンプレート Botテンプレート例
Power Virtual Agents 2021年リリースサイクル2リリース計画
アダプティブ カードの挿入
アダプティブカード

Power Virtual Agents だけではないですが、日々便利な機能がリリースされていますね。

今後もどこかで上記について記載していければと思っています!

以上、最後までご愛読いただき
ありがとうございました。

お問い合わせは、
以下のフォームへご連絡ください。

お問い合わせ

PAGETOP