AI Agents for Beginners - 5. Agentic RAG
Agentic RAG — how LLMs autonomously decide when and how to retrieve information, iterate with a maker-checker loop, self-correct, and deliver high-quality grounded responses.
June 8, 2026
AI Agents for Beginners - 5. Agentic RAG
이 글은 Microsoft의 AI Agents for Beginners 강좌 Lesson 05를 기반으로 정리한 내용입니다.
What is Agentic RAG?
**Agentic RAG (Retrieval-Augmented Generation)**은 LLM이 외부 소스에서 정보를 가져오면서 다음 단계를 자율적으로 계획하는 새로운 AI 패러다임입니다.
전통적인 RAG와의 핵심 차이:
| Traditional RAG | Agentic RAG | |
|---|---|---|
| Retrieval 방식 | 고정된 파이프라인 (retrieve → generate) | LLM이 언제·어떻게 검색할지 자율 결정 |
| 반복성 | 단일 검색 후 응답 생성 | 결과 평가 후 필요하면 재검색 반복 |
| 쿼리 처리 | 정적 쿼리 | 실패 시 쿼리 재작성·방법 변경 |
| 오케스트레이션 | 복잡한 프롬프트 체인 필요 | 단순한 LLM call → tool use 루프 |
이 반복적인 Maker-Checker 방식은 정확성을 높이고, 잘못된 쿼리를 처리하며, 고품질 결과를 보장합니다.
The Core Loop
Agentic RAG의 핵심은 LLM call → tool use → LLM call → … 의 반복 루프입니다.
Agentic RAG Core LoopMermaidflowchart TD Start["User Goal (Prompt)"] --> LLM["LLM\n목표 분석·계획 수립"] LLM --> Decision{정보 충분?} Decision -->|"No"| Tool["Tool / Retrieval 호출\n(Vector Search, SQL, API)"] Tool --> Assess["결과 평가\n& Memory 업데이트"] Assess --> Refine{쿼리 개선\n필요?} Refine -->|"Yes"| Tool Refine -->|"No"| Decision Decision -->|"Yes"| Response["최종 응답 생성"]
루프의 각 단계:
| Step | 설명 |
|---|---|
| Initial Call | 사용자 목표(프롬프트)가 LLM에 전달됩니다 |
| Tool Invocation | 정보가 부족하면 vector search, SQL, API 등 적절한 tool을 선택해 호출합니다 |
| Assessment & Refinement | 반환된 데이터를 평가하고, 충분하지 않으면 쿼리를 다듬거나 다른 tool을 시도합니다 |
| Repeat Until Satisfied | 충분한 정보를 얻을 때까지 사이클을 반복합니다 |
| Memory & State | 각 단계 결과를 기억해 반복적인 루프를 피하고 더 나은 결정을 내립니다 |
Owning the Reasoning Process
Agentic system의 특징은 추론 과정을 스스로 소유한다는 점입니다.
전통적 RAG는 사람이 pre-define한 경로를 따르지만, Agentic RAG는 정보의 품질에 따라 단계 순서를 자율적으로 결정합니다.
전통적 RAG는 사람이 pre-define한 경로를 따르지만, Agentic RAG는 정보의 품질에 따라 단계 순서를 자율적으로 결정합니다.
예를 들어, 제품 출시 전략을 요청받으면 에이전트는 스스로 결정합니다:
- Bing Web Grounding으로 현재 시장 트렌드 보고서를 검색
- Azure AI Search로 경쟁사 데이터를 식별
- Azure SQL Database로 과거 내부 판매 지표를 연관
- Azure OpenAI Service로 일관된 전략으로 종합
- 전략의 빈틈·불일치를 평가하고, 필요하면 추가 검색 반복
이 모든 단계는 인간이 미리 스크립팅하지 않고 모델이 스스로 결정합니다.
Building a RAG Agent
Creating a Search Tool
외부 데이터 소스를 tool로 감싸면 에이전트가 필요할 때마다 검색을 호출할 수 있습니다:
search_tool.pypython
Basic RAG Agent
에이전트에게 항상 검색 먼저 하도록 지시합니다. 자신의 학습 데이터 대신 knowledge base에 기반한 응답을 생성합니다:
rag_agent.pypython
Maker-Checker Pattern
Agentic RAG의 핵심 강점인 반복 검색입니다.
에이전트가 여러 번 검색을 수행해 초기 결과를 검증하고 보완합니다:
에이전트가 여러 번 검색을 수행해 초기 결과를 검증하고 보완합니다:
- Maker step — 초기 정보를 검색하고 응답 초안을 작성
- Checker step — 세부 사항을 확인하거나 빈틈을 채우기 위해 추가 검색 수행
maker_checker_agent.pypython
zenuml title Maker-Checker Pattern Flow User->Agent: budget $175/day, travel in April Agent->Tool: search_travel_knowledge(April travel) Tool->Agent: initial destination results Agent->Agent: evaluate completeness Agent->Tool: search_travel_knowledge(Barcelona) Tool->Agent: detailed info with cost and season Agent->Tool: search_travel_knowledge(Paris) Tool->Agent: detailed info with cost and season Agent->Agent: compare and verify against budget Agent->User: verified recommendation with details
Handling Failure Modes and Self-Correction
Agentic RAG의 자율성에는 강력한 자기 수정 메커니즘이 포함됩니다.
관련 없는 문서를 검색하거나 쿼리가 실패해도 시스템이 스스로 복구합니다:
관련 없는 문서를 검색하거나 쿼리가 실패해도 시스템이 스스로 복구합니다:
| Failure Mode | Self-Correction 방식 |
|---|---|
| 관련 없는 결과 | 새로운 검색 전략 시도, 쿼리 재작성, 다른 데이터셋 탐색 |
| 잘못된 쿼리 | 진단 tool로 추론 단계를 디버그하고 검색 데이터의 정확성 확인 |
| 반복 실패 | 불확실성을 표시하고 사람의 검토를 요청. 피드백을 받아 학습 |
이 반복적·동적 접근 방식으로 에이전트는 단순한 one-shot 시스템을 넘어 세션 내에서 실수로부터 배우며 지속적으로 개선됩니다.
Boundaries of Agency
Agentic RAG는 강력하지만 Artificial General Intelligence와는 다릅니다.
"에이전트"로서의 능력은 인간 개발자가 제공한 tool, 데이터 소스, 정책에 한정됩니다:
"에이전트"로서의 능력은 인간 개발자가 제공한 tool, 데이터 소스, 정책에 한정됩니다:
| Boundary | 설명 |
|---|---|
| Domain-Specific Autonomy | 사용자 정의 목표를 알려진 도메인 내에서 달성. 쿼리 재작성·tool 선택으로 결과 개선 |
| Infrastructure-Dependent | 개발자가 통합한 tool과 데이터 범위에만 접근 가능. 인간 개입 없이 이 경계를 넘을 수 없음 |
| Respect for Guardrails | 윤리 가이드라인, 컴플라이언스 규칙, 비즈니스 정책은 항상 유지됨 |
Practical Use Cases
| Use Case | 설명 |
|---|---|
| Correctness-First Environments | 컴플라이언스 검토, 규제 분석, 법률 리서치에서 여러 소스를 반복 검증해 철저히 검증된 답변 생성 |
| Complex Database Interactions | Azure SQL·Microsoft Fabric으로 구조화된 데이터 처리 시 실패한 쿼리를 자율 정제 |
| Extended Workflows | 새로운 정보가 등장하는 장기 세션에서 전략을 지속적으로 조정 |
Governance, Transparency, and Trust
에이전트가 더 자율적으로 추론할수록 거버넌스와 투명성이 중요해집니다:
- Explainable Reasoning — 에이전트가 수행한 쿼리, 참조한 소스, 추론 단계의 감사 추적 제공. Azure AI Content Safety·Azure AI Tracing으로 투명성 유지
- Bias Control — 균형 잡힌 대표적 데이터 소스를 사용하도록 검색 전략을 조정하고, 편향·왜곡 패턴을 정기적으로 감사
- Human Oversight — 민감한 태스크에서 인간 검토는 필수. Agentic RAG는 인간의 판단을 대체하는 것이 아니라 더 철저히 검증된 옵션을 제공해 보완합니다
Summary
Lesson 05 SummaryMermaidflowchart LR Root["Agentic RAG"] Root --> Core["Core Loop"] Root --> Pattern["Maker-Checker"] Root --> Self["Self-Correction"] Root --> Gov["Governance"] Core --> C1["LLM call → Tool → Evaluate"] Core --> C2["Memory & State 유지"] Core --> C3["Own Reasoning Process"] Pattern --> P1["Maker: 초기 검색·초안"] Pattern --> P2["Checker: 재검색·검증"] Self --> S1["쿼리 재작성"] Self --> S2["다른 tool 시도"] Self --> S3["Human Oversight fallback"] Gov --> G1["Explainable Reasoning"] Gov --> G2["Bias Control"]
- Agentic RAG는 전통적 RAG의 고정 파이프라인을 넘어 LLM이 검색 전략을 자율적으로 결정합니다
- Maker-Checker 루프로 초기 결과를 반복 검증해 정확성을 높입니다
- 실패 시 쿼리 재작성·tool 변경·Human Oversight fallback으로 강력한 자기 수정이 가능합니다
- 자율성이 높아질수록 Explainable Reasoning·Bias Control·Human Oversight로 신뢰 가능한 거버넌스를 유지해야 합니다