Copilot StudioのナレッジとしてSharePointを指定する2つの方法を比較

Copilot Studioでエージェントを作成する際、エージェントが参照可能なナレッジとして、2つの方法でSharePointを指定することができます。

本記事では、SharePointをナレッジとして指定する2つの方法を比較します。

SharePointをナレッジとする2つの方法

2つの方法の比較

Copilot Studioのナレッジを追加する画面では、以下の2つの方法でSharePointをナレッジとして登録することができます。

  1. ナレッジソースとしてSharePointを追加する方法 *1
  2. ナレッジソースとして非構造化データを追加する方法 *2 *3

2つの方法の比較は以下の通りです。

項目 1. SharePoint 2. 非構造化データ
ナレッジソースの指定方法 SharePointサイトやリストのURLを指定する SharePointのファイルやフォルダのURLを指定する
検索可能なSharePointコンテンツ ページ/ファイル/リスト ファイル
検索に対応するファイル形式 Word/PowerPoint/PDF Word/Excel/PowerPoint/PDF
検索可能な最大ファイルサイズ 7MB (拡張検索結果の機能がオンの場合は200MB *4 32MB
ファイルとフォルダ数の制限 特に明記なし ソースごとに200ファイル、50フォルダ、10のサブフォルダレイヤー
データの更新頻度 即時 4~6時間
ユーザーのクエリに対する検索 指定されたSharePoint内のコンテンツを検索 Azure AI Searchに作成されたベクトルインデックスを検索

非構造化データのインデックス作成

Microsoftのドキュメントによると、SharePointに配置された非構造化データは、以下の処理を経てAzure AI Searchにインデックスが作成されます。

  • ファイルをDataverseにダウンロード
  • ファイルのインデックス化
  • テキストと画像の抽出
  • 抽出したテキストのページング
  • テキストのチャンク化とインデックス作成
  • 埋め込みの作成

引用元:https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/knowledge-unstructured-data

また、インデックス作成処理はスケジュールされたジョブで自動実行されるため、SharePoint上のファイルを更新した後、インデックスの更新を手動で行う必要はありません。

インデックス作成に関する注意点としては、以下が挙げられます。

  • SharePointに配置されたファイルはDataverseにダウンロードされるため、Dataverseの容量を消費します。大量のファイルがSharePointに配置されているようなシナリオでは、Dataverseの容量にも注意が必要です。
  • データ更新は4~6時間の頻度で行われるため、SharePoint上のファイル更新を即時反映することは出来ません。

検索結果の比較

それでは、実際に2つの方法の検索結果を比較してみます。

検索対象とするファイル

今回は、検索対象として以下のPDFファイルを用意しました。テキストベースの情報と、画像でフローチャートが貼り付けてあります。テキストの内容と、画像の内容に対する2パターンの質問で比較します。

ナレッジソースの追加

ナレッジソースとしてSharePointを追加する方法
  1. エージェントの[概要] - [ナレッジの追加]から赤枠のSharePointをクリックします。

  2. [項目の参照]をクリックします。

  3. 検索対象のファイルが配置されたフォルダを選択します。

  4. [エージェントに追加する]をクリックします。

  5. ナレッジが準備完了となっていることを確認します。

ナレッジソースとして非構造化データを追加する方法
  1. エージェントの[概要] - [ナレッジの追加]から赤枠のSharePointをクリックします。

  2. [項目の参照]をクリックします。

  3. 検索対象のファイルが配置されたフォルダを選択します。

  4. [エージェントに追加する]をクリックします。

  5. ナレッジが準備完了となっていることを確認します。

検索結果の比較

ナレッジソースとしてSharePointを追加する方法
テキストの内容に対する質問

元データの内容をまとめて回答してくれました。回答としては問題ないと思います。

画像の内容に対する質問

画像の内容について質問してみましたが、こちらの回答は難しいようです。

ナレッジソースとして非構造化データを追加する方法
テキストの内容に対する質問

SharePointのパターンとほとんど同じ内容を回答してくれました。テキストベースだと大きな差は出ないかも知れません。

画像の内容に対する質問

画像のフローチャート内の文字列を上から箇条書きで回答してくれました。公式ドキュメントでは明記されていませんが、Azure AI Searchのインデックスを作成する際、抽出した画像に対するOCR処理が実装されているのではと想像しています。

まとめ

今回は、Copilot StudioのナレッジとしてSharePointを指定する2つの方法を比較しました。

非構造化データを追加する方法では、裏側でAzure AI Searchが実装されているということもあり、より高い検索精度を期待することが出来そうです。SharePointのデータを検索したいシナリオは非常に多いかと思いますので、ぜひ試してみて下さい。

*1:https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/knowledge-add-sharepoint

*2:https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/knowledge-unstructured-data

*3:以前はローカルからファイルを直接アップロードする方法のみをサポートしていましたが、SharePointやOneDriveも指定可能となりました。

*4:https://learn.microsoft.com/ja-jp/microsoft-copilot-studio/knowledge-copilot-studio#tenant-graph-grounding

執筆担当者プロフィール
大嶋 柾也

大嶋 柾也(日本ビジネスシステムズ株式会社)

Data&AI事業本部 ソリューション部所属。最近はCopilot Studioの案件を中心に担当。

担当記事一覧