Power Virtual Agents組み込みの機能でAzure OpenAI Serviceを利用したチャットボットをつくってみる

こんにちは。今日は、Microsoftのローコード開発プラットフォームであるPower Platformのサービス群のひとつであり、チャットボットを簡単に作ることができるPower Virtual Agentsを利用して、Azur e OpenAI Serviceと組み合わせたチャットボットを試作してみました。

なお、今回は、以下の記事で紹介されているような、自前で作りこむ方法ではなく、Power Virtual Agents組み込みの機能を使っても似たようなことができそうな気配を感じたので、そちらを試してみました。(2023年5月現在プレビュー機能です)

■一から作りこむ方法

Power Virtual AgentsとPower Automateを使ってOpen AIと対話してみよう – Qiita

■Power Virtual Agents組み込みの機能を使ってAzure Open AI Serviceと連携する方法(今回試した方法)

AI を基盤に強化された会話の概要 (プレビュー) – Power Virtual Agents | Microsoft Learn

それではまいります。

Power Virtual Agents組み込みのAIベースチャットボット作成機能の概要

AI を基盤に強化された会話の概要 (プレビュー) – Power Virtual Agents | Microsoft Learn

ボットの会話を強化するためのクイックスタート ガイド (プレビュー) – Power Virtual Agents | Microsoft Learn

上記内容を読んでのまとめ。(理解が違っていたらごめんなさい)

  • Azure OpenAI Serviceは、Power Virtual Agentsに組み込まれているため、ユーザがAzure上にリソースを作成する必要はない(追加課金も特になさそう?)
  • 予め構成されたトピックに該当しない質問が投げられてきたら、予め設定したURL上で利用可能な情報を参照しにいき、その内容に対してAzure OpenAI ServiceのGPTテクノロジが利用されて自然なトーンで会話を返すことができる
  • これによって、不測のユーザ質問に対して、予め多くのトピックを用意しておかなくても柔軟な応答が可能になる
  • 現在は「英語」の応答のみサポート

Power Virtual Agentsの設定にある「AI機能」から設定できるようですが、この中で「会話を増加する」ためにWebサイトのURLの設定が必要となっています。このURLの情報がOpenAIモデルへのインプットになるわけですね。

公式ドキュメントをみると、このURLの要件について、以下のような記載がありました。

会話を強化する (プレビュー) – Power Virtual Agents | Microsoft Learn

  • 最大2段階までの深さのURLを指定可能
    • OK:www.contoso.comwww.fabrikam.com/engines/rotary
    • NG:www.fabrikam.com/engines/rotary/dual-shaft(3段階の深さ)
  • BingにインデックスされているURL、認証が必要でないURL
  • 指定したURLの下位階層のページのコンテンツ、サブドメインも回答生成の対象になる
    • www.fabrikam.com/engines/rotaryを指定しておくと、www.fabrikam.com/engines/rotary/dual-shaftの内容も回答生成に参照されるが、www.fabrikam.com/toolsは参照されない
    • fabrikam.comを指定しておくと、そのサブドメインであるwww.fabrikam.comnews.fabrikam.comからのコンテンツも参照する
  • (上記の特性から?)bing.com やその他の検索エンジンを指定しても有用な回答は得られない

ということで、bingにインデックスされていて、認証も不要な公開URLの情報でよければこの機能を使うと簡単に実現できそうですが、社内情報などを回答させたい場合には、まだこの機能では実現できなさそうで、最初に紹介した以下などを使って作りこんでいく方法になりそうですね。

Power Virtual AgentsとPower Automateを使ってOpen AIと対話してみよう – Qiita

あとは、プレビュー中の制限として、チャットボットを「公開」するのにサポートリクエストを起票する必要があるようです。

会話を強化する (プレビュー) – Power Virtual Agents | Microsoft Learn

構築手順とお試し

構築自体はとても簡単でした。以下にスクショを載せておきます。なお、手順は以下を参考にしています。

ボットの会話を強化するためのクイックスタート ガイド (プレビュー) – Power Virtual Agents | Microsoft Learn

統合キャンバスを試す(プレビュー)へ進み

適当なチャットボット名を指定し、この画面からOpenAIモデルの情報インプットとなるURLを指定します(未入力のまま進み、あとで設定から追加することもできます)

今回は後から設定することにしました。

まず初めに、AI機能を有効化していない状態でチャットしてみます。デフォルトの状態なので、当然対応するトピックもなく、チャットボットは回答を返せません。


What is the today's wheather in Tokyo?

次に、AI機能を有効化して、天気サイトのURLを設定してみます。

https://www.accuweather.com/

すると・・・今度はリンクとともに回答を自然な会話文とともに返してくれました。

現在は、英語のみ対応だったり、公開Webサイトじゃないとだめだったり、いろいろと制限はありますが、コーディングなくボタンポチポチでこのエクスペリエンスを作れてしまうのは便利ですね。今後の機能アップデートにも注目しておきたいと思います。

おしまい

少しでも参考になった!という方は、下のいいねボタンをぽちっていただけましたら励みになります!

この記事を気に入っていただけたらシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT US
Yuu113
初めまして。ゆうたろうと申します。 兵庫県出身、東京でシステムエンジニアをしております。現在は主にデータ分析、機械学習を活用してビジネスモデリングに取り組んでいます。 日々学んだことや経験したことを整理していきたいと思い、ブログを始めました。旅行、カメラ、IT技術、江戸文化が大好きですので、これらについても記事にしていきたいと思っています。