On Your DataとFile Search 、Azure OpenAIで独自データを使う方法を比較してみました  

2025年3月31日掲載

Azure

Azure OpenAIで独自のデータを用いる2つの方法を比較してみました。

目次

この記事では

  • Azure OpenAIで社内データを活用することを検討中のユーザーを対象としています。
  • On Your Data機能とFile Search機能の比較結果をご紹介します。

背景

現在ChatGPTをはじめとした生成AIにより、対話形式でインターネット上の様々な情報を得られるようになりました。

そんな中で、「社内データを使って回答するチャットツールを作りたい」と考える方も多いかと思います。

それを実現する方法として、Azure OpenAIにはOn Your Data機能、File Search機能という2つの機能があります。

私は普段、Azureプロダクトの企画をしており、日ごろから構築を行っているクラウドエンジニアではありませんが、ユーザーに近い目線で、2つの機能を試して比較して、そのメリット対応状況、適用に向いているシーンなどについて紹介していきます。

「Azure OpenAIの構築を正式に依頼する前にちょっと試してみたい」といったユーザーの方に役立つ情報があれば幸いです。

①Azure OpenAI「On Your Data」機能

Azure OpenAIのモデルデプロイ

公式ドキュメント 「Azure OpenAI Service リソースを作成してデプロイする」の手順に従い、作業を進めます。

Azure AI Foundry ポータル画面でAzure OpenAIのモデルをデプロイします。今回はGPT 4oでやってみました。

model

Azure AI Foundry 画面で、チャットプレイグラウンドでモデルの指示を加えて質問をするだけでもWeb上の情報から回答を得ることができます。

今回は独自データから回答させたいので、「データを追加する」を選択する必要がありますが、まずはその下準備から順番に進めます。

chat

データのアップロード

追加するデータを準備していきます。今回は就業規則のサンプルを使います。手順は「クイック スタート: 独自のデータを使用して Azure OpenAI モデルとチャットする」の通りです。

まず読み込みたいファイルをストレージコンテナにアップロードします。

テキストのベクトル化

ここでは独自データへの接続とベクトル化を行います。ベクトル化では独自データを細かい文章(チャンク)に分割し、検索フレーズとどれくらい近い意味合いかを数値化することができます。これにより、単語やフレーズが完全一致していなくても必要な情報にたどり着きやすくなります。手順は「クイックスタート: Azure portal を使用してテキストと画像をベクトル化する」を参照してください。

ここで、ちょっとつまづいたのが、データのインポートとベクトル化が完了した後のことです。この処理が完了したら、インデクサーが作成されていることを確認します。インデクサーとはデータを読み取ってインデックス(指定した形式でコンテンツを格納する場所)に引き渡す仕組みです。

この時、処理が成功していることとエラーの有無を確認します。実はエラーが発生していたので、データを引き渡せていないことがありました。
私が試した際には、”Truncated extracted text to '524288' characters.”というエラーが出ていました。これはストレージアカウントにアップロードしたファイル1件あたりの文字数が多すぎるという意味なので、PDFファイルを分割してアップロードしなおしました。

error

インデックスの画面に戻り、検索窓にキーワードを入力してみます。キーワードに関連するチャンクを返してくれます。

chunk

データを追加してチャット

Azure AI Foundry のチャットプレイグラウンド画面に戻って、データを追加してチャットしてみます。
これで独自データから回答を得られるようになりました!

chatpage

Webアプリを作成する

デプロイボタンからWebアプリとして公開することもできます。

deploy

アプリ名やリージョンなどを指示通りに選択します。この時「Webアプリでチャット履歴を有効にする」を選択すると、アプリ画面で過去のチャットを振り返って確認することができます。(ただし、別途CosmosDBの課金が発生します。)

app app

簡易的ではありますが、Webアプリとして使うことができました。

app

所感

Azure AI Searchでのベクトル化の難易度が高く、エラーの調査などに時間がかかってしまいましたが、1週間程度で簡易的なWebアプリまで作成することができました

今回は読み取りたいデータをAzure Blob Storageに格納しました。Azure Blob Storageは大容量のデータを投入できるため、大企業で組織全体のデータを活用したい場面などにも向いていると思います。

Azure OpenAIのデータソースとしてAzure AI Searchを使用する際は、Azure AI Searchのベーシック以上のプランが必要です。

東日本リージョンだと当ブログ公開時点で¥14,515.45/月かかり、File Search機能と比べて少し高い印象を受けました。

②Azure OpenAI「File Search」機能

Azure OpenAIのモデルデプロイ

先ほどと同じようにAzure AI Foundry ポータル画面でAzure OpenAIのモデルをデプロイします。アシスタントプレイグラウンドを開きます。On Your Data機能のときと同じくGPT 4oでやってみました。

新しいアシスタントを作成し、「ファイル検索」をONにします。

search

ファイルのアップロード

今回はローカルから同じファイルをこの画面でアップロードするだけです。これだけでベクトル化完了なので、On Your Data機能と比べると簡単でした。

search2

ファイルが追加されたことを確認して質問すると、与えた資料から回答を得ることができました。

search3

所感

On Your Data機能と比べて簡単かつスピーディーに独自データを用いたチャットのテストをすることができました

ファイルをローカルから直接アップロードして取り込むため、大量データの利用より、特定のファイルで簡単に使いたいシーンに向いていると思います。

ただし、簡単にWebアプリを作成する機能はないので、Webアプリを作成したい場合は、別途設計・構築が必要になります。

また、File Search機能は「プレビュー」の機能です。正式リリースではないので、マイクロソフトのサポートを受けられない可能性があります。本格利用には慎重になったほうが良さそうです。

まとめ

 

ここまで検証してみて、どのような場面でOn Your Data機能とFile Search機能が適しているかを表にまとめました。

 

On Your Data機能

File Search機能

RAG機能実装の難易度

Blob Storage、Al Searchとの接続が必要でやや難易度が高い

Azure OpenAIリソースに直接ファイルアップロード可能で比較的容易

Webアプリのリリース難易度

AI Foundry画面から簡単な操作でリリース可能

Web UIの構築やAPI接続設定が別途必要

マイクロソフトサポート

あり

受けられない可能性あり

課金イメージ

・Azure OpenAI:トークン数による従量課金

・Azure AI Search(ベーシック以上):時間単位の課金

・ストレージコンテナ:GB単位の従量課金

・Azure OpenAI:

 トークン数による従量課金
 ベクターストレージ料金(1日ごとの従量課金)

サポートしているファイルの種類

On Your Dataのデータ形式とファイルの種類

On Your Data機能より多くのファイル形式をサポート

File Searchのサポートさされるファイルの種類

投入できるデータ量

Azure Blob Storageストレージの容量に応じて大量のデータを投入可能

最大10,000個のファイルを投入可能(各ファイルの最大サイズは512MB

想定される利用シーン企業の大量データを活用

小さな組織で特定のドキュメントやファイルを活用

今回、同じPDFファイルを用いて試してみた限りでは、どちらの方法も検索精度にはそこまで差分はなく、下記のように使い分けできるのではないかと考えました。

  • On Your Data機能
    組織内の大量のデータを使用したい場合に向いています。
    多少ベクトル化の難易度が高かったですが、試しにWebアプリを作ってまずは小規模で試すことも可能です。
  • File Search機能
    読み取りたい特定のファイルが決まっている場合に向いています。また、自分ではアプリの構築はできないが、ひとまず手元にある資料で検索精度を手軽に試してみたいという方にも向いていると思います。

今後の利用の参考になりますと幸いです。

 

 

関連サービス

Microsoft Azureは、Microsoftが提供するパブリッククラウドプラットフォームです。コンピューティングからデータ保存、アプリケーションなどのリソースを、必要な時に必要な量だけ従量課金で利用することができます。

おすすめの記事

条件に該当するページがございません