data-infra
Словарь ↗BM25
BM25 (Best Match 25) — классическая лексическая функция ранжирования, стоящая за большинством полнотекстовых поисков: она оценивает документ по запросу, сочетая частоту каждого термина запроса в документе (с убывающей отдачей — двадцать повторов не дают двадцатикратный балл), редкость термина по всему корпусу и нормализацию, не дающую длинным документам выигрывать за счёт объёма. На ней работают дефолты Elasticsearch, OpenSearch и Lucene. В эпоху RAG BM25 замечательно состарился как дополнение к эмбеддингам: векторный поиск ловит перефразирование и смысл, но размывает точные идентификаторы, тогда как BM25 попадает в буквальные строки — коды ошибок, артикулы, имена функций, юридические ссылки, — которые эмбеддинги считают шумом. Поэтому продакшн-ретривал обычно гибридный: BM25 и векторный поиск работают параллельно, а результаты сливаются (часто через reciprocal rank fusion) перед переранжированием. Он дёшев, быстр, интерпретируем и не требует обучения.
Похожие термины