Пока индустрия меряется размерами языковых моделей, в основе большинства систем поиска по-прежнему лежит скромная формула родом из 1994 года. Об этом напоминает канал «Технологии Яндекса»: алгоритм BM25, чьё название расшифровывается как Best Matching, а цифра означает номер версии, к середине 2010-х стал мировым стандартом ранжирования.
Что вообще решает поиск
Любая система поиска по тексту делает две вещи: сначала вытаскивает из миллионов документов те, где вообще встречаются слова из запроса, а потом выстраивает их по релевантности. За вторую часть и отвечает BM25. Его использовали интернет-поисковики вроде Google — сегодня они работают на более сложных алгоритмах, но большинство локальных поисков, например по маркетплейсам, всё ещё держится на этой формуле.
Три веса одного слова
Алгоритм оценивает каждый документ по отдельным словам запроса. Если пользователь ищет «пирог с яблоками и корицей», в игру вступают три критерия.
Первый — редкость слова во всей базе. «Корица» встречается нечасто, значит, это сильный сигнал. «Яблоки» попадаются чаще, сигнал слабее. А союз «и» есть везде и на релевантность не влияет вовсе.
Второй — частота слова внутри документа, но с защитой от накрутки. Упоминание «корицы» трижды поднимет оценку, а вот тридцать раз — уже нет: BM25 не позволит искусственно раздуть релевантность повторами.
Третий — длина документа. Короткая карточка товара и большой лонгрид — разные весовые категории, и алгоритм выравнивает их, чтобы точный рецепт не проиграл статье «История яблочных пирогов в мировой кухне».
Каждый критерий превращается в число и подставляется в итоговую формулу, которая и выставляет документу оценку.
Почему нейросети его не съели
Казалось бы, языковые модели должны были отправить лексический поиск на пенсию. Но у BM25 есть козырь: он видит слова буквально. Артикулы, коды ошибок, имена функций — для нейросети это может быть числом без контекста, а для BM25 — конкретным словом, которое либо есть в документе, либо нет.
Поэтому сегодня их чаще не противопоставляют, а складывают: один ищет по словам, второй по смыслу, результаты объединяют. Так устроен гибридный поиск, на котором, по данным канала, построено большинство RAG-систем — тех, что отвечают на запросы по базам данных.
Что это значит
Для читателя — простая мысль: «умный» поиск не отменяет «точный». Если вы строите поиск по своему продукту, каталогу или внутренней базе знаний, начинать с BM25 всё ещё разумно — это дёшево, предсказуемо и хорошо ловит точные совпадения. А сверху уже можно добавить смысловой слой. Как сообщает «Технологии Яндекса», именно такая связка сегодня и стала рабочей нормой.
Источник: Telegram: Технологии Яндекса





Комментарии 6