Foundry、Azure AI Search、Cosmos... ノート

Foundry、Azure AI Search、Cosmos DB を使用し、Docker でコンテナ化、Grafana で監視する、グラウンデッド検索エージェントの構築

「検索」だけではもう十分ではない理由プレーンなRAGパイプライン — クエリを埋め込み、ベクトルインデックスにヒットさせ、上位k個のチャンクをプロンプトに詰め込む — は、単一ターンのFAQボットには問題なく機能します。しかし、以下のような状況になると破綻します。マルチターンの記憶(「前四半期はどうでしたか?」という質問は、「前四半期」が何を指すかを知る必要がある) 検索するかどうかの判断(質問によっては、ドキュメント検索ではなく構造化されたルックアップが必要な場合がある) 呼び出し元が検証できる引用この記事では、小規模ながらも完全なグラウンデッド検索エージェントを構築します。Azure OpenAI(Microsoft Foundry経由)は、検索ツールと構造化データツールのどちらを呼び出すかを決定し、Azure AI Searchは非構造化ドキュメントの検索とセマンティックランキングを処理し、Azure Cosmos DBは会話状態と構造化された注文/顧客メタデータを格納します。このエージェントは、OpenAIの関数呼び出しを使用して2つのデータソース間のルーティングを行い、常に引用を返します。