Power Virtual Agents 追加された Open AI 機能「Copilot を使用したトピックの作成・編集」について

# はじめに

Power Virtual Agetns で発表された ChatGPT の新機能は、以下の２つです。

Boost conversations
－ 会話のブースト　

Create (and edit) with Copilot
－ Copilot を使用したトピックの作成 (および編集) 　

今回は Create (and edit) with Copilot を利用する方法を記載します。


:::note info
Boost conversations 機能については以下をご覧ください。
https://qiita.com/MiyakeMito/items/030fcf38829e4eefd539
:::

# Create (and edit) with Copilot って何？

従来の Power Virtual Agetns では、トピック（チャットボットとの会話がどのように行われるかの定義）を作成する際、トリガーフレーズや会話ノードを開発者が設定する必要がありました。

Create (and edit) with Copilot 機能を利用すると、作成するトピックの要件を文章で入力することで、AIがトピックを自動生成します。

また、既存のトピックに対しても、当機能による会話ノードの追加、修正も可能となっています。




# Create (and edit) with Copilot の仕様
https://learn.microsoft.com/en-us/power-virtual-agents/nlu-authoring

**2023/05/01 時点での仕様と制限です**

* プレビュー機能ですので運用環境での利用は意図されていません
* 米国リージョンでのみ使用可能です
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/9cecbb48-377c-ab17-c620-b0ad577f94cb.png)
* Learn には、英語以外の言語はサポートしないと記載がありますが、日本語での入力も動作します（精度も悪くない印象です）
* 会話ノードのメッセージ等は英語で作成されます。（トリガーフレーズは日本語になります）
* Dataverse for Teams 版の Power Virtual Agetns では動作しません。
あくまでスタンドアロン版でのみ利用可能です。
* 統合キャンバスを試す (プレビュー) でのみ利用可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/381168b5-c153-5b08-2747-3f23887d167b.png)
* 当機能を利用する場合、「インテリジェント作成サポート」機能をONする必要があります。画面左上の歯車アイコン－[全体設定」－[インテリジェント作成サポート（プレビュー）]を有効にしてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/6a7c7e31-1cbb-adb0-2064-da0fa1436584.png)








# Copilotでトピックを作成する

① **米国環境で** https://web.powerva.microsoft.com/ にアクセスし、スタンドアロン版Power Virtual Agetnsを開きます。
　※ Power Virtual Agetns用ライセンスが必要です。機能を試す場合は試用版を検討してください。

② 作成 より 統合キャンバスを試す（プレビュー）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/7956d466-f8a7-bfd4-2b7d-d3b07d14b3be.png)

③　ボット名を指定し作成。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/2c3bc911-1590-a301-aa3d-abb20435d655.png)


④ トピック－新しいトピック－コパイロットで作成(Preview)。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/70f53ade-2c5b-18af-927c-a60c7b07317c.png)

⑤ Name your topicにトピック名を、Create a topic to...にトピックの要件を記載します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/6dfbe2bf-2c8c-ac89-aed4-672a464d8fbd.png)

今回は下記要件としました。
```
ユーザーがイベントの予約を確認するために、イベント番号と日付を入力します。
ユーザーは表示されたイベントに対し、正しい情報であるか確認ができます。
ユーザーが確認した結果、誤りであった場合、再びイベントのスケジュールを確認します。
```

⑥ Copilot によりトピックが作成されると、構築されたノード一覧が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/cd3cb623-7acd-407d-e3f5-ba5a444749cf.png)

⑦ 作成されたトピックの全貌です。
現段階で自動構成されるノートは、メッセージ、質問、条件のみとのことです。
条件ノード等で、一部値の設定が漏れ、エラーとなる部分があるようです。Pilotであるヒトの手で直してあげてください。
Teamsに連携するなどのPower Automate利用するような要件は、Copilotには不可能のようです。Pilotである…（以下略
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/37c919c6-e602-16d8-03a4-b44fb96a9ffe.png)


⑧ ボットを保存し、テストで動作を試してみましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/d5c093ea-e2ec-255d-5b74-6267e974ae74.png)




# Copilotでトピックを編集する

Copilot は既存のトピックに対し修正も行ってくれます。

① 保存済みのトピックを開き、右上の Copilot ボタンをクリック。[What do you want to do?]に修正内容を入力し、[Update]。
```
ユーザーはイベント名を入力します
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/6a9891f0-5bd8-f83b-6006-9e591d854782.png)



② 上記で生成された会話パスに、ノードが追加されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/2b31f39e-b281-e528-ea49-f72e2d8b4702.png)

③ 今度は、トピックの編集を行います。以下のように入力してみました。
```
ユーザーはイベント番号ではなく、イベント名を入力します。
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/4dba32cd-6dc2-bbde-0c7e-313442b181ba.png)

④ 既存の会話ノードの内容が変更されました。すごいですね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/fe48cf96-18c4-2a25-a8cd-27fac1e887bf.png)


:::note info
AI の成果に関するフィードバックを提供するには、[Edit with Copilot] パネルの下部にある [Thanks for the feedback!] を入力してください。
親指を下向きのアイコンを選択すると、より詳細なフィードバックを含めることもできます。
このフィードバックにより、AI の品質が向上するとのことです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/480768/2458bf4e-a105-30ca-218f-7bfd86f07d9e.png)
:::


# まとめ
Copilot は、数行の文章でトピックを自動生成します。
活用することで、ボットのトピックの作成と更新にかかる時間が大幅に短縮されます。

今回の検証では、日本語も難なく理解し、条件分岐まで備えた会話パスを自動構築しました。
ただし、Power Automateとの連携や、カスタムエンティティの定義などは不可能なようですが、そこはPilotであるヒトが構築すれば良いのです。

https://learn.microsoft.com/ja-jp/power-virtual-agents/advanced-fundamentals

チャットボットの構築がさらに簡単かつ加速する強力な相棒 Copilot、是非お試しください。