생성형 AI의 성능을 높이기 위한 RAG, 그 RAG가 만약 문맥을 이해하고 추론하여 최적의 Clue를 LLM에게 제공할 수 있다면 어떻게 될까요? 생성형 AI의 성능은 분명히 높아질 것입니다. 올거나이즈의 Reranker를 통한 AI 검색 혁신의 모든 것을 알려드립니다.
생성형 AI의 환각을 줄이고 보다 정확한 답변을 제공하기 위해서는 RAG의 성능이 무엇보다 중요합니다. 이때 문서에서 가장 정확한 내용을 '검색(Retrieval)'하기 위해 다양한 기술적 발전이 있었습니다. 그 중에서도 올거나이즈의 Alli는 정밀도를 유지하면서도 보다 효율적인 Raranking 전략을 도입하였습니다. 문맥을 이해하고 추론하는 Reranker에 대해 올거나이즈 RAG팀의 조한준님과 이정훈 팀장님이 설명해 드립니다.
1. 개요
1.1 배경 (Background)
정보 검색 기술의 발전
정보 검색 기술은 데이터의 폭발적 증가와 사용자의 요구 변화에 따라 지속적으로 진화해 왔습니다. 초기에는 단순한 키워드 매칭 방식으로 데이터를 검색했으나, 이는 효율성과 정밀성 면에서 많은 한계를 드러냈습니다.
BM25의 등장
BM25는 TF-IDF와 같은 통계적 기법을 활용해 단어의 중요도를 평가하고, 검색 결과를 효율적으로 정렬하는 방식을 도입했습니다. 그러나 BM25는 단어 빈도와 위치에 초점을 맞추기 때문에 문맥적 의미를 이해하지 못한다는 한계를 가졌습니다.
의미 기반 검색의 부상
딥러닝의 발전과 함께 Bi-Encoder와 같은 벡터화 기반 검색 모델이 도입되면서, 단순 키워드 매칭을 넘어 의미 기반 검색이 가능해졌습니다. Bi-Encoder는 질의(Query)와 문서를 각각 벡터로 변환해 유사성을 평가하며, 대규모 데이터 처리에 효율적입니다. 그러나, 질의와 문서 간의 세부적 상호작용을 반영하지 못합니다.
고도화된 딥러닝 모델의 등장
이러한 한계를 극복하기 위해 Cross-Encoder와 같은 고도화된 딥러닝 모델이 개발되었습니다. Cross-Encoder는 질의와 문서를 하나의 입력으로 받아 문맥적 상호작용을 세밀히 평가하며, 가장 높은 정밀도를 제공합니다. 결과적으로, 정보 검색 기술은 단순히 데이터를 "찾는" 것에서 나아가, 질의와 문서 간의 문맥적 관계를 "이해"하는 패러다임으로 전환되었습니다.
1.2 필요성 (Motivation)
Reranking 전략의 필요성
Cross-Encoder는 검색 품질을 혁신적으로 향상시키는 기술이지만, 높은 계산 비용으로 인해 모든 문서에 적용하기 어렵습니다. 이 문제를 해결하기 위해 효율성과 정밀도의 균형을 맞춘 Reranking 전략이 도입되었습니다. Reranking은 검색의 정밀도를 극대화하면서도 계산 자원을 절약하는 실용적인 접근법입니다. 따라서 이는 현대 검색 시스템 설계의 핵심 요소로 자리 잡고 있습니다.
2. 검색 모델의 비교 및 분석
2.1 BM25: 전통적 통계 기반 키워드 검색 모델
작동 원리
BM25는 키워드 매칭 중심의 통계적 모델로, 단어의 중요도를 기반으로 질의와 문서 간 유사도를 계산합니다. 단어 빈도(TF)와 역문서 빈도(IDF)를 활용해 점수를 산출합니다. 문서 길이에 따른 점수 조정으로 긴 문서가 지나치게 높은 점수를 얻는 문제를 방지합니다.
강점
계산이 단순하고 빠르며 대규모 데이터셋에서도 효율적으로 작동.
키워드 중심의 간단한 검색 질의에 적합.
법률 문서, 학술 논문 등 키워드 매칭이 중요한 도메인에서 높은 성능 발휘.
한계
질의와 문서 간의 문맥적 의미를 이해하지 못함.
동의어 및 다의어 구별 어려움으로 검색 결과 정확도 저하 가능. 예를 들어, "AI 도입 효과"를 검색했을 때 "AI"와 관련이 없는 문서가 반환될 수 있음.
2.2 Bi-Encoder: 딥러닝 기반 의미 검색
작동 원리
Bi-Encoder는 질의와 문서를 각각 독립적으로 벡터로 변환한 뒤, 두 벡터 간의 유사도를 계산합니다. 언어 모델(예: BERT, RoBERTa)을 활용해 단어의 문맥적 의미를 반영한 벡터를 생성합니다. 병렬 처리가 가능해 대규모 데이터셋에서도 효율적으로 작동합니다.
강점
질의와 문서 간의 의미적 유사성을 잘 포착하며, 키워드 매칭에 의존하지 않음.
병렬 처리가 가능하여 BM25보다 높은 계산 비용에도 빠른 검색 속도 제공.
한계
질의와 문서를 독립적으로 처리하므로 세부적 상호작용을 반영하지 못함.
문서가 길어질수록 중요한 정보가 벡터 표현에서 희석될 가능성 존재.
2.3 Hybrid Search: BM25와 Bi-Encoder의 결합
작동 원리
Hybrid Search는 BM25의 점수와 Bi-Encoder의 벡터 유사성을 결합하여 검색 결과를 생성합니다. 결합 수식은 alpha * BM25 score + (1-alpha) * Bi-Encoder score과 같습니다. BM25의 키워드 매칭 능력과 Bi-Encoder의 문맥적 의미 분석을 동시에 활용합니다.
강점
키워드 기반 검색과 의미적 문맥 평가를 균형 있게 활용.
특정 도메인에 맞게 BM25와 Bi-Encoder의 비중을 조정하여 최적화 가능.
한계
고정된 가중합 방식으로 인해 질의와 문서 간 복잡한 상호작용을 동적으로 반영하기 어려움.
Bi-Encoder와 동일하게 문맥적 상호작용 부족 문제를 완전히 해결하지 못함.
2.4 Cross-Encoder: 고도화된 딥러닝 검색 모델
작동 원리
Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여 두 텍스트 간의 상호작용을 분석합니다. 문서와 질의 내 각 단어 간의 관계를 세밀히 평가하여 높은 정밀도의 결과를 생성합니다. BERT와 같은 대규모 언어 모델을 활용해 문맥적 의미를 극대화합니다.
강점
질의와 문서 간의 복잡한 관계를 종합적으로 분석하며, 가장 높은 정밀도 제공.
질의의 의도와 문서의 세부적 내용 간 관계를 세밀히 평가 가능. 예를들어, "법률 적용 사례"라는 질의에 대해, 관련 법률 조항과 적용 사례를 포함한 문서를 정확히 반환.
한계
계산 비용이 높고 처리 속도가 느려 대규모 데이터셋에서 직접 적용하기 어려움.
실시간 검색 시스템이나 응답 시간이 중요한 환경에서는 비효율적.
2.5 모델 간 비교 요약
2.6 요약 및 결론
BM25, Bi-Encoder, Hybrid Search, Cross-Encoder는 각기 다른 검색 전략을 제공합니다.
BM25: 키워드 기반 검색에서 효율적.
Bi-Encoder: 문맥적 의미를 포착하여 정밀도 향상.
Hybrid Search: 두 모델의 장점을 결합해 효율성과 정밀도를 균형 있게 제공.
Cross-Encoder: 가장 높은 정밀도를 제공하지만 높은 계산 비용 문제가 있음.
각 모델은 특정 환경과 목적에 따라 최적의 조합을 선택하는 것이 중요합니다. 이를 통해 효율적이고 정밀한 검색 시스템을 설계할 수 있습니다.
3. Reranking 전략
3.1 Cross-Encoder의 한계와 Reranking의 필요성
Cross-Encoder의 강점
Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여, 두 텍스트 간의 세밀한 상호작용을 평가합니다.
최고 수준의 정밀도 : 질의와 문서의 문맥적 관계를 가장 정밀하게 평가.
문맥 이해 능력: 기존 BM25나 Bi-Encoder 모델보다 문서와 질의 간의 의미적 연결성을 잘 포착.
Cross-Encoder의 한계
높은 계산 비용 : 모든 질의-문서 쌍에 대해 연산 수행 → 대규모 데이터셋에서 비효율적.
실시간 처리의 어려움 : 방대한 문서 집합에서 실시간으로 상위 문서를 반환하는 데 시간이 오래 소요.
병목 현상 : Cross-Encoder를 전체 데이터셋에 직접 적용하면 계산 자원 소모 과다.
Reranking의 필요성
Cross-Encoder의 강점을 살리면서 한계를 극복하기 위해 Reranking 전략이 도입되었습니다. 초기 검색에서 효율적 후보군 생성 후, 후보군에 대해서만 Cross-Encoder를 적용합니다. 계산 비용 문제를 해결하면서도 높은 정밀도를 유지할 수 있는 단계적 접근법입니다.
3.2 Reranking의 작동 원리
Reranking은 다음과 같은 단계로 구성됩니다.
1. 초기 후보군 생성
Hybrid-Search를 활용하여 초기 검색 단계에서 상위 문서를 Top-K 후보군으로 선정.
전체 문서를 처리하지 않고, 검색 결과의 초점을 후보군에 맞춤으로써 효율성을 확보.
2. Cross-Encoder를 활용한 재정렬
초기 후보군에 대해 Cross-Encoder를 적용하여, 문서와 질의 간의 세부적인 상호작용 평가.
Cross-Attention 메커니즘을 활용해 각 문서의 유사도를 계산하고 점수화.
높은 점수를 받은 문서를 상위에 배치.
3. 최종 결과 반환
Reranking된 결과를 사용자에게 제공.
초기 검색보다 정밀도가 높은 결과를 반환하여 만족도를 향상.
3.3 Reranking이 Cross-Encoder의 한계를 해결하는 방식
1. 계산 비용 절감
Cross-Encoder는 Top-K 후보군에만 적용되어 전체 데이터셋을 처리하는 데 드는 계산 비용 제거.
예를 들어, 수만 개 문서 중 상위 64개에만 Cross-Encoder를 적용하여 자원 소모를 최소화.
2. 정밀도 유지
Hybrid-Search가 완벽히 정밀하지 않더라도, Top-K에 충분히 많은 문서를 포함하면 정답 문서가 포함될 가능성 증가.
Cross-Encoder는 이러한 후보군 내에서 Top-3처럼 최종 상위 문서를 정확히 선별.
3. 효율성과 정밀도의 균형
초기 검색 단계의 효율성과 Cross-Encoder의 정밀도를 결합하여 실시간 검색 환경에서도 활용 가능.
"출산 예정일이 두 달 남았는데, 회사에서 야근을 요구해. 이럴 때 내가 거절할 수 있는 법적인 근거가 있을까?"
실제 문서에서 “임신 12주 이내”라는 표현이 등장하는데, “12주 이내”라는 표현과 “출산 예정일이 두 달” 이라는 표현을 연결지어서 검색.
5.7 파편화된 정보 처리
특징
규정이 여러 페이지에 걸쳐 있어도 이를 효과적으로 결합하여 문서를 검색.
BM25 + Bi-encoder의 한계: 특정 페이지나 단일 문서만 검색.
예시 질문
"계약서에는 추가 작업 요청이 명시돼 있지 않은데, 갑자기 업무가 늘어났어. 이 경우 책임은 누가 지게 돼?"
기존 검색방식은 “책임”과 관련된 부분만 검색하기 쉬우나, Reranker는 “추가 작업 요청”와 “책임”을 모두 검색.
6. 결론
Reranking은 Cross-Encoder의 높은 계산 비용 문제를 해결하면서, 검색 결과의 정밀도를 극대화하는 유효한 방법임을 확인했습니다. 초기 검색에서 Hybrid Search를 통해 빠르고 효율적으로 후보군을 선별하고, Cross-Encoder를 통해 세밀한 상호작용을 평가하여 최종 결과를 도출함으로써, 정확성과 효율성의 균형을 맞추는 데 성공했습니다.
실험 결과, Reranking 전략은 다양한 도메인에서 Top-3, Top-5, Top-10 Accuracy 모두에서 성능을 향상시켰고, 특히 공공, 법률, 에너지 도메인에서 두드러진 개선 효과를 보였습니다. 이를 통해 Reranking 전략이 정보 검색 시스템에서 중요한 역할을 수행할 수 있음을 입증하였습니다.
최종적으로, 검색 시스템 설계에서 효율성과 정밀도의 균형을 맞추는 것이 중요하며, Reranking은 Cross-Encoder의 한계를 극복하면서 실시간 검색 환경에서도 높은 품질의 결과를 제공할 수 있는 중요한 기술임을 알 수 있었습니다. 앞으로도 다양한 도메인과 환경에 맞는 최적화된 검색 모델을 개발하는 것이 중요한 과제가 될 것입니다.