Files
2nd/10_Wiki/Topics_Rag/Advanced RAG 기법.md
T
koriweb 95cd8bb891 feat(wiki): 코드 그라운딩 23문서 + MOC 학습지도 39개
- 코드 그라운딩: 기술 주제 문서의 '적용 사례'에 실제 레포 구현 위치
  (file:line)+커밋 자동 주입 (예: 문서 청킹 전략→connectai/src/retrieval/chunker.ts).
  멱등 마커(CODE-GROUNDING)로 재실행 시 갱신.
- MOC: 39개 클러스터 폴더에 _MOC.md 학습지도 생성(진입점+통찰 주석).
도구: Datacollect/scripts/{code_grounding,moc_generator}.mjs

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 18:56:11 +09:00

10 KiB

id, title, category, status, verification_status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, created_at, updated_at, review_reason, merge_history, tags, raw_sources, applied_in, github_commit
id title category status verification_status canonical_id aliases duplicate_of source_trust_level confidence_score created_at updated_at review_reason merge_history tags raw_sources applied_in github_commit
advanced-rag-기법 Advanced RAG 기법 AI_and_ML draft conceptual
Advanced RAG
고급 RAG 기법
RAG 2.0
Retrieve & Re-rank
Hybrid Search RAG
Query Transformation
A 0.96 2026-06-08 2026-06-08
research
Advanced RAG
LLM
Optimization
Hybrid Search
Re-ranking
1. RAG 파이프라인 기초 아키텍처
RAG 구축하기 - 3.2 성능 최적화 : Hybrid Search(CC& RRF) 와 Rerank
RAG 기반 AI 서비스의 신뢰성을 확보하는 방법: 자동화 평가 체계 및 운영 최적화
RAG 기술의 진화: Naive에서 Modular까지 총정리 - 슈퍼브 블로그
RAG 솔루션 디자인 및 개발 - Azure Architecture Center - Microsoft Learn
RAG의 진화: GraphRAG, Agentic RAG, CRAG의 등장 - CSLEE Tech Blog %
[Tech Series] kt cloud AI 검색 증강 생성(RAG) #2 : 데이터 파싱과 전처리 최적화
01_RAG_파이프라인_기초_아키텍처.ipynb
EnsembleRetriever implementation
HyDERetriever class
MultiQueryRetriever module

Advanced RAG 기법

🎯 한 줄 통찰 (One-line insight)

Advanced RAG는 단순한 '검색 후 생성'을 넘어, 질의 변환(Query Transformation)과 재순위화(Re-ranking) 등 정교한 전/후처리 파이프라인을 도입하여 검색의 재현율(Recall)과 답변의 정밀도(Precision)를 동시에 극대화하는 최적화 프레임워크이다 [S10, S55, S237].

🧠 핵심 개념 (Core concepts)

  • 질의 변환 (Query Transformation): 사용자 질의를 검색에 최적화된 형태로 재구성하거나 확장하여 지식 베이스와의 의미적 간극을 좁히는 기법이다 [S10, S37, S238].
  • 하이브리드 검색 (Hybrid Search): 의미 기반의 Dense Search와 키워드 기반의 Sparse Search를 결합하여 전문 용어나 숫자에 대한 정확도를 보완한다 [S12, S191, S238].
  • 재순위화 (Re-ranking): 1차 검색된 다수의 후보 문서를 Cross-encoder 모델로 정밀 평가하여 실제 답변에 가장 유용한 상위 문맥을 재정렬한다 [S11, S191, S198].
  • 자기 검증 (Self-check/Verification): 생성된 답변이 제공된 문맥에 충실한지(Faithfulness), 질문에 적합한지(Relevance)를 LLM이 스스로 평가하여 환각을 방지한다 [S11, S217, S282].

🧩 추출된 패턴 (Extracted patterns)

  • Dual-Stage Retrieval (Retrieve & Re-rank): "Bi-Encoder로 빠르게 후보 확보(Recall) → Cross-Encoder로 정밀 정렬(Precision)"하는 2단계 전략이 가장 안정적인 패턴으로 발견된다 [S191, S198, S204].
  • Reciprocal Rank Fusion (RRF): 서로 다른 검색 알고리즘의 순위 결과를 가중치 없이도 안정적으로 병합하는 표준 알고리즘 패턴이다 [S12, S182, S193].
  • Contextual Contextualization: 검색 시 작은 청크를 사용하되, 생성 단계에서는 해당 청크의 부모 문서나 주변 맥락을 함께 제공하여 정보 누락을 방지한다 (Parent Document Retriever) [S30, S35, S238].

📖 세부 내용 (Details)

1. 전처리 단계: 질의 변환 기법 [S10, S37, S82]

  • HyDE (Hypothetical Document Embedding): 질문에 대한 가상의 답변을 먼저 생성한 후 그 답변 벡터로 검색한다. 질문-문서 간의 공간적 괴리를 제거하여 검색 정확도를 높인다.
  • 질의 분해 (Query Decomposition): 복합적인 질문을 여러 하위 질문으로 나누어 각각 검색한 뒤 결과를 종합한다.
  • Step-back Prompting: 구체적인 질문을 상위 수준의 개념으로 추상화하여 넓은 범위의 관련 문서를 검색하고 원질의와 병합한다.
  • Multi-Query: LLM이 질문을 여러 관점에서 재구성(3~5개)하여 검색 누락을 최소화한다.

2. 검색 및 인덱싱 고도화 [S12, S191, S238]

  • 하이브리드 검색 결합 방식:
    • CC (Convex Combination): 각각의 점수에 가중치(\alpha)를 적용해 합산. 도메인 특성(법률 vs 일반)에 따라 비중 조절 가능.
    • RRF (Reciprocal Rank Fusion): 순위의 역수를 합산하여 결합. 점수 스케일이 달라도 안정적인 결합이 가능.
  • 의미론적 청킹 (Semantic Chunking): 고정 크기가 아닌 문장 간 임베딩 유사도가 급변하는 지점을 기준으로 분할하여 의미적 일관성을 유지한다.

3. 후처리 단계: 재순위화 및 압축 [S11, S34, S197]

  • Cross-encoder 기반 Re-ranker: 질의와 문서를 하나의 입력 시퀀스로 넣어 토큰 수준의 상호작용(Attention)을 계산한다. Bi-encoder보다 느리지만 의미적 차이를 훨씬 정밀하게 반영한다.
  • Contextual Compression: 검색된 문서에서 질의와 직접 관련된 핵심 부분만 추출하여 LLM 컨텍스트 윈도우를 효율적으로 활용한다.

4. 운영 최적화: 시맨틱 캐싱 [S221, S231]

사용자 질문이 기존 질의와 의미적으로 매우 유사(예: 유사도 0.95 이상)할 경우, 벡터 DB에서 기존 답변을 즉시 반환함으로써 비용을 절감하고 응답 속도를 개선한다.

⚖️ 모순 및 업데이트 (Contradictions & updates)

  • 속도 vs 정확도: Cross-encoder(Re-ranker)는 정확하지만 연산량이 많아 수천 개 문서를 실시간 처리하기 어렵다. 따라서 상위 50~100개로 후보를 좁힌 뒤 적용하는 것이 실무 표준이다 [S197, S210].
  • 지표의 중요성: RAG 성능은 단순히 관련 문서를 가져왔는지(Recall)보다, 정답이 상위권에 배치되었는지(Precision@k)가 LLM 답변 품질에 더 결정적인 영향을 미친다 [S195, S208].

🛠️ 적용 사례 (Applied in summary)

  • Ensemble Retriever: vector(k=4)BM25(k=4)를 가중치 [0.5, 0.5] 또는 도메인에 맞춰 조정하여 결합한 사례가 기술되어 있다 [S33, S36].
  • Parent Document Retriever: 부모 청크 2000자, 자식 청크 400자로 설정하여 정밀 검색과 풍부한 문맥을 동시에 확보하는 실무 전략이 발견된다 [S36, S81].
  • RAGAS 평가: Context Precision, Faithfulness, Answer Relevance 지표를 통해 Advanced RAG의 각 단계를 정량적으로 평가하고 튜닝하는 체계가 적용되었다 [S217, S226].

검증 상태 및 신뢰도

  • 상태: draft
  • 검증 단계: conceptual (실제 구현 코드 패턴이 소스에 다수 포함됨)
  • 출처 신뢰도: A (Microsoft, Azure, kt cloud, LangChain 가이드 등 기술적 근거가 명확함)
  • 신뢰 점수: 0.96
  • 중복 검사 결과: 신규 생성 (New discovery)

상위/유사 개념

[아키텍처/기반 기술]

[진화된 기술 (RAG 2.0)]

  • Agentic RAG
    • 연결 이유: 고정된 파이프라인 대신 에이전트가 상황에 맞는 검색 전략을 동적으로 수립 [S280, S293].
  • CRAG
    • 연결 이유: 검색 결과의 품질을 평가하여 웹 검색 등으로 교정하는 메커니즘 추가 [S282, S295].

심층 후속 질문 (Deeper Research Questions)

  • Re-ranker 도입 시 발생하는 Latency 오버헤드가 동시 접속자가 많은 환경에서 병목 현상을 일으키지 않게 설계하는 방법은? [S197, S210]
  • HyDE 기법에서 LLM이 생성한 '가상 답변' 자체가 심각한 오류를 포함할 경우 검색 품질에 어떤 영향을 미치는가? [S10, S55]
  • RRF(Reciprocal Rank Fusion)에서 상수 k값(보통 60)을 도메인 데이터의 밀도에 따라 동적으로 최적화할 수 있는가? [S193, S206]
  • 시맨틱 캐싱의 임계값(Threshold)을 답변의 민감도(금융/의료 등)에 따라 어떻게 차등화해야 하는가? [S222, S231]

실무 적용 맥락 (Practical Application Contexts)

  • Implementation: LangChain의 EnsembleRetriever, ContextualCompressionRetriever 클래스를 활용해 구현 [S33, S34, S220].
  • System Design: Dual-Stage Retrieval 아키텍처를 채택하여 검색 속도와 정확도의 균형을 맞춤 [S198, S211].
  • Operation / Maintenance: RAGAS 지표를 모니터링하여 특정 질의 변환 기법의 유효성을 지속적으로 검증 [S217, S226].
  • Learning Path: Naive RAG 구축 → 하이브리드 검색 추가 → Re-ranker 도입 → 질의 변환 및 자기 검증 추가 순으로 확장 권장 [S1, S45].

인접 주변 주제

  • 문서 청킹 전략
    • 확장 방향: Advanced RAG 성능의 기초가 되는 시맨틱/계층적 청킹 기술 심화 이해 [S16, S238].

🔗 지식 그래프 (Knowledge Graph)

📚 출처 (Sources)

  • [S10] Advanced RAG 정의 및 주요 기법 (devspoon)
  • [S11] Re-ranking 및 자기 검증 단계 상세 (devspoon)
  • [S12] 하이브리드 검색 및 모듈형 RAG (devspoon)
  • [S30] 검색 방식 비교표 (MMR, Multi-Query 등) (devspoon)
  • [S37] 질의 변환 기법 상세 (HyDE, Decomposition 등) (devspoon)
  • [S191] Hybrid Search와 Re-Rank 정밀 분석 (hjjummy)
  • [S198] Dual-Stage Retrieval 파이프라인 역할 분담 (hjjummy)
  • [S217] RAGAS 프레임워크와 RAG Triad 지표 (교보DTS)
  • [S237] Naive RAG의 한계와 Advanced RAG의 해결책 (슈퍼브 블로그)
  • [S282] CRAG(Corrective RAG) 작동 원리 및 정제 단계 (CSLEE Tech Blog)

📝 변경 이력 (Change history)

  • 2026-06-08: Initial draft generated via Datacollector_MAC P-Reinforce engine.