Skip to content

WithModulabs/AI-agent-RAG

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

AI-agent-RAG

Introducing research items on AI agent RAG

1장 Agentic RAG 개요

Agentic Retrieval-Augmented Generation(Agentic RAG)은 최신 인공지능 시스템 설계에서 부상하고 있는 개념으로, **대형 언어 모델(LLM)**이 단순히 정보를 생성하는 것을 넘어, 외부 정보원을 적극적으로 활용하면서 스스로 다음 행동을 계획하는 구조를 갖습니다.

기존의 RAG(Retrieval-Augmented Generation)는 '질문 → 검색 → 응답 생성'이라는 고정된 흐름을 따릅니다. 반면, Agentic RAG는 다음과 같은 반복적이고 동적인 루프 구조를 중심으로 작동합니다:

  • 사용자의 요청(prompt)을 인식
  • 필요한 정보를 스스로 판단해 적절한 검색 도구(벡터 검색, SQL 등)를 선택
  • 검색된 정보를 평가하고, 부족하거나 부정확할 경우 쿼리를 재작성
  • 여러 도구를 반복 활용하며 결과를 보완
  • 충분히 정제된 해답에 도달할 때까지 위 과정을 반복

이로 인해 Agentic RAG는 단순한 생성기에서 의사결정 능력을 가진 지능형 시스템으로 발전합니다. .

2장 핵심 구조와 작동 방식

2.1 메이커-체커(Maker-Checker) 스타일

Agentic RAG는 "질의-검토-수정-재질의"라는 구조의 루프를 따릅니다. 이를 통해 다음과 같은 효과를 얻습니다:

  • 정확성 향상: 결과를 검토하고, 불확실하거나 잘못된 질의는 다시 작성
  • 탄력성 확보: 오류나 실패 상황에서도 유연하게 대처
  • 효율적 자원 활용: 각 도구의 강점을 최대한 활용하며 반복 최소화

2.2 추론의 자율성 (Self-directed Reasoning)

전통적 RAG 시스템은 사람이 설계한 프롬프트 체인에 따라 작동합니다. 그러나 Agentic RAG는 문제 해결 방식을 스스로 결정합니다.

예를 들어, "신제품 출시 전략을 세워라"라는 요청이 주어졌을 때:

  1. Bing Web Grounding을 통해 시장 동향 조사
  2. Azure AI Search로 경쟁사 분석
  3. Azure SQL Database로 내부 매출 추이 확인
  4. 이 모든 정보를 Azure OpenAI Service로 통합 분석하여 전략 도출
  5. 전략의 결함 여부를 평가하고, 필요시 반복 수행

모든 단계는 시스템이 스스로 판단하여 순서를 구성합니다.

2.3 도구 통합 및 상태 유지 (Tool Integration & Memory)

  • 도구 선택: 상황에 맞춰 벡터 검색, SQL 쿼리, API 호출 등을 선택
  • 상태(State) 유지: 각 단계를 기억하고 활용하여 중복 반복 방지
  • 학습 기반 결정: 과거 시도들을 바탕으로 점점 더 정교한 판단 수행

3장 자기 수정 및 실패 복구 전략

Agentic RAG는 단일 호출로 끝나는 일회성 시스템이 아닌, 진행 중 학습이 가능한 지능형 시스템입니다.

3.1 반복 및 재질의 (Query Refinement in Action)

Agentic RAG는 단일 검색 결과에 만족하지 않고, 검색 품질을 평가하고 쿼리를 반복적으로 개선하여 더 나은 정보를 얻기 위한 지능적 루프 구조를 따릅니다.

결과 평가 (Result Assessment)

모델은 검색 결과를 다음과 같은 기준으로 평가합니다:

  • 정보가 질문과 충분히 관련이 있는가
  • 데이터가 부족하거나 불완전하지는 않은가
  • 중복된 정보모순된 내용이 포함되어 있지는 않은가
  • 사용자 질의의 전체 맥락을 커버하는가

쿼리 재작성 (Query Reformulation)

필요하다고 판단되면, 모델은 쿼리를 재작성하여 검색 품질을 향상시킵니다. 예시:

  • 원래 쿼리:
    sales trend of wearable devices

  • 개선된 쿼리:
    Q1 2023 global smartwatch sales trend site:statista.com

  • 개선 방법:

    • 시간/지역 조건 추가
    • 구체적인 서브카테고리 지정 (예: smartwatch, fitness band 등)
    • 신뢰할 수 있는 출처(site:) 활용
    • 키워드 확장 또는 질문형 전환

검색 방식 전환 (Retrieval Method Switching)

기존 검색이 효과적이지 않으면 다른 방식으로 전환합니다:

  • 벡터 검색 → 키워드 검색
  • 웹 검색 API → 사내 SQL DB 질의
  • 문서 검색 → Knowledge Graph 또는 기능성 도구 사용 (예: 코드 실행)

도구 선택 최적화 (Dynamic Tool Selection)

Agentic 시스템은 다음과 같은 기준으로 도구를 동적으로 선택합니다:

요구 정보 선택 도구
최신 뉴스/동향 Bing Web Search
구조화된 정량 데이터 Azure SQL Database
기업 내부 문서 Azure AI Search
통계 리포트 PDF 분석기, OCR, Table Extractor 등

실제 적용 예시

사용자: “지난 분기의 웨어러블 디바이스 수익 감소 원인을 분석해줘”

에이전트의 작동 흐름:

  1. 초기 쿼리 생성:
    Q1 wearable device revenue drop reason

  2. 결과가 불충분하다고 판단 → 쿼리 재작성:
    smartwatch sales decline Q1 2023 site:counterpointresearch.com

  3. 여전히 부족할 경우 도구 전환:

    • Azure SQL에서 내부 판매 데이터 분석
    • Azure AI Search로 경쟁사 동향 수집
  4. 결과 통합 후: 전략 분석 → 종합 응답 생성


이처럼 Agentic RAG는 단순히 검색 결과를 읽는 것이 아니라, 검색의 질을 평가하고 필요 시 능동적으로 방향을 전환합니다. 이를 통해 더 정확하고 풍부한 응답을 생성할 수 있습니다.

3.2 진단 도구 사용 (Using Diagnostic Tools)

Agentic RAG 시스템은 복잡한 검색 및 응답 생성 과정 중 발생할 수 있는 오류를 스스로 진단하고 수정하기 위한 다양한 도구를 활용할 수 있습니다. 이 과정은 사람이 개입하지 않아도, 모델이 자기 추론(self-reasoning) 흐름을 점검하고 보완하도록 설계되었습니다.

로그 기반 진단

시스템은 각 단계에서 수행한 작업에 대해 **로그 기록 또는 추론 경로(trace)**를 남길 수 있습니다. 이 기록은 추후 오류 발생 시 분석을 위한 기반이 됩니다.

예:

  • 어떤 쿼리를 언제 실행했는지
  • 어떤 도구를 호출했는지
  • 어떤 결과를 받았는지
  • 결과의 신뢰도 또는 상태 판단

도구 예시:

  • Azure AI Tracing
  • LangChain Debugger
  • Chainlit Observer
  • OpenTelemetry 기반 로그 관리 시스템

정확도 검증 (Correctness Checking)

검색 결과가 실제로 문제 해결에 적합한지, 혹은 LLM의 응답이 논리적으로 타당한지 추론의 정확도 검증 단계가 포함됩니다.

방법:

  • 결과 내 핵심 정보가 질문에 포함된 핵심 조건을 충족하는지 확인
  • 문서 내용과 응답의 일치 여부 비교
  • 쿼리 결과가 이전 응답과 모순되는지 여부 판단

도구 호출 예시

특정 도구를 사용해 문제를 진단하는 방식은 다음과 같습니다:

  • 코드 생성 문제 → 코드 실행 도구로 오류 검출
  • SQL 생성 문제 → 데이터베이스에 직접 실행 후 에러 메시지 수집
  • 복잡한 문서 검색 → 키워드 기반 리트리버, OCR, Table Extractor, Chunk Evaluator 연동
  • 복수 결과 비교 → Majority Voting 또는 Reranker 사용

다단계 디버깅 구조

Agentic RAG는 다음과 같은 다단계 구조로 추론을 진단합니다:

  1. 초기 결과 분석: 신뢰도/일관성 체크
  2. 쿼리 재검토: 사용된 질의어, 범위 조건, 출처
  3. 도구 내부 로그 분석: API 응답 형식, 쿼리 처리 방식 확인
  4. 새 도구 대체 또는 재호출 결정

활용 목적

  • 응답 생성 실패의 원인 파악
  • 반복적인 오류 루프 방지
  • 추론 정확도 향상
  • 사용자 피드백 없이 스스로 개선 루틴 수행

이러한 진단 도구들은 Agentic RAG의 자율성을 유지하면서도, 정확도와 신뢰성 향상을 위한 핵심 구성 요소로 작용합니다.

3.3 인간 개입 (Human Oversight and Intervention)

Agentic RAG 시스템은 일반적인 질의에 대해 자율적으로 문제를 해결할 수 있지만, 다음과 같은 상황에서는 **사람의 개입(human-in-the-loop)**이 필요합니다:

  • 법률, 의료, 금융 등 고위험(high-stakes) 도메인
  • 사용자 요구가 불명확하거나 모델의 불확실성이 높은 상황
  • 반복적인 오류 루프가 발생할 경우

불확실성 감지 및 알림

시스템은 내부적으로 다음과 같은 불확실성 신호를 감지할 수 있습니다:

  • 응답 생성 시 신뢰도(score)가 기준 이하로 떨어짐
  • 검색 결과 간 내용 불일치 또는 중복
  • 동일한 쿼리를 반복하면서 유사한 실패 발생
  • 이전 단계로 돌아가는 루프가 3회 이상 반복됨

이러한 패턴이 감지되면, 시스템은 자동으로 사용자 또는 관리자에게 개입을 요청하는 메시지를 생성합니다.


인간 피드백의 통합 방식

사람이 개입하여 모델에 수정 사항을 제공하면, 그 정보는 다음과 같은 방식으로 반영됩니다:

  • 즉시 수정: 현재 응답 생성을 중단하고 새로운 지시를 반영
  • 문맥 저장: 피드백을 메모리 컨텍스트에 저장하여 이후 쿼리에 활용
  • 실패 사례 기록: 향후 유사한 실패를 방지하기 위한 패턴 학습의 기반 데이터로 저장

예시:

[시스템]: 해당 쿼리 결과가 모순되거나 불충분합니다. 수동 확인이 필요합니다. [사용자]: 경쟁사 매출 비교는 포함하지 말고, 최신 내부 자료만 기반으로 다시 정리해줘. → 피드백 저장 및 재검색/재생성 수행

4장 에이전시의 한계 (Boundaries of Agency)

Agentic RAG는 외부 정보 탐색, 툴 활용, 자기 수정 등 다양한 자율적 기능을 갖추고 있지만, **인공 일반 지능(AGI)**처럼 무제한으로 사고하거나 창의적 판단을 내리는 시스템은 아닙니다. 시스템은 반드시 다음과 같은 명시적 제한 조건 내에서만 작동하도록 설계되어야 합니다.


4.1 도메인 특화 자율성 (Domain-Specific Autonomy)

Agentic RAG의 자율성은 특정 업무, 분야, 또는 문제 해결 범위 내에서만 유효합니다.

  • 시스템은 사전 정의된 목적이나 사용 시나리오를 벗어나는 판단은 하지 않음
  • 예: 법률 분석용 Agent는 의료 데이터에 대해 추론하거나 판단을 내리지 않음
  • 또한, 도메인 지식이 제한된 경우 판단 오류 가능성이 급격히 증가

실제 의미: 모델은 스스로 학습 범위를 넘어서거나 문제 정의 자체를 바꾸지 않음


4.2 인프라 의존성 (Infrastructure Dependency)

Agentic RAG는 외부 툴, 데이터 소스, API 등 연결된 인프라에 기반하여 작동합니다. 이 인프라의 설계와 제공 범위가 곧 모델의 작동 한계를 결정합니다.

  • 벡터 검색이 연동되어 있지 않다면, 의미 기반 유사도 탐색 불가능
  • SQL 엔진이 연결되지 않으면, 구조화된 데이터 질의 불가
  • 폐쇄된 네트워크 환경에서는 웹 검색 기능 자체가 제한됨

중요 포인트: 시스템의 자율성은 내부 논리만으로 이뤄지는 것이 아니라, 설정된 도구와 환경의 구성에 직접적으로 종속됩니다.


4.3 안전 가이드라인 준수 (Guardrails and Governance)

Agentic RAG는 윤리, 법률, 산업 규정 등 사람이 설정한 정책을 반드시 준수해야 하며, 시스템 설계 시 다음과 같은 안전 장치가 필요합니다:

  • 출처 제한: 허용되지 않은 출처의 정보를 불러오지 않도록 필터링
  • 출력 필터링: 폭력, 차별, 허위 정보 등의 응답 방지
  • 동작 제한: 특정 조건에서 자동 실행되는 함수나 명령어는 관리자 권한 필요
  • 감시 체계: 로그, 트레이스, 알림 시스템을 통해 모든 행위 기록 및 감사 가능

이러한 가이드라인은 단지 규제 회피가 아닌, 시스템 신뢰성과 사회적 수용 가능성을 확보하는 핵심 요소입니다.


4.4 설계자의 책임

Agentic 시스템은 자율성을 갖췄다고 해도, 그 구조와 권한, 제한을 설정하는 것은 전적으로 인간 설계자의 책임입니다.

  • 어떤 도구를 연결할지
  • 어떤 범위의 질문에 대응할지
  • 언제 사람의 개입이 필요한지를
    사전에 정의하고 문서화해야 시스템이 올바르게 작동합니다.

Agentic RAG는 유연하고 능동적인 AI 구조를 제공하지만, 그 작동은 엄격한 조건과 제한 규칙 위에 세워져야만 실용성과 신뢰성을 동시에 확보할 수 있습니다.


5장 실전 활용 사례 (Practical Use Cases)

Agentic RAG는 단순한 질의응답 시스템을 넘어, 정확성, 상황 적응력, 다단계 정보 처리 능력이 요구되는 다양한 실제 환경에서 강력한 성능을 발휘합니다.


5.1 정확성 중심 환경 (Correctness-First Environments)

특징: 사실 기반 응답이 반드시 검증 가능해야 하는 고신뢰 영역

대표 분야:

  • 컴플라이언스(규제 준수)
  • 법률 해석 및 판례 요약
  • 의학/임상 보고서 요약
  • 재무제표 분석 및 리포팅

Agentic RAG 활용 방식:

  • 다중 출처를 자동 탐색하여 동일 정보 반복 확인
  • 쿼리 결과 간 불일치가 있을 경우 자동 수정 루프 수행
  • 정확도가 낮은 결과는 폐기하고 재질의 수행
  • 각 응답에 출처(trace) 및 문맥(context) 함께 제공

예시 시나리오:

"최근 3년간 특정 규제법령 개정 이력과 해당 기업의 위반 사례를 요약해줘"

→ 법령 DB + 판례 검색 → 신뢰도 낮은 쿼리 자동 제거 → 고정된 리포트 형식으로 구성


5.2 복잡한 데이터베이스 상호작용 (Complex DB Interactions)

특징: 구조화된 데이터(SQL, OLAP 등)와의 상호작용이 반복되고, 쿼리가 자주 실패하거나 수정이 필요함

대표 분야:

  • BI(비즈니스 인텔리전스) 보고서 자동 생성
  • 판매 데이터 분석
  • 수요 예측 모델을 위한 DB 연결
  • 고객 이탈 분석, 캠페인 성과 측정

Agentic RAG 활용 방식:

  • 자연어 질의를 SQL로 변환 → 쿼리 실행 → 결과 평가
  • 쿼리 실패 시 에러 메시지 분석 → SQL 재작성 루프 수행
  • 다중 테이블 조인 조건 자동 추론
  • 사용자의 의도를 반영해 조건 수정

연동 예시:

  • Microsoft Azure SQL
  • Microsoft Fabric OneLake
  • LangChain SQL Agent + AgentMemory 조합

예시 시나리오:

"2022년 하반기 북미 지역의 제품별 평균 매출을 보여줘"

→ 초기 쿼리 실패 → WHERE 조건 자동 수정 → 올바른 결과 획득


5.3 확장형 워크플로우 (Extended Multi-Step Workflows)

특징: 단일 질의로 끝나지 않고, 여러 단계를 거쳐 복합적인 문제 해결이 필요한 경우

대표 분야:

  • 고객 응대 및 맞춤형 상담 시나리오
  • 마케팅 전략 설계 및 A/B 테스트 비교
  • 제품 기획 → 시장 조사 → 경쟁 분석 → 전략 도출
  • 투자 분석 리포트 작성

Agentic RAG 활용 방식:

  • 각 단계별로 별도 도구 호출 및 조건 판단 수행
  • 이전 단계의 결과를 기억하고 다음 단계 질의에 반영
  • 새로운 정보 등장 시 전략 경로 재설계
  • 결과의 흐름을 연결된 문서 형태로 구성

예시 시나리오:

"신규 뷰티 제품을 런칭하기 위한 3개월 전략을 짜줘"

→ 시장 동향 검색 → 경쟁사 비교 → 내부 판매 예측 분석 → 전략 요약 보고서 생성
→ 필요 시 사람 피드백 반영해 반복 수정 가능


Agentic RAG는 단순한 검색이 아닌 동적 판단 기반의 에이전트 역할을 수행함으로써, 복잡한 실무 시나리오에서 인간을 보조하거나 부분 대체할 수 있는 실질적 도구로 발전하고 있습니다.


6장 거버넌스, 투명성, 신뢰 (Governance, Transparency, and Trust)

Agentic RAG 시스템은 자율적으로 검색, 도구 호출, 응답 생성을 수행하지만, 이를 조직이나 사회에서 실제로 적용하기 위해서는 **책임성(Accountability)**과 **설명 가능성(Explainability)**을 전제로 한 신뢰 체계 구축이 필수적입니다.


6.1 설명 가능한 추론 (Explainable Reasoning)

Agentic RAG는 다음과 같은 방식으로 추론 경로를 투명하게 제공합니다:

  • 입력 질의 → 사용된 도구 → 검색된 정보 → 응답 생성 경로를 모두 기록(trace)
  • 각 응답에 대해 **"어떤 출처를 기반으로, 어떤 논리 흐름으로 도달했는지"**를 명확히 설명 가능
  • 잘못된 결과가 발생했을 때, 어느 단계에서 문제가 발생했는지 디버깅 가능

활용 도구 예시:

  • Azure AI Tracing: 도구 호출, 응답, 오류 로그 전체 수집
  • GenAIOps: LLM 추론 과정 전반의 관찰(Observability) 및 품질 관리

적용 효과:

  • 사용자의 신뢰도 향상
  • 컴플라이언스 감사 시 대응 가능
  • 학습 개선 및 오류 재발 방지

6.2 편향 통제 및 균형 검색 (Bias Control and Balanced Retrieval)

Agentic RAG는 외부 데이터를 기반으로 판단하기 때문에, **정보 편향(Bias)**을 포함할 가능성이 있습니다. 이를 방지하기 위해 다음과 같은 조치를 취할 수 있습니다:

  • 검색 대상 출처 다양화: 특정 출처나 출판물에만 의존하지 않도록 설정
  • Reranker 및 필터링 전략 사용: 특정 정치적/문화적 편향어 포함 시 하위 점수 부여
  • 데이터 감시 모델 연동: 결과에 대한 통계적 편향 여부를 주기적으로 검토

활용 도구 예시:

  • Azure Machine Learning 기반 Custom Bias Auditor
  • 검색 쿼리 로그에 대한 NLP 분석 + 규칙 기반 탐지
  • RAG 시스템 결과에 대한 샘플링 리뷰 및 자동 알림

적용 효과:

  • 특정 성별, 지역, 계층에 대한 편향적 정보 제공 방지
  • 법적·윤리적 리스크 최소화
  • 공정성(fairness)에 기반한 AI 운영

/6.3 인간의 감독 (Human-in-the-Loop Oversight)

Agentic RAG가 아무리 자율성을 가졌다고 해도, 중요한 의사결정에는 반드시 사람의 개입이 포함되어야 합니다. 이는 다음과 같은 목적에서 수행됩니다:

  • 고위험 작업 보완: 예를 들어 법률 자문, 의료 진단, 금융 계약 등은 인간 검토 필수
  • 의도 왜곡 방지: 사용자의 요구가 모호하거나 잘못 해석될 수 있는 상황에 대한 감시
  • 운영 통제 유지: 비인가 도구 호출, 예기치 않은 정보 유출 등을 방지하기 위한 관리자 권한 설정

Agentic 시스템의 역할:

  • 결정을 자동으로 내리는 존재가 아닌, 사용자의 결정을 돕기 위해 옵션, 근거, 요약을 제공하는 조력자(agent) 역할 수행

적용 전략:

  • 특정 confidence threshold 이하일 경우 자동으로 관리자 확인 요청
  • 인간 피드백이 반영되면, 이를 모델의 memory 또는 context에 저장
  • 모든 위험 응답은 별도 플래그 처리되어 리뷰 대상이 됨

Agentic RAG의 강점은 자율성과 유연성에 있지만, 이를 실제 운영하기 위해서는 지속 가능한 거버넌스 구조, 투명한 작동 이력, 인간 중심의 통제 메커니즘이 함께 구축되어야만 합니다.


7장 결론

Agentic RAG는 단순 생성 AI를 넘어, 상황 판단, 도구 조합, 반복 정제가 가능한 지능형 AI 프레임워크입니다.

  • 프롬프트에만 의존하지 않고, 능동적 검색과 도구 활용을 통해 문제를 해결
  • 반복적 상호작용과 자기 수정 능력으로 정확하고 신뢰 가능한 응답 제공

이는 기업과 사용자 모두에게 더 신뢰할 수 있는 AI, 사람과 협력하는 스마트 에이전트의 가능성을 제시합니다.

About

Introducing research items on AI agent RAG.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%