マルチモーダル検索とは、テキスト、画像、ビデオ、オーディオなど、複数のコンテンツ タイプ間で情報を取り込み、理解し、取得する機能を指します。 Azure AI Search では、マルチモーダル検索では、テキストと画像を含むドキュメントの取り込みとコンテンツの取得がネイティブにサポートされるため、両方のモダリティを組み合わせた検索を実行できます。
堅牢なマルチモーダル パイプラインの構築には、通常、次の作業が含まれます。
ドキュメントからインライン画像とページ テキストを抽出する。
自然言語での画像の記述。
テキストと画像の両方を共有ベクター空間に埋め込みます。
後で注釈として使用するためにイメージを格納する。
マルチモーダル検索では、ドキュメントに表示される情報の順序を保持し、フルテキスト検索とベクター検索とセマンティック ランク付けを組み合わせたハイブリッド クエリを実行する必要もあります。
実際には、マルチモーダル検索を使用するアプリケーションでは、プロセスの唯一の権限のある説明が PDF ファイル内の埋め込み図内に存在する場合でも、"HR フォームを承認するプロセスとは何か" のような質問に答えることができます。
マルチモーダル検索を使用する理由
従来、マルチモーダル検索では、テキストと画像処理のための個別のシステムが必要であり、多くの場合、開発者によるカスタム コードと低レベルの構成が必要です。 これらのシステムを維持すると、コスト、複雑さ、労力が増加します。
Azure AI Search では、画像をテキストと同じ取得パイプラインに統合することで、これらの課題に対処します。 1 つのマルチモーダル パイプラインを使用すると、グラフ、スクリーンショット、インフォグラフィック、スキャンされたフォーム、その他の複雑なビジュアルに存在する情報のセットアップとロック解除を簡素化できます。
マルチモーダル検索は、 取得拡張生成 (RAG) シナリオに最適です。 画像の構造ロジックを解釈することで、マルチモーダル検索を使用すると、RAG アプリケーションまたは AI エージェントが重要なビジュアルの詳細を見落とす可能性が低くなります。 また、ソースのモダリティに関係なく、元のソースまで追跡できる詳細な回答をユーザーに提供します。
Azure AI Search でのマルチモーダル検索のしくみ
マルチモーダル パイプラインの作成を簡略化するために、Azure AI Search は Azure portal で データのインポート (新しい) ウィザードを提供します。 ウィザードを使用すると、データ ソースの構成、抽出とエンリッチメントの設定の定義、テキスト、埋め込み画像参照、ベクター埋め込みを含むマルチモーダル インデックスの生成を行うことができます。 詳細については、「 クイック スタート: Azure portal でのマルチモーダル検索」を参照してください。
ウィザードでは、次の手順に従ってマルチモーダル パイプラインを作成します。
コンテンツの抽出:ドキュメント抽出スキルまたはドキュメント レイアウト スキルは、ページ テキスト、インライン画像、構造メタデータを取得します。 ドキュメント抽出スキルでは、多角形やページ番号は抽出されません。サポートされているファイルの種類は異なります。 詳細については、「 マルチモーダル コンテンツ抽出のオプション」を参照してください。
これらの組み込みスキルでは、テーブルの抽出やテーブル構造の保持はサポートされていません。 これらの機能を使用するには、Azure AI Content Understanding を呼び出すカスタム Web API スキルを構築する必要があります。
チャンク テキスト:テキスト分割スキルは、抽出されたテキストを、埋め込みスキルなどの残りのパイプラインで使用するために管理可能なチャンクに分割します。
イメージの説明を生成します。GenAI Prompt スキルは画像を言語化し、大規模言語モデル (LLM) を使用してテキスト検索と埋め込みのための簡潔な自然言語の説明を生成します。
埋め込みの生成: 埋め込みスキルは、テキストと画像のベクター表現を作成し、類似性とハイブリッド取得を可能にします。 Azure OpenAI、Azure AI Foundry、または Azure AI Vision 埋め込みモデルをネイティブに呼び出すことができます。
または、画像の言語化をスキップし、抽出されたテキストと画像を AML スキル または Azure AI Vision マルチモーダル 埋め込みスキルを介してマルチモーダル埋め込みモデルに直接渡すことができます。 詳細については、「 マルチモーダル コンテンツ埋め込みのオプション」を参照してください。
抽出されたイメージを格納します。ナレッジ ストアには、クライアント アプリケーションに直接返すことができる抽出されたイメージが含まれています。 ウィザードを使用すると、イメージの場所がマルチモーダル インデックスに直接格納されるため、クエリ時に簡単に取得できます。
Tip
マルチモーダル検索の動作を確認するには、ウィザードで作成したインデックスを マルチモーダル RAG サンプル アプリケーションに接続します。 このサンプルでは、RAG アプリケーションがマルチモーダル インデックスを使用し、テキスト引用と関連する画像スニペットの両方を応答でレンダリングする方法を示します。 このサンプルでは、データ インジェストとインデックス作成のコード ベースのプロセスも紹介しています。
マルチモーダル コンテンツ抽出のオプション
マルチモーダル パイプラインは、まず、各ソース ドキュメントをテキスト、インライン イメージ、および関連するメタデータのチャンクに分割することから始まります。 この手順では、Azure AI Search には、 ドキュメント抽出スキル と ドキュメント レイアウト スキルの 2 つの組み込みスキルが用意されています。 どちらのスキルでもテキストと画像の抽出が可能ですが、レイアウトの詳細、返されたメタデータ、課金が異なります。
| Characteristic | ドキュメント抽出スキル | ドキュメント レイアウト スキル |
|---|---|---|
| テキスト位置メタデータの抽出 (ページと境界ポリゴン) | No | Yes |
| 画像の場所メタデータ抽出 (ページと境界ポリゴン) | Yes | Yes |
| ファイルの種類に基づく場所メタデータの抽出 | PDF のみ。 | Azure AI ドキュメント インテリジェンス レイアウト モデルに従ってサポートされる複数のファイルの種類。 |
| データ抽出の課金 | 画像抽出は、 Azure AI Search の価格に従って課金されます。 | ドキュメント レイアウトの価格に従って課金されます。 |
| 推奨されるシナリオ | 正確な位置や詳細なレイアウト情報が不要な迅速なプロトタイプ作成または運用パイプライン。 | クライアント アプリの正確なページ番号、ページ上の強調表示、または図オーバーレイを必要とする RAG パイプラインとエージェント ワークフロー。 |
また、カスタム スキルを使用して、マルチモーダル コンテンツ抽出のために Azure AI Search でネイティブにサポートされていない Azure AI Content Understanding を直接呼び出すこともできます。
マルチモーダル コンテンツ埋め込みのオプション
Azure AI Search では、画像からナレッジを取得するには、画像の言語化と直接埋め込みの 2 つの補完的なパスを使用できます。 違いを理解することで、コスト、待機時間、および応答品質をアプリケーションのニーズに合わせて調整できます。
画像の言語化とテキスト埋め込み
このメソッドを使用すると、 GenAI Prompt スキル はインジェスト中に LLM を呼び出して、抽出された各イメージの簡潔な自然言語の説明を作成します ("マネージャーの承認で始まる 5 ステップの HR アクセス ワークフロー" など)。説明はテキストとして格納され、周囲のドキュメント テキストと共に埋め込まれます。このテキストは、 Azure OpenAI、 Azure AI Foundry、または Azure AI Vision 埋め込みモデルを呼び出すことによってベクター化できます。
イメージは言語で表現されるようになったため、Azure AI Search では次のことができます。
図に示されているリレーションシップとエンティティを解釈します。
LLM が応答で逐語的に引用できる既製のキャプションを指定します。
グラウンド データを含む RAG アプリケーションまたは AI エージェント シナリオに関連するスニペットを返します。
追加されたセマンティック深度には、すべてのイメージに対する LLM 呼び出しとインデックス作成時間のわずかな増加が伴います。
ダイレクト マルチモーダル埋め込み
2 つ目のオプションは、ドキュメントで抽出された画像とテキストを、同じベクター空間でベクター表現を生成するマルチモーダル埋め込みモデルに渡すことです。 構成は簡単で、インデックス作成時に LLM は必要ありません。 直接埋め込みは、視覚的な類似性や「これに似たものを見つけてください」といったシナリオに適しています。
表現は純粋に数学的であるため、2 つの画像が関連する理由は伝えられません。また、引用や詳細な説明のための LLM 対応コンテキストは提供されません。
両方のアプローチを組み合わせる
多くのソリューションでは、両方のエンコード パスが必要です。 図、フローチャート、およびその他の説明に富んだビジュアルが言語化され、意味情報が RAG および AI エージェントの接地に使用できるようになります。 スクリーンショット、製品写真、またはアートワークは、効率的な類似性検索のために直接埋め込まれています。 Azure AI Search インデックスとインデクサー スキルセット パイプラインをカスタマイズして、2 つのベクター セットを格納し、それらを並べて取得することができます。
マルチモーダル コンテンツのクエリを実行するためのオプション
マルチモーダル パイプラインに GenAI Prompt スキルが搭載されている場合は、検索インデックス内のプレーン テキストと言語化された画像の両方に対して ハイブリッド クエリ を実行できます。 フィルターを使用して、検索結果を特定のコンテンツ タイプ (テキストのみ、画像のみなど) に絞り込むこともできます。
GenAI プロンプト スキルは、ハイブリッド検索によるテキストからベクターへのクエリをサポートしますが、 イメージからベクターへのクエリはサポートしていません。 マルチモーダル埋め込みモデルのみが、クエリ時に画像をベクトルに変換するベクター化器を提供します。
マルチモーダル インデックスのクエリ入力として画像を使用するには、 AML スキル または Azure AI Vision マルチモーダル 埋め込みスキル と同等のベクター化を使用する必要があります。 詳細については、「 検索インデックスでベクターライザーを構成する」を参照してください。
チュートリアルとサンプル
Azure AI Search でのマルチモーダル検索の使用を開始するために、Azure 機能を使用してマルチモーダル インデックスを作成および最適化する方法を示すコンテンツのコレクションを次に示します。
| Content | Description |
|---|---|
| クイック スタート: Azure portal でのマルチモーダル検索 | ウィザードと Search Explorer を使用して、Azure portal でマルチモーダル インデックスを作成してテストします。 |
| チュートリアル: 生成 AI を使用して画像を言語化する | テキストと画像を抽出し、図を言語化し、結果の説明とテキストを検索可能なインデックスに埋め込みます。 |
| チュートリアル: 画像とテキストをベクター化する | 視覚テキスト モデルを使用して、テキストと画像の両方を直接埋め込み、スキャンされた PDF に対する視覚的類似性検索を有効にします。 |
| チュートリアル: 構造化されたドキュメント レイアウトから画像を言語化する | レイアウト対応のチャンクと図の言語化を適用し、場所のメタデータをキャプチャし、正確な引用とページの強調表示のためにトリミングされた画像を格納します。 |
| チュートリアル: 構造化されたドキュメント レイアウトからベクター化する | レイアウト対応チャンクと統合埋め込みを組み合わせて、正確なヒット位置を返すハイブリッド セマンティック検索とキーワード検索を行います。 |
| サンプル アプリ: マルチモーダル RAG GitHub リポジトリ | テキスト スニペットと画像注釈の両方を表示するマルチモーダル機能を備えた、エンド ツー エンドのコード対応 RAG アプリケーション。 Enterprise Copilot の早期導入に最適です。 |