Udemy 新コース: 作って学ぶMicrosoft 365 Copilot Chat !

Azure AI Search のベクトルインデックスをCopilot Studio に接続する | Power Platform

ベクトルインデックスをAzure AI を利用して構成し、Copilot Studio のエージェントのナレッジに簡単に追加しましょう。

ベクトルインデックスの作成にはAzure ポータル での操作やAI への知見が少しばかり必要ですが、今回手順をご紹介しますので、Azure ポータルでの権限がある方は試してみてください。

データソース

Azure AI Search とベクトル化に対応しているデータソースは以下のとおりです。

このようなデータソースに資料やテキスト、画像などを保存し、Azure AI Search から接続することが出来ます。公式のガイドはこちらにあります。

クイックスタート: Azure portal を使用してテキストと画像をベクトル化する – Azure AI Search | Microsoft Learn

テーマ

自動車エンジンの設計情報について回答してくれるようなエージェントを作成します。

例えば、多くのドキュメントをAzure ストレージ (BLOBなど) にアップロードして 、Azure AI によりテキストまたは画像情報をベクトル化します。そうして作成したインデックスをAzure AI Search を介してCopilot Studio に接続できます。

Copilot Studio で利用するまでを含む、Azure でのリソースの作成手順は以下の通りです。

作成の流れ

ストレージアカウントの作成 (オプション)

インデックスを作成するファイルを配置します。既存でストレージアカウントがある場合は省略できます。

Azure AI Foundry での埋め込みモデルデプロイ

埋め込みモデルをデプロイし、ベクトルインデックスを作成することのできるリソースを準備します。

Azure AI Search でのベクトル化

Azure AI Search をデプロイし、Azure AI の埋め込みモデルを用いてBLOB 内のドキュメントをベクトル化します。

Copilot Studio からAzure AI Search への接続

作成したベクトルインデックスに接続します。接続の際にはエンドポイントとキー情報が必要です。

上記のような作業が必要ですので、Azure ポータルでの各種リソースの作成権限が必要です。

それでは作成していきましょう。

ストレージアカウント

ストレージアカウントを作成します。

各種リソースは同じリージョンに属している必要があります。今回はJapan Eastで統一して作成します。

コンテナーを作成します。この中にドキュメントをアップロードするために利用します。

今回はaisearch という名称にしました。

コンテナーにアップロードします。

今回はサンプルデータとして、自動車エンジンに関する基本設計のガイドラインとワイヤーハーネスに関する仕様書をアップロードします。

保存することが出来ました。

これでストレージに関する準備は完了です。

必要に応じてネットワークセキュリティ等の設定を行ってください。

Azure AI Foundry

ベクトルインデックスの作成のため、Embedded (埋め込み) モデルを作成します。モデルのデプロイには事前にAzure OpenAI サービスのデプロイが必要です。そのため、Azure AI Foundry にてデプロイを行います。

上記URLの他、Azure ポータルの Azure OpenAI のリソースから Azure AI Foundry に移動することも出来ます。

共有リソース > デプロイを選択します。

基本モデルをデプロイを選択します。

推論タスク: 埋め込みに変更します。

以下のモデルから利用すると良いでしょう。

プロバイダーサポートされているモデル
Azure OpenAI Servicetext-embedding-ada-002
text-embedding-3-large
text-embedding-3-small

クイックスタート: Azure portal を使用してテキストと画像をベクトル化する – Azure AI Search | Microsoft Learn

埋め込みのモデルを選択して確認します。

デプロイを実行します。

埋め込みモデルを作成することが出来ました。

Azure AI Search

リソースのデプロイ

次にAzure AI Search を作成します。ポータルからSearch と検索すると見つけられます。

リソースを作成します。

価格レベルは基本(Basic)以上とする必要があります。また他のリソースと同じリージョンに作成するように場所に注意してデプロイします。

ロールベースのセキュリティの設定

必要に応じてロースベースのセキュリティを設定します。今回はキーとロールの両方のアクセス制御を行っておきます。

重要な情報を扱うことが一般的なため、キーの他、何らかのアクセス制御の設定は行いましょう。

ロール割当を自分を含むグループに追加しておきます。

Copilot Studio からは作成者の権限でAzure AI Search に接続するため、Azure リソースへのアクセス権の付与は不要です。

データ共同作成者のロールをデータをともにメンテナンスするグループに付与します。

メンバーを追加して完了します。

これでアクセスするにはキーの他にロールも必要になりました。

Azure AI Search によるデータのインポートとベクトル化

Azure AI Search によるデータのインポートとベクトル化を行います。

クイックスタート: Azure portal を使用してテキストと画像をベクトル化する – Azure AI Search | Microsoft Learn

今回は接続先として資料が保存されているBLOB ストレージを選択します。

必要に応じてフォルダーまでを指定します。

先ほどデプロイした、埋め込みAI のリソースを選択します。

必要に応じて選択します。

インデックスのスケジュールはテスト用とのため、1回としますが必要に応じて変更します。

レビューして実行します。

作成することができると以下の表示がなされます。

Azure AI Search でのテスト

ベクトルプロファイルが作成されていることがわかります。

検索エクスプローラーに切り替えます。自動車と検索してみます。

このキーワードはベクトル化したファイルによって変更してください。

検索結果がえられました。

英語でも検索してみます。英語でも似たような結果が得られました。

しばらくしてから最新の情報に更新したところ、インデックスのサイズが更新されました。

正しくベクトルインデックスが作成できているようです。それではこのインデックスをCopilot Studio に接続してみます。

Copilot Studio

サポート情報のタブに切り替え、ナレッジを追加します。

上級のタブに含まれているAzure AI Search (検索) をクリックします。

作成をクリックします。名前や説明は必要に応じて変更します。

この情報は後でも変更できます。

Azure ポータルでの情報の取得

以下の項目はAzure ポータルにアクセスして、エンドポイントのURLと管理者キーをポータルから取得する必要があります。

Azure Portal を開きます。エンドポイントは概要タブのURLから取得できます。

キーはこちらから取得できます。

プライマリでもセカンダリでも構いません。

上記の情報を入力して接続します。この情報はエンドユーザーには共有されず、ユーザーの代わりにCopilot Studio からのアクセスとして利用されます。

ナレッジの接続

次へをクリックします。

レビューして完了します。

Azure AI Search のベクトルインデックス を接続することが出来ました。

追加したベクトル検索のナレッジにアクセスするとどのような情報を取得できるのかの説明を編集します。

名前、説明について期待する結果について情報を加えることで、生成モードでのオーケストレーションが設定されている際に Copilot Studio が適切にナレッジにアクセスできるようになります。

生成モードについて確認したい場合はこちらをご確認ください。

クラシックモードでもAzure AI Search は利用できます。

テスト

ナレッジとして簡単に接続することが出来ました。このベクトルインデックスには現在のところ、自動車の基本設計の手法のドキュメントがアップロードされているため、関連の事柄を聞いてみます。

非常に詳細に回答してくれました。引用を見てもベクトルインデックスが接続されていることがわかります。

引用をクリックするとヒットした内容を確認することが出来ます。

データ共有観点でのポイント

Teams チャネルに公開して、引用などのふるまいを確認します。

エージェントを作成したユーザー

エージェントを作成したユーザーに対して、エージェントが回答してくれました。

引用も作成されています。マウスオーバーしてみると、断片的な情報を見ることが出来ます。1の引用の場合はこのように見えます。

2の引用の場合はこのように見えます。

Azure AI Search の接続を作成していないユーザー

Azure AI Search の接続を作成していないユーザーにエージェントを共有してナレッジを利用できるか試してみます。

共有先のユーザーでもナレッジを利用することが出来ました。

Azure AI Search への接続は所有者が作成したAPI キーでの接続で行われる事がわかります。つまりエージェントの共有と同時にナレッジの共有が行われますので、問題ないようなシナリオで設計し、利用しましょう。

ご参考になれば幸いです。

コメントを残す

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

Index