Better Together: 강한 RAG 베이스라인 위에서 쿼리 리라이팅 조합하기
Better Together: Complementary Query Rewriting Under a Strong RAG Baseline
TL;DR Highlight
쿼리 리라이팅을 합치고 점수 낮을 때만 돌렸더니 비용 40%로 효과 절반
Who Should Read
RAG에 쿼리 리라이팅을 붙였지만 LLM 호출 비용 대비 효과가 애매해 고민인 백엔드 개발자
Core Mechanics
- 리라이팅 하나로는 크게 안 오른다
- reranking과 MMR까지 갖춘 강한 베이스라인 위에서는 리라이팅 단독 이득이 작았다.
- 데이터셋마다 1등 방법이 달라서 하나만 고르기 어렵다.
- 여러 방법을 합치면 크게 오른다
- 방법마다 틀리는 질문이 달라서 합치면 서로 보완된다.
- 기업 문서 데이터에서 4개 합친 HIT@10이 51.70으로 dense 베이스라인 39.22보다 12.5점 높았다.
- 검색 예산만 늘린 게 아니다
- TopK-100 reranking이나 multi-pass HNSW로 예산만 맞춰도 이득의 40~41%만 나왔다.
- 나머지 약 60%는 방법 간 보완 효과였다.
- 문서가 비슷하게 겹치면 합쳐도 손해다
- AmbigNQ는 방법들이 거의 같은 문서를 가져온다(Jaccard@10 0.55~0.99).
- 합치면 최고 단독 방법보다 2.4점 낮아졌다.
- 점수 낮을 때만 리라이팅하는 라우터
- S1(원 쿼리 검색)의 top-1 reranker 점수가 0.65 미만이면 Query2Doc을 같이 돌려 합친다.
- 기업 데이터에서 쿼리의 39%만 확장하고도 풀 머지 이득의 절반(+4.3)을 얻었다. 단, 시뮬레이션 결과다.
Evidence
- 기업 데이터 조합 결과
- EnterpriseRAG-Bench(470문항)에서 S1+S3+S4+HyDE는 HIT@10 51.70으로 S1 39.22보다 12.5점 높았다.
- 5개 방법 합산은 52.98(+13.8)이고 oracle은 55.74였다(seed 42).
- 예산 맞춤 대조군
- Enterprise에서 TopK-100 reranking과 multi-pass HNSW는 둘 다 HIT@10 약 44.3(S1 대비 +5점)이었다.
- 4개 조합 이득 +12.5점의 40~41%만 설명했다.
- 라우터 시뮬레이션(τ=0.65)
- Enterprise HIT@10은 S1 39.22에서 43.55로 올랐고 확장 비율은 39.0%였다. Always merge는 47.94였다.
- AmbigNQ는 7.2%만 확장해 93.76(S1 93.67)이었고, always merge는 93.42였다.
- 답변 품질
- Enterprise 200문항, GPT-4.1 reader 기준으로 라우터는 S1 대비 F1이 +1.92 올랐다(p=0.008).
- always merge는 +2.46이었고 둘의 차이(−0.54)는 유의하지 않았다.
How to Apply
- 오늘 내 RAG 로그에서 top-1 점수 분포 보기
- 정답 문서가 top-10에 있던 질문과 없던 질문의 reranker top-1 점수를 나눠 평균을 계산한다.
- 두 평균의 중간값을 임계값 τ 후보로 잡는다(논문은 0.711과 0.612의 중간인 0.65 사용).
- 점수가 낮을 때만 Query2Doc 붙이기
- top-1 점수가 τ 미만이면 가짜 답변 문서를 LLM으로 만들어 추가 검색하고, 원 결과와 문서별 최대 점수로 합쳐 top-K를 뽑는다.
- τ 이상이면 원 쿼리 결과만 반환한다.
- 합치기 전에 결과 겹침부터 재기
- 방법별 top-10 문서 리스트의 Jaccard를 측정한다.
- 겹침이 0.55 이상으로 높으면 합치지 말고 단독 방식을 유지한다.
- 겹침이 낮은 기업 문서형 코퍼스에서만 조합을 켠다.
- 싼 리라이팅이 필요하면 S4 쓰기
- 원 쿼리와 대안을 비교하는 질문 하나만 LLM으로 만들어 추가 검색한다.
- 호출 비용이 부담될 때 Query2Doc 대신 쓴다.
Try It
# Claude나 ChatGPT에 붙여넣기 (논문 방법의 간이 버전: 쿼리 리라이팅 3종 생성)
아래 사용자 질문으로 검색용 쿼리를 3개 만들어줘.
1) Query2Doc: 질문에 대한 짧은 가짜 답변 문단
2) Synonym: 다른 단어로 바꾼 질문 (S3)
3) Comparative: 대상과 대안을 비교하는 질문 (S4)
질문: {{질문}}
이어서 해 볼 것: 세 쿼리로 각각 검색해 top-10 문서 ID를 모은 뒤, 원 쿼리 결과와 겹치는 정도를 비교해 봐.Terminology
관련 논문
트랜스포머는 '기억 저장소'에서 처음부터 만들어 낼 수 있었다
선형층→MLP→self-attention을 기억 저장소로 보면 용량이 64→약 2,700→100만 이상
400년치 고문서에 AI를 돌렸더니 잊힌 운석·코뿔소·화산 폭발이 나왔다
임베딩 검색과 싼 필터 모델로 400년 고문서를 뒤져 미기록 사건 발굴
EmbeddingGemma 2: 텍스트·이미지·오디오·비디오를 한 벡터 공간에 넣는 오픈 경량 임베딩 모델
740M 오픈 모델 하나로 텍스트·이미지·오디오·비디오를 같은 벡터 공간에서 검색
RAG-NAROK: 출처를 직접 반박하는 문서로 RAG 지식베이스를 오염시키는 공격
검색된 출처를 겨냥해 반박문을 심었더니 1위 검색과 탐지 회피가 높아졌다
텍스트냐 이미지냐 둘 다냐: 멀티모달 문서 QA 입력 방식 비교
문서 QA에서 페이지 이미지가 정확도는 높지만 느려서, 질문별 라우터로 지연 30% 줄였다
MS 임원이 AI 스크래핑을 '인류 역사상 최대의 노동 도둑질'이라 불렀다는 NYT 소송 공개 문서
NYT 소송 공개 문서에서 MS·OpenAI 내부의 스크래핑 인식이 드러났다
임베딩의 보편적 기하 구조 활용: 짝 데이터 없이 임베딩 공간 간 변환
짝 데이터 없이 임베딩을 다른 모델 공간으로 옮겼고, 벡터 DB 보안 위험이 드러났다
Related Resources
Original Abstract (Expand)
A popular way to improve Retrieval-Augmented Generation (RAG) is to rewrite the user's question into several variants and search with all of them. We test whether this actually helps once the underlying search is already strong. Under one fixed, competitive pipeline (BGE dense retrieval, cross-encoder reranking, and MMR diversification), we compare four query-rewriting strategies (S1-S4) against two strong LLM baselines (HyDE, Query2Doc) on three datasets (HotpotQA, AmbigNQ, and the 512K-document EnterpriseRAG-Bench) over three seeds with paired-bootstrap significance tests. Our headline result is that rewriting alone is at best competitive with a strong baseline, but combining methods yields outsized gains because different strategies fail on different questions. A post-hoc union of four methods (S1+S3+S4+HyDE) improves HIT@10 over the baseline by +12.5 points on enterprise data (51.70 vs 39.22), and a five-method union reaches 52.98 (+13.8). Budget-matched controls capture only ~40% of this gain, confirming that complementarity, not retrieval budget, is the primary driver. On HotpotQA the union adds +1.6 to +1.8 points (p<0.001), saturating the all-method oracle; on AmbigNQ the same fusion hurts (-2.4 below the best solo, p<0.001), and we analyze when and why. Because rewriting is expensive, we evaluate in simulation a confidence-gated router that runs rewriting only when the baseline's own top-1 score is low. It captures about half of the enterprise full-merge gain (+4.3 HIT@10) while paying rewriting cost on <40% of queries, and automatically declines to rewrite on AmbigNQ. A downstream answer-quality evaluation confirms the router improves F1 by +1.92 (p<0.01) at roughly 40% of the expansion cost. In short: treat query rewriting as a complementary coverage source, applied through cost-aware routing, not as a standalone replacement for a strong baseline.