Azure AI 検索 での自動インデックス作成に Azure Logic Apps ワークフローを使用する

注

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

Azure AI 検索 では、Azure portal の データのインポート ウィザード を使用して、コンテンツのインデックス作成とベクター化を行うロジック アプリ ワークフローを作成できます。 この機能は、インデックス作成パイプラインを生成し、検索可能なコンテンツを作成する インデクサー とデータ ソースに相当します。

ウィザードでワークフローを作成したら、他のワークフローと共に Azure Logic Apps でワークフローを管理できます。 ウィザードはバックグラウンドで、ソースからコンテンツをプル (取り込み) して、Azure AI 検索でインデックスを作成するワークフロー テンプレートに従います。 このシナリオで使用されるコネクタは事前構築済みであり、Azure Logic Appsに既に存在するため、ワークフロー テンプレートには、データ ソース、Azure AI 検索、およびインジェスト ワークフローを完了するために必要なその他の項目への接続を作成するためのコネクタの詳細が用意されています。

主な機能

Azure AI 検索 での Azure Logic Apps の統合により、次のサポートが追加されます。

  • Microsoft やその他のプロバイダーからのその他のデータ ソース
  • 統合ベクトル化
  • スケジュールまたはオンデマンドでのインデックス作成
  • 新規および既存のドキュメントの変更検出

データのインポート ウィザードの入力は次のとおりです。

  • サポートされているデータ ソース
  • サポートされているテキスト埋め込みモデル

ウィザードが完了すると、次のコンポーネントが作成されます。

コンポーネント ロケーション Description
検索インデックス Azure AI 検索 サポートされている Logic Apps コネクタのインデックス付きコンテンツが含まれています。 インデックス スキーマは、ウィザードによって作成された既定のインデックスです。 スコアリング プロファイルやセマンティック構成などの追加の要素を追加できますが、既存のフィールドを変更することはできません。 Azure AI 検索 で検索インデックスを表示、管理、アクセスします。
ロジック アプリのリソースとワークフロー Azure Logic Apps Azure Logic Appsで開始した場合と同様に、実行中のワークフローを表示したり、Azure Logic Appsでデザイナーを開いてワークフローを編集したりできます。 ワークフローは編集および拡張できますが、インデックス作成パイプラインを中断しないように注意してください。 ウィザードによって作成されたワークフローでは、 従量課金 ホスティング オプションが使用されます。
ロジック アプリ テンプレート Azure Logic Apps ワークフローごとに最大 2 つのテンプレートが作成されます。1 つはオンデマンド インデックス作成用、もう 1 つはスケジュールされたインデックス作成用のテンプレートです。 インデックス作成スケジュールは、ワークフローの [複数のドキュメントのインデックス作成 ] ステップで変更できます。

[前提条件]

  • リソースを作成するアクセス許可を持つ Azure サブスクリプションの 所有者 または 共同作成者 である必要があります。

  • Azure AI 検索。Azure データ ソースへの接続に検索サービスの ID を使用する場合は、Basic 以上の価格レベル。 それ以外の場合は、レベルの制限に従って任意のレベルを使用できます。

  • 対応する埋め込みモデルの展開を備えた Azure OpenAI ベクター化はワークフローに統合されます。 ベクターが必要ない場合は、フィールドを無視するか、別のインデックス作成戦略を試すことができます。

  • サポート対象リージョンの Azure Logic Apps API キーではなく接続で Microsoft Entra ID 認証を使用する場合は、 システム割り当てマネージド ID が必要です。

注

ロジック アプリ ワークフローは課金対象のリソースです。 詳細については、 Azure Logic Apps の価格に関するページを参照してください。

サポートされているリージョン

エンド ツー エンド機能は、データ ソース接続、ドキュメント クラッキング、ドキュメント チャンク、Azure OpenAI 埋め込みモデルのサポート、およびデータをプルするための組み込みのインデックス作成サポートを提供する次のリージョンで利用できます。 Azure Logic Apps の次のリージョンは、インデックス作成の統合の基になっている ParseDocument アクションを提供します。

  • 米国東部
  • 米国東部 2
  • 米国中南部
  • 米国西部 2
  • 米国西部 3
  • ブラジル南部
  • オーストラリア東部
  • 東アジア
  • 東南アジア
  • 北ヨーロッパ
  • スウェーデン中部
  • 英国南部

サポートされているモデル

データのインポート ウィザードのロジック アプリ パスでは、埋め込みモデルの選択がサポートされています。

エンド ツー エンドのワークフロー用に、次のいずれかの 埋め込みモデル を Azure OpenAI にデプロイします。

  • text-embedding-3-small
  • text-embedding-3-large
  • text-embedding-ada-002

サポートされているコネクタ

次のコネクタは、主に構造化データを対象とする従来のインデクサーの補完として、非構造化データのインデックス作成に役立ちます。

サポートされているアクション

ロジック アプリの統合には、次のインデックス作成アクションが含まれています。 詳細については、「 Azure Logic Apps のワークフローから Foundry Tools に接続する」を参照してください。

  • 新しいデータを確認します。

  • データを取得します。 トリガー出力からファイル URL を使用してアップロードされたドキュメントを取得する HTTP アクション。

  • ドキュメントの詳細を作成する。 さまざまな項目を連結するデータ操作アクション。

  • トークン文字列を作成します。 Compose アクションからの出力を使用してトークン文字列を生成するデータ操作アクション。

  • コンテンツ チャンクを作成します。 コンテンツ チャンクあたりの文字数またはトークンの数に基づいてトークン文字列を分割するデータ操作アクション。

  • トークン化されたデータを JSON に変換します。 トークン文字列チャンクを JSON 配列に変換するデータ操作アクション。

  • JSON 配列項目を選択する。 JSON 配列から複数の項目を選択するデータ操作アクション。

  • 埋め込みを生成する。 各 JSON 配列項目の埋め込みを作成する Azure OpenAI アクション。

  • 埋め込みとその他の情報を選択する。 埋め込みと他のドキュメント情報を選択するデータ操作アクション。

  • データのインデックスを作成する。 選択した各埋め込みに基づいてデータのインデックスを作成する Azure AI 検索 アクション。

また、次のクエリ アクションもサポートしています。

  • 入力プロンプトを待ちます。 スケジュールされた繰り返しに基づいて、または特定のイベントにそれぞれ応答して、新しいデータが到着するまでポーリングまたは待機のいずれかを行うトリガー。

  • モデルの入力システム メッセージ。 モデルをトレーニングするための入力を提供するデータ操作アクション。

  • サンプルの質問と回答を入力します。 モデルをトレーニングするためのサンプル顧客の質問と関連ロールを提供するデータ操作アクション。

  • 検索クエリの入力システム メッセージ。 モデルをトレーニングするための検索クエリ入力を提供するデータ操作アクション。

  • 検索クエリを生成します。 前の Compose アクションからの出力に基づいて、JavaScript を使用してベクター ストアの検索クエリを作成するインライン コード アクション。

  • クエリを埋め込みに変換します。 チャット完了 API に接続する Azure OpenAI アクション。チャットの会話で信頼性の高い応答が保証されます。

  • 埋め込みを取得する。 1 つのベクター埋め込みを取得する Azure OpenAI アクション。

  • ベクター データベースを検索します。 ベクター ストアで検索を実行する Azure AI 検索 アクション。

  • プロンプトを作成します。 JavaScript を使用してプロンプトを作成するインライン コード アクション。

  • チャットの完了を実行します。 チャット完了 API に接続する Azure OpenAI アクション。チャットの会話で信頼性の高い応答が保証されます。

  • 応答を返します。 要求トリガーを使用するときに呼び出し元に結果を返す要求アクション。

制限事項

  • 検索インデックスは、固定スキーマ (ドキュメント ID、コンテンツ、ベクター化されたコンテンツ) を使用して、テキスト抽出のみを使用して生成されます。 更新 が既存のフィールドに 影響しない限り、インデックスを変更できます。

  • ベクター化では、テキスト埋め込みのみがサポートされます。

  • 削除の検出はサポートされていません。 インデックスから手動で孤立したドキュメントを削除する必要があります。

  • 検索インデックス内の重複ドキュメントは、この機能に関する既知の問題です。 この問題が発生した場合は、オブジェクトの削除とやり直しを検討してください。

  • ポータル ウィザードによって作成されたロジック アプリ ワークフローでは、プライベート エンドポイントはサポートされません。 ワークフローは Consumption ホスティング オプション を使用してホストされ、その制約の対象となります。 Standard ホスティング オプションを使用するには、プログラムによるアプローチを使用してワークフローを作成します。

ロジック アプリ ワークフローを作成する

Azure AI 検索 でコンテンツのインデックスを作成するためのロジック アプリ ワークフローを作成するには、次の手順に従います。

  1. Azure portal で データのインポート ウィザードを開始します。

  2. サポートされている Azure Logic Apps コネクタを選択します。

    データのインポート ウィザードで選択したデータ ソース ページのスクリーンショット。

  3. [ データへの接続] で、検索インデックスとワークフローに使用される名前プレフィックスを指定します。 共通の名前を付けると、それらを一緒に管理するのに役立ちます。

  4. インデックス作成の頻度を指定します。 スケジュールを選択した場合は、スケジュール オプションを含むテンプレートを使用してワークフローを作成します。 インデックス作成スケジュールは、作成後にワークフローの [複数のドキュメントのインデックス 作成] ステップで変更できます。

  5. ロジック アプリ ワークフローが検索エンジンに接続し、インデックス作成プロセスを開始する認証の種類を選択します。 ワークフローは 、Azure AI 検索 API キー を使用して接続できます。または、ロジック アプリのシステム割り当てマネージド ID にアクセス許可を付与するロールの割り当てをウィザードで作成できます (存在する場合)。

  6. [次へ] を選択して次のページに進みます。

  7. テキストのベクター化で、モデルのデプロイと Azure OpenAI 接続情報を指定します。 サブスクリプションとサービス、 サポートされているテキスト埋め込みモデル、およびワークフローが Azure OpenAI への接続に使用する認証の種類を選択します。

  8. [次へ] を選択して次のページに進みます。 構成を確認します。

  9. [ 作成] を選択して処理を開始します。

    ワークフローは、AI Search サービスとは別に、Logic Apps (従量課金) でサーバーレス ワークフローとして実行されます。

  10. Azure AI 検索 の [インデックス] ページで、Azure portal で インデックス の作成を確認します。 検索エクスプローラー が最初のタブです。[ 検索 ] を選択してコンテンツを返します。

既存のオブジェクトを変更する

インデックス作成を中断することなく、検索インデックスに次の変更を加えることができます。

インデックス作成を中断することなく、ワークフローに対して次の更新を行うことができます。

  • フォルダー内のリスト ファイルを変更して、インデックス作成に送信されるドキュメントの数を変更します。
  • チャンク テキストを変更して、トークン入力を変更します。 推奨されるトークン サイズは、ほとんどのシナリオで 512 トークンです。
  • チャンク テキストを変更して、ページの重なりの長さを追加します。
  • ウィザード でスケジュールされたインデックス作成 を選択した場合は、インデックス作成の頻度を制御するように複数のドキュメントのインデックス作成ステップを変更します。

ロジック アプリ デザイナーで、インデックス作成パイプラインのワークフローと各ステップを確認します。 ワークフローでは、ドキュメント抽出、既定のドキュメント チャンク (テキスト分割スキル)、埋め込み (Azure OpenAI 埋め込みスキル)、出力フィールド マッピング、最後にインデックス作成を指定します。

ロジック アプリ デザイナーのワークフローのスクリーンショット。

テンプレートとワークフローの管理

Logic Apps インデクサーを指定すると、テンプレートとワークフローが作成されます。 テンプレートの削除を含め、作成および管理するには、ロジック アプリ デザイナーを使用します。 Azure portal 検索サービス ダッシュボードにはテンプレートやワークフロー管理は用意されておらず、現在、Azure AI 検索 API ではプログラムによるサポートはありません。