Azure OpenAIのAdd your data(独自データ利用)設定手順

Azure,Cognitive Services,OpenAI

Azure OpenAIのAdd your dataの設定手順について纏めてみました。
BlobコンテナーにアップロードしたドキュメントをAdd your dataとして利用しています。

    • 事前準備
      • 関連リソース作成(Cognitive search、ストレージアカウント)
    • Add your data設定、チャットでの利用
      • データソースや検索オプション設定
      • Add your dataを使ったチャット(Azure OpenAI Studio利用)
      • Cognitive searchインデックス更新設定

※Add your dataの設定にインデクサーのスケジュール設定があります。Blobコンテナーにファイルアップロードするだけで自動的にインデックス更新してチャットで利用する事が出来ます。

スポンサーリンク

Add your dataの事前準備

Add your dataとは?

自社が保有するドキュメント等を利用してAzure OpenAIに回答させることができる機能です。
GPT-35-Turbo や GPT-4 などのサポートされているチャットモデルが利用対象になります。

独自のデータに基づく Azure OpenAI

ドキュメントはtxtファイルだけではなくWordやpdfと言った形式のファイルも対象となります。

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

Add your dataに必要なリソース

Add your dataの利用にあたってはCognitive searchやストレージアカウント(Blobコンテナー)のリソースが必要になります。

価格

Azure OpenAI自体には追加での課金が発生しませんが、Cognitive searchやストレージアカウント(Blobコンテナー)のリソースに対する課金が発生します。

Azure Cognitive Search の価格

※Cognitive searchはBasic以上が必要です。FreeではAdd your dataを利用出来ないので注意が必要です。
※2023年8月末時点の情報です。

Cognitive searchのリソース作成

公式サイトの情報を参考にCognitive searchのリソースを作成します。

ポータルで Azure Cognitive Search サービスを作成する

検証利用のため最低限必要な設定値にしています。

    • リソース名:openai-cognitive-search
    •  価格レベル:Basic
      • レプリカ:1
      • パーティション:2GB
    • ネットワーク:公開
Cognitive search リソース作成
Azure AI Servicesの左側のメニューでCognitive searchを選択します。
作成を選択します。

Cognitive searchのリソース作成画面が表示されます。
場所はAzure OpenAIのリソースと同じリージョンを選択します。

※検証目的なので価格レベルはBasicを選択しています。

スケールの設定画面です。
利用環境に応じて設定します。

※検証目的なので最低のリソースとしています。

ネットワーク設定です。
閉域網に閉じた環境にする場合はプライベートエンドポイントを利用します。

※検証目的なので公開を選択しています。
※2023年8月末時点では閉域化してAzure OpenAIから利用する場合は別途申請が必要になっています。

確認画面が表示されます。
作成を選択します。

ストレージアカウント作成

ストレージアカウント(Blobコンテナー)を作成します。
Add your dataで利用するドキュメントのアップロード先のリソースとなります。

※検証利用目的なので閉域化はしていません。また論理的削除は無効化しています。

ストレージアカウント リソース作成
ストレージアカウントを作成します。
Azure OpenAIのリソースと同じリージョンを指定します。
詳細設定はデフォルト設定のままとしています。

ネットワーク設定はパブリックアクセスを許可しています。

※検証目的なので閉域化はしていません。利用時はセキュリティや利用環境を考慮した設定とします。

データ保護設定です。
今回は検証利用なので論理的削除を無効化しています。

暗号化設定です。
Microsoft マネージドキー(MMK)を選択します。

※2023年8月末時点ではカスタムマネージドキー(CMK)はサポートされていないようです。

確認画面が表示されます。
作成を選択します。

Blobコンテナー作成

Add your dataで利用するドキュメントのアップロード先となるBlobコンテナーを作成します。

Blobコンテナー作成

ストレージアカウントの左側のメニューでコンテナーを選択します。
+コンテナーを選択し新しいBlobコンテナーのリソースを作成します。

Azure OpenAIでAdd your dataを使う

Azure OpenAIのリソース

Azure OpenAIのリソースは事前に作成済みのリソースを利用しています。
Azure OpenAIのリソース作成手順についてはこちらに纏めています。

Add your dataを設定

Azure OpenAI Studioを使ってAdd your dataの設定を進めます。

クイック スタート: 独自のデータを使用して Azure OpenAI モデルとチャットする

Cognitive Searchのインデックス名はopen-ai-indexとしています。

※事前にBlobコンテナーにAdd your dataで利用するドキュメントをアップロードしておきます。
※Data SourceはCognitive Search、Blob Storage、Upload Filesから選択できます。

 

Azure OpenAI Studioの左側のメニューでChatを選択します。
Assitant setupのでAdd your dataのタブを選択します。
+Add a data sourceを選択します。

Data Sourceの設定です。
Select data sourceはAzure Blob Storageを選択します。
事前に作成したCognitive Search、ストレージアカウント、Blob コンテナーのリソースを選択します。
Cognitive Searchに作成するIndex名を設定します。
Indexer scheduleでインデックスの更新頻度を設定します。

※今回はベクター検索のチェックは入れてません。
※インデックスの更新頻度はBlobコンテナーにファイルアップロードされているかを確認する頻度になります。

データ管理の設定画面です。
検索のオプションを設定します。

公式サイトの情報を参照して検索オプションを選択します。

[検索のオプション]

※今回は利用料金の都合上、キーワード検索を選択しています。

確認画面です。
Save and closeを選択し設定を完了します。

インデックス作成等の処理が完了するのを待ちます。

※ブラウザは開いたままとします。

完了するとインデックス名が表示されます。

インデックスを確認

Cognitive Searchでインデックスが作成されているかを確認します。

インデックス確認
Cognitive Searchの左側のメニューでインデックスを選択します。
インデックスが作成されている事が確認出来ます。

Add your dataを使ってチャット

事前にCactiのインストールマニュアルを読み込ませています。
Azure OpenAI Studio利用して確認します。

Limit responses to your dataのチェック有無についてはこちらを参照願います。

独自のデータに応答を制限する

Add your data確認

Cactiのインストール手順について教えて下さいと質問します。
読み込ませた手順の内容が回答されています。
リファレンスとして読み込ませた手順書が表示されています。

※手順書内でパスワード欄に適当な文字列を記入していたのですが、その設定が回答されています。

インデックスの自動更新確認

新規にBlobコンテナーにファイルをアップロードしてインデックス更新状況を確認します。

自動更新確認
Cognitive Searchの左側のメニューでインデクサーを選択します。

インデクサーを選択すると実行結果が表示されます。
成功したドキュメントを見ると更新されている事が確認出来ます。

※13:28に成功したドキュメントが表示されています。

※インデックス更新後にChatで確認しています。リファレンスに追加したドキュメントが表示されるを確認しています。

インデクサーの実行スケジュール設定

インデクサーの実行スケジュールは設定可能です。

height: 10px;

実行スケジュール設定
設定タブを選択します。
スケジュール設定の項目があります。
拡張子などの設定もあります。

最後に

Azure OpenAIのAdd your dataについて設定手順から利用方法までの一通りの流れについて確認してみました。
難しい設定は必要なくとても簡単に利用できました。
またBlobコンテナーにファイルをアップロードするだけでインデックスが自動更新されるのも便利でした。
リファレンスのドキュメントも表示されるので、様々な用途で利用も出来そうです。

Azure OpenAI関連について今後も引き続き色々試してみたいと思います。

Azure OpenAIをロジックアプリ(Logic Apps)で利用する方法についてはこちら。

Cognitive ServicesのTranslator(テキスト翻訳)についてもLogic Appsで利用する場合を例にこちらで纏めています。

スポンサーリンク