kangnlp

논문 리뷰

논문 리뷰: Beyond the Limitation of a Single Query: Train Your LLM for Query Expansion with RL (ExpandSearch)

18분 읽기

Beyond the Limitation of a Single Query: Train Your LLM for Query Expansion with RL 리뷰

한 줄 요약: 단일 검색 쿼리의 한계를 넘기 위해, 강화학습으로 LLM이 다중 쿼리 확장(Expand)을 학습하고, 별도의 요약 모델(Squeezer)로 검색 결과를 압축(Squeeze)하여 멀티홉 QA에서 SOTA를 달성한 프레임워크.

논문 정보

항목내용
제목Beyond the Limitation of a Single Query: Train Your LLM for Query Expansion with RL
저자Shu Zhao, Tan Yu, Anbang Xu
소속NVIDIA, Pennsylvania State University
발표arXiv 2025 (2510.10009)
키워드Query Expansion, Reinforcement Learning, Search Agent, Multi-Hop QA, Selective Distillation
코드/프로젝트https://shuzhao.me/ExpandSearchProject/

1. 들어가며

검색 증강 생성(RAG) 시스템은 LLM의 환각(hallucination) 문제와 지식 한계를 극복하기 위한 핵심 전략으로 자리잡았다. Search-R1을 필두로 한 최근 연구들은 강화학습(RL)을 활용해 LLM이 스스로 검색 전략을 학습하도록 하는 방향으로 발전해 왔다. 그런데 이 계열의 모델들에는 근본적인 병목이 존재한다. 매 턴(turn)마다 하나의 쿼리만 생성한다는 점이다.

복잡한 멀티홉(multi-hop) 질문을 떠올려보자. "Alexander Carl Otto Westphal의 아버지가 사망한 장소는?"이라는 질문에 답하려면, 먼저 아버지가 누구인지 찾고, 그 사람의 사망 장소를 찾는 최소 두 단계의 검색이 필요하다. 기존 방식은 한 턴에 하나의 쿼리만 던지기 때문에, 쿼리 표현이 조금만 달라져도 관련 문서를 놓치기 쉽다. 임베딩 기반 검색(embedding-based retrieval)은 표면 형태(surface form)의 변화에 취약하다는 이론적 한계까지 있다(Weller et al., 2025).

ExpandSearch는 이 문제를 정면으로 공략한다. 한 번의 검색 턴에서 여러 개의 다양한 쿼리 변형(query variants)을 생성하고, 검색 결과는 별도의 요약 모델로 압축하는 "확장 후 압축(Expand-then-Squeeze)" 전략을 제안한다. 솔직히, 아이디어 자체는 직관적이면서도 우아하다. 사람이 정보를 찾을 때도 여러 검색어를 바꿔가며 넓게 찾은 뒤, 핵심만 추려내는 것과 동일한 패턴이기 때문이다.

2. 기존 연구의 한계

기존 검색 에이전트(search agent) 연구들이 가진 두 가지 핵심 한계를 정리하면 다음과 같다.

첫째, 의미적 불완전성(Semantic Incompleteness). Search-R1, ZeroSearch 등 기존 방법은 매 턴 하나의 쿼리만 생성한다. 단일 쿼리는 질문의 다양한 측면을 모두 담아내기 어렵고, 특히 임베딩 기반 검색기는 동일한 의미라도 표현 형태가 다르면 전혀 다른 결과를 반환할 수 있다. 예를 들어, "where did he die"와 "his death place"는 같은 의미이지만 검색 결과는 크게 달라진다.

둘째, 정보 과부하(Information Overload). 검색된 문서에는 불필요한 정보가 대량 포함되어, 실제 추론에 필요한 핵심 사실이 묻히는 현상이 발생한다. 이 문제는 멀티홉 추론 태스크에서 더욱 심각해지는데, 여러 번의 검색을 반복하며 컨텍스트가 계속 누적되기 때문이다. GPU 메모리 소비 증가도 실질적인 훈련 비용 문제로 이어진다.

ParallelSearch(Zhao et al., 2025)는 쿼리를 분해하여 병렬 검색하는 접근을 제안했지만, 검색 결과의 압축 없이 원본 문서를 그대로 LLM에 전달하므로 정보 과부하 문제는 해결하지 못한다. ExpandSearch는 확장(recall 최적화)과 압축(precision 최적화)을 명시적으로 분리함으로써 두 문제를 동시에 해결하고자 한다.

3. 핵심 아이디어

ExpandSearch의 핵심 철학은 **"넓게 던지고, 핵심만 걸러낸다"**로 요약된다. 구체적으로:

  1. Expand (확장): 매 검색 턴에서 하나가 아닌 nn개의 다양한 쿼리 변형을 생성한다. 이 변형에는 구문적 확장(syntax expansion)과 의미적 확장(semantic expansion) 두 유형이 포함된다.
  2. Squeeze (압축): 확장된 쿼리로 검색된 대량의 문서를 고정 가중치(frozen) LLM — 논문에서 "squeezer"라 부르는 — 이 핵심 정보만 추출하여 짧은 요약으로 압축한다.
  3. RL 학습: 전체 파이프라인이 PPO 기반 강화학습으로 end-to-end 훈련되며, 검색 에이전트는 쿼리 생성에만 집중하고, 문서 이해는 squeezer에 위임한다.

개인적으로 이 역할 분리(division of labor)가 논문의 가장 영리한 설계 결정이라고 본다. 제한된 학습 데이터와 연산 자원 하에서 3B 규모의 작은 모델이 쿼리 생성, 문서 이해, 답변 생성을 모두 잘하기란 현실적으로 어렵다. 쿼리 생성이라는 하나의 능력에 집중시키는 전략은 단순하면서도 효과적이다.

4. 제안 방법 (Method)

4.1 Expand-then-Squeeze 전략

Figure 1: Comparison between Search-R1 and ExpandSearch
Figure 1: Comparison between Search-R1 and ExpandSearch

Figure 1: Search-R1과 ExpandSearch의 비교. (a) 기존 방법은 단일 쿼리로 핵심 정보를 놓치고, (b) ExpandSearch는 다중 쿼리로 넓은 커버리지를 확보한 뒤 squeezer로 핵심만 압축한다. (원논문)

위 그림이 전체 흐름을 직관적으로 보여준다. "Alexander Carl Otto Westphal의 아버지가 사망한 장소"라는 질문에 대해, Search-R1(왼쪽)은 단일 쿼리로 검색하여 핵심 정보를 놓치거나 불필요한 정보에 묻히게 된다. 반면 ExpandSearch(오른쪽)는 "Alexander Carl Otto Westphal's father", "father of Alexander Carl Otto Westphal" 등 여러 변형을 동시에 검색하고, squeezer가 결과를 핵심만 남긴 요약으로 압축한다.

Expand 단계. 외부 검색이 필요하면, LLM은 <search>...</search> 블록 안에 nn개의 다양한 쿼리 {qi}i=1n\{q_i\}_{i=1}^{n}을 생성한다. 각 쿼리 qiq_i에 대해 검색 엔진 R\mathcal{R}이 상위 kk개의 관련 청크를 반환한다:

Ci=R(qi),i=1,,n\mathcal{C}_i = \mathcal{R}(q_i), \quad i = 1, \ldots, n

여기서 Ci\mathcal{C}_i는 쿼리 qiq_i에 대한 검색 결과 청크 집합이다. 쿼리 간 구분은 ##로 이루어져 병렬 검색이 가능하다.

Squeeze 단계. 생성된 쿼리 [q1,,qn][q_1, \ldots, q_n]과 검색 결과 [C1,,Cn][\mathcal{C}_1, \ldots, \mathcal{C}_n]이 고정 가중치 LLM(squeezer πs\pi_s)에 입력되어 요약 ss를 생성한다:

s=πs({qi}i=1n,{Ci}i=1n)s = \pi_s(\{q_i\}_{i=1}^{n}, \{\mathcal{C}_i\}_{i=1}^{n})

요약 ss<information>...</information> 블록에 담겨 rollout 시퀀스에 삽입된다. 원본 청크 [C1,,Cn][\mathcal{C}_1, \ldots, \mathcal{C}_n] 대비 ss는 훨씬 짧아 GPU 메모리 절감 효과가 크다. Squeezer는 학습 중 가중치가 고정되므로, 별도 추론 인스턴스에서 호스팅하고 API 호출 형태로 연동한다.

4.2 알고리즘 워크플로우

전체 워크플로우는 Algorithm 1에 기술되어 있다. 핵심 흐름을 요약하면:

  1. LLM이 <think> 블록에서 추론을 수행
  2. 추가 정보가 필요하면 <search> 블록에 nn개의 쿼리를 생성
  3. 각 쿼리로 병렬 검색 수행 후, squeezer가 결과를 요약
  4. 요약된 정보를 컨텍스트에 추가하고, 다시 추론 반복
  5. 충분한 정보가 모이면 <answer> 블록으로 최종 답변 생성

만약 LLM이 <search><answer>도 생성하지 못하면, "My action is not correct. Let me rethink."이라는 재시도 메시지가 삽입되는 안전장치도 포함된다.

4.3 학습 템플릿과 보상 함수

학습에 사용되는 프롬프트 템플릿(Table 1)은 LLM에게 다음을 지시한다:

  • 새로운 정보를 받을 때마다 <think> 블록에서 추론할 것
  • <search> 블록 내에서 kk개의 다양한 쿼리 변형(paraphrase, sub-question 분해, 키워드 확장)을 생성할 것
  • 쿼리들을 ##로 구분하여 병렬 실행 가능하게 할 것

보상 함수(Reward Function)는 정확 일치(Exact Match) 보상과 형식(format) 보상의 가중합이다:

r=rEM+λrfr = r_{\text{EM}} + \lambda \cdot r_f

여기서:

  • rEM(anspred,ansgt)=I(anspred=ansgt)r_{\text{EM}}(\text{ans}_{\text{pred}}, \text{ans}_{\text{gt}}) = \mathbb{I}(\text{ans}_{\text{pred}} = \text{ans}_{\text{gt}}): 예측 답이 정답과 정확히 일치하면 1, 아니면 0
  • rfr_f: 지정된 형식을 올바르게 따르면 1, 아니면 0
  • λ\lambda: 가중치 (기본값 0.2)

Search-R1과 동일한 보상 구조를 사용하면서, 학습 대상이 되는 행동(action) 공간만 단일 쿼리에서 다중 쿼리 확장으로 변경된 셈이다. 보상 설계 자체가 단순한 만큼, 성능 개선의 원천이 순수하게 Expand-then-Squeeze 아키텍처에 있음을 보여준다.

4.4 구현 세부사항

  • 백본 모델: Qwen-2.5 (3B/7B, Base/Instruct 변형)
  • 임베딩 모델: E5
  • 검색 코퍼스: 2018 Wikipedia dump
  • RL 알고리즘: PPO (veRL 프레임워크 기반)
  • 학습 데이터: NQ + HotpotQA 학습셋 결합
  • Squeezer: LLaMA-4-17b (기본값)
  • 하드웨어: 8x NVIDIA H100 GPU
  • 학습 설정: 정책 LR 1e-61\text{e-}6, 가치 LR 1e-51\text{e-}5, 500 스텝 학습, 배치 크기 512, 최대 시퀀스 길이 4,096 토큰

5. 실험 결과

5.1 Main Results

7개 QA 벤치마크에서 4가지 모델 구성(3B/7B, Base/Instruct)에 대한 결과가 Table 2에 정리되어 있다.

MethodsNQ^\daggerTriviaQA^\starPopQA^\starHotpotQA^\dagger2wiki^\starMusique^\starBamboogle^\starAvg.
Qwen2.5-3B-Instruct
R10.2100.4490.1710.2080.2750.0600.1920.224
Search-R10.3410.5450.3780.3240.3190.1030.2640.325
ZeroSearch0.4140.5740.4480.2740.3000.0980.1110.317
StepSearch---0.3450.3200.1740.344-
Router-R10.3880.7060.3840.3520.4340.1380.5120.416
ExpandSearch (Ours)0.4460.6770.4560.4220.4500.1940.5400.457
Qwen2.5-3B-Base
R10.2260.4550.1730.2010.2680.0550.2240.229
Search-R10.4060.5870.4350.2840.2730.0490.0880.303
ZeroSearch0.4300.6160.4140.3380.3460.1300.1390.345
StepSearch---0.3290.3390.1810.328-
ExpandSearch (Ours)0.4880.7000.5070.4140.3980.1360.4520.435
Qwen2.5-7B-Instruct
R10.2700.5370.1990.2370.2920.0720.2930.271
Search-R10.3930.6100.3970.3700.4140.1460.3680.385
ZeroSearch0.4360.6520.4880.3460.3520.1840.2780.391
StepSearch---0.3860.3660.2260.400-
ParallelSearch0.4620.6280.4290.4290.4240.1970.4110.425
ExpandSearch (Ours)0.4500.6670.4510.4280.4590.2110.4760.449
Qwen2.5-7B-Base
R10.2970.5390.2020.2420.2730.0830.2960.276
Search-R10.4800.6380.4570.4330.3820.1960.4320.431
ZeroSearch0.4240.6640.6040.3200.3400.1800.3330.409
StepSearch---0.3800.3850.2160.467-
ParallelSearch0.4920.6580.4550.4570.4520.2290.4680.458
ExpandSearch (Ours)0.4960.7030.5060.4450.4880.1960.5400.480

Table 2 (원논문): 7개 벤치마크에서의 Exact Match(EM) 점수. \dagger는 in-domain, \star는 out-of-domain 데이터셋.

결과에서 주목할 부분들을 짚어보겠다.

(1) 전 구성에서 일관된 개선. ExpandSearch는 가장 강력한 베이스라인 대비 평균 4.4% 절대 개선을 달성했다. 4가지 모델 구성 모두에서 예외 없이 최고 성능을 기록한 점이 인상적이다.

(2) 3B가 7B를 넘는다. 개인적으로 가장 흥미로운 결과인데, 3B-Instruct 모델(EM 0.457)이 7B 베이스라인들(Search-R1 7B: 0.3850.431, ZeroSearch 7B: 0.3910.409)을 대폭 상회한다. 7B SOTA인 ParallelSearch(0.458)와도 거의 대등하다. 이는 모델 크기보다 검색 전략의 질이 더 중요하다는 것을 실증하는 결과다.

(3) Base vs Instruct의 역전 현상. 3B에서는 Instruct가 Base를 2.2% 앞서지만, 7B에서는 오히려 Base가 Instruct를 3.1% 앞선다. 저자들은 이를 소규모 Base 모델이 instruction following 자체를 잘 못하기 때문으로 분석했다. 7B에서는 Base 모델이 사전학습에서 얻은 유연한 능력을 더 잘 활용하는 것으로 보인다.

(4) Out-of-domain 일반화. 학습에 NQ와 HotpotQA만 사용했음에도, TriviaQA, PopQA, 2wiki, Musique, Bamboogle 등 학습에 포함되지 않은 벤치마크에서 평균 5.2%의 개선을 보인다. 학습된 쿼리 확장 전략이 특정 도메인에 국한되지 않고 일반적인 검색 능력으로 전이된다는 의미다.

5.2 Ablation Study: 확장 행동 분석

Figure 2: Impact of query expansion count
Figure 2: Impact of query expansion count

Figure 2: 쿼리 확장 수(nn)에 따른 EM 정확도 변화. n=1n=1에서 n=3n=3으로 갈수록 모든 벤치마크에서 성능이 향상된다. (원논문)

쿼리 수를 1개에서 3개로 늘리면 평균 EM이 0.340에서 0.457로 11.7% 포인트 상승한다. 1개에서 2개로 늘릴 때 가장 큰 폭(6.7%)의 개선이 발생하고, 2개에서 3개로 갈 때도 4.6%의 추가 개선이 있다. 수확 체감(diminishing returns)의 패턴이 보이지만, 3개까지는 확실히 효과가 있다. 특히 Bamboogle에서 n=1n=1(0.347)에서 n=3n=3(0.540)으로 19.3%p 상승한 것은, 멀티홉 추론에서 다양한 쿼리 관점이 얼마나 결정적인지 보여준다.

RL 학습 없이 단순히 확장 프롬프트와 squeezer를 Search-R1에 붙인 경우의 결과도 제시된다.

MethodsNQTriviaQAPopQAHotpotQA2wikiMusiqueBamboogleAvg.
ExpandSearch0.4440.6640.4470.4150.4320.1960.5240.446
ExpandSearch w/o squeezer0.3850.5700.3980.3610.3840.1460.3230.364
Search-R10.3520.5570.3950.3240.3210.1110.2660.332
Search-R1 w/ Expansion + Squeezer0.3350.5430.3400.3270.3030.0990.3600.330

Table 3 (원논문): 학습된 확장 vs 미학습 확장, squeezer 유무에 따른 ablation 결과.

이 ablation은 논문의 핵심 주장을 뒷받침하는 가장 중요한 실험이다. Search-R1에 확장 프롬프트와 squeezer를 단순히 추가하면(마지막 행), 오히려 원래 Search-R1보다 성능이 떨어진다(0.330 vs 0.332). 학습 없는 naive한 쿼리 확장은 노이즈만 추가하여 이점을 상쇄시킨다는 반직관적 결과다.

반면 RL로 학습된 ExpandSearch에서 squeezer만 제거해도(두 번째 행, 0.364) 여전히 Search-R1(0.332)을 상회한다. 이는 RL 학습이 쿼리 생성과 답변 생성 사이의 복잡한 상호작용을 end-to-end로 학습해야만 효과가 나타남을 증명한다.

5.3 확장 유형 분석

RL로 학습된 쿼리 확장 전략은 자연스럽게 두 가지 상호 보완적 유형으로 수렴한다.

VariantsRatioNQTriviaQAPopQAHotpotQA2wikiMusiqueBamboogleAvg.
ExpandSearch-0.4440.6640.4470.4150.4320.1960.5240.446
w/o Syntax Expansion63.35%0.4430.6360.3810.4040.4070.1910.3840.407
w/o Semantic Expansion36.65%0.4380.6440.3700.4130.4020.1750.3680.401

Table 4 (원논문): 구문적/의미적 확장을 각각 제거했을 때의 성능 변화. 두 유형 모두 제거 시 성능이 하락하며, 상호 보완적 역할을 한다.

  • 구문적 확장(Syntax Expansion, 63.35%): 같은 의미를 다른 표면 형태로 재구성. "where did he die" → "his death place", "location of death" 등. 임베딩 모델의 어순 민감성을 극복한다.
  • 의미적 확장(Semantic Expansion, 36.65%): 관련되지만 더 넓은 개념으로 확장. "Alex's father" → "Alex's family", "Alex's parents" 등. 더 넓은 범주 아래 저장된 정보를 포착한다.

구문적 확장이 63%로 다수를 차지한다는 것은, 현재 dense retriever의 가장 큰 약점이 의미 범위보다 표면 형태 변화에 대한 취약성임을 시사한다. 이 분포는 명시적으로 지정된 것이 아니라 RL을 통해 자연스럽게 발현된 것이라 더 의미가 있다.

두 유형 모두 제거 시 성능이 일관되게 하락하는데(각각 3.9%, 4.5%), 어느 한 유형이 다른 유형을 대체할 수 없다는 것을 보여준다. Bamboogle에서의 하락폭이 가장 크다(14%p, 15.6%p). 멀티홉 추론에서 두 유형의 상호 보완성이 가장 크게 작용하는 것이다.

5.4 Squeeze 행동 분석

Figure 3: Effect of retrieval depth k
Figure 3: Effect of retrieval depth k

Figure 3 (상단: Table 4 결과 포함, 하단): 검색 깊이(kk)에 따른 EM 정확도. k=3k=3에서 k=5k=5로 갈 때 큰 개선, k=10k=10에서는 완만한 추가 개선이 나타난다. (원논문)

검색 깊이 kk를 3에서 5로 늘리면 대부분의 벤치마크에서 의미 있는 개선이 발생하지만, 5에서 10으로 늘릴 때는 한계 효용이 줄어든다. 이는 무한정 검색 결과를 늘리는 것보다 적당한 양의 검색 결과를 효과적으로 압축하는 것이 더 낫다는 squeeze 기반 접근을 정당화한다.

Squeezer 모델의 선택도 성능에 영향을 미친다.

SqueezerNQTriviaQAPopQAHotpotQA2wikiMusiqueBamboogleAvg.
LLaMA-3.1-8b0.4110.6110.4250.3860.3770.1590.3790.389
LLaMA-3.1-70b0.4810.6820.4760.4040.3920.1670.4760.433
LLaMA-4-17b0.4460.6770.4560.4220.4500.1940.5400.457

Table 5 (원논문): Squeezer 모델별 EM 정확도. LLaMA-3.1-70b는 일반 QA에서, LLaMA-4-17b는 멀티홉에서 각각 우위.

이 결과가 흥미로운 이유는, 더 큰 모델(LLaMA-3.1-70b)이 항상 좋은 것은 아니라는 점이다. General QA에서는 70b가 확실히 우수하지만, 멀티홉 추론에서는 훨씬 작은 LLaMA-4-17b가 압도적으로 좋다(Bamboogle: 0.540 vs 0.476). 이는 일반적인 지식 추출과 멀티홉 증거 종합이 근본적으로 다른 압축 능력을 요구한다는 것을 의미한다. LLaMA-4 계열의 아키텍처적 특성(MoE 기반)이 다중 증거 통합에 유리할 가능성도 있다.

5.5 학습 역학 (Training Dynamics)

Figure 4: Training dynamics
Figure 4: Training dynamics

Figure 4: 학습 과정에서의 보상, 응답 길이, 검색 횟수 변화. 세 지표가 동기화되어 증가하며, 모델이 자율적으로 확장 검색을 최적 전략으로 학습하고 있음을 보여준다. (원논문)

학습 역학 그래프는 세 가지를 동시에 보여준다. 보상(Reward)이 꾸준히 상승하며, 응답 길이(Response Length)와 검색 횟수(Number of Searches)도 함께 증가한다. 이 세 지표의 동기화된 성장이 핵심이다 -- 모델은 명시적인 감독 없이도 "더 많이 검색하면 더 나은 답변을 할 수 있다"는 전략을 자율적으로 학습한다.

특히 검색 횟수가 학습 초기 약 1회에서 후반부에는 2회 이상으로 증가하는 패턴은, RL이 쿼리 확장의 가치를 효과적으로 발견했음을 보여준다. 학습 곡선에 급격한 하락이나 높은 분산이 없다는 점도 중요하다. Expand-then-Squeeze 프레임워크가 안정적인 학습 시그널을 제공하고 있다는 의미다.

6. 추가 실험 및 부록 (Appendix)

6.1 테스트 시점 Squeezer 교체 (Appendix C)

Figure 5: Test-time squeezer comparison
Figure 5: Test-time squeezer comparison

Figure 5: 추론 시 squeezer를 LLaMA-3.1-8b로 교체했을 때와 학습 시 사용한 LLaMA-4-17b의 성능 비교. 전반적으로 유사한 성능을 유지하며, 모듈형 아키텍처의 유연성을 검증한다. (원논문)

학습 시 LLaMA-4-17b를 squeezer로 사용했지만, 추론 시에 LLaMA-3.1-8b로 교체해도 전체 평균이 0.431로, 원래 0.446 대비 크게 하락하지 않는다. NQ(0.449 vs 0.444)와 PopQA(0.452 vs 0.447)에서는 오히려 작은 모델이 더 나은 결과를 보이기도 한다. 반면 멀티홉 태스크(Bamboogle: 0.500 vs 0.524, 2wiki: 0.406 vs 0.432)에서는 더 큰 squeezer가 유리하다.

이 실험은 실용적 관점에서 매우 중요하다. 검색 에이전트의 학습된 쿼리 확장 전략이 특정 squeezer에 종속되지 않는다는 것은, 배포 환경에 따라 squeezer를 유연하게 교체할 수 있음을 의미한다. 자원이 제한된 환경에서는 8b 모델을, 정확도가 중요한 환경에서는 더 큰 모델을 사용하면 된다.

6.2 Case Study (Appendix E)

논문은 HotpotQA와 2wiki에서의 구체적인 사례를 제시한다.

HotpotQA 예시: "2014 S/S is the debut album of a South Korean boy group that was formed by who?"

ExpandSearch는 첫 검색에서 "boy group that debuted with the album 2014 S/S", "male group first album 2014 S/S debut", "K-pop boy groups debut albums 2014 rookie artists" 세 가지 변형을 생성한다. Squeezer가 WINNER라는 그룹을 식별하면, 두 번째 검색에서 "who formed the boy group WINNER", "WINNER boy group created by who", "who created the WINNER"를 생성하여 최종 답변 "YG Entertainment"에 도달한다.

2wiki 예시: "When did John V, Prince Of Anhalt-Zerbst's father die?"

유사하게, 첫 턴에서 아버지(Ernest I, Prince of Anhalt-Dessau)를 식별한 뒤, 두 번째 턴에서 사망 날짜(12 June 1516)를 정확히 찾아낸다. 각 턴에서 구문적 확장("father of John V")과 의미적 확장("Anhalt-Zerbst royal family tree German princes")이 자연스럽게 조합되는 것을 확인할 수 있다.

6.3 프롬프트 템플릿 (Appendix B)

Squeezer의 프롬프트는 극도로 단순하다: 주어진 쿼리와 컨텍스트에 기반하여 답변만 반환하라는 지시. 확장 유형 분석에는 "Syntax Expansion"과 "Semantic Expansion" 중 하나를 분류하도록 하는 프롬프트가 사용된다. 이 분류 프롬프트를 통해 Table 4의 63.35% / 36.65% 비율이 산출되었다.

7. 강점과 한계

강점

  1. 명쾌한 문제 정의와 해법. "의미적 불완전성"과 "정보 과부하"라는 두 문제를 식별하고, "확장"과 "압축"이라는 대칭적 해법으로 대응하는 구조가 깔끔하다.

  2. 역할 분리의 효과. 3B 모델이 쿼리 생성에만 집중하게 하고, 문서 이해를 외부 squeezer에 위임하는 설계는 소규모 모델의 한계를 영리하게 우회한다. 실제로 3B 모델이 7B 베이스라인을 넘어서는 결과가 이를 증명한다.

  3. 풍부한 ablation. 쿼리 수(nn), 검색 깊이(kk), squeezer 모델 선택, 학습/미학습 확장 비교, 구문적/의미적 확장 분리 등 다양한 각도의 분석이 논문의 설득력을 높인다.

  4. 모듈형 아키텍처. Squeezer를 학습 후에도 자유롭게 교체할 수 있다는 점은 실제 배포 시 큰 장점이다.

한계

  1. Squeezer 의존성. Squeezer가 고정 가중치의 외부 LLM이므로, 추가적인 추론 비용이 발생한다. 매 검색 턴마다 squeezer API를 호출해야 하므로 지연 시간(latency) 증가가 불가피하다. 아쉬운 점은, 이 추론 비용에 대한 정량적 분석(지연 시간, API 호출 비용 등)이 논문에 없다는 것이다.

  2. 검색 코퍼스의 제한. 모든 실험이 2018 Wikipedia dump에 한정되어 있다. 실제 웹 검색이나 다른 도메인(법률, 의학 등)에서의 일반화 가능성은 검증되지 않았다.

  3. Squeezer 학습의 부재. Squeezer를 고정 가중치로 두고 API로 호출하는 것은 구현상 편리하지만, squeezer도 함께 학습하면 성능이 더 좋아질 가능성이 있다. 물론 end-to-end 학습의 복잡도가 크게 증가하겠지만, 적어도 이 방향에 대한 논의가 있었으면 했다.

  4. 확장 수의 고정. 모든 턴에서 동일하게 n=3n=3개의 쿼리를 생성하는데, 질문의 난이도에 따라 적응적으로 쿼리 수를 조절하는 것이 더 효율적일 수 있다. 간단한 factoid 질문에는 1개면 충분하고, 복잡한 멀티홉 질문에서만 3개 이상이 필요할 수 있다.

  5. 평가 지표의 단일성. Exact Match(EM)만을 평가 지표로 사용하는데, 부분 일치를 허용하는 F1 점수나 사람 평가(human evaluation)가 추가되었다면 더 포괄적인 평가가 가능했을 것이다.

8. 마치며

ExpandSearch는 검색 에이전트 분야에서 "단일 쿼리의 한계"라는 근본적 문제를 정면으로 다룬 연구다. Expand-then-Squeeze라는 프레임워크는 직관적이면서도 효과적이며, 특히 3B 모델로 7B 베이스라인을 넘어서는 결과는 모델 크기보다 검색 전략의 질이 더 중요할 수 있음을 보여준다.

개인적으로, 이 논문의 가장 큰 기여는 "쿼리 확장은 RL로 학습해야 한다"는 실증적 증거를 제공한 점이라고 생각한다. 단순히 프롬프트로 확장을 지시하는 것은 오히려 성능을 떨어뜨리고, end-to-end RL 학습을 통해서만 쿼리 생성과 답변 생성 사이의 복잡한 상호작용을 포착할 수 있다는 Table 3의 결과는 이 분야 후속 연구의 중요한 이정표가 될 것이다.

향후 연구 방향으로는, 적응적 쿼리 확장 수 결정, squeezer의 공동 학습, 실제 웹 검색 환경으로의 확장 등이 기대된다. 특히 최근의 reasoning 모델(DeepSeek-R1, OpenAI o-series 등)과의 통합도 자연스러운 다음 단계가 될 수 있다.

References

  • Zhao, S., Yu, T., & Xu, A. (2025). Beyond the Limitation of a Single Query: Train Your LLM for Query Expansion with RL. arXiv:2510.10009.
  • Jin, B. et al. (2025). Search-R1: Training LLMs to Reason and Leverage Search Engines with Reinforcement Learning. arXiv:2503.09516.
  • Zhao, S. et al. (2025). ParallelSearch: Train Your LLM to Decompose Query and Search Sub-queries in Parallel with RL. arXiv:2508.09303.
  • Sun, H. et al. (2025). ZeroSearch: Incentivize the Search Capability of LLMs without Searching. arXiv:2505.04588.
  • Guo, D. et al. (2025). DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning. arXiv:2501.12948.
  • Weller, O. et al. (2025). On the Theoretical Limitations of Embedding-Based Retrieval. arXiv:2508.21038.
  • Schulman, J. et al. (2017). Proximal Policy Optimization Algorithms. arXiv:1707.06347.