언어 AI 가이드

BM25 및 어휘 검색

BM25는 용어 희귀도 및 문서 길이에 따라 조정된 검색어가 나타나는 빈도에 따라 문서에 점수를 매기는 고전적인 키워드 기반 순위 기능입니다.

개요

BM25는 용어 희귀도 및 문서 길이에 따라 조정된 검색어가 나타나는 빈도에 따라 문서에 점수를 매기는 고전적인 키워드 기반 순위 기능입니다. 수십 년이 지났지만 검색을 위한 매우 강력하고 보편적인 기준으로 남아 있습니다.

BM25 및 어휘 검색은 대규모로 텍스트와 음성을 읽고, 생성하고, 분류하고, 변환하는 데 사용되는 언어 AI 스택의 일부입니다.

심층 분석

BM25(Best Matching 25)는 1990년대 확률론적 Okapi 프레임워크의 Bag-of-Words 순위 기능입니다. 각 쿼리 용어에 대해 용어 빈도(문서에 단어가 나타나는 빈도, 매개변수 k1에 의해 제어되는 수익 감소), 역 문서 빈도(모음 수 전체에서 희귀한 단어가 더 많음) 및 문서 길이 정규화(매개변수 b, 긴 문서가 부당하게 선호되지 않음)의 세 가지 신호를 결합합니다. 이러한 학기별 점수를 합산하면 문서의 순위를 얻을 수 있습니다. 교육이 필요하지 않으며 반전된 인덱스를 통해 엄청나게 빠르게 실행됩니다. 이것이 Elasticsearch 및 Lucene과 같은 검색 엔진이 기본적으로 이를 사용하는 이유입니다. 신경 검색의 증가에도 불구하고 BM25는 특히 희귀 용어, 정확한 식별자 및 도메인 외부 쿼리에 대해 많은 벤치마크에서 여전히 승리하거나 동점을 기록했습니다.

기술적 통찰력

BM25의 용어-빈도 구성요소는 포화됩니다. k1 매개변수는 반복되는 단어가 점수를 높이는 정도를 제한하므로 50번 나타나는 용어는 한 번보다 50배 더 ​​관련성이 높지 않습니다. b 매개변수는 원시 주파수와 길이 정규화 주파수를 혼합합니다. IDF는 'the'와 같은 일반적인 단어의 가중치를 낮추고 독특한 단어에 보상을 제공합니다. 각 단어를 문서 목록에 매핑하는 역 인덱스에서 작동하기 때문에 채점은 검색어가 포함된 문서에만 적용되므로 매우 효율적입니다.

BM25 및 어휘 검색 마스터하기

BM25는 용어 희귀도 및 문서 길이에 따라 조정된 검색어가 나타나는 빈도에 따라 문서에 점수를 매기는 고전적인 키워드 기반 순위 기능입니다. 수십 년이 지났지만 검색을 위한 매우 강력하고 보편적인 기준으로 남아 있습니다. BM25 및 어휘 검색은 대규모로 텍스트와 음성을 읽고, 생성하고, 분류하고, 변환하는 데 사용되는 언어 AI 스택의 일부입니다. 깊은 이해를 구축하려면 BM25 및 어휘 검색을 단일 기능이 아닌 운영 모델로 취급하십시오. 즉, 원하는 결과를 정의하고, 가정을 명확히 하며, 시스템이 안정적으로 수행할 수 있는 작업과 여전히 전문가 판단이 필요한 작업을 분리하세요.

실제로 BM25 및 어휘 검색 디자인을 사용하는 강력한 팀은 프롬프트, 검색 및 검토 루프를 하나의 통합 커뮤니케이션 시스템으로 사용합니다. 명시적인 성공 기준을 문서화하고, 현실적인 데이터 및 워크플로를 기준으로 테스트하며, 일회성 벤치마크 승리보다는 관찰된 실패 패턴을 기반으로 반복합니다. 이론적 이해가 제품, 정책, 운영 전반에 걸쳐 지속 가능한 역량으로 바뀌는 곳입니다.

일관성을 유지하면서 언어 워크플로를 더 빠르게 진행할 수 있습니다. 동시에 환각 사실은 보고서, 지원 흐름 또는 연구 결과에 조용히 포함될 수 있습니다. 가장 탄력적인 접근 방식은 실험 속도와 거버넌스 규율을 결합하는 것입니다. 즉, 파일럿 실행, 증거 캡처, 결정 로그 게시, 모델 동작, 사용자 기대 및 규제 요구 사항이 발전함에 따라 보호 장치를 지속적으로 업데이트합니다.

전략적 영향

일관성을 유지하면서 언어 워크플로를 더 빠르게 진행할 수 있습니다.

일관성을 유지하면서 언어 워크플로를 더 빠르게 진행할 수 있습니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.

언어와 의사소통 스타일 전반에 걸쳐 접근성을 확장합니다.

언어와 의사소통 스타일 전반에 걸쳐 접근성을 확장합니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.

자동화가 반복을 처리하는 동안 팀은 판단에 더 많은 시간을 할애할 수 있습니다.

자동화가 반복을 처리하는 동안 팀은 판단에 더 많은 시간을 할애할 수 있습니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.

BM25와 어휘 검색의 미래

BM25는 사라질 것 같지 않습니다. 대신에 어휘 점수와 밀집 점수가 융합되는(종종 상호 순위 융합을 통해) 하이브리드 검색의 신경 방법과 점점 더 결합되고 있습니다. SPLADE와 같은 학습된 희소 모델은 BM25 스타일의 희소성과 신경 용어 가중치를 혼합하며, BM25는 신경 재순위 지정 이전의 1단계 검색기 역할을 하는 경우가 많습니다. 속도, 해석 가능성 및 교육 비용 제로는 생산 검색에서 지속적인 역할을 보장합니다.

실제 구현

Elasticsearch, OpenSearch 및 Apache Lucene/Solr의 기본 관련성 순위

2단계 검색에서 더 느린 신경 reranker를 제공하는 1단계 후보 검색

정확한 식별자와 오류 코드가 정확히 일치해야 하는 코드 및 로그 검색

DPR과 같은 밀도가 높은 검색기를 훈련하기 위한 하드 네거티브 예제 마이닝

구현 패턴

실제로 BM25 및 어휘 검색

Elasticsearch, OpenSearch 및 Apache Lucene/Solr의 기본 관련성 순위.

Elasticsearch, OpenSearch 및 Apache Lucene/Solr 팀의 기본 관련성 순위는 일반적으로 품질 임계값을 미리 정의하고, 극단적인 경우에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.

실제로 BM25 및 어휘 검색

2단계 검색에서 느린 신경 reranker를 제공하는 1단계 후보 검색입니다.

2단계 검색에서 느린 신경 reranker를 제공하는 1단계 후보 검색 팀은 일반적으로 품질 임계값을 미리 정의하고, 극단적인 경우에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.

실제로 BM25 및 어휘 검색

정확한 식별자와 오류 코드가 정확히 일치해야 하는 코드 및 로그 검색입니다.

정확한 식별자와 오류 코드가 정확하게 일치해야 하는 코드 및 로그 검색 팀은 일반적으로 품질 임계값을 미리 정의하고, 극단적인 경우에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.

실제로 BM25 및 어휘 검색

DPR과 같은 밀도가 높은 검색자를 훈련하기 위해 하드 네거티브 예제를 마이닝합니다.

DPR 팀과 같은 밀도가 높은 검색자를 훈련하기 위해 하드 네거티브 예제를 마이닝하면 일반적으로 품질 임계값을 미리 정의하고, 엣지 케이스에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻을 수 있습니다.

위험 및 가드레일

!

환각 사실은 보고서, 지원 흐름 또는 연구 결과에 조용히 포함될 수 있습니다.

!

신속한 민감도는 유사한 요청 간에 일관되지 않은 결과를 초래할 수 있습니다.

!

액세스 제어가 약한 경우 민감한 텍스트 데이터가 노출될 수 있습니다.

구현 로드맵

1

출시 전에 출력 형식, 톤, 품질 표준을 정의하세요.

출시 전에 출력 형식, 톤, 품질 표준을 정의하세요. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.

2

정확성이 중요할 때마다 신뢰할 수 있는 출처를 통해 대응하세요.

정확성이 중요할 때마다 신뢰할 수 있는 출처를 통해 대응하세요. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.

3

고위험 결과물에 대한 인적 검토 체크포인트를 유지합니다.

고위험 결과물에 대한 인적 검토 체크포인트를 유지합니다. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.

4

실패 패턴을 추적하고 프롬프트나 워크플로를 정기적으로 재교육하세요.

실패 패턴을 추적하고 프롬프트나 워크플로를 정기적으로 재교육하세요. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.

계속 탐색하세요