RAG SOTA: 7가지 파이프라인 테스트 및 SEQUOIA (오픈 소스) 구축기
요약
실제 환경의 정제되지 않은 데이터를 대상으로 7가지 RAG 파이프라인을 벤치마킹하고, 새로운 오픈 소스 아키텍처인 SEQUOIA를 제안합니다. Step-back prompting과 RAPTOR 트리 클러스터링을 결합하여 검색 성능을 극대화하는 방법을 다룹니다.
핵심 포인트
- 실제 데이터 환경에서는 Graph RAG보다 Step-back prompting의 효과가 더 큼
- Step-back prompting은 검색 재현율을 약 15% 향상시킴
- RAPTOR 트리 클러스터링을 통한 계층적 검색의 중요성
- 로컬 LLM만으로도 방법론 간의 상대적 성능 비교 가능
RAG SOTA: 7가지 파이프라인 테스트 및 SEQUOIA (오픈 소스) 구축기
로컬 하드웨어에서 20시간 이상의 연산 시간을 투입하여, 실제 환경의 작업들을 대상으로 7가지 RAG 구성을 벤치마킹했습니다. 결과는 저를 놀라게 했으며, 검색 아키텍처(retrieval architecture)에 대한 제 생각을 바꾸어 놓았습니다.
이것이 중요한 이유
2026년 현재 RAG는 어디에나 존재합니다. 모두가 자신의 파이프라인이 "SOTA(State-of-the-Art, 최첨단)"라고 주장하지만, 대부분의 벤치마크는 장난감 데이터셋(toy datasets)을 사용합니다. 저는 다음과 같은 상황에서 실제로 무엇이 작동하는지 확인하고 싶었습니다:
- 정제되지 않은 실제 문서 (깨끗한 학술 코퍼스가 아닌 경우)
- 로컬 LLM (GPT-4보다 약간 성능이 낮은 경우)
- 프로덕션 제약 조건 (지연 시간(latency), 비용, 정확도 간의 트레이드오프)
테스트된 7가지 구성
| 방법 (Method) | 접근 방식 (Approach) | 점수 (Score) |
|---|---|---|
| No-RAG | 직접적인 LLM 생성 | 기준점 (Baseline) |
| ... |
나를 놀라게 한 점들
LightRAG의 저조한 성능
Twitter에서 화제가 되었던 "그래프 RAG 혁명(graph RAG revolution)"은 실제 데이터에서는 유지되지 않았습니다. LightRAG는 제가 "절차적 가열(procedural warming)"이라고 부르는 현상을 만들어냈습니다. 겉보기에는 정교해 보이지만 검색 품질은 평범했습니다. 학술적 벤치마크는 프로덕션의 현실과 다릅니다.
과소평가된 Step-back prompting
대부분의 RAG 시스템은 문자 그대로의 쿼리(literal query)를 기반으로 검색하기 때문에 실패합니다. Step-back prompting (검색 전 쿼리를 더 일반적인 형태로 재작성하는 방식)은 전반적으로 재현율(recall)을 약 15% 향상시켰습니다. 이를 RAPTOR 트리 클러스터링(tree clustering)과 결합하면 실제로 의미 있는 검색 계층 구조를 생성할 수 있습니다.
로컬 LLM의 평가 능력
저는 요약 및 판정(judging)을 위해 로컬 모델을 사용했습니다. GPT-4보다 약간 약한 것은 사실이지만, 방법론 간의 상대적 순위는 일관되게 유지되었습니다. 이는 API 크레딧을 낭비하지 않고도 프로토타입을 만들고 벤치마킹할 수 있음을 의미합니다.
SEQUOIA 아키텍처
사용자 쿼리 (User Query)
↓
Step-back Prompting (일반화)
...
RAPTOR = Recursive Abstractive Processing for Tree-Organized Retrieval. 리프 노드(leaf nodes)를 클러스터링하고, 위로 올라가며 요약하고, 여러 추상화 수준에서 검색합니다.
Step-back = 검색하기 전에 질문합니다: "이 구체적인 질문 뒤에 숨겨진 일반적인 원칙은 무엇인가?"
결과
나의 테스트 세트(은행 문서, 기술 매뉴얼, 내부 위키) 기준:
| 방법 (Method) | 정밀도 (Precision) | 재현율 (Recall) | 지연 시간 (Latency) |
|---|---|---|---|
| Classical RAG | 0.62 | 0.58 | 120ms |
| ... |
SEQUOIA Pro는 정확도를 위해 약간의 지연 시간 (Latency)을 희생합니다. SEQUOIA (basic) 버전은 프로덕션 (Production) 환경을 위한 최적의 지점 (Sweet spot)입니다.
코드 및 재현성 (Code & Reproducibility)
모든 것은 오픈 소스 (Open source)입니다:
🔗 github.com/Diyago/rag-benchmark
- 7가지 구현체 전체
- 평가 데이터셋 (익명화됨)
- 로컬 LLM 설정을 위한 구성 (Configs)
- 분석을 위한 노트북 (Notebooks)
프로덕션을 위한 교훈 (Lessons for Production)
- 학술적 벤치마크 (Academic benchmarks)를 맹목적으로 믿지 마세요. 당신의 데이터로 직접 테스트하세요.
- 계층적 검색 (Hierarchical retrieval)이 평면적 검색 (Flat)보다 우수합니다. RAPTOR의 트리 구조는 인간이 실제로 지식을 조직하는 방식과 일치합니다.
- 쿼리 재작성 (Query rewriting)은 비용 없는 성능 향상입니다. Step-back 프롬프팅은 지연 시간 (Latency) 비용이 거의 들지 않으면서 검색 성능을 크게 향상시킵니다.
- 로컬 평가 (Local evaluation)는 실행 가능합니다. 방법론들을 상대적으로 비교하기 위해 반드시 GPT-4가 필요한 것은 아닙니다.
향후 계획 (What's Next)
다음 기능들을 통해 SEQUOIA를 확장하고 있습니다:
- 멀티모달 검색 (Multi-modal retrieval) (이미지 + 텍스트)
- 스트리밍 컨텍스트 압축 (Streaming context compression)
- 적응형 깊이 (Adaptive depth) (단순한 쿼리에는 얕게, 복잡한 쿼리에는 깊게)
추가 AI 엔지니어링 노트 (More AI Engineering Notes)
저는 은행 내부에서 경험하는 실무적인 AI/ML에 대해 글을 씁니다 — RAG 시스템, LLM 배포, 팀 관리, 그리고 실제로 작동하는 것과 단순한 유행(Hype) 사이의 차이점에 대해서 말이죠.
텔레그램 채널 (러시아어, 기술 중심): AI.Insaf
실제 데이터로 RAG를 벤치마킹해 보셨나요? 무엇이 놀라웠나요? 댓글을 남기거나 텔레그램으로 연락해 주세요.
이 기사는 또한 텔레그램 채널 AI.Insaf에도 게시되었습니다 — 은행 실무에서의 AI/ML, 벤치마크, 그리고 DS 팀 관리에 관한 내용을 다룹니다.
신속한 분석과 실무 사례를 위해 채널을 구독하세요: https://t.me/ai_tablet
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기