피드로 돌아가기
Hybrid search in Manticore Search
Dev.toDev.to
Database

Manticore Search가 BM25 텍스트 검색과 KNN 벡터 검색을 Reciprocal Rank Fusion으로 결합하여 정확도와 유연성을 동시에 확보하는 하이브리드 검색 아키텍처를 제공한다.

Hybrid search in Manticore Search

Sergey Nikolaev2026년 4월 1일9intermediate

Context

단일 검색 방식은 동의어, 자연어 표현, 정확한 식별자를 동시에 처리하기 어렵다. 전체 텍스트 검색은 유의어와 자연어를 이해하지 못하고, 벡터 검색은 SKU나 에러 코드 같은 정확한 토큰을 처리하지 못한다.

Technical Solution

  • Manticore Search → BM25 기반 텍스트 서치와 KNN 기반 벡터 서치를 별도로 실행
  • 각 서치 결과 → RRF(Reciprocal Rank Fusion) 알고리즘으로 순위 병합
  • RRF 계산식 → 1/(rank_constant + rank)를 통해 순위 위치만 비교
  • rank_constant 기본값 → 60으로 설정되어 점수 정규화 문제 회피
  • fusion_weights 옵션 → 다중 신호(텍스트, 제목 유사도, 이미지 유사도) 가중치 조정 가능

Impact

정확한 키워드 매칭과 의미 이해가 결합되어 단일 패스로 더 나은 결과 집합 생성

Key Takeaway

서로 다른 척도의 점수를 비교하는 대신 순위 위치만 비교하는 RRF 접근법이 점수 정규화 문제 없이 단순하고 강력하게 결과를 결합한다.


사용자 쿼리가 정확한 식별자와 자연어 의도를 혼합하는 환경에서 BM25 텍스트 검색과 KNN 벡터 검색을 RRF로 병렬 실행하면 별도의 복잡한 쿼리 로직 없이 정확한 결과를 반환할 수 있다.

원문 읽기