DecisionRAG: 문서의 구조를 따라가며 필요한 근거 찾기
문장을 생성하지 않고 후보 문서들을 함께 판단하는 결정 모델로, 문서 계층을 탐색해 필요한 근거를 찾았습니다.
쉽게 말하면비유하자면 도서관에서 단어가 비슷한 책만 뽑는 대신, 주제별 서가에서 책, 장 순서로 좁혀 가며 찾는 방식이다. 단계마다 여러 후보를 한꺼번에 놓고 견준다. 한 번 지나친 서가는 그 질문에서는 다시 돌아보지 않는다.
- 왜 봐야 하나
- 문서를 찾아 답하는 AI(RAG)를 만드는 사람에게 검색 단계를 바꿀 한 가지 방법을 보여 준다. 다만 문서 구조와 설명이 부실하면 잘못 찾을 수 있다. 속도와 비용 수치는 측정 조건이 서로 달라 직접 재 봐야 한다.
이 논문은 검색(retrieval)이 언어 모델의 능력에 비해 뒤처져 있다는 '능력 비대칭' 문제를 다룬다. 기존 검색기는 단어 매칭이나 고정된 임베딩 유사도에 의존해, 검색기가 놓친 문서는 아무리 뛰어난 생성 모델도 복구할 수 없다. 저자들은 DecisionRAG라는 방법을 제안한다. 이는 토큰을 생성하지 않고 후보 가지를 한 번의 순전파로 평가하는 결정 모델(decision model)을 사용해, 말뭉치의 계층 구조를 넓은 주제에서 개별 문단으로 좁혀가며 탐색한다. 사전 학습된 결정 모델만으로, 8B 재순위화기를 사용한 밀집 검색보다 MultiDoc2Dial에서 R@1 13.8%p, Natural Questions에서 Hit@1 17.4%p 높은 성능을 보였고, 질의당 0.7~1.8초의 지연 시간을 기록했다.
알아낸 것
- 과제별 추가 학습 없는 Jev 기반 DecisionRAG는 MultiDoc2Dial의 첫 번째 정답 근거 검색률을 33.6%에서 47.4%로, Natural Questions에서는 48.0%에서 65.4%로 높였습니다. 비교 대상은 dense 검색 상위 100개와 Qwen3-Reranker-8B를 조합한 방식입니다.
- Qwen3.5-27B가 상위 5개 근거로 답하도록 한 MTRAG 실험에서 답변 정답 판정률은 비교 방식의 39.4%에서 44.1%로 올랐습니다. 검색 점수 향상이 모든 답변 지표의 우위를 뜻하지는 않습니다.
- 네 데이터셋의 측정 환경에서 검색 중앙 지연 시간은 0.68~1.76초, 질의당 API 비용은 0.22~2.33센트였습니다. 온라인 측정이며 문서 구조를 만드는 사전 처리 비용은 제외됩니다.
한계와 주의할 점
- 문서 구조와 제목·설명이 부실하면 탐색을 잘못할 수 있으며, 앞 단계에서 버린 가지는 같은 질의에서 다시 살펴보지 않습니다.
- Natural Questions에서는 페이지 제목·첫 문장을 임베딩해 계층을 미리 만들었습니다. 검색 시 별도 1차 검색기가 필요 없다는 뜻이지 사전 처리나 임베딩을 전혀 쓰지 않았다는 뜻은 아닙니다.
- 속도 비교의 서버·하드웨어·표본이 다릅니다. dense 후보를 합친 변형의 시간에는 이미 저장한 후보를 불러온 뒤의 처리만 포함되므로 전체 서비스 속도 향상으로 일반화할 수 없습니다.
용어 풀이
- 결정 모델 (Decision Model)
- 컨텍스트와 질문들을 받아 각 질문의 답변 옵션에 대한 확률 분포를 토큰 생성 없이 한 번의 순전파로 반환하는 모델. 예를 들어 Jev는 예/아니오 질문에 P(Yes)를 출력한다. DecisionRAG에서 후보 가지의 관련성을 평가하는 핵심 구성 요소다. 답변 토큰을 만들지 않아도 입력을 읽는 계산과 API 비용은 든다.
- 병렬 이진 판단 (Parallel Binary Judgments)
- 여러 후보를 같은 입력 맥락에서 예/아니오 질문으로 평가하는 방식. 다중 선택처럼 255개로 정해진 옵션 제한은 없지만 입력 길이와 처리 자원에는 제약이 있어 큰 집합은 여러 요청으로 나눈다.
- 다중 선택 판단 (Multiple-Choice Judgments)
- 하나의 질문에 여러 답변 옵션을 주고 옵션 간 확률 분포를 얻는 방식. 옵션 수가 제한적(예: Jev는 255개)이므로 상위 후보만 비교해 최종 순위를 다듬는 데 사용된다.
- 가지치기 (Pruning)
- 계층 탐색에서 관련성이 낮은 가지를 제거하고 그 하위 노드를 더 이상 평가하지 않는 것. 비가역적이어서 관련 문단을 놓칠 위험이 있지만, 탐색 공간을 줄여 비용과 지연 시간을 낮춘다.
- 공유 컨텍스트 (Shared Context)
- 여러 후보를 하나의 컨텍스트에 함께 넣어 모델이 서로를 비교하며 관련성을 판단하게 하는 방식. 개별 평가보다 관련성 추정치가 비교 가능해져 순위 정확도가 올라간다.
더 깊이 읽기 읽는 데 약 9분
배경과 문제
검색 증강 생성(RAG)은 외부 말뭉치에서 증거를 가져와 최신 정보를 제공하고 답변의 근거를 제시한다. 하지만 검색 단계는 여전히 BM25 같은 어휘 매칭이나 고정된 임베딩 공간에서의 유사도에 의존한다. 이로 인해 검색기와 생성 모델 사이에 '능력 비대칭'이 생긴다. 검색기가 관련 문서를 찾지 못하면, 생성 모델이 아무리 뛰어나도 그 문서를 볼 수 없기 때문이다.
이상적으로는 생성 모델만큼 유능한 모델이 무엇을 검색할지 결정해야 한다. 에이전트 방식은 LLM이 단계별로 말뭉치를 탐색하게 하지만, 매 단계마다 많은 토큰을 생성해야 해서 느리고 비용이 많이 든다. 재순위화기는 1단계 검색기가 반환한 후보만 재정렬할 수 있어, 초기 검색의 재현율 한계를 넘지 못한다. 결정 모델은 토큰을 생성하지 않고 여러 질문에 대한 확률 분포를 한 번의 순전파로 반환하므로, 검색에 LLM의 능력을 빠르게 적용할 수 있는 새로운 대안이다.
기존 접근의 한계
전통적인 검색 방법인 BM25와 밀집 검색기는 각각 어휘 매칭과 학습된 임베딩 유사도로 문단을 순위화한다. 신경 재순위화는 언어 모델 기반의 관련성 추정으로 순위를 개선하지만, 1단계 검색기가 이미 반환한 후보 풀에 제한된다. 예를 들어, 밀집 검색 상위 100개에 8B 재순위화기를 적용해도, 초기 검색이 관련 문단을 놓치면 재순위화기가 이를 복구할 수 없다.
LLM을 검색에 직접 통합하는 연구도 있다. 에이전트 방식은 추론과 검색 엔진 사용을 번갈아 수행하며, MemWalker나 PageIndex 같은 계층적 탐색 방법은 요약이나 목차를 따라간다. 그러나 이들은 각 단계에서 토큰을 순차적으로 생성해야 하므로, 여러 라운드의 추론이 필요한 경우 지연 시간이 크게 늘어난다. 결정 모델은 후보를 공동으로 평가해 관련성 추정치를 비교 가능하게 만들 수 있어, 이러한 한계를 우회할 가능성을 제시한다.
연구방법을 단계별로
DecisionRAG는 말뭉치를 트리로 보고, 잎은 문단이고 내부 노드는 주제 클러스터, 문서, 섹션 등으로 그룹화한다. 각 노드는 짧은 텍스트 설명을 가진다. 질의가 주어지면, 결정 모델이 각 수준의 후보를 병렬 이진 판단으로 평가한다. 예를 들어, 문서 선별 단계에서는 '이 문서가 질의와 관련 있는가?'라는 예/아니오 질문을 모든 후보 문서에 대해 한 번의 순전파로 던지고, 각 문서의 P(Yes)를 관련성 점수로 사용한다. 상위 k개 문서만 유지하고 나머지 가지는 가지치기한다.
선택된 문서의 문단들로 확장한 뒤, 다시 병렬 이진 판단으로 문단을 평가한다. 이때 공유 컨텍스트에는 질의와 모든 후보 문단이 포함되어, 모델이 서로를 비교하며 관련성을 판단하게 한다. 마지막으로 선택적으로 다중 선택 판단을 적용해 상위 m개 문단을 경쟁 대안으로 비교하고 최종 순위를 다듬는다. 이진 판단에는 다중 선택의 고정 옵션 수 제한이 없지만 입력 길이와 서버 용량 제약은 있다. 재현율을 중시하는 내부 수준에 사용하고, 다중 선택 판단은 상위 후보를 직접 비교해 정밀도를 높인다.
말뭉치에 기존 계층 구조가 없으면 오프라인에서 클러스터링으로 만들 수 있다. Natural Questions에서는 Wikipedia 페이지 제목과 첫 문장의 e5-base-v2 임베딩으로 k-means 클러스터링해 1,000개 그룹을 만들고, Qwen3-8B가 각 그룹을 한 문장으로 요약한다. 한 수준의 후보가 너무 많으면 병렬 요청으로 나누고, 상위 후보는 다시 하나의 요청으로 재점수화한다. 가지치기는 비가역적이므로 예산은 재현율 쪽으로 기울인다. 과제별로 따로 마련한 설계 자료에서 구조와 탐색 예산을 골랐으므로, 추가 모델 학습이 없다는 말이 설정 조정도 전혀 없다는 뜻은 아니다.
결과와 숫자의 의미
사전 학습된 Jev 결정 모델을 사용한 DecisionRAG는 작업 특화 학습이나 1단계 검색기 없이도 밀집 검색 + 8B 재순위화기보다 우수했다. MultiDoc2Dial에서 R@1이 33.6%에서 47.4%로 13.8%p 상승했고, Natural Questions에서 Hit@1이 48.0%에서 65.4%로 17.4%p 상승했다. 다만 모든 지표에서 최고는 아니어서, Natural Questions의 R@10은 Qwen3-Reranker의 89.0% 대비 86.7%로 열세였다. 앞의 두 첫 순위 지표는 하나만 고른 근거가 정답 근거인지 평가한다. MultiDoc2Dial은 4,201개 대화 턴, Natural Questions는 500개 테스트 질문이며 후자의 문서집은 약 268만 문단이다.
GPT-5로 밀집 검색 상위 20개를 재순위화한 결과와 비교하면, DecisionRAG는 MultiDoc2Dial R@1에서 47.5% 대비 47.4%로 근소하게 낮았고, ConditionalQA Hit@1에서 73.4% 대비 69.7%로 낮았다. 그러나 Natural Questions Hit@1에서는 60.8% 대비 65.4%로 높았다. 밀집 검색 후보를 마지막 단계에 추가하면(+ dense candidates) 성능이 더 올라, MultiDoc2Dial R@1 48.5%, Natural Questions Hit@1 66.4%를 기록했다.
다운스트림 답변 품질에서도 개선이 있었다. 동일한 생성 모델 Qwen3.5-27B에 각 시스템의 상위 5개 문단을 제공했을 때, MTRAG의 정답 근거가 표시된 188개 턴에서 LLM이 답변을 정답으로 판정한 비율이 Qwen3-Reranker의 39.4%에서 DecisionRAG 44.1%로 상승했고, 밀집 후보를 추가하면 47.3%까지 올랐다. Natural Questions의 정확 일치도 52.4%에서 54.2%로, 밀집 후보 추가 시 54.8%로 상승했다.
작업 특화 학습의 여지도 확인되었다. Qwen3-8B를 MultiDoc2Dial 데이터로 파인튜닝한 DecisionRAG는 R@1 60.7%를 달성해, 공개된 최고 작업 학습 검색기 SFRe2g의 55.0%보다 5.7%p 높았다. SFRe2g 수치는 저자들이 같은 환경에서 재실행한 값이 아니라 기존 발표 결과를 인용한 것이다. 또한 60.7%는 앞의 추가 학습 없는 Jev와 다른 실험 조건이다. 이는 결정 모델이 개선되면 검색 성능이 더 향상될 수 있음을 시사한다.
구체적인 예시
논문이 설명용으로 든 예시는 '크리스토퍼 놀란의 2000년 영화 주인공은 누구인가?'라는 질의다. BM25는 'Nolan', 'film', '2000' 같은 단어 매칭으로 'Gladiator (2000 film)'을 높게 평가할 수 있지만, 이는 관련 없는 키워드 매칭이다. DecisionRAG는 문서 선별 단계에서 'Memento (film)'과 'Christopher Nolan' 페이지를 유지하고, 'Gladiator (2000 film)'은 키워드 중복에도 불구하고 관련성이 낮다고 판단해 가지치기한다.
이후 문단 평가에서 'Memento follows Leonard Shelby...'라는 문단이 높은 점수를 받아 최종 증거로 선택된다. 이 예는 결정 모델로 어휘 중복보다 의미적 관련성을 판단하려는 설계를 설명한다. 실제 성능의 근거는 별도로 제시한 벤치마크 결과다. 그림 2의 BM25 점수와 순위는 설명을 위한 예시이며 실제 측정값이 아니다.
한계와 오해하기 쉬운 점
DecisionRAG는 말뭉치 계층 구조와 노드 설명의 질에 의존한다. 문서가 잘 조직되지 않았거나 설명이 부실하면 검색 품질이 떨어질 수 있다. 또한 가지치기는 비가역적이어서, 조상 노드가 버려지면 그 질의에서는 관련 문단을 다시 찾지 못할 수 있다. 논문은 더 큰 탐색 예산이나 밀집 검색 후보 추가로 이를 완화할 수 있다고 밝힌다.
지연 시간과 비용 수치는 특정 조건에서 측정된 것이다. DecisionRAG의 중앙값 지연 시간은 질의당 0.68~1.76초이고, API 비용은 0.22~2.33 US 센트다. 이는 라이브 API를 사용하고 답변 캐시를 읽지 않으며, 질의를 한 번에 하나씩 처리하고 내부적으로 최대 8개의 동시 요청을 보낸 조건이다. 비교 대상인 Qwen3-Reranker는 로컬 RTX A6000 GPU에서, GPT-5는 재순위화 API만 측정했으므로 하드웨어와 표본이 달라 통제된 속도 향상이 아니다. 시간 측정 표본은 데이터셋 순서대로 48·50·24·100개이고, 문서집을 불러오는 초기화와 오프라인 계층 구축은 제외된다. 따라서 실제 서비스의 전체 처리 시간과 비용은 별도로 측정해야 한다.
10억 문단을 1초에 검색한다는 주장은 균형 잡힌 트리와 충분한 병렬 서버를 가정한 이론적 도식이다. 실제 측정이 아니며, 각 수준의 후보 수와 유지 예산에 따라 비용이 달라진다. 후보 200개를 둔 Natural Questions 설계 실험에서는 한 요청에 약 50개를 넣은 뒤 이점이 둔화했다. 모든 문서집에서 50개가 보편적 경계라는 뜻은 아니다.
실제로 어떻게 활용할까
DecisionRAG는 기존 문서 구조(예: 헬프 센터, 제품 문서, Wikipedia 카테고리)를 활용하거나, 클러스터링으로 계층을 만들어 적용할 수 있다. 대규모 말뭉치에서는 상위 수준에서 많은 가지를 가지치기해 비용을 줄이면서도 재현율을 유지할 수 있다. Natural Questions의 첫 100개 테스트 질문으로 한 별도 예산 실험에서는 상위 15% 클러스터만 유지해도 전체 페이지를 직접 평가하는 것과 비슷한 Recall@10을 1/5 비용으로 달성했다.
밀집 검색과의 결합도 실용적이다. DecisionRAG의 마지막 단계에 밀집 검색 상위 20개 문단을 추가하면, 가지치기로 놓친 증거를 복구할 수 있다. 이는 검색 품질을 높이면서도 결정 모델의 빠른 판단을 유지하는 방법이다. 다만 밀집 후보를 추가한 구성의 지연 시간은 저장된 후보 인코딩과 검색을 제외한 값이므로, 실제 엔드투엔드 지연 시간은 더 길 수 있다.
원문에서 확인한 근거 4곳
- DecisionRAG는 사전 학습된 결정 모델만으로 밀집 검색 + 8B 재순위화기보다 MultiDoc2Dial R@1을 13.8%p, Natural Questions Hit@1을 17.4%p 향상시켰다.Table 2
- 공유 컨텍스트에서 후보를 함께 평가하면 개별 평가보다 MultiDoc2Dial R@1이 7.7%p 상승한다.Scoring Candidates
- DecisionRAG의 중앙값 지연 시간은 질의당 0.68~1.76초이고 API 비용은 0.22~2.33 US 센트다.Table 5
- 과제별 학습을 추가한 DecisionRAG-8B는 MultiDoc2Dial R@1 60.7%를 기록했다. 비교 SFRe2g 55.0%는 이 연구의 재실행값이 아니라 기존 발표 수치다.Table 4
10월 27일(화) 정리 · AI가 쓰고 원문과 대조
AI 목록