6. Agentic RAG (에이전트 RAG)
6.1 Agentic RAG란 무엇인가요?
Agentic RAG는 RAG를 단발 호출이 아니라 행위(behavior)로 확장한 것입니다. AI가 단순히 “검색하고 답변”하는 것이 아니라, 목표를 달성하기 위해 계획 → 검색 → 실행 → 관찰 → 재계획의 사이클을 반복합니다.
일반 RAG를 생각해보면, 사용자가 질문하면 한 번 검색하고, 한 번 생성해서 답변합니다. 끝입니다. 하지만 복잡한 질문은 한 번의 검색으로 답하기 어렵습니다.
예를 들어 “삼성전자와 SK하이닉스의 최근 분기 실적을 비교하고, 반도체 시장 전망을 고려해서 투자 의견을 정리해줘”라는 질문을 생각해봅시다.
이 질문에 답하려면:
- 삼성전자 최근 분기 실적 검색
- SK하이닉스 최근 분기 실적 검색
- 두 회사 실적 비교
- 반도체 시장 전망 검색
- 전망과 실적을 종합해서 투자 의견 정리
한 번의 검색으로는 불가능합니다. 여러 번 검색하고, 결과를 분석하고, 추가로 필요한 정보를 찾고, 종합해야 합니다. Agentic RAG는 이런 복잡한 작업을 AI가 스스로 계획하고 실행하게 합니다.
6.2 Agentic RAG의 동작 방식
Agentic RAG의 핵심 사이클은 **계획(Plan) → 검색/실행(Execute) → 관찰(Observe) → 재계획(Replan)**입니다.
계획(Plan): AI는 먼저 주어진 목표를 달성하기 위해 무엇을 해야 하는지 계획을 세웁니다.
예: “삼성전자와 SK하이닉스 실적 비교”라는 목표
- Step 1: 삼성전자 2024년 3분기 실적 검색
- Step 2: SK하이닉스 2024년 3분기 실적 검색
- Step 3: 두 실적 비교 분석
- Step 4: 결과 정리
실행(Execute): 계획의 각 단계를 실행합니다. 검색, API 호출, 계산, 코드 실행 등 다양한 도구를 사용할 수 있습니다.
예: Step 1 실행 – “삼성전자 2024년 3분기 실적” 웹 검색
관찰(Observe): 실행 결과를 관찰하고 평가합니다. 원하는 정보를 얻었는지, 추가 작업이 필요한지 판단합니다.
예: 검색 결과 확인 – “삼성전자 영업이익 10조원, 매출 79조원… 원하는 정보를 얻었다.”
재계획(Replan): 관찰 결과에 따라 계획을 수정합니다. 정보가 부족하면 추가 검색을, 예상과 다른 결과가 나오면 다른 접근을 시도합니다.
예: “영업이익은 찾았는데 반도체 부문 실적만 따로 없네. 추가 검색 필요.”
- 수정된 Step 1-2: “삼성전자 반도체 부문 2024년 3분기 실적” 검색
이 사이클을 목표가 달성될 때까지 반복합니다.
6.3 Agentic RAG가 적합한 작업
Agentic RAG는 다음과 같은 복잡한 작업에 적합합니다:
리서치 에이전트: “AI 스타트업 투자 동향을 조사해줘”처럼 여러 소스를 검색하고 종합해야 하는 리서치 작업.
분석봇: “우리 제품과 경쟁사 제품을 비교 분석해줘”처럼 여러 정보를 수집하고 분석해야 하는 작업.
자동 보고서 생성: “이번 달 마케팅 성과 보고서를 만들어줘”처럼 데이터를 수집하고, 분석하고, 문서로 정리하는 작업.
멀티스텝 문제 해결: “이 버그의 원인을 찾고 해결책을 제시해줘”처럼 여러 단계의 탐색과 추론이 필요한 작업.
6.4 Agentic RAG의 핵심 과제: 비용과 지연 관리
Agentic RAG의 가장 큰 과제는 비용과 지연 시간 관리입니다.
에이전트가 목표를 달성하기 위해 계속 검색하고, LLM을 호출하고, 도구를 사용합니다. 이 과정에서:
- LLM API 호출 비용이 누적됩니다. 계획, 실행, 관찰 각 단계마다 LLM을 호출할 수 있습니다.
- 검색 API 호출 비용이 누적됩니다.
- 응답 시간이 길어집니다. 일반 RAG가 몇 초 만에 답한다면, Agentic RAG는 복잡한 작업에 몇 분이 걸릴 수 있습니다.
따라서 Agentic RAG를 구현할 때는 반드시 **제한(limit)**을 둬야 합니다:
- 최대 반복 횟수: “10번 넘게 시도하면 중단”
- 최대 검색 횟수: “검색은 총 5번까지만”
- 최대 시간: “2분 안에 끝내지 못하면 중간 결과라도 반환”
- 최대 비용: “API 호출 비용이 $1을 넘으면 중단”
또한 사용자에게 진행 상황을 보여주는 것이 좋습니다. “현재 삼성전자 실적 검색 중…” 같은 메시지를 보여주면, 사용자가 긴 대기 시간을 이해하고 기다릴 수 있습니다.
6.5 Agentic RAG의 장단점
장점:
- 복잡한 작업을 자율적으로 처리할 수 있습니다.
- 유연하게 상황에 대응합니다. 한 방법이 안 되면 다른 방법을 시도합니다.
- 다양한 도구를 조합해서 사용할 수 있습니다.
단점:
- 비용과 시간이 많이 듭니다.
- 결과를 예측하기 어렵습니다. 같은 질문에도 다른 경로로 답을 찾을 수 있습니다.
- 무한 루프에 빠질 위험이 있습니다.
- 구현과 디버깅이 복잡합니다.