今回は Copilot Studioを使ったRAG(Retrieval-Augmented Generation)の精度検証 を行い、その結果をまとめたレポートを公開します。
※この検証は2025年8月時点のCopilot Studioを使っています。
※検証条件、Copilot Studioの仕様変更等により、結果が変化する可能性があります。詳細な検証内容は、pdfのレポートをご確認ください。
背景
Copilot Studioを使って社内ナレッジを活用する際、以下のような点が不明瞭でした。
- ファイル形式の違いによる精度差
- 表データをどの形式で登録するのがよいか
- 複数ナレッジを登録した場合の扱い方
そこで今回、サンプルナレッジと想定質問を用意し、形式や登録方法ごとの精度を比較しました。
検証内容と主な結果
1.ナレッジに適したファイルフォーマット
- pptxやpdfの資料で、資料内のテキスト情報に対して質問する場合は、他のフォーマットに変換せず、そのままのフォーマットでナレッジ登録するのがよい。
- 元のpptxを、wordやmd等の形式にしても、回答精度の向上は見られなかった。
2.表データのナレッジの最適な登録方法
- ナレッジが表データである場合、「json」か「xlsx(テーブルフォーマット)」で登録するのがよい。
- pdf内の表部分など、重複したデータを別のフォーマット(pdfとxlsx等)で複数登録するのは、精度が低下する可能性があるため避ける。
3.複数ナレッジがある場合の最適な実装方法
- 複数ジャンルのナレッジがある場合、エージェントで分割、トピックで分割、トピック内分岐いずれでも精度差はほぼなかった。
- メンテナンス性を考えると「エージェント分割」か「トピック分割」がよさそう。
公開資料
今回の検証の詳細な資料を公開しています。
組織内での精度検証等に役立てていただければと思います。
今後の課題
今後、以下の検証をしていきたい。
- 同じジャンルで、複数のナレッジを登録したとき、質問に対して、適切なナレッジソースを参照するか
- 今回はナレッジをアップロードする形で登録したが、SharePoint等を参照する場合に結果が変換するか
- 規模の大きいナレッジの場合、ファイルを分割して登録した方が精度が向上するか
- ナレッジを登録し、回答を返すシンプルなエージェントの場合、Copilot Studioと、エージェントビルダー(Microsoft 365)で、同様の精度となるか