1. Главная
  2. Блог
  3. RAG и базы знаний
  4. Реранкинг в RAG: зачем переоценивать найденное

Реранкинг в RAG: зачем переоценивать найденное

14 августа 2026
5

Поиск возвращает список фрагментов, отсортированный по близости к вопросу. Проблема в том, что близость вектора — грубая мера: она сжимает целый фрагмент в одну точку и сравнивает точки. Нюансы при таком сжатии теряются.

Практическое следствие знакомо всем, кто смотрел журналы RAG: нужный фрагмент найден, но стоит седьмым. А в модель передаются первые четыре.

Реранкинг решает именно это. Он не ищет — он пересортировывает уже найденное, оценивая пару «вопрос — фрагмент» напрямую.

В чём разница с обычным поиском

При векторном поиске вопрос и фрагмент кодируются по отдельности, и сравниваются готовые векторы. Модель, кодирующая фрагмент, ничего не знает о вопросе. Зато векторы фрагментов считаются один раз при индексации, и поиск получается быстрым — можно перебрать миллионы записей.

При переоценке вопрос и фрагмент подаются в модель вместе, и она оценивает, отвечает ли этот фрагмент на этот вопрос. Точнее, потому что модель видит обе стороны сразу. Но и дороже: каждая пара считается заново, поэтому перебрать миллион фрагментов невозможно.

Отсюда двухступенчатая схема, которая и стала стандартной:

Ступень Что делает Сколько обрабатывает
Поиск быстро отбирает кандидатов весь корпус → 20–50
Переоценка точно расставляет по порядку 20–50 → 3–5

Первая ступень отвечает за полноту: нужный фрагмент должен попасть в список. Вторая — за точность: он должен оказаться наверху. Если фрагмент не найден на первой ступени, переоценивать нечего — поэтому реранкинг не заменяет гибридный поиск, а дополняет его.

Что это даёт

Меньше шума в контексте. Вместо десяти фрагментов «примерно по теме» в модель уходит три-четыре по делу. Ответ становится точнее — лишние фрагменты его размывают.

Дешевле обращение к модели. Передаётся меньше текста. Часто переоценка окупает себя одной этой экономией, особенно на длинных фрагментах.

Возможность искать шире. Раз порядок исправит вторая ступень, первую можно настроить на полноту: брать больше кандидатов, объединять два поиска грубо. Это снимает необходимость тонко настраивать веса объединения.

Понятный рычаг качества. Оценка релевантности от реранкера — число, по которому можно отсекать: если лучший кандидат набрал мало, значит подходящего в корпусе нет, и правильный ответ — отказ, а не попытка ответить по слабым фрагментам.

Последний пункт недооценивают. Порог отсечения — самый простой способ получить честное «не знаю» вместо выдуманного ответа.

Чего это стоит

Честно: реранкинг не бесплатен.

Время. Добавляется шаг между поиском и ответом. При тридцати кандидатах — обычно десятки или сотни миллисекунд в зависимости от модели и того, где она развёрнута. Для переписки незаметно, для голосового сценария может оказаться критично.

Деньги. Либо оплата стороннего сервиса, либо своя инфраструктура под модель.

Сопровождение. Ещё один компонент, который может упасть. Нужен запасной путь: если реранкер недоступен, система должна работать на порядке от поиска, а не отказывать целиком.

Варианты реализации

Отдельная модель-реранкер. Компактная модель, обученная оценивать пары «вопрос — фрагмент». Разворачивается локально, работает быстро. Обычный выбор для промышленных систем, особенно там, где данные не должны покидать контур.

Сервис по подписке. Готовый интерфейс, ничего не надо разворачивать. Быстро на старте, но данные уходят наружу и появляется постоянная плата.

Большая языковая модель как оценщик. Просим модель оценить релевантность каждого фрагмента. Гибко, не требует отдельного компонента, но дороже и медленнее всех вариантов. Разумно для небольших объёмов или как временное решение.

Правила поверх оценок. Не переоценка в строгом смысле, но иногда достаточно: поднять свежие редакции, понизить архивные разделы, предпочесть документы нужной категории. Дёшево и предсказуемо.

Разбор: когда переоценка не помогла

Полезнее разобрать случай, где приём не сработал, — он показывает границу применимости.

Задача. База знаний страховой тематики, около 900 страниц условий и правил.

Симптом. Ответы часто опирались на посторонние разделы. Решили, что нужна переоценка.

Что сделали сначала. Добавили реранкер. Результат — почти никакого улучшения. Доля правильных ответов на контрольном наборе выросла в пределах погрешности.

Что показал разбор. Посмотрели, что вообще приходит на вход переоценке. Оказалось, что нужного фрагмента в списке кандидатов не было в большинстве провальных случаев. Переоценка честно сортировала то, что ей дали, — а дали ей неподходящее.

Причина обнаружилась в нарезке: правила были свёрстаны с нумерацией пунктов, а нарезка по символам разрывала пункт и его подпункты. Искомые условия оказывались размазаны по трём фрагментам, ни один из которых не был похож на вопрос целиком.

Что помогло на самом деле. Перенарезка по структуре документа и схема «мелкий поиск, крупный контекст» — «Чанкинг документов». После этого нужные фрагменты стали попадать в кандидаты, и вот тогда переоценка дала прирост: она подняла их с седьмых-десятых позиций в первую тройку.

Вывод, ради которого этот разбор. Реранкинг улучшает порядок, а не полноту. Если нужного фрагмента нет в списке кандидатов, переоценка бесполезна по определению. Порядок диагностики: сначала проверить, находится ли нужное вообще, и только потом заниматься сортировкой. Как это проверять — «Метрики RAG».

Как понять, нужен ли вам реранкинг

Проверка занимает час и не требует ничего внедрять.

Возьмите 30–50 реальных вопросов с известными правильными ответами. Для каждого посмотрите в журнале, на какой позиции оказался нужный фрагмент.

Что видно Что делать
Нужный фрагмент в первой тройке почти всегда реранкинг не нужен
Нужный фрагмент есть, но на 5–20 позиции реранкинг даст заметный прирост
Нужного фрагмента нет в списке вообще чинить нарезку и поиск, переоценка не поможет

Третья строка — самая частая на непроверенных системах, и именно поэтому реранкинг так часто разочаровывает: его ставят там, где сломано звено раньше.

Частые вопросы

Что такое реранкинг в RAG?

Это переоценка уже найденных фрагментов отдельной моделью, которая смотрит на вопрос и фрагмент вместе, а не сравнивает заранее посчитанные векторы. Поиск быстро отбирает два-три десятка кандидатов, переоценка точно расставляет их по порядку, и в модель уходят лучшие три-пять.

Чем реранкер отличается от векторного поиска?

Векторный поиск кодирует вопрос и фрагменты по отдельности и сравнивает готовые векторы — это быстро и позволяет перебрать весь корпус, но грубо. Реранкер обрабатывает пару «вопрос — фрагмент» совместно и потому точнее, но каждую пару считает заново, поэтому применяется только к небольшому списку кандидатов.

Насколько реранкинг замедляет ответ?

Обычно на десятки или сотни миллисекунд при двух-трёх десятках кандидатов — зависит от модели и того, локально она развёрнута или вызывается по сети. В переписке это незаметно, в голосовых сценариях может быть критично, потому что там счёт идёт на доли секунды.

Заменяет ли реранкинг гибридный поиск?

Нет. Гибридный поиск отвечает за то, чтобы нужный фрагмент вообще попал в список кандидатов, реранкинг — за то, чтобы он оказался наверху. Это разные задачи, и вторая бессмысленна без первой.

Мы добавили реранкер, но качество не выросло. Почему?

Скорее всего, нужного фрагмента нет в списке кандидатов — тогда переоценивать нечего. Проверьте по журналу, находится ли правильный фрагмент вообще, хотя бы на двадцатой позиции. Если нет, проблема в нарезке или поиске, и чинить надо их.

Можно ли использовать реранкинг для отказа от ответа?

Да, и это один из самых полезных его эффектов. Оценка реранкера — число: если лучший кандидат набрал мало, значит подходящих сведений в корпусе нет, и система должна честно сказать «не знаю», а не отвечать по слабым фрагментам.

Что дальше

Полнота кандидатов важнее их порядка — «Гибридный поиск» и «Чанкинг документов». Чтобы понять, что именно улучшать, нужны измерения: «Метрики RAG». Общая схема системы — «Архитектура RAG по шагам».

Настройка двухступенчатого поиска, включая выбор и развёртывание реранкера, — часть работы по разработке и внедрению ИИ.