🎃

【Microsoft Foundry】- FoundryIQでIndexerはどう変わったのか?

に公開

執筆日

2025/1/5

気になったこと

Foundry IQのアーキテクチャを勉強していました。
検索実行フローは理解できました。

https://zenn.dev/headwaters/articles/d6e0c76179c918

ただ、Knowledge Base(Index)を作成する際の仕組みは調べても記事がほとんどなくよくわからない..実際に手を動かしながら理解していこうかなと。

Foundry IQのデータタイプ

データタイプには、Index/Remoteの2つあります。

Remote

Remoteカテゴリのデータソースは、Azure側に内容を保持せずクエリ時に外部システムへ問い合わせる方式です。Foundry IQのナレッジベースでは「リモートナレッジソース」として設定され、質問が来るたびに対応するAPIや検索エンドポイントを呼び出して情報を取得します。

https://learn.microsoft.com/ja-jp/azure/search/agentic-knowledge-source-how-to-sharepoint-remote?pivots=python

Index

Indexカテゴリのデータソースは、あらかじめAzure AI Searchのインデックス(ベクター索引+テキスト索引)にコンテンツを取り込み、検索可能にしたものです。Microsoft FoundryのFoundry IQはAzure AI Searchを基盤として構築されており、ファイルやドキュメントを事前にインデックス化することで、高速かつ高度な検索(ベクター類似検索やハイブリッド検索)を可能にします。
データの取り込み→Index化まで自動で実行してくれます。この仕組みを知りたい!!

結論

Foundry IQのKnowlede Base(Index)構築においてAzure Content Understandingを活用している。

Azure Content Understandingとは?

Content Understandingは生成AIの技術を用いて、様々な非構造化コンテンツ(ドキュメント、画像、音声、動画など)を解析・理解し、構造化されたデータへと変換するサービスです。
ユーザーが定義した出力スキーマに従い、大量の非構造化データから意味のある情報を抽出・整理することができます。
https://learn.microsoft.com/en-us/azure/ai-services/content-understanding/overview

Azure Content Understandingを有効にするには?

Azure Portal

現在、Azure PortalからはAzureContent UnderstaningのAnalyzerとの接続の有無の選択はできません。実際に検証した感じでは、有効になっているのかな?と思います。

Code

ナレッジソースの設定パラメータContentExtractionModeをstandardに切り替えることで、Azure Content Understandingによる高度なドキュメントクラッキング(解析)とチャンク分割が行われるようになります。

https://learn.microsoft.com/ja-jp/azure/search/agentic-knowledge-source-how-to-blob?pivots=python

ヘッドウォータース

Discussion