注
現在、この機能はパブリック プレビュー段階にあります。 このプレビュー版はサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳細については、「 Microsoft Azure プレビューの追加使用条件」を参照してください。
ナレッジ ソースは、エージェントによる情報取得に使用されるコンテンツを指定します。 外部データソースによって構築される検索インデックスをカプセル化するか、BingやSharePointなどのリモートソースに直接接続し、それらに直接問い合わせるかのいずれかです。 ナレッジ ソースは、ナレッジ ベースで必要な定義です。
検索サービスで最上位レベルのリソースとしてナレッジ ソースを作成します。 各ナレッジ ソースは、 エージェント検索の条件を満たす 検索インデックスまたはサポートされている外部リソースのいずれか、正確に 1 つのデータ構造を指します。
ナレッジ ベース内の 1 つ以上のナレッジ ソースを参照します。 エージェント検索パイプラインでは、1 つの要求で複数のナレッジ ソースに対してクエリを実行できます。 サブクエリは、ナレッジ ソースごとに生成されます。 上位の結果が取得応答で返されます。
特定のナレッジ ソースでは、ナレッジ ソース定義を使用して、エージェントによる情報検索に役立つ完全なインデクサー パイプライン(データ ソース、スキルセット、インデクサー、インデックス)を生成できます。 知識ソース内の情報は、複数のオブジェクトを手動で作成する代わりに、データを充填し、分割し、検索可能な状態にしたインデックスを含むすべてのオブジェクトを生成するために利用されます。
ナレッジ ベースを作成する前に、少なくとも 1 つのナレッジ ソースがあることを確認します。 ナレッジ ソースとナレッジ ベースの完全な仕様については、 プレビュー REST API リファレンスを参照してください。
ナレッジソースを活用する
作成パス: 最初にナレッジ ソースを作成してから、ナレッジ ベースを作成します。
削除パス: ナレッジ ベースを更新または削除してナレッジ ソースへの参照を削除し、ナレッジ ソースを最後に削除します。
ナレッジ ソース、そのインデックス、ナレッジ ベースはすべて、同じ検索サービス上に存在する必要があります。 外部コンテンツは、パブリック インターネット (Bing) または Microsoft テナント (リモート SharePoint) を介してアクセスされます。
サポートされるナレッジ ソース
このプレビューで作成できるナレッジ ソースを次に示します。
| サブタイプ | インデックス付きまたはリモート |
|---|---|
"searchIndex" API は 既存のインデックスをラップします。 |
インデックス付き |
"azureBlob" API は、BLOB コンテナーからプルするインデクサー パイプラインを生成します。 |
インデックス付き |
"indexedOneLake" API は、レイクハウスからデータをプルするインデクサーパイプラインを生成します。 |
インデックス付き |
"indexedSharePoint" API は、SharePoint サイトからプルするインデクサー パイプラインを生成します。 |
インデックス付き |
"remoteSharePoint" API は、SharePoint から直接コンテンツを取得します。 |
Remote |
"webParameters" API は、Microsoft Bingからリアルタイムのグラウンド データを取得します。 |
Remote |
インデックス付きナレッジ ソースは Azure AI Search のターゲット インデックスを指し、クエリ実行は検索サービスの検索エンジンに対してローカルです。 キーワード (フルテキスト検索)、ベクター、およびハイブリッド クエリ機能は、インデックス付きナレッジ ソースからデータを取得するために使用されます。
リモートナレッジソースはクエリ時にアクセスされます。 エージェント検索エンジンは、プラットフォーム (Bing または SharePoint API) にネイティブな取得 API を呼び出します。
取得されたすべてのコンテンツは、インデックス付きでもリモートでも、Azure AI Search のランク付けパイプラインに取り込まれます。このパイプラインでは、関連性のスコア付け、マージ (複数のクエリを想定)、再ランク付け、取得応答で返されます。
ナレッジ ソースの作成
ナレッジ ソースはスタンドアロン オブジェクトとして作成され、ナレッジ ベース の "knowledgeSources" 配列で指定されます。
検索サービスでオブジェクトを作成するには、 Search Service 共同作成者 のアクセス許可 が必要です。 インデクサー パイプラインを作成するナレッジ ソースを使用している場合は、インデックスを読み込むには、 インデックス データ共同作成者の検索 アクセス許可も必要です。 または、ロールの代わりに API 管理者キーを使用 することもできます。
REST API または Azure SDK プレビュー パッケージを使用して、ナレッジ ソースを作成できます。 Azure portal のサポートは、一部のナレッジ ソースで利用できます。 ナレッジ ソースを作成する手順については、次のリンクを参照してください。
- 検索インデックスナレッジベースを作成する方法 (既存のインデックスを包み込む)
- BLOB ナレッジ ソースを作成する方法 (インデクサー パイプラインを生成する)
- OneLake ナレッジ ソースを作成する方法 (インデクサー パイプラインを生成します)
- SharePoint (インデックス付き) ナレッジ ソースを作成する方法 (インデクサー パイプラインを生成します)
- SharePoint (リモート) ナレッジ ソースを作成する方法 (SharePoint に直接クエリを実行)
- Web ナレッジ ソース リソースを作成する方法 (Bingのパブリック エンドポイントに接続)
ナレッジ ソースが作成されたら、ナレッジ ベースで参照できます。
知識情報源の使用
ナレッジ ソースの使用は、ナレッジ ソース定義に alwaysQuery を設定するときなど、明示的に制御されるか、クエリの計画中に選択ロジックの対象になります。 クエリ計画は、低または中程度の 取得推論作業を使用する場合に発生します。 最小限の推論努力で、ナレッジベースに記載されているすべてのナレッジソースは、すべてのクエリの範囲内です。 低と中の場合、ナレッジ ベースと LLM はクエリ時に、最適な検索コーパスを提供する可能性が高いナレッジ ソースを決定できます。
ナレッジ ソースの選択ロジックは、次の要因に基づいています。
alwaysQueryが設定されていますか? "はい" の場合、ナレッジ ソースはすべてのクエリで常に使用されます。ナレッジ ソースの
name。インデックス付きナレッジ ソースを想定したインデックスの
description。retrievalInstructionsまたはナレッジ ベース定義で指定されたは、ナレッジ ソースを含む、または除外するガイダンスを提供します。 プロンプトに似ています。 簡潔さ、トーン、書式設定を取得命令として指定できます。outputModeナレッジ ベースでは、クエリの出力と応答の内容にも影響します。
検索理由づけを活用して LLM の使用を制御する
すべてのソリューションが LLM クエリの計画と実行の恩恵を受けるわけではありません。 単純さと速度が LLM クエリの計画とコンテキスト エンジニアリングによって提供される利点を上回る場合は、パイプラインでの LLM 処理を防ぐための最小限の推論作業を指定できます。
低および中の場合、LLM 処理のレベルは、関連性を向上させるバランスの取れたアプローチまたは最大のアプローチです。 詳細については、「取得理由の設定」を参照してください。
注
前のプレビューで attemptFastPath を使用した場合、そのアプローチは retrievalReasoningEffortminimal に設定された状態に置き換えられました。