Azure AI AgentとAzure AI Searchを連携させたRAG検索の実装ガイド Part1

はじめに
MS開発部の松坂です。
Azure AI FoundryとAzure AI Searchを組み合わせることで、従来の検索技術を超えた高度な情報検索システムを構築できます。Azure AI Foundryは、複数のAIモデルやサービスを一元管理し、効率的な開発プロセスを提供するプラットフォームです。一方、Azure AI Searchは、テキストや画像などの多様なデータに対応し、生成AIと連携して柔軟な検索機能を実現します。
これらを統合することで、以下のような利点が得られます:
-
Retrieval-Augmented Generation (以降略称で「RAG検索」と表記します)による正確で関連性の高い情報取得
-
膨大なデータのインデックス化と効率的な検索
-
生成AIを活用した回答生成による業務プロセスの革新
本ブログでは、この2つのサービスを連携させてRAG検索システムを構築する手順を解説します。第1部では、Azure AI Foundryでモデルをデプロイし、Azure AI Searchでインデクサーを作成し、それらを紐づける具体的な方法をご紹介します。
また、本ブログでは各リソースの生成をAzure portalから行う方法について説明いたします。Azure AI Foundryページから直接操作する簡易的な方法もございますので、その場合は公式サイトをご確認ください Use the chat playground in Azure AI Foundry portal – Azure AI Foundry | Microsoft LearnAzure AI Foundryでのモデルデプロイ
リソース作成
まず、Azure AI Foundryのリソースを作成します。
-
Azure portalにアクセスし、「リソースの作成」を選択します。
-
検索バーで「Azure AI Foundry」と入力し、表示されたサービスの「作成」を選択します。
-
Azure AI ハブの作成画面に遷移しますので、各項目に任意の値を設定しAzure AI ハブの作成を行ってください。
- デプロイが完了しましたら、「リソースに移動」を選択し、Azure AI ハブのリソース画面に遷移します。
-
ハブのページから「Create project」を選択してAzure AI Projectの作成を行ってください。
- Azure AI Projectの作成画面では、各項目に任意の値を設定しAzure AI Projectを作成してください。なおHubの項目は先ほど作成したHubを設定してください。
-
デプロイが成功したら、「作成」をクリックしてデプロイを開始します。
モデルのデプロイ
Azure AI Projectのリソースが作成されたら、以下の手順でモデルをデプロイします:
-
Azure PortalにてAzure AI Projectのリソースを開き、Launch studioボタンを選択してAzure AI Foundryを開きます。
- Azure AI Foundryにて作成したプロジェクトの概要画面に遷移したら、左メニューの「マイアセット」→「モデル+エンドポイント」を選択します。
-
「モデルのデプロイ」→「基本モデルをデプロイする」を選択してデプロイしたいモデル(例:GPT-4)をデプロイします。
- 3と同様の作業を行い、ベクトル化するためのモデル(例:text-embedding-ada-002)をデプロイします。
Azure AI Searchでのインデクサー作成
リソース作成
Azure AI Searchのリソースを作成します:
-
Azure portalで「リソースの作成」を選択し、「AI Search」を検索します。表示されたサービスの「作成」を押下して作成画面に遷移します。
-
Azure AI Search作成画面にて各項目に任意の値を設定しますが、以下内容は注意してください。 ・価格レベル「Standard」以上(Azure AI Agentは紐づけたAzure AI Searchのインデクサーにセマンティック検索を行うため)
-
各項目を設定したら作成を行ってください。
インデクサーの作成
インデクサーを作成して、データソースからコンテンツをインデックス化します。
本ブログでは、「データインポートとベクター化の実施」からインデクサーの作成を行います。- 作成したAzure AI Searchのリソースページより、左メニューにあるセマンティックランカーを選択します。
セマンティックランカーページにて任意のプランを選択してください(Freeでも問題ないです。)
-
Azure AI Searchリソースの「概要」画面で「データのインポートとベクター化」を押下します。
-
データソース(例:Azure Blob Storage)を選択し、接続情報を入力します。
-
ベクトル化をするため先ほど作成したモデルを選択し、「Azure OpenAI サービスに~」のチェックを入れて「次へ」ボタンを押下します。
-
画像をベクトル化してエンリッチする項目は特に設定しないで次へを押下します。
- 詳細設定にて「セマンティックランカーを有効にする」にチェック入れ、「次へ」を押下します。
- 問題なければそのまま「作成」を押下してください
Azure AI FoundryのHubでの紐づけ
Azure AI FoundryのHubを使用して、Azure AI SearchとAI Agentを紐づけます。
-
Azure portalにてAzure AI ハブのリソースを開き、Launch Azure AI Foundryを選択してAzure AI Foundryを開きます。
-
左メニューにある「Connected Resources」を選択し、「新しい接続」をクリックし、Azure AI Searchを選択します。
-
先ほど作成したAzure AI Searchリソースがあることを確認し、「接続を追加する」を押下します
-
接続リストに設定されていることを確認したら完了です。
まとめ
以上で、Azure AI FoundryでのモデルデプロイとAzure AI Searchでのインデクサー作成、そしてそれらの紐づけが完了しました。これにより、RAG検索システムの基盤が整いました。次回のPart 2では、この基盤を活用したPythonコードの作成と実際の検索結果の解析を行います。
以上、最後までご愛読いただき
ありがとうございました。
お問い合わせは、
以下のフォームへご連絡ください。