こうした問題を解決するために登場したのがAgentic RAGです。Agentic(エージェンティック)とは「主体性を持つ」という意味で、LLMを単なる回答生成器ではなくエージェント(Agent)として位置づけ、動的な判断をさせるアプローチを指します。
つまり、Agentic RAGでは、LLM自身が「追加の情報が必要か?」「どのツールやデータソースを使うべきか?」を考えながら対話的・逐次的に処理を進めるのです。以下にNaive RAGとAgentic RAGの違いをまとめます。
Native RAG: 質問に対し一度だけ知識検索し、その結果をLLMに与えて回答を生成します。フローは固定で、LLMは与えられた情報内で答えます。
Agentic RAG: 質問に対しLLMをエージェントとして動かし、途中で追加の検索や外部ツール利用が必要かをモデル自身に判断させます。必要に応じて何度でも情報取得や計算などのステップを挿入し、十分なコンテキストが揃ってから最終回答します。
基本的なRAGが「検索して即回答」なのに対し、Agentic RAGではLLMが自律的に判断し、外部ツールの利用や追加データ収集を挟んでから回答します。この柔軟性により、複数回の反復や対話を要する複雑なワークフローにも対応できるわけです。
言い換えればAgentic RAGは、LLMにプランニングやツール操作といったエージェント的能力を持たせたRAGです。LLMが自身の“思考”を逐次展開し、「次に何をすべきか」「どの情報源を当たるか」を決定しながら問題解決に当たります。たとえば質問が曖昧ならまずサブクエリを立てて検索し、不足情報があれば再度別のデータソースから取得し、ある程度揃ったらそれらを総合して回答するといった具合に、検索と生成をインタリーブ(交互に挟み込む)して最適解を探ります。このプロセスではLLMがまるで人間のように「資料Aだけでは不十分だから資料Bも調べよう」「この部分は計算が必要だから電卓(ツール)を使おう」といった能動的な判断を行います。
Agentic RAGの概念をもう少し正式に捉えると、「RAGにエージェントレイヤーを組み込んだもの」と表現できます。アーキテクチャ上、基本要素はRetrieval System(検索システム)、Generation Model(LLM本体)に加え、LLMの振る舞いを制御するAgent Layerからなります。エージェントレイヤーが仲介役となり、LLMが単純回答する前に「この質問にはどのデータソースを使うべきか?追加の検索が要るか?」等を決め、必要なら複数の検索や外部システムとの対話を実行します。
NVIDIAの技術ブログでは、これを「RAGをLLMの推論プロセスに統合し、LLMが能動的に情報収集を管理する動的アプローチ」と説明しています。従来のRAGが単なるクイックルックアップ(手早い検索)なのに対し、Agentic RAGは、AIエージェントが検索クエリを最適化し、RAGをツールとして使いこなし、必要に応じて知識を管理する洗練された手法だと説明されています。
以上の特徴から、Agentic RAGを表すキーワードは「動的」「反復的」「自律的」です。一度きりの実行ではなく、LLMが対話とツール使用を駆使してゴールに向かうプランナー兼実行者となる仕組みと言えます。これによってNative RAGの持つ制約、すなわちワンショット検索の限界や曖昧な質問への弱さ、多段推論の不可能といった点を克服し、より知的で柔軟な情報検索・回答システムが実現が可能になるのです。
