Agentic RAG : 더 똑똑해진 문맥 중심 AI 시스템

min Read

최근 인공지능 분야에서 Retrieval-Augmented Generation(RAG)은 주목받고 있는 기술 중 하나로, 대규모 언어 모델(LLM)의 한계를 보완하는 핵심 전략으로 자리잡고 있습니다.

RAG는 외부 지식을 응답에 통합하여 단순한 텍스트 생성을 넘어, 더욱 정확하고 신뢰할 수 있는 지능형 응답을 제공하는 기술로, 코드 분석, 문서 처리, 검색 기반 자동화 등 다양한 산업 현장에 빠르게 확산되고 있습니다.

하지만 이론적인 기대와는 달리 실제 기업 환경에서의 성과는 그리 높지 않습니다. 한 산업 분석 보고서에 따르면 기업에서 RAG를 도입했을 때 약 87%가 기대한 투자 대비 수익(ROI)을 달성하지 못한 것으로 밝혀졌습니다. 이러한 문제의 주된 원인은 다양한 인덱싱 방법, 고정된 검색 경로, 그리고 실제 작업 환경을 반영하지 못하는 평가 방식 때문입니다

일반적인 RAG 시스템은 데이터를 검색한 후에도 여전히 관련성이 낮은 정보를 불러오거나, 중요한 로그 참조를 놓치거나, 의존성 정보를 간과하는 문제가 발생합니다. 이러한 실패 사례들은 데이터가 항상 깔끔하고 잘 조직되어 있을 것이라는 가정에 의존하는 고정적인 검색 로직에서 기인합니다.

이러한 한계를 극복하기 위해 등장한 개념이 바로 Agentic RAG입니다. 기존의 단순한 검색기를 단순 호출하는 방식에서 벗어나, 에이전트는 무엇을 검색할지, 어떤 방식으로 접근할지, 탐색을 언제 종료할지를 스스로 동적으로 결정합니다. 이러한 검색은 단일 호출이 아닌, 맥락을 반영하여 반복적이고 점진적인 과정으로 다시 정의됩니다.

특히 Qodo의 Agentic RAG는 이러한 접근 방식을 실제로 구현합니다.

이 시스템은 에이전트가 Git 저장소, 파일, Pull Request, 심지어 터미널 로그와 같은 다양한 소스에서 맥락을 탐색할 수 있도록 지원합니다. 에이전트는 상황에 맞게 질문을 재구성하고 필요에 따라 검색 경로를 변경할 수 있습니다. 이로 인해 검색은 단순한 정보 검색을 넘어 목표 달성을 위한 적극적인 의사결정 과정으로 발전하게 됩니다.

이번 블로그에서는 Agentic RAG의 작동 방식, 기존 RAG와의 차이점, 그리고 Qodo의 Agentic RAG가 제공하는 실제 활용 방안에 대해 자세히 알아보겠습니다.

Agentic RAG란?

Agentic RAG는 기존의 Retrieval-Augmented Generation(RAG) 방식에 자율적 의사결정 기능을 접목한 새로운 구조입니다. 전통적인 RAG가 미리 설정된 검색 경로를 따라 단일 프로세스로 작동하는 것과는 달리, Agentic RAG는 검색을 목표 지향적이고 반복적인 과정으로 재편합니다.

이 에이전트는 명확한 임무를 가지고 검색 계획을 수립하며, 중간 단계에서 도출된 결과를 평가하여 필요할 경우 접근 방식을 조정합니다. 충분한 맥락이 확보될 때까지 검색을 지속하고, 그 이후에 답변을 생성한다는 점이 핵심입니다. 아래의 도식은 이러한 Agentic RAG의 구조를 시각적으로 설명합니다:

Agentic RAG
Source: www.qodo.ai | How Agentic RAGs formed

기존의 RAG 파이프라인은 선형적인 구조로 구성되어 있습니다. 특정 질의가 검색과 재순위화 과정을 거쳐 생성 단계로 전달되고 최종 결과가 생성됩니다. 이 방식은 정적이며 단일 실행 방식이라고 볼 수 있습니다.

반면에 Agentic RAG는 루프 기반의 동적인 접근 방식을 선택합니다. 이 경우 에이전트는 처음에 질의를 분석하고, 내부 데이터 또는 외부 소스 중 어느 곳에서 탐색할지를 결정합니다. 그 후 결과를 평가하고, 만약 결과가 충분하지 않다고 판단되면 질의를 재구성하여 다시 검색 과정을 반복합니다.

이러한 과정은 신뢰할 수 있는 답변에 필요한 맥락이 확보될 때까지 이어집니다.

Agentic RAG 아키텍처 유형

Agentic RAG의 구조는 기본적인 형태부터 매우 모듈화된 형태까지 다양하게 나타납니다. 이 시스템의 핵심은 에이전트가 고정된 단일 검색 방식에 얽매이지 않으며, 과업의 목표와 사용할 수 있는 도구에 기반하여 자신의 검색 전략을 스스로 조정한다는 점입니다.

이와 관련하여 두 가지 대표적인 아키텍처 패턴을 소개하면 다음과 같습니다:

1. 단일 에이전트 RAG (Single-Agent RAG, Routing Agent)

주어진 질의를 분석한 후, 가장 알맞은 검색 방법을 결정합니다. 예를 들어 벡터 데이터베이스를 조회하거나 문서 저장소를 탐색하거나 실시간 API를 호출하는 등의 작업을 수행할 수 있습니다. 특히 주목할 점은 이러한 선택이 사전에 정해진 규칙에 따라 이루어지는 것이 아니라 실행 시점, 즉 런타임에 동적으로 이루어진다는 것입니다.

Source: www.qodo.ai | Single Agent RAG System

이 모델은 검색원이 소수이고 비교적 단순한 조정만으로 충분한 상황에서 적합합니다. 규모가 작더라도 검색 의사결정을 에이전트가 자율적으로 수행하기 때문에 여전히 Agentic RAG의 특징을 유지합니다.

2. 다중 에이전트 RAG (Multi-Agent RAG, Specialized Retrieval Agents)

복잡한 환경에서는 단일 에이전트만으로는 다양한 데이터 소스와 검색 요구를 효과적으로 처리하기 힘듭니다. 따라서 다중 에이전트 구조는 이러한 문제를 해결하기 위해 업무를 더욱 효율적으로 분산시킵니다. 이 구조에서는 주 에이전트(리더 에이전트)가 전체적인 작업을 관리하며, 구체적인 세부 작업은 각기 특화된 하위 에이전트에게 위임됩니다.

Source: www.qodo.ai | Multi Agent RAG System

예를 들어 특정 에이전트는 내부 기술 문서를 살펴보고, 다른 에이전트는 이메일이나 메신저 대화 기록을 분석합니다. 또 다른 에이전트는 웹에서 관련 자료를 수집하는 역할을 합니다. 주 에이전트는 이들 각각의 결과를 하나로 통합하여 원래의 과업 목표에 부합하는 맥락을 형성합니다.

이와 같은 계층적 구조는 모듈성, 유연성, 그리고 장애 격리 측면에서 유리합니다. 특히 공용 데이터, 사내 데이터, 반구조적 데이터가 혼재된 기업 규모의 복합 시스템에서 효과적으로 작동합니다.

Agentic RAG와 전통적 RAG의 비교

Qodo의 최신 블로그에서는 Agentic RAG 시스템이 AI 에이전트를 RAG 파이프라인에 통합하여 유연성과 정확성을 강화한다고 언급하고 있습니다. 이 시스템 덕분에 LLM은 단일 데이터베이스에 국한되지 않고 여러 데이터 소스와 도구를 활용할 수 있으며, 복잡한 다단계 작업 흐름을 효율적으로 처리할 수 있습니다. 즉, 전통적인 RAG는 단일 데이터셋에 기반한 일회성 검색 방식에 가깝습니다.

반면 에이전틱 RAG는 모델을 능동적인 에이전트로 바라보며, 질의를 지속적으로 조정하고 여러 데이터베이스나 도구를 탐색합니다. 필요에 따라 정보를 재검증하며 복잡한 문제를 해결하는 데 초점을 맞춥니다.

아래의 표는 두 접근법을 주요 측면에서 비교한 것입니다.

구분 (Aspect)
전통적 RAG (Standard RAG)
Agentic RAG
데이터 소스
단일 지식 베이스 (벡터 DB 등)
복수 소스 및 도구 (벡터 DB, 웹 API 등)
검색 과정
단일 실행(one-shot): 검색 후 생성
반복적(iterative): 에이전트가 검색 시점·방식 결정, 재질의 가능
외부 도구 활용
거의 없음
검색, 계산기, 데이터베이스, API 등 다양한 도구 사용
계획 및 논리
쿼리 계획 없음, 정적 프롬프트
에이전트가 과업을 분해하고 전략을 동적으로 조정
메모리
비상태적(stateless), 질의 간 맥락 공유 없음
단기·장기 메모리를 통해 맥락 및 결과 기억
적응성
반응적(reactive), 고정된 검색 로직
능동적(proactive)이며 중간 단계에서 전략 변경 가능
멀티모달 능력
주로 텍스트 기반
텍스트, 이미지, 오디오 등 멀티모달 LLM 및 도구 통합 가능
복잡성 및 비용
단순, 연산 비용 낮음
복잡성 높음, 토큰·연산 비용 증가

Qodo에서의 Agentic Mode 작동 방식

Qodo의 Agentic Mode는 고정된 프롬프트나 수동 제어에 의존하지 않고, 자율적으로 계획·추론·실행할 수 있는 에이전트를 실행합니다. 각 에이전트는 사용자가 목표, 접근 가능한 도구, 반복 과정에서의 동작 방식을 정의할 수 있으며, 이를 통해 과업을 독립적으로 수행합니다.

이러한 에이전트는 MCP(Model Context Protocol) 도구를 기반으로 동작합니다. MCP는 코드베이스, 외부 API, 프로젝트 파일, 문서, 웹 등 다양한 환경과 상호작용할 수 있도록 설계된 모듈형 구성 요소입니다. 예를 들어 /fetch 도구를 통해 Pull Request를 불러오거나, /review 도구로 코드 품질을 검증하고, /search 도구를 통해 내부 문서를 조회할 수 있습니다. 이처럼 에이전트와 MCP의 결합은 단순한 프롬프트 실행이 아닌, 맥락 기반의 반복적 검색과 계획 수정, 자율적 의사결정을 가능하게 합니다.

Agentic RAG
Source: www.qodo.ai | How Does Agentic Mode Work in Qodo?

Qodo Gen은 로컬 MCP와 원격 MCP를 모두 지원합니다.

Qodo는 기본적으로 Git, Code Navigation, File System, Terminal과 같은 MCP를 내장하고 있으며, 필요할 경우 추가 MCP를 직접 통합하거나 공개 MCP 라이브러리에서 검색하여 연결할 수 있습니다. MCP는 실행 환경에 따라 Local MCPRemote MCP로 구분됩니다.

Qodo의 블로그에 따르면, Git MCP를 활용하여 원격 저장소의 최신 변경 사항을 질의하는 과정이 소개되어 있습니다. Qodo의 Agentic RAG는 단순히 커밋 로그만 불러오는 것이 아니라, 코드베이스의 구조, 변경 집합, 필요 시 파일 간 종속성까지 분석합니다.

Agentic RAG

다중 서비스 레포지토리에서의 활용

최신 변경 사항을 요청하면 Qodo는 관련 서비스에 대한 커밋 요약을 정리해 제공합니다.

기본 MCP 환경이 구축되어 서비스가 동기화되면, Qodo는 멀티 서비스 리팩터링 워크플로우를 에이전트 실행 계층을 통해 자동화할 수 있는 한 단계 더 나아간 작업을 수행할 수 있습니다. 이때 목표는 auth-service와 billing-service에 대한 리팩터링 커밋을 생성하고, 테스트의 무결성을 유지하며, 변경 내역을 명확하게 하는 것입니다.

이를 위해 Qodo Gen에 다음과 같은 지시가 내려집니다.

“auth-service와 billing-service 전반에 걸쳐 리팩터링 커밋을 생성하고, 변경 사항을 설명하며, 테스트가 모두 통과되도록 하라.”

Qodo는 이 요청을 다단계 자율 프로세스로 해석합니다. 먼저 billing-service를 위한 테스트 환경을 자동으로 구축하며, requirements.txt와 test_billing.py 파일을 생성하여 pytest 검증이 가능하도록 합니다.

Agentic RAG

다음으로 Qodo는 refactor_services.py라는 중앙 제어 스크립트를 작성합니다.

이 스크립트는 RefactorAgent를 로드하여 실행하며, Python의 subprocess 모듈을 활용한 run_tests() 메서드를 정의하여 각 서비스별 테스트를 자동화할 수 있도록 설계됩니다.

Agentic RAG

이후 변경 사항은 기능 브랜치에 동기화되고, 메인 브랜치를 대상으로 Pull Request(PR)가 자동으로 생성됩니다. 아울러 Qodo는 리뷰어를 위해 PR Reviewer Guide를 제공하며, 여기에는 리뷰 난이도(예: 4/5), 테스트 커버리지 확인, 보안 이슈 탐지 결과가 포함됩니다. 특히 하드코딩된 SECRET_KEY, MD5 해시 사용, 평문 신용카드 저장과 같은 문제를 조기에 감지하며, 동적 모듈 임포트 상황에서 발생할 수 있는 잠재적 오탐지 가능성도 함께 안내합니다.

Agentic RAG

마지막으로 Qodo는 에이전트 기반 리팩터링 파이프라인을 다이어그램 형태로 제공합니다.

이 다이어그램은 Demo Script, RefactorAgent, RefactoringEngine 간의 상호작용을 단계별로 나타내며, API 버전 관리, 불필요한 코드 제거, 의존성 주입과 같은 핵심 리팩터링 과정을 시각적으로 설명합니다.

Agentic RAG

이렇게 Qodo는 단순한 코드 수정 단계를 넘어, 에이전트와 MCP 기반 구조를 활용하여 계획적이고 자율적인 리팩터링 프로세스를 구현하고 있습니다.

엔터프라이즈 환경에서 Qodo Agentic RAG의 강점

전통적인 RAG(검색-응답 생성) 시스템은 청크 방식이나 검색 경로가 고정되어 있는 경향이 있으며, 종종 수동으로 설정된 프롬프트나 필터에 의존하는 한계가 있습니다. 데이터의 형태가 정형화되어 있지 않거나 활용 범위와 지식 기반이 넓어지는 경우, 이러한 방식은 효과적으로 대응하지 못할 때가 많습니다.

Qodo의 Agentic RAG는 기존의 검색 방식이 가지는 한계를 극복하기 위해, 검색 과정을 고정된 단계가 아니라 에이전트의 추론 과정 내에서 유동적으로 진행하는 방식으로 접근합니다. 에이전트는 이전 단계에서 얻은 정보와 시도 결과를 활용하여 검색 전략을 조정하고, 필요하다면 검색을 반복해 홍보하는 최적의 맥락을 찾습니다. 이러한 접근은 복잡한 코드 리뷰나 레거시 시스템의 디버깅과 같은 어려운 작업에 적합합니다.

또한 Qodo는 엔터프라이즈 환경에서 요구되는 제어력과 문맥 관리 능력을 제공합니다. 다양한 RAG 소스(예: 파인튜닝된 임베딩, 설계 문서, 온보딩 위키 등)를 동시에 구성할 수 있으며, 각 소스의 우선순위를 설정하여 상황에 맞게 활용할 수 있습니다. 이를 통해 기업 내 주요 기술 리더들이 반복적인 리뷰 작업에 소모하는 시간을 줄이고, MCP 기반의 모듈형 워크플로우를 통해 표준화된 검증 및 리팩터링 프로세스를 확립할 수 있습니다.

마무리

Agentic RAG는 단순한 기능 향상을 넘어서 문맥 중심의 AI 시스템으로의 본질적인 변화입니다. 이는 정적인 검색 기능을 넘어, 실제 기업 환경에서 발생하는 복잡한 문제를 해결할 수 있도록 설계되었습니다. 데이터가 분산되어 있고 목표가 명확하지 않은 상황에서도 효과적으로 대응할 수 있는 능력을 갖추고 있습니다.

Qodo의 구현 방식은 이러한 변화를 실질적으로 지원하며, 다중 서비스 디버깅, 리팩터링 자동화, 테스트 검증이 포함된 PR 가이드 생성 등 여러 엔터프라이즈 시나리오에서 높은 활용도를 보입니다.

이로 인해 Qodo Agentic RAG는 대규모 조직이 필요로 하는 유연성, 적응성 및 신뢰성을 동시에 만족시키는 최적의 솔루션으로 평가됩니다.

정적 RAG로는 해결하기 어려운 기업 데이터 관리 문제,

Qodo Agentic RAG를 통해 다중 소스 검색과 자동화된 검증을 경험하세요.

Latest Posts

Subscribe to
SLEXN NEWSLETTER

개인정보 수집 및 이용

뉴스레터 발송을 위한 최소한의 개인정보를 수집하고 이용합니다. 수집된 정보는 발송 외 다른 목적으로 이용되지 않으며, 서비스가 종료되거나 구독을 해지할 경우 즉시 파기됩니다.

SOLUTION

Tags

Category

Most Commented Posts

© SLEXN, Inc. All rights reserved.