AI.zip
  • AI 모델
  • 방법론
  • AI 서비스
  • 가격 비교
  • 블로그

AI.zip

AI 모델, 서비스, 방법론을 큐레이션하는 에디토리얼 플랫폼

탐색

  • AI 모델
  • AI 서비스
  • 방법론
  • 블로그

커뮤니티

  • 소개
  • 디스코드 참여
  • 문의

법적고지

  • 이용약관
  • 개인정보처리방침

© 2026 ai.zip. All rights reserved.

Discord 커뮤니티
방법론RAG (Retrieval-Augmented Generation)Modular RAG

Modular RAG

RAG (Retrieval-Augmented Generation)

쉽게 이해하기

레고 블록을 조립하듯이 필요한 기능만 골라서 끼워 맞추는 방식이에요. 검색하고 답변하는 과정을 여러 개의 독립된 부품으로 나눠놓고, 상황에 따라 다르게 조합합니다. 고정 메뉴만 파는 식당이 아니라 뷔페처럼 원하는 것을 골라 담는 거예요.

예를 들어, 고객 문의를 처리하는 AI에는 "질문 분류 부품 + 문서 검색 부품 + 답변 생성 부품"을 조합합니다. 연구 자료를 분석하는 AI에는 "논문 검색 부품 + 요약 부품 + 비교 분석 부품"을 조합하는 식이죠.

아마존(Amazon)은 상품 추천, 고객 응대, 재고 관리 등 각기 다른 AI 서비스에 부품을 다르게 조합해서 씁니다. 네이버 하이퍼클로바가 서비스별로 다른 검색 방식을 조합해 활용하는 것이 이에 해당합니다.

이 방식의 가장 큰 장점은 유연함입니다. 새로운 기능이 필요하면 부품 하나만 추가하면 되고, 문제가 생기면 해당 부품만 교체하면 돼요.

기술 심층 분석

📚 선수학습: 이 내용을 이해하려면 Advanced RAG를 먼저 읽으면 좋습니다.

핵심 아키텍처

Modular RAG는 RAG 시스템을 **교체 가능한 모듈(module)**들의 조합으로 재정의한 패러다임이다. Gao et al. (2024)이 제안한 이 프레임워크는 Naive RAG와 Advanced RAG의 고정된 파이프라인 구조를 넘어, 태스크에 따라 모듈을 자유롭게 조합할 수 있는 유연한 아키텍처를 제공한다.

핵심 모듈 유형은 다음과 같다:

┌─────────────────────────────────────────────────┐
│              Modular RAG Framework               │
├─────────┬──────────┬───────────┬────────────────┤
│ Indexing │ Pre-Ret. │ Retrieval │  Post-Ret.     │
│ Module   │ Module   │ Module    │  Module        │
├─────────┼──────────┼───────────┼────────────────┤
│•Chunking │•Query    │•Dense     │•Reranking      │
│•Hier.    │ Rewrite  │•Sparse    │•Filtering      │
│ Index    │•Query    │•Hybrid    │•Compression    │
│•Graph    │ Route    │•Graph     │•Summarization  │
│ Index    │•Query    │ Traversal │                │
│          │ Decomp.  │           │                │
├─────────┴──────────┴───────────┴────────────────┤
│            Orchestration Layer                    │
│     (선형 / 분기 / 루프 / 에이전트 제어)           │
└─────────────────────────────────────────────────┘

오케스트레이션 레이어가 Modular RAG의 핵심 차별점이다. 이 레이어는 모듈 간의 실행 흐름을 제어하며, 네 가지 패턴을 지원한다:

  1. 선형(Linear): M1→M2→…→MnM_1 \rightarrow M_2 \rightarrow \ldots \rightarrow M_nM1​→M2​→…→Mn​ — Naive/Advanced RAG와 동일
  2. 분기(Branching): 질의 유형에 따라 다른 경로 선택 — Query Router1가 담당
  3. 루프(Loop): 검색-생성을 반복하며 답변 품질을 점진적으로 개선
  4. 에이전트(Agent): LLM이 어떤 모듈을 호출할지 자율적으로 결정

Query Routing은 질의를 분류하여 최적의 파이프라인으로 분배한다. 예를 들어, 사실 확인 질의는 키워드 검색 경로로, 추론 질의는 다단계 검색 경로로 보낸다:

route(x)=arg⁡max⁡r∈R  p(r∣x)\text{route}(x) = \arg\max_{r \in \mathcal{R}} \; p(r \mid x)route(x)=argmaxr∈R​p(r∣x)

성능 및 비교

Modular RAG의 강점은 태스크별 최적화에 있다. 동일한 프레임워크 내에서 구성만 바꿔 다양한 시나리오에 대응한다:

시나리오모듈 조합효과
단순 QADense 검색 → 생성낮은 레이턴시
기술 문서 QA하이브리드 검색 → Reranking → 생성높은 정확도
복합 추론쿼리 분해 → 다단계 검색 → 종합 생성Multi-hop 대응
실시간 대화쿼리 라우팅 → 캐시/검색 분기 → 생성효율성

장점과 한계

장점:

  • 유연성: 새로운 기법이 나오면 해당 모듈만 교체하면 됨
  • 재사용성: 한 번 구축한 모듈을 다른 프로젝트에서도 활용 가능
  • 점진적 개선: 모듈 단위로 A/B 테스트 및 최적화 가능

한계:

  • 설계 복잡도 증가 — 모듈 간 인터페이스 정의와 오케스트레이션 로직 필요
  • 모듈 조합의 폭발적 증가: nnn개 모듈에서 가능한 파이프라인 수가 기하급수적
  • 오케스트레이션 오버헤드로 인한 레이턴시 증가 가능

실무 적용 가이드

  1. LlamaIndex의 QueryPipeline 또는 LangGraph를 오케스트레이션 레이어로 활용
  2. Query Router는 소형 분류 모델(e.g., deberta-v3-base 파인튜닝) 또는 LLM few-shot으로 구현
  3. 모듈 인터페이스를 표준화하라 — 입력/출력 포맷을 통일하면 교체가 용이
  4. 관찰 가능성(Observability) 확보: 각 모듈의 입출력을 로깅하여 병목 구간 파악
  5. 처음부터 모든 모듈을 구현하지 말고, 핵심 경로(critical path) 먼저 구축 후 확장

Footnotes

  1. Query Router는 사용자 질의를 분석하여 가장 적합한 검색/생성 파이프라인으로 분기하는 모듈이다. 의도 분류(intent classification)와 유사한 역할을 한다. ↩

이전글

MCP (Model Context Protocol)

다음글

Naive RAG

댓글

0개

댓글을 작성하려면

로그인

해주세요

방법론 정보

상위 카테고리

RAG (Retrieval-Augmented Generation)

관련 게시글

3개

사용 서비스

0개

관련 게시글

AI 기반 시맨틱 검색 엔진 구축하기: 하이브리드 검색 완전 가이드

TUTORIAL

RAG 완전 정복: 개념부터 프로덕션 배포까지 (2025)

GUIDE

RAG 완전 구현 가이드: 검색 증강 생성 시스템 만들기 (2025)

TUTORIAL

관련 방법론

Advanced RAG

Agentic RAG

Corrective RAG (CRAG)

Graph RAG

Hypothetical Document Embeddings (HyDE)

Naive RAG

RAG Fusion

Self RAG