10 KiB
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 |
|
A | 0.96 | 2026-06-08 | 2026-06-08 |
|
|
|
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): 순위의 역수를 합산하여 결합. 점수 스케일이 달라도 안정적인 결합이 가능.
- CC (Convex Combination): 각각의 점수에 가중치(
- 의미론적 청킹 (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)
🔗 관련 문서 링크 (Related document links)
상위/유사 개념
[아키텍처/기반 기술]
- RAG 아키텍처 및 파이프라인 기초
- 연결 이유: Advanced RAG는 기초 파이프라인의 각 단계를 고도화한 형태임 [S9, S54].
- 텍스트 임베딩 모델
- 연결 이유: 질의 변환(HyDE) 및 시맨틱 청킹의 핵심 엔진 역할을 함 [S23, S238].
[진화된 기술 (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)
- 상위/루트: RAG 아키텍처 및 파이프라인 기초
- 관련 개념: 하이브리드 검색, Re-ranking, 질의 변환, RAGAS 평가 지표, 시맨틱 캐싱
- 참조 맥락: 고도화된 기업용 질의응답 시스템의 검색 품질 향상을 위한 설계 지침으로 활용.
📚 출처 (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.