Blogs & Articles
>
문맥을 이해하고 추론하다: Reranker를 통한 AI 기반 검색 혁신
Blog
December 18, 2024

문맥을 이해하고 추론하다: Reranker를 통한 AI 기반 검색 혁신

생성형 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)를 활용해 점수를 산출합니다. 문서 길이에 따른 점수 조정으로 긴 문서가 지나치게 높은 점수를 얻는 문제를 방지합니다.

강점

한계

2.2 Bi-Encoder: 딥러닝 기반 의미 검색

작동 원리

Bi-Encoder는 질의와 문서를 각각 독립적으로 벡터로 변환한 뒤, 두 벡터 간의 유사도를 계산합니다. 언어 모델(예: BERT, RoBERTa)을 활용해 단어의 문맥적 의미를 반영한 벡터를 생성합니다. 병렬 처리가 가능해 대규모 데이터셋에서도 효율적으로 작동합니다.

강점

한계

2.3 Hybrid Search: BM25와 Bi-Encoder의 결합

작동 원리

Hybrid Search는 BM25의 점수와 Bi-Encoder의 벡터 유사성을 결합하여 검색 결과를 생성합니다. 결합 수식은 alpha * BM25 score + (1-alpha) * Bi-Encoder score과 같습니다. BM25의 키워드 매칭 능력과 Bi-Encoder의 문맥적 의미 분석을 동시에 활용합니다.

강점

한계

2.4 Cross-Encoder: 고도화된 딥러닝 검색 모델

작동 원리

Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여 두 텍스트 간의 상호작용을 분석합니다. 문서와 질의 내 각 단어 간의 관계를 세밀히 평가하여 높은 정밀도의 결과를 생성합니다. BERT와 같은 대규모 언어 모델을 활용해 문맥적 의미를 극대화합니다.

강점

한계

2.5 모델 간 비교 요약

2.6 요약 및 결론

BM25, Bi-Encoder, Hybrid Search, Cross-Encoder는 각기 다른 검색 전략을 제공합니다.

각 모델은 특정 환경과 목적에 따라 최적의 조합을 선택하는 것이 중요합니다. 이를 통해 효율적이고 정밀한 검색 시스템을 설계할 수 있습니다.

3. Reranking 전략

3.1 Cross-Encoder의 한계와 Reranking의 필요성

Cross-Encoder의 강점

Cross-Encoder는 질의와 문서를 하나의 입력으로 결합하여, 두 텍스트 간의 세밀한 상호작용을 평가합니다.

Cross-Encoder의 한계

Reranking의 필요성

Cross-Encoder의 강점을 살리면서 한계를 극복하기 위해 Reranking 전략이 도입되었습니다. 초기 검색에서 효율적 후보군 생성 후, 후보군에 대해서만 Cross-Encoder를 적용합니다. 계산 비용 문제를 해결하면서도 높은 정밀도를 유지할 수 있는 단계적 접근법입니다.

3.2 Reranking의 작동 원리

Reranking은 다음과 같은 단계로 구성됩니다.

1. 초기 후보군 생성

2. Cross-Encoder를 활용한 재정렬

3. 최종 결과 반환

3.3 Reranking이 Cross-Encoder의 한계를 해결하는 방식

1. 계산 비용 절감

2. 정밀도 유지

3. 효율성과 정밀도의 균형

4. Experiment: Reranking 효과 분석

4.1 실험 세팅

데이터셋

모델 구성

평가 지표

하드웨어 환경

4.2 실험 결과

Reranker의 효과

지연 시간과 정확성의 균형

4.3 고객사별 성능 개선 요약

아래 표는 각 고객사 데이터셋에서 Reranker와 Baseline의 성능을 비교한 결과를 보여줍니다.

4.4 결론

성능 개선

효율성과 정확성

예외 사례

5. Reranker 작동 예시

5.1 다중 조건과 문맥적 상호작용 처리

특징

예시 질문

"계약서에는 일정 변경이 가능하다고 나와 있는데, 이렇게 된 경우 추가 비용은 누가 부담해야 해?"

5.2 구체적 조항 또는 세부 항목 식별

특징

예시 질문

"근로계약서 제12조에서 언급된 휴가 사용 조건을 구체적으로 설명해 줄래?"

5.3 모호하거나 암시적인 표현 처리

특징

예시 질문

"내 계좌가 해킹된 것 같아. 계좌 비밀번호를 바꾸려면 어떤 절차를 따라야 하고, 은행 외에 어디에 신고해야 해?"

5.4 다양한 문서 간 정보 통합

특징

예시 질문

"회사에서 퇴직금 산정 기준을 알려달라고 요청했는데, 관련 자료가 공개되지 않았어. 이런 경우 어떻게 대응해야 해? 노동청에 문의해야 할까?"

5.5 사용자 의도 중심의 검색

특징

예시 질문

"전입신고는 했는데 여전히 세금 고지서가 이전 주소로 가. 이거 내가 따로 처리해야 해, 아니면 세무서에서 알아서 수정해?"

5.6 추론 기반 검색

특징

예시 질문

"출산 예정일이 두 달 남았는데, 회사에서 야근을 요구해. 이럴 때 내가 거절할 수 있는 법적인 근거가 있을까?"

5.7 파편화된 정보 처리

특징

예시 질문

"계약서에는 추가 작업 요청이 명시돼 있지 않은데, 갑자기 업무가 늘어났어. 이 경우 책임은 누가 지게 돼?"

6. 결론

Reranking은 Cross-Encoder의 높은 계산 비용 문제를 해결하면서, 검색 결과의 정밀도를 극대화하는 유효한 방법임을 확인했습니다. 초기 검색에서 Hybrid Search를 통해 빠르고 효율적으로 후보군을 선별하고, Cross-Encoder를 통해 세밀한 상호작용을 평가하여 최종 결과를 도출함으로써, 정확성과 효율성의 균형을 맞추는 데 성공했습니다.

실험 결과, Reranking 전략은 다양한 도메인에서 Top-3, Top-5, Top-10 Accuracy 모두에서 성능을 향상시켰고, 특히 공공, 법률, 에너지 도메인에서 두드러진 개선 효과를 보였습니다. 이를 통해 Reranking 전략이 정보 검색 시스템에서 중요한 역할을 수행할 수 있음을 입증하였습니다.

최종적으로, 검색 시스템 설계에서 효율성과 정밀도의 균형을 맞추는 것이 중요하며, Reranking은 Cross-Encoder의 한계를 극복하면서 실시간 검색 환경에서도 높은 품질의 결과를 제공할 수 있는 중요한 기술임을 알 수 있었습니다. 앞으로도 다양한 도메인과 환경에 맞는 최적화된 검색 모델을 개발하는 것이 중요한 과제가 될 것입니다.