개발/용어 사전

BM25, Vector Search, Reranker: 서비스별 검색 기술 조합 한눈에 보기

cedis 2026. 6. 13. 13:27
검색 기술 용어 정리

검색 기능을 공부하다 보면 BM25, Vector Search, Metadata Filter, Hybrid Search, Reranker, Query Rewrite, HNSW, FAISS 같은 용어를 계속 만나게 됩니다. 각각 따로 보면 어려워 보이지만, 실제로는 검색 서비스의 성격에 따라 자주 함께 묶이는 조합이 있습니다.

검색 조합은 크게 네 가지 흐름으로 나눠 볼 수 있습니다. 정확한 단어를 찾는 검색, 의미가 가까운 문서를 찾는 검색, 조건으로 범위를 줄이는 검색, 검색 결과를 다시 정렬하는 검색입니다.

검색 조합을 읽는 큰 그림

검색 기술을 볼 때는 “어떤 도구가 더 좋은가”보다 “검색 흐름의 어느 위치를 맡는가”를 먼저 나누면 이해가 쉬워집니다.

1단계
후보 찾기
BM25, Vector Search, Hybrid Search로 관련 있어 보이는 문서를 넓게 가져옵니다.
2단계
범위 줄이기
날짜, 카테고리, 권한, 지역 같은 metadata filter로 볼 수 있는 대상을 제한합니다.
3단계
다시 줄 세우기
Reranker나 랭킹 모델로 후보의 순서를 다시 계산합니다.
4단계
규모 처리
문서가 많아지면 HNSW, IVF, PQ 같은 ANN 인덱스나 FAISS 같은 라이브러리가 중요해집니다.

먼저 용어를 짧게 잡고 가면

BM25
검색어의 실제 단어가 문서에 얼마나 잘 등장하는지 점수화합니다.
Vector Search
문장이나 이미지의 의미를 벡터로 바꾼 뒤 가까운 대상을 찾습니다.
Metadata Filter
카테고리, 날짜, 권한, 버전 같은 조건으로 검색 범위를 줄입니다.
Hybrid Search
키워드 검색과 벡터 검색을 함께 사용해 후보를 가져옵니다.
Reranker
이미 찾은 후보들을 질문과의 관련도 기준으로 다시 정렬합니다.
Query Rewrite
사용자의 질문을 검색에 더 알맞은 문장으로 바꿉니다.

서비스별 검색 조합 예시

서비스 유형 조합 예시 읽는 포인트
일반 콘텐츠 검색 BM25 + Vector + Metadata Filter 제목과 본문 키워드, 의미가 비슷한 콘텐츠, 태그와 카테고리 조건을 함께 봅니다.
RAG Q&A 봇 Hybrid Retriever + Reranker 질문과 관련 있어 보이는 문서를 넓게 찾고, 답변에 넣을 근거 문서를 다시 좁힙니다.
기술 문서 검색 BM25 + Vector + Query Rewrite 함수명, 에러 코드, 설정값처럼 정확한 문자열과 자연어 질문을 함께 처리합니다.
고객센터 챗봇 Vector + Reranker + Metadata Filter 다양한 표현의 질문을 의미로 찾고, 제품군·앱 버전·지역 같은 조건으로 범위를 줄입니다.
쇼핑몰 검색 BM25 + Filter + 개인화 랭킹 상품명, 브랜드, 색상, 가격 조건을 반영하고 사용자별 선호에 따라 순서를 조정합니다.
뉴스 검색 BM25 + 시간 필터 + Entity 필드 사건명, 인물명, 기관명, 최신성을 중심으로 문서를 찾습니다.
추천 피드 Vector + 사용자 행동 + 랭킹 모델 검색어보다 조회, 클릭, 저장, 구매 같은 사용자-아이템 상호작용을 더 많이 봅니다.
이미지 검색 Vector Search + HNSW 이미지를 벡터로 바꾸고, 시각적으로 가까운 이미지를 빠르게 찾습니다.
대규모 문서 검색 Hybrid + ANN Index + Reranker 많은 문서에서 후보를 빠르게 찾고, 최종 후보는 다시 정렬합니다.

헷갈리기 쉬운 층위

BM25와 Vector Search
BM25는 단어 중심 검색이고, Vector Search는 의미 중심 검색입니다. 둘은 경쟁 관계라기보다 서로 보완하는 경우가 많습니다.
Metadata Filter와 Reranker
Filter는 검색 대상 범위를 제한하고, Reranker는 이미 찾은 후보의 순서를 다시 정합니다.
HNSW와 FAISS
HNSW는 벡터를 빠르게 찾기 위한 ANN 인덱스 방식 중 하나이고, FAISS는 대규모 벡터 검색을 위한 라이브러리입니다. FAISS 안에서도 여러 인덱스 방식을 고를 수 있으므로, 둘을 같은 제품명처럼 비교하면 헷갈립니다.

실제로 붙일 때 빠지기 쉬운 것

평가 기준
좋아 보이는 조합보다 실제 검색 결과가 나아졌는지가 중요합니다. 검색 품질은 보통 recall@k, MRR, nDCG 같은 지표나 직접 만든 평가 질문 세트로 확인합니다.
지연 시간과 비용
Reranker를 붙이면 품질이 좋아질 수 있지만, 후보마다 추가 계산이 들어갑니다. 상위 몇 개만 rerank할지 정하는 이유가 여기에 있습니다.
권한과 필터
사내 문서나 고객 데이터 검색에서 권한 필터는 보안과 바로 연결됩니다. 사용자가 볼 수 없는 문서가 후보에 섞이면 안 됩니다.
문서 갱신
문서가 수정되면 색인과 임베딩도 갱신되어야 합니다. 검색 기술보다 데이터 동기화가 검색 품질을 무너뜨리는 경우도 많습니다.

처음 읽을 때 기억할 기준

이 표를 외울 필요는 없습니다. 처음에는 “정확한 단어는 BM25”, “의미는 Vector”, “조건은 Filter”, “다시 줄 세우기는 Reranker”, “규모가 커지면 ANN Index” 정도로만 잡으면 됩니다.

실제 서비스를 만들 때는 검색 품질이 부족한 지점을 보고 필요한 요소를 하나씩 붙여가며 구조를 확장하게 됩니다.

한 줄 정리

검색 기술 조합의 핵심은 단어 검색·의미 검색·조건 필터·재정렬·대규모 인덱싱 중 어떤 성격이 필요한지 구분하는 데 있습니다.

참고한 문서