検索コンポーネントの概要

完了

AI 検索ソリューションは複数のコンポーネントから構成され、それぞれがデータの抽出、エンリッチ、インデックス作成、検索のプロセスにおいて重要な役割を果たします。

データ ソース

A diagram showing a conceptual illustration of a data source.

ほとんどの検索ソリューションは、検索するデータが含まれる "データ ソース" から開始します。 Azure AI 検索では、以下を含む複数の種類のデータ ソースがサポートされています。

  • Azure BLOB ストレージ コンテナー内の非構造化ファイル。
  • Azure SQL Database 内のテーブル。
  • Cosmos DB 内のドキュメント。

Azure AI 検索はインデックス作成のために、これらのソースからデータをプルできます。

または、アプリケーションから、JSON データを直接インデックスにプッシュすることができ、既存のデータ ストアから取得する必要はありません。

スキルセット

A diagram a conceptual illustration of a skillset.

基本的な検索ソリューションでは、データ ソースから抽出されたデータのインデックスを作成することがあります。 抽出できる情報は、データ ソースによって異なります。 たとえば、データベース内のデータのインデックスを作成する場合、データベース テーブル内のフィールドを抽出できます。また、一連のドキュメントのインデックスを作成する場合、ファイル名、変更日、サイズ、作成者などのファイル メタデータをドキュメントのテキスト コンテンツと共に抽出できます。

データ ソースから直接抽出されたデータ値のインデックスを作成する基本的な検索ソリューションで十分役立つ場合もありますが、最近のアプリケーション ユーザーの期待により、データのよりリッチな分析情報に対するニーズが高まっています。 Azure AI 検索では、インデックス作成プロセスの一環として人工知能 (AI) "スキル" を適用して、インデックス フィールドにマップできる新しい情報でソース データをエンリッチできます。 インデクサーによって使用されるスキルは、各ステップで特定の AI スキルによって取得された分析情報を使用してソース データを拡張するエンリッチメント パイプラインを定義する "スキルセット" にカプセル化されます。 AI スキルによって抽出できる情報の種類の例を次に示します。

  • ドキュメントの記述言語。
  • ドキュメントに記載されている主なテーマまたはトピックを特定するのに役立つ可能性のあるキー フレーズ。
  • ドキュメントがどれほど肯定的または否定的であるかを定量化するセンチメント スコア。
  • コンテンツに記載されている特定の場所、人、組織、またはランドマーク。
  • AI によって生成された画像の説明、または光学式文字認識によって抽出された画像テキスト。
  • 特定の要件を満たすために開発したカスタム スキル。

Indexer

A diagram showing a conceputal illustration of an indexer.

"インデクサー" は、インデックス作成プロセス全体を駆動するエンジンです。 スキルセットのスキルを使用して抽出された出力と、元のデータ ソースから抽出されたデータおよびメタデータ値を取得し、それらをインデックスのフィールドにマップします。

インデクサーは、作成時に自動的に実行され、定期的に実行されるようにスケジュールすることも、必要に応じて実行してインデックスにドキュメントを追加することもできます。 新しいフィールドをインデックスに追加するときやスキルセットに新しいスキルを追加するときなど、場合によっては、インデクサーを再実行する前にインデックスをリセットしなければならないことがあります。

Index

A diagram showing a conceputal illustration of an index.

インデックスは、インデックス作成プロセスの検索可能な結果です。 JSON ドキュメントのコレクションで構成され、インデックス作成中に抽出された値が含まれるフィールドがあります。 クライアント アプリケーションから、インデックスに対してクエリを実行して、情報の取得、フィルター処理、および並べ替えを行うことができます。

各インデックス フィールドは、次の属性を使用して構成できます。

  • key: インデックス レコードの一意のキーを定義するフィールド。
  • searchable: フルテキスト検索を使用してクエリを実行できるフィールド。
  • filterable: 指定された制約に一致するドキュメントのみを返すためにフィルター式に含めることができるフィールド。
  • sortable: 結果の並べ替えに使用できるフィールド。
  • facetable: "ファセット" (既知のフィールド値の一覧に基づいて結果をフィルター処理するために使用されるユーザー インターフェイス要素) の値を決定するために使用できるフィールド。
  • retrievable: 検索結果に含めることができるフィールド ("既定では、この属性が明示的に削除されていない限り、すべてのフィールドが取得可能です")。