
Reranker의 개념과 RAG 파이프라인에서의 역할
RAG(Retrieval-Augmented Generation) 시스템의 목적은 사용자 질문에 가장 적합한 문서를 찾아 거대언어모델(LLM)에 전달하는 것입니다. 일반적으로 대규모 문서 데이터베이스에서 1차로 관련성 높은 문서를 빠르게 선별하는 과정을 ‘리트리벌(Retrieval)’이라고 하며, 주로 고정 크기 청킹이나 하이브리드 검색이 이 역할을 수행합니다.
그러나 1차 검색 엔진은 속도를 최적화하기 위해 고안되었기 때문에, 검색된 문서들의 실제 연관성 순위가 정밀하지 못할 수 있습니다. 이때 도입되는 기술이 바로 리랭커(Reranker)입니다. 리랭커는 1차 검색을 통해 선별된 소수의 후보 문서(예: 50개~100개)를 대상으로, 사용자의 질문과 문서 간의 심층적인 의미적 유사도를 다시 계산하여 가장 정답에 가까운 문서들을 최상단으로 재정렬하는 역할을 수행합니다.
1차 검색(Bi-Encoder)의 한계점
대부분의 1차 벡터 검색은 바이인코더(Bi-Encoder) 아키텍처를 기반으로 작동합니다. 바이인코더는 질의어와 문서의 임베딩 벡터를 각각 독립적으로 생성한 뒤, 벡터 데이터베이스 내에서 코사인 유사도 등을 이용해 빠르게 거리를 계산합니다.
- 독립적 임베딩의 한계: 질문과 문서가 서로 어떤 관계를 맺고 있는지 실시간으로 교차 분석하지 못하므로, 문맥의 미묘한 차이나 뉘앙스를 놓치기 쉽습니다.
- 낮은 검색 정밀도: 속도는 매우 빠르지만 단어의 배치나 특정 조건문이 포함된 문서를 평가할 때 정밀한 점수 산출이 어렵습니다. 결과적으로 사용자의 질문과 무관한 노이즈 문서가 상위권(Top-K) 결과에 포함될 확률이 높아집니다.
Reranker(Cross-Encoder)가 품질을 높이는 동작 원리
리랭커는 주로 크로스인코더(Cross-Encoder) 아키텍처를 채택하여 작동합니다. 바이인코더와 달리, 질문(Query)과 후보 문서(Document)를 하나의 쌍으로 묶어 딥러닝 모델에 동시에 입력합니다.
- 실시간 교차 어텐션(Cross-Attention): 모델 내부에서 질문의 단어들과 문서의 단어들 간의 상관관계를 모든 레이어에서 조밀하게 연산합니다. 질문이 던진 의도가 문서의 핵심 내용과 얼마나 부합하는지 분자 단위로 쪼개어 분석하는 것과 같습니다.
- 정밀한 유사도 점수 산출: 질문과 문서의 관계를 직접 비교하기 때문에, 바이인코더보다 수십 배 이상 높은 정확도로 연관성 점수를 산출합니다. 이를 통해 실제 정답이 담긴 문서가 1차 검색에서 20위나 30위에 머물러 있었더라도, 리랭커를 거치며 1위나 2위로 수직 상승하게 됩니다.
Reranker가 검색 품질에 미치는 핵심 영향
리랭커를 RAG 파이프라인에 추가하면 전체 인공지능 자동화 시스템의 안정성과 답변 정확도가 드라마틱하게 향상됩니다.
- Lost in the Middle(중간 실종 현상) 문제 해결
- LLM은 프롬프트의 맨 앞과 맨 뒤에 있는 정보는 잘 인지하지만, 중간에 배치된 정보는 무시하는 경향이 있습니다. 리랭커는 가장 가치 있는 핵심 문서를 무조건 최상단(Top-1, Top-2)에 배치하므로, LLM이 중요한 정보를 놓치지 않고 답변을 생성하도록 유도합니다.
- 할루시네이션(환각 현상)의 극적인 감소
- LLM에 노이즈 문서가 입력되면 엉뚱한 가짜 답변을 지어낼 확률이 높아집니다. 리랭커가 맥락상 완벽한 문서들만 필터링하여 공급하기 때문에 문맥 오염으로 인한 오답률이 최저 수준으로 떨어집니다.
- 토큰 비용 절감 및 속도 개선
- 1차 검색 결과를 그대로 쓰면 정확도를 확보하기 위해 20~30개의 청크를 LLM에 전부 밀어 넣어야 하므로 토큰 비용이 폭증합니다. 리랭커를 쓰면 단 3~5개의 고품질 청크만 LLM에 전달해도 완벽한 답변을 얻을 수 있어 전체적인 API 비용이 절감됩니다.
리랭커 도입 시 고려해야 할 트레이드오프
리랭커는 RAG의 치트키와 같지만, 시스템 아키텍처 관점에서 반드시 고려해야 할 물리적인 제약 사항이 있습니다.
- 연산 비용과 지연 시간(Latency) 증가: 크로스인코더 방식은 질문과 문서를 일일이 대조하며 무거운 트랜스포머 연산을 수행하므로 속도가 상대적으로 느립니다. 1차 검색에서 수만 개의 문서를 대상으로 리랭커를 돌리는 것은 불가능하므로, 반드시 1차 검색으로 후보군을 50개 내외로 좁힌 뒤 리랭커를 적용하는 2단계(Two-stage) 검색 전략을 구사해야 합니다.
- 도메인 특화 성능 검증 필요: 범용 리랭커 모델이 특정 사내 규정이나 특수 전문 용어를 다룰 때는 오히려 성능이 떨어질 수 있습니다. 기업의 특수 데이터를 다룰 때는 리랭커 모델에 대한 추가적인 파인튜닝(Fine-tuning)을 검토해야 합니다.