Перейти к содержимому
BestSite

5 мин чтения

Что такое реранкинг и зачем он нужен в поиске и RAG

Что такое реранкинг (reranking), как работает реранкер и почему современный поиск и AI-ассистенты без него отвечают хуже. Объясняем простым языком, с картинками и реальным примером.

Что такое реранкинг и зачем он нужен в поиске и RAG

Клиент пишет ассистенту на сайте: «Как вернуть заказ?» Система ищет по базе знаний и на первое место ставит… «Условия доставки». А политика возврата оказывается на четвёртом-пятом месте. Ассистент опирается на первые фрагменты, начинает рассказывать про доставку, и клиент получает бесполезный ответ.

Поиск не ошибся: все эти документы действительно про заказы и близки по теме. Просто порядок неточный. Этап, который решает эту проблему, называется реранкинг, то есть повторная сортировка.

Что такое реранкинг

Реранкинг (от английского reranking, «переранжирование») это второй этап поиска. Первый этап быстро выбирает из тысяч или миллионов документов несколько десятков кандидатов, а реранкер берёт этот короткий список, внимательно сравнивает каждый документ с вопросом и выстраивает их заново по реальной релевантности.

Это похоже на библиотеку. Первый этап это библиотекарь, который услышал ваш вопрос и принёс двадцать книг с нужной полки. Реранкер это специалист, который открывает каждую из двадцати книг, листает и говорит: «Вот эти две отвечают именно на ваш вопрос».

Схема двухэтапного поиска: векторный поиск выбирает 50 кандидатов из миллиона документов, реранкер выбирает из них 5 лучших, языковая модель пишет ответ
Векторный поиск работает быстро и даёт примерный список, а реранкер точно его сортирует.

Почему одного этапа недостаточно

Современный семантический поиск строится на эмбеддингах: каждый документ заранее превращается в список чисел, вопрос превращается так же, и система находит самые близкие по смыслу документы. Как это работает, мы подробно объяснили в статье про эмбеддинги.

Сильная сторона этого подхода в скорости. Документы превращаются в числа один раз и хранятся, а поиск среди миллионов записей занимает миллисекунды. Слабая сторона в том, что вопрос и документ превращаются в числа по отдельности. Когда модель читает документ, она не видит вопроса. В итоге документы «близкие по теме» и «реально отвечающие на вопрос» получают почти одинаковые оценки.

Как работает реранкер

Реранкер обычно это модель типа cross-encoder. Она читает вопрос и документ вместе, смотрит на связь между ними слово за словом и возвращает одно число: насколько этот документ отвечает на этот вопрос. Например, 0.94 означает очень релевантно, а 0.05 почти не связано.

Сравнение bi-encoder и cross-encoder: модель эмбеддингов кодирует вопрос и документ отдельно, реранкер читает их вместе и выдаёт оценку релевантности
Модель эмбеддингов видит вопрос и документ по отдельности, а реранкер читает их рядом.

Такой подход точнее, но дороже: для каждой пары «вопрос + документ» модель запускается отдельно. Проверить так миллион документов заняло бы слишком много времени. Поэтому два этапа объединяют: быстрый поиск отбирает кандидатов, а медленный и точный реранкер сортирует только их.

Реальный пример: до и после

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

Результаты поиска до и после реранкинга: политика возврата поднимается с пятого места на первое
После реранкера два документа, которые реально отвечают на вопрос, поднимаются наверх, а нерелевантные уходят вниз.

После реранкера картина полностью меняется. «Политика возврата» с оценкой 0.96 поднимается на первое место, «Возврат денег на карту» на второе. А «Подарочные карты» получают 0.03 и практически выпадают из списка. Обратите внимание: разница между оценками тоже становится резкой. Это помогает системе распознать ситуацию «хорошего ответа не нашлось».

Где используется реранкинг

  • RAG и AI-ассистенты. Языковая модель пишет ответ по найденным фрагментам. Чем точнее фрагменты, тем точнее ответ. Это серьёзно снижает риск, что ассистент начнёт выдумывать, об этом мы писали в статье об ошибках нейросетей.
  • Поиск по сайту. В интернет-магазине по запросу «тёплые детские сапоги на зиму» вниз уходят товары, где есть слова «детские» и «обувь», но это летние сандалии.
  • Корпоративные базы знаний. Когда сотрудник ищет по договорам, инструкциям и регламентам, наверху оказывается самый точный пункт.
  • Рекомендательные системы. Сначала отбираются сотни кандидатов, потом они пересортировываются под конкретного пользователя.

Крупные поисковые системы тоже давно работают с многоэтапным ранжированием: сначала широкий отбор, потом точная сортировка более тяжёлыми моделями. Реранкинг это версия той же идеи, доступная в бизнес-проектах.

Как реранкинг влияет на расходы

На первый взгляд дополнительная модель означает дополнительные расходы. На практике часто наоборот. Без реранкера в языковую модель отправляют 20–30 фрагментов «на всякий случай». С реранкером хватает 3–5 самых точных. Это экономия тысяч токенов на каждом запросе. Как токены влияют на бюджет, мы показали в цифрах в статье о стоимости внедрения AI.

Кроме того, языковые модели хуже используют информацию, которая теряется в середине длинного контекста. Мало точных фрагментов это и дешевле, и качественнее.

Какие бывают реранкеры

  • Облачные API: Cohere Rerank, Voyage AI, Jina Reranker. Легко подключить, есть поддержка многих языков.
  • Открытые модели: семейство BAAI bge-reranker и другие. Работают на вашем сервере, данные никуда не уходят. Это важно для компаний со строгими требованиями к безопасности данных.
  • Языковая модель в роли реранкера. Можно передать большой модели кандидатов и попросить выбрать самые подходящие. Гибко, но медленнее и дороже.

Для текстов на русском и азербайджанском обязательно нужно выбирать многоязычную модель и проверять её на своих данных. Реранкеры, обученные только на английском, на других языках могут работать заметно хуже.

Нужен ли вам реранкер

Если поиск или ассистент выдаёт результаты «примерно правильные, но не совсем то», это классический признак, что нужен реранкинг. Особенно в таких случаях:

  • в базе знаний много документов, близких по теме;
  • вопросы длинные или конкретные, например про определённый пункт договора;
  • ассистент находит правильный документ, но отвечает по другому;
  • в языковую модель уходит слишком много контекста, и растут расходы.

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

Итог

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

В проектах по внедрению AI мы собираем семантический поиск, реранкинг и RAG вместе и измеряем качество на реальных вопросах. Если хотите проверить, насколько точно работает ваш поиск или ассистент, напишите нам.

Расскажите о своём проекте

Опишите задачу в нескольких предложениях. Мы вернёмся с вопросами или предварительной оценкой.

Emailoffice@bestsite.az

Что будет после заявки

  1. 1Читаем заявкуРазбираемся в задаче и при необходимости задаём уточняющие вопросы.
  2. 2Обсуждаем деталиСозваниваемся или переписываемся, чтобы понять цели, сроки и бюджет.
  3. 3Присылаем оценкуГотовим предварительную оценку сроков и стоимости работ.

Отправляя форму, вы соглашаетесь с политикой конфиденциальности.

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

Зависит от объёма работ: корпоративный сайт и CRM-система отличаются по стоимости в разы. После короткого созвона мы бесплатно готовим письменную смету с разбивкой по этапам.

Мы работаем быстро: лендинг запускаем от 5 рабочих дней, корпоративный сайт от 2 недель, интернет-магазин от 4 недель. Мобильное приложение или CRM занимает от 3 месяцев. Точные сроки фиксируем в смете.

Да. Мы ведём проекты удалённо: созвоны, общая доска задач и регулярные демонстрации.

Вам. После финальной оплаты мы передаём исходный код, дизайн и все аккаунты.

Да. Мы предлагаем ежемесячную поддержку: мониторинг, резервное копирование, обновления, исправления и небольшие доработки.

Да. Мы начинаем с технического аудита и предлагаем, что исправить, что переписать, а что оставить как есть.

Не нашли ответ?

Оставьте заявку или напишите на почту, и мы ответим на все вопросы о вашем проекте.