Azure AI 検索 での AI エンリッチメントのヒント

注意

Azure AI 検索は、Azure ポータル、REST API、およびAzure SDKから使用できます。 また、Foundry IQ は、エンタープライズ コンテンツを、Microsoft Foundry ポータルのエージェントの再利用可能なアクセス許可に対応したナレッジ ベースに変換するマネージド ナレッジ レイヤーです。

この記事では、インデックス作成中に使用される AI エンリッチメントとスキルセットの使用を開始するのに役立つヒントを提供します。

ヒント 1: シンプルに始め、小さく始める

Azure portal の データのインポート ウィザード では、AI エンリッチメントがサポートされています。 コードを書かずに、エンリッチメント パイプラインで使われるすべてのオブジェクト (インデックス、インデクサー、データ ソース、スキルセット) を作成して調べることができます。

単に始めるもう 1 つの方法は、インデックスを作成するドキュメントを表すテーブルに少数のドキュメントまたは行を含むデータ ソースを作成することです。 小さなデータ セットは、問題の検出と修正の速度を上げる最良の方法です。 エンドツーエンドのパイプラインを使用してサンプルを実行し、結果がニーズを満たしていることを確認します。 結果に満足したら、データ ソースにさらにファイルを追加する準備が整います。

ヒント 2: いくつかのエラーがある場合でも何が動作しているかを確認する

場合によっては、小さなエラーによって直ちにインデクサーが停止されることがあります。 問題を 1 つずつ修正する予定がある場合は、この条件は問題ありません。 ただし、特定の種類のエラーは無視して、インデクサーが処理を続行できるようにし、どのフローが実際に機能しているかを確認したい場合もあります。

開発中のエラーを無視するには、 maxFailedItems と maxFailedItemsPerBatch をインデクサー定義の一部として -1 に設定します。

{
  "parameters": {
    "maxFailedItems": -1,
    "maxFailedItemsPerBatch": -1
  }
}

注意

ベスト プラクティスとして、運用ワークロードの maxFailedItems と maxFailedItemsPerBatch を 0 に設定します。

ヒント 3: デバッグ セッションを使用して問題をトラブルシューティングする

デバッグ セッションは、スキルセットの依存関係グラフ、入出力、定義を表示するビジュアル エディターです。 現在のインデクサーとスキルセットの構成を使用して、インデクサー データ ソースから 1 つのソース ドキュメントを読み込みます。 その後、そのドキュメントにスコープを設定して、スキルセット全体を実行できます。 デバッグ セッション内でエラーを特定して解決し、変更を検証し、親スキルセットに変更をコミットできます。 チュートリアルについては、デバッグ セッションに関するチュートリアルを参照してください。

ヒント 4: 予期されるコンテンツが表示されない

コンテンツが見つからない場合は、Azure ポータルで削除されたドキュメントを確認します。 検索サービス ページでイン デクサーを開き、インデクサーを選択し、実行の 状態 値を選択して実行の詳細とエラーを表示します。

問題がファイル サイズに関連している場合は、"BLOB <file-name>" のサイズが <file-size> バイトで、現在のサービス レベルのドキュメント抽出の最大サイズを超えているというエラーが表示されることがあります。インデクサーの制限の詳細については、「 サービスの制限」を参照してください。

コンテンツが表示されない 2 つ目の理由は、入力/出力マッピング エラーに関連している可能性があります。 たとえば、出力ターゲットの名前が "People" で、インデックス フィールド名が小文字の "people" である場合です。 パイプライン全体に対して 201 件の成功メッセージが返されるため、実際にはフィールドが空の場合、インデックス作成が成功したと考えます。

ヒント 5: 最大実行時間を超えて処理を拡張する

画像解析は単純な場合でも計算が集中するため、画像が特に大きかったり複雑だったりする場合、処理時間が最大許容時間を超えることがあります。

スキルセットを持つインデクサーの場合、スキルセットの実行はほとんどのレベルで 2 時間に制限されています。 その期間内にスキルセットの処理が完了しない場合は、インデクサーを 5 分ごとに実行するようにスケジュールし、最後の既知の正常なドキュメントから処理を再開できるようにします。

スケジュール済みのインデックス作成が正常と判断された最後のドキュメントから再開されます。 定期的なスケジュールの場合、インデクサーは数時間または数日にわたって、未処理の画像がすべて処理されるまで、画像のバックログに対する作業を続けることができます。 スケジュールの構文の詳細については、インデクサーのスケジュール設定に関するページを参照してください。

注意

スケジュールされたインデクサーが同じドキュメントに対して繰り返し失敗する場合、サービスは進展があるまで実行頻度を下げます(最大で24時間に1回まで)。 基になる問題を修正した後、必要に応じてインデクサーを実行します。 進行すると、インデクサーは構成された間隔に戻ります。 インデクサーが正常に実行された後に構成されたスケジュールに戻らない場合は、「 スケジュールの動作に関する FAQ」を参照してください。

ヒント 6: インデックス作成のスループットを向上させる

並列インデックス作成の場合は、データを複数のコンテナーまたは同じコンテナー内の複数の仮想フォルダーに分散します。 次に、複数のデータ ソースとインデクサーのペアを作成します。 すべてのインデクサーは、同じスキルセットを使用して同じターゲット検索インデックスに書き込むことができるため、検索アプリはこのパーティション分割を意識する必要はありません。

関連項目