개발/용어 사전

BM25란? 키워드 검색이 문서를 점수화하는 방식

cedis 2026. 6. 17. 01:01
AI 검색 용어집: BM25

검색어가 문서에 정확히 들어 있는지를 봐야 할 때 BM25가 등장합니다.

LLM과 벡터 검색이 많이 쓰이는 지금도 에러 코드, 함수명, 상품명처럼 문자열 자체가 중요한 검색에서는 BM25가 여전히 중요합니다.

한 문장으로 잡으면

  • BM25는 검색어에 나온 단어가 문서에 얼마나 잘 등장하는지 계산해 문서의 관련도를 점수화하는 키워드 검색 방식입니다.

핵심 포인트

포인트 1
단어가 자주 나오면 관련도가 올라갑니다.
포인트 2
여러 문서에 너무 흔한 단어는 영향력이 줄어듭니다.
포인트 3
문서 길이가 길다는 이유만으로 유리해지지 않도록 보정합니다.

어디에 쓰이나

에러 메시지 검색
`NullPointerException`, `ECONNRESET`, `JWT expired`처럼 문자열 자체가 중요한 검색에 잘 맞습니다.
문서 제목 검색
문서 제목이나 API 이름이 정확히 기억날 때 빠르게 후보를 좁힐 수 있습니다.
보완이 필요한 장면
사용자가 같은 뜻을 다른 말로 표현하면 놓칠 수 있어 semantic search와 함께 쓰는 경우가 많습니다.

헷갈리기 쉬운 부분

  • 정확한 단어, 제품명, 에러 코드, API 이름 검색에 강합니다.
  • 동의어나 문맥 이해는 약하므로 vector search와 같이 쓰이는 경우가 많습니다.

기억할 것

  • 정확한 문자열이 중요한 검색이면 BM25를 먼저 떠올립니다.
  • 의미가 비슷한 표현까지 찾아야 하면 BM25만으로는 부족합니다.

참고한 문서