次の方法で共有


Azure AI Search とは

Azure AI Search は、異種コンテンツのインデックスを作成し、API、アプリケーション、AI エージェントを使用した取得を可能にするスケーラブルな検索インフラストラクチャです。 このプラットフォームは、Azure の AI スタック (OpenAI、AI Foundry、Machine Learning) とのネイティブ統合を提供し、サードパーティとオープンソースのモデル統合のための拡張可能なアーキテクチャをサポートします。

このサービスは、会話型 AI アプリケーションの従来の検索ワークロードと最新の RAG (検索拡張生成) パターンの両方を処理します。 これにより、エンタープライズ検索シナリオだけでなく、チャット完了モデルによる動的なコンテンツ生成を必要とする AI を利用したカスタマー エクスペリエンスにも適しています。

検索サービスを作成するときは、次の機能を使用します。

  • エージェント検索ベクター検索フルテキスト検索、マルチモーダル検索またはハイブリッド検索用の検索エンジン。
  • 構造と変換を追加できるインデックス作成中のコンテンツ処理。
  • エージェント、ベクター、テキスト、ハイブリッド、マルチモーダル クエリの広範なクエリ構文。
  • セマンティック ランク付け、スコアリング プロファイル、およびパラメーター化されたクエリによるスマートな結果。
  • Azure のスケール、セキュリティ、リーチ。
  • データ層、機械学習レイヤー、Azure AI サービス、Azure OpenAI での Azure 統合。

アーキテクチャ上、検索サービスは、インデックスが設定されていないデータを含む外部データ ストアと、検索インデックスにクエリ要求を送信して応答を処理するクライアント アプリとの間に配置されます。

Azure AI 検索のアーキテクチャ

インデックス作成側では、コンテンツが Azure 上にある場合は、自動および AI でエンリッチされたインデックス作成にインデクサーとスキルセットを使用できます。 または、サポートされているデータ ソースのより広範なセットに対して同等の自動化を行うロジック アプリ ワークフローを作成します。

取得側では、アプリは、エージェントまたはツール、ボット、または検索インデックスまたはナレッジ エージェントに要求を送信する任意のクライアントにすることができます。

Azure AI Search では、インデックス作成とクエリ エンジンは読み取り/書き込みモードと読み取り専用モードで動作するのと同じコンポーネントですが、実行される作業の種類を示すために、この図で分割します。

検索サービスの内部

検索サービス自体は、"インデックスの作成" と "クエリの実行" の 2 つが主なワークロードとなります。

  • インデックス作成は、取り込みのプロセスです。コンテンツを検索サービスに読み込んで検索可能にします。 内部では、受信テキストはトークンに処理され、反転インデックスに保存され、受信ベクトルはベクトル インデックスに保存されます。 Azure AI Search でインデックスを付けられるドキュメント形式は JSON です。 JSON ドキュメントをアップロードするか、インデクサーまたはロジック アプリ ワークフローを使用してデータを取得して JSON にシリアル化することができます。

    AI エンリッチメント は、画像モデルと言語モデルを使用してインデックス作成を拡張する スキルセット を通じて行われます。 ソース ドキュメントに画像や大きな非構造化テキストがある場合は、コンテンツをチャンクしてベクター化するスキルをアタッチできます。 画像コンテンツがある場合は、LLM を使用してコンテンツの要約、説明の生成、OCR と画像分析の実行を行うことができます。 また、スキルは構造の推論、テキストの翻訳などを行うこともできます。 出力は、JSON にシリアル化して検索インデックスに取り込むことができるテキストまたはベクターです。

  • クエリの実行は、検索可能なテキストがインデックスに取り込まれると、クライアント アプリが検索サービスにクエリ要求を送信して応答を処理するときに発生することがあります。 すべてのクエリは、ユーザーが制御する検索インデックスを介して実行されます。 コードで、 エージェント クエリベクター クエリ、 テキスト検索ハイブリッド クエリ、あいまい検索、オートコンプリート、geo 検索などのクエリ要求を処理するように検索クライアントを設定します。

Azure AI Search は、インデックス作成とクエリのワークロードを専用の検索サービスにオフロードします。 これは、次のアプリケーション シナリオに適しています。

  • これを使用して、コンテンツに基づくデータを基にエージェントとボットを強化します。

  • 従来のフルテキスト検索や次世代型のベクトル類似性検索に使用できます。 キーワード検索と類似性検索の両方の強みを活用した情報取得で生成 AI アプリを支援します。 両方のモダリティを使用して、最も関連性の高い結果を取得します。

  • 異種コンテンツを、ベクトルとテキストで構成されるユーザーが定義および設定した検索インデックスに統合します。 検索可能なコンテンツの所有権とコントロールを保持します。

  • Azure Blob Storage や Azure Cosmos DB に格納されている未区分の大きなテキスト ファイル、画像ファイル、またはアプリケーション ファイルを検索可能なチャンクに変換。 これは、Azure AI から外部処理を追加する AI スキルを使ってインデックスを作成するときに行われます。

  • 生成 AI および RAG アプリ用にデータ チャンクとベクトル化を統合する。

  • キーワード検索用の言語またはカスタム テキスト分析を追加します。 英語以外のコンテンツがある場合、Azure AI Search では Lucene アナライザーと Microsoft の自然言語プロセッサの両方がサポートされます。 また、生コンテンツの特殊な処理 (分音記号のフィルター処理や、文字列内のパターンの認識と保持など) を実行するようにアナライザーを構成することもできます。

  • 関連性のチューニング、ファセット ナビゲーション、フィルター (地理空間検索)、同意語マッピング、オートコンプリートなど、検索に関連した機能を容易に実装。

  • ドキュメント レベルで細分性の高いアクセス制御を適用します。

特定の機能の詳細については、「Azure AI Search の機能」を参照してください。

ファースト ステップ

機能は、Azure portal、シンプルな REST API、または Azure SDK for .NET などの Azure SDK を使用して公開されます。 Azure portal は、インデックスとスキルセットのプロトタイプ作成やクエリを実行するためのツールによるサービスの管理とコンテンツの管理をサポートしています。

Azure ポータルの使用

次の 4 つのステップにより、主要な検索機能をエンド ツー エンドで試すことができます。

  1. レベルとリージョンを決定します。 サブスクリプションごとに 1 つだけ無料 Search サービスが許可されます。 ほとんどのクイック スタートは、Free レベルで完了できます。 容量と機能を増やすには、 課金対象レベルが必要です。

  2. Azure portal ポータルで Search サービスを作成します。

  3. [データのインポート] ウィザードから開始します。 組み込みのサンプルまたはサポートされているデータ ソースを選ぶと、インデックスの作成、ロード、クエリを数分で実行できます。

  4. ポータル クライアントを使って作成した検索インデックスのクエリを実行して、Search エクスプローラーで終了します。

サンプルを確認する

REST API と Azure AI Search でサポートされている Azure SDK プログラミング言語を使用するサンプルのインベントリを保持します。

API の利用

また、検索インデックスの作成、読み込み、クエリをアトミックな手順で行うこともできます。

  1. Azure portal、REST API.NET SDK、または他の SDK を使って、検索インデックスを作成します。 検索可能なコンテンツの構造は、インデックス スキーマによって定義されます。

  2. "プッシュ" モデルを使用して任意のソースから JSON ドキュメントをプッシュしてコンテンツをアップロードします。または、ソース データがサポートされる型である場合は "プル" モデル (インデクサー) を使用します。

  3. Azure portal の検索エクスプローラーREST API.NET SDK、または他の SDK を使って、インデックスのクエリを実行します。

アクセラレータを使用する

または、ソリューション アクセラレータを試してみてください。

ヒント

複雑なソリューションやカスタム ソリューションについては、Azure AI Search テクノロジにおける深い専門知識を持つパートナーにお問い合わせください