
(上の画像をクリックすると、このレッスンの動画をご覧いただけます)
エージェンティックRAG
このレッスンでは、エージェンティック・リトリーバル・オーグメンテッド・ジェネレーション(Agentic RAG)について包括的に解説します。これは、大規模言語モデル(LLM)が外部情報を取得しながら次のステップを自律的に計画するという、新たなAIパラダイムです。静的な「取得して読む」パターンとは異なり、エージェンティックRAGでは、ツールや関数の呼び出し、構造化された出力を挟みながら、LLMへの反復的な呼び出しが行われます。このシステムは結果を評価し、クエリを修正し、必要に応じて追加のツールを呼び出し、満足のいく解決策が得られるまでこのサイクルを続けます。
はじめに
このレッスンでは以下を学びます:
- エージェンティックRAGの理解: LLMが外部データソースから情報を取得しながら次のステップを自律的に計画するという、新たなAIパラダイムについて学びます。
- 反復的なメイカー・チェッカースタイルの把握: 正確性を向上させ、誤ったクエリを処理するために設計された、ツールや関数の呼び出し、構造化された出力を挟むLLMへの反復的な呼び出しのループを理解します。
- 実践的な応用の探求: 正確性が重視される環境、複雑なデータベース操作、長期的なワークフローなど、エージェンティックRAGが活躍するシナリオを特定します。
学習目標
このレッスンを終えると、以下を理解し、実践できるようになります:
- エージェンティックRAGの理解: LLMが外部データソースから情報を取得しながら次のステップを自律的に計画するという、新たなAIパラダイムについて学びます。
- 反復的なメイカー・チェッカースタイル: 正確性を向上させ、誤ったクエリを処理するために設計された、ツールや関数の呼び出し、構造化された出力を挟むLLMへの反復的な呼び出しのループを理解します。
- 推論プロセスの所有: 問題へのアプローチ方法を事前定義されたパスに頼らず、自律的に決定するシステムの能力を理解します。
- ワークフロー: エージェンティックモデルが市場動向レポートを取得し、競合データを特定し、内部の販売指標を関連付け、結果を統合し、戦略を評価するプロセスを理解します。
- 反復ループ、ツール統合、メモリ: 反復的なインタラクションパターンに依存し、ステップ間で状態とメモリを維持するシステムについて学びます。
- 失敗モードと自己修正の処理: 診断ツールの使用や人間の監視に頼ることを含む、システムの堅牢な自己修正メカニズムを探ります。
- エージェンシーの限界: ドメイン固有の自律性、インフラ依存性、ガードレールの尊重に焦点を当てたエージェンティックRAGの限界を理解します。
- 実践的なユースケースと価値: 正確性が重視される環境、複雑なデータベース操作、長期的なワークフローなど、エージェンティックRAGが活躍するシナリオを特定します。
- ガバナンス、透明性、信頼: 説明可能な推論、バイアス制御、人間の監視の重要性について学びます。
エージェンティックRAGとは?
エージェンティック・リトリーバル・オーグメンテッド・ジェネレーション(Agentic RAG)は、大規模言語モデル(LLM)が外部情報を取得しながら次のステップを自律的に計画するという、新たなAIパラダイムです。静的な「取得して読む」パターンとは異なり、エージェンティックRAGでは、ツールや関数の呼び出し、構造化された出力を挟みながら、LLMへの反復的な呼び出しが行われます。このシステムは結果を評価し、クエリを修正し、必要に応じて追加のツールを呼び出し、満足のいく解決策が得られるまでこのサイクルを続けます。この反復的な「メイカー・チェッカー」スタイルは、正確性を向上させ、誤ったクエリを処理し、高品質な結果を保証します。
システムは推論プロセスを積極的に所有し、失敗したクエリを書き直し、異なる取得方法を選択し、複数のツール(Azure AI Searchのベクター検索、SQLデータベース、カスタムAPIなど)を統合して最終的な回答を出します。エージェンティックシステムの際立った特徴は、推論プロセスを自律的に所有する能力です。従来のRAG実装では事前定義されたパスに依存しますが、エージェンティックシステムは取得した情報の質に基づいてステップの順序を自律的に決定します。
エージェンティックRAGの定義
エージェンティック・リトリーバル・オーグメンテッド・ジェネレーション(Agentic RAG)は、LLMが外部データソースから情報を取得するだけでなく、次のステップを自律的に計画するという、新たなAI開発のパラダイムです。静的な「取得して読む」パターンや慎重にスクリプト化されたプロンプトシーケンスとは異なり、エージェンティックRAGでは、ツールや関数の呼び出し、構造化された出力を挟むLLMへの反復的な呼び出しのループが含まれます。
この反復的な「メーカー・チェッカー」スタイルの操作は、正確性を向上させ、構造化データベース(NL2SQLなど)への不正なクエリを処理し、バランスの取れた高品質な結果を保証するように設計されています。システムは、綿密に設計されたプロンプトチェーンのみに依存するのではなく、推論プロセスを積極的に管理します。失敗したクエリを書き換え、異なる検索方法を選択し、Azure AI Searchのベクトル検索、SQLデータベース、カスタムAPIなどの複数のツールを統合してから、最終的な回答を決定できます。これにより、過度に複雑なオーケストレーションフレームワークが不要になります。代わりに、「LLM呼び出し → ツール使用 → LLM呼び出し → …」という比較的シンプルなループで、洗練され、根拠のある出力を生成できます。

推論プロセスの所有
システムを「エージェント的」にする際立った特徴は、推論プロセスを所有する能力です。従来のRAG実装では、多くの場合、人間がモデルのパス、つまり何をいつ取得するかを概説する思考の連鎖を事前に定義していました。
しかし、システムが真にエージェント的になると、問題へのアプローチ方法を内部的に決定します。単にスクリプトを実行するだけでなく、発見した情報の質に基づいて、一連の手順を自律的に決定します。
例えば、製品発売戦略の作成を依頼された場合、調査と意思決定のワークフロー全体を詳述するプロンプトだけに頼ることはありません。代わりに、エージェントモデルは以下を自律的に決定します。
- Bing Web Groundingを使用して最新の市場動向レポートを取得する。
- Azure AI Searchを使用して関連する競合他社データを特定する。
- Azure SQL Databaseを使用して、過去の社内販売指標を相関させる。
- Azure OpenAI Serviceを介して、調査結果を統合し、統合された戦略を策定する。
- 戦略にギャップや矛盾がないか評価し、必要に応じて再度検索を実行します。
クエリの絞り込み、ソースの選択、満足のいく結果が得られるまでの反復といったこれらのステップはすべて、モデルによって決定されます。人間が事前にスクリプト化したものではありません。
反復ループ、ツール統合、そしてメモリ

エージェントシステムは、ループ型のインタラクションパターンを採用しています。
- 最初の呼び出し: ユーザーの目標(ユーザープロンプト)がLLMに提示されます。
- ツールの呼び出し: モデルが不足している情報や曖昧な指示を識別した場合、ツールまたは検索方法(ベクターデータベースクエリ(例:プライベートデータに対するAzure AI Searchハイブリッド検索)や構造化SQL呼び出しなど)を選択して、より多くのコンテキストを収集します。
- 評価と改良: 返されたデータを確認した後、モデルは情報が十分かどうかを判断します。十分でない場合は、クエリを改良するか、別のツールを試すか、アプローチを調整します。
- 満足するまで繰り返す: このサイクルは、モデルが十分な明確さと証拠を備え、最終的な、十分に根拠のある応答を返すことができると判断するまで続けられます。
- メモリと状態: システムはステップ間で状態とメモリを維持するため、以前の試行とその結果を呼び出すことができ、反復ループを回避し、処理を進める際により情報に基づいた意思決定を行うことができます。
時間の経過とともに、理解が進化していく感覚が生まれ、人間が頻繁に介入したりプロンプトを変更したりすることなく、モデルが複雑な複数ステップのタスクをナビゲートできるようになります。
障害モードと自己修正の処理
Agentic RAG の自律性には、堅牢な自己修正メカニズムも含まれます。システムが行き詰まりに陥った場合(関連性のないドキュメントを取得したり、不正なクエリに遭遇したりした場合など)、以下の処理を実行できます。
- 反復処理と再クエリ: 価値の低い応答を返す代わりに、モデルは新しい検索戦略を試したり、データベースクエリを書き直したり、代替データセットを参照したりします。
- 診断ツールの使用: システムは、推論ステップのデバッグや取得したデータの正確性の確認を支援するために設計された追加関数を呼び出す場合があります。 Azure AI Tracing のようなツールは、堅牢な可観測性と監視を実現するために重要になります。
- 人間による監視へのフォールバック: リスクの高いシナリオや繰り返し失敗するシナリオでは、モデルが不確実性を警告し、人間の指示を求める場合があります。人間が修正フィードバックを提供すると、モデルはその教訓を今後の学習に活かすことができます。
この反復的で動的なアプローチにより、モデルは継続的に改善され、単発のシステムではなく、特定のセッション中の失敗から学習するシステムになります。

エージェンシーの境界
エージェント型RAGはタスク内で自律性を持つものの、汎用人工知能(AI)とは類似していません。その「エージェント的」な機能は、人間の開発者が提供するツール、データソース、ポリシーに限定されます。独自のツールを開発したり、設定されたドメインの境界を越えたりすることはできません。むしろ、利用可能なリソースを動的に調整することに優れています。
より高度なAI形式との主な違いは次のとおりです。
- ドメイン固有の自律性: エージェント型RAGシステムは、既知のドメイン内でユーザーが定義した目標を達成することに重点を置いており、クエリの書き換えやツールの選択といった戦略を用いて結果を改善します。
- インフラストラクチャ依存: システムの機能は、開発者が統合したツールとデータに依存します。人間の介入なしにこれらの境界を超えることはできません。
- ガードレールの尊重: 倫理ガイドライン、コンプライアンスルール、ビジネスポリシーは依然として非常に重要です。エージェントの自由は常に安全対策と監視メカニズムによって制限されます(願わくば)。
実用的なユースケースと価値
Agentic RAG は、反復的な改良と精度が求められるシナリオで真価を発揮します。
- 正確性優先環境: コンプライアンスチェック、規制分析、法務調査などにおいて、Agentic RAG モデルは事実を繰り返し検証し、複数の情報源を参照し、クエリを書き換えることで、徹底的に検証された回答を生成します。
- 複雑なデータベースインタラクション: クエリが頻繁に失敗したり調整が必要になったりする構造化データを扱う場合、システムは Azure SQL または Microsoft Fabric OneLake を使用してクエリを自律的に改良し、最終的な結果がユーザーの意図と一致するようにします。
- 拡張ワークフロー: 長時間実行されるセッションは、新しい情報が発生するにつれて進化する可能性があります。Agentic RAG は継続的に新しいデータを取り込み、問題領域について学習するにつれて戦略を変化させることができます。
ガバナンス、透明性、そして信頼
これらのシステムがより自律的に推論を行うようになるにつれて、ガバナンスと透明性が極めて重要になります。
- 説明可能な推論: モデルは、実行したクエリ、参照したソース、そして結論に至るまでの推論手順の監査証跡を提供できます。Azure AI Content Safety や Azure AI Tracing / GenAIOps などのツールは、透明性を維持し、リスクを軽減するのに役立ちます。
- バイアス制御とバランスの取れた検索: 開発者は、バランスの取れた代表的なデータソースが考慮されるように検索戦略を調整し、Azure Machine Learning を使用する高度なデータサイエンス組織向けのカスタムモデルを使用して、出力を定期的に監査し、バイアスや偏ったパターンを検出できます。
- 人間による監視とコンプライアンス: 機密性の高いタスクでは、人間によるレビューが不可欠です。Agentic RAG は、重要な意思決定における人間の判断に取って代わるものではなく、より徹底的に検証された選択肢を提供することで、人間の判断を補完します。
明確なアクション記録を提供するツールを持つことは不可欠です。これらがないと、複数ステップのプロセスのデバッグは非常に困難になります。Literal AI(Chainlitの背後にある企業)のエージェント実行例を以下に示します。


結論
エージェント型RAGは、AIシステムが複雑でデータ集約的なタスクを処理する方法における自然な進化を表しています。ループ型のインタラクションパターンを採用し、ツールを自律的に選択し、高品質な結果が得られるまでクエリを洗練させることで、システムは静的なプロンプトに従うという従来の思考から、より適応性が高く、状況に応じた意思決定へと進化します。人間が定義したインフラストラクチャと倫理ガイドラインに制約されながらも、これらのエージェント機能は、企業とエンドユーザーの両方にとって、より豊かで動的、そして最終的にはより有用なAIインタラクションを実現します。
Agentic RAG についてさらに質問がありますか?
Azure AI Foundry Discord に参加して、他の学習者と交流したり、オフィスアワーに参加したり、AI エージェントに関する質問に回答してもらったりしましょう。
追加リソース
学術論文
前のレッスン
ツール使用デザインパターン
次のレッスン
信頼できるAIエージェントの構築
免責事項:
この文書はAI翻訳サービスCo-op Translatorを使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された文書を正式な情報源としてご参照ください。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤解釈について、当方は一切の責任を負いません。