Glance: генератор в RAG сам переранжирует пассажи без отдельной модели

В системах поиска с генерацией ответа (RAG) обычно работают две разные модели: одна переранжирует найденные пассажи, другая по ним отвечает. Авторы препринта называют это дублированием: приходится держать в памяти обе модели и дважды обрабатывать одни и те же пассажи.
Метод Glance убирает отдельный реранкер. Генератор получает лёгкий адаптер принятия решений и «указательную» голову (pointer head), которые оценивают кандидатов-пассажей из общего предзаполнения (prefill) контекста. Короткие пробы релевантности ответвляются от закэшированного контекста и выдают по одной оценке на пассаж, так что каждую пару «запрос, пассаж» не нужно предзаполнять отдельно. Адаптер, активируемый только на время проб, позволяет затем продолжить генерацию ответа с исходного кэша пассажей.
В такой конфигурации одна постоянно загруженная модель на 9 млрд параметров обслуживает генерацию, общие решения и переранжирование; каждый дополнительный «навык принятия решений» стоит примерно 0,1 ГиБ памяти. Дообучение на MS MARCO заняло 39 минут.
Результаты. По nDCG@10 Glance набрал 0,741 на SciFact и 0,345 на NFCorpus; у bge-reranker-v2-m3, 0,721 и 0,326. На 300 вопросах HotpotQA контекст, отобранный Glance, дал прирост F1 ответа на 0,045 по сравнению с контекстом, отобранным кросс-энкодером, при том же базовом генераторе (парный бутстреп, 95%-й доверительный интервал [0,014; 0,076]). В исследовании масштабирования качество переранжирования продолжало расти вплоть до 200 кандидатов (43 тыс. токенов), оцениваемых из одного общего предзаполнения; там Glance превосходит кросс-энкодер на 0,058 nDCG@10.
Авторы сами называют результаты начальными: проверка охватывает два набора данных для поиска, один набор вопросов-ответов и одно семейство базовых моделей.
Ключевые факты
- Glance превращает генератор RAG в собственный реранкер: лёгкий адаптер и pointer head оценивают пассажи из общего предзаполнения, отдельная модель не нужна.
- Одна модель на 9 млрд параметров обслуживает генерацию, общие решения и переранжирование; каждый дополнительный навык, примерно 0,1 ГиБ памяти.
- После 39 минут дообучения на MS MARCO: nDCG@10 0,741 на SciFact и 0,345 на NFCorpus против 0,721 и 0,326 у bge-reranker-v2-m3.
- На 300 вопросах HotpotQA F1 ответа выше на 0,045 (95% ДИ [0,014; 0,076]), чем при отборе кросс-энкодером; при 200 кандидатах (43 тыс. токенов) отрыв по nDCG@10, 0,058.
- Авторы подчёркивают, что результаты начальные: два набора для поиска, один для вопросов-ответов, одно семейство моделей.
Почему это важно
Связка «реранкер плюс генератор», типовая схема RAG, и по словам авторов она дублирует хранение моделей в памяти и обработку пассажей. Glance показывает, что оценку релевантности можно получать от самого генератора на общем кэше контекста, добавив лишь около 0,1 ГиБ на навык. Если подход подтвердится, архитектура поиска с генерацией упростится.
Кому это важно
Инженерам, которые разворачивают RAG-системы и держат отдельную модель переранжирования, а также исследователям поиска и эффективного вывода (inference), интересующимся общим кэшем и адаптерами поверх одной базовой модели.
Как это применить
Напрямую внедрять пока нечего: в описании не упомянут выпуск кода или моделей. Идею можно взять как ориентир: оценивать кандидатов короткими пробами от общего кэша и подключать адаптер только на время оценки, после чего продолжать генерацию с исходного кэша пассажей. Дообучение в работе заняло 39 минут на MS MARCO.
Можно ли доверять
Это препринт, оценка ограничена: два набора для поиска (SciFact, NFCorpus), один набор вопросов-ответов (HotpotQA, 300 вопросов) и одно семейство базовых моделей, об этом пишут сами авторы. Прирост по nDCG@10 невелик (0,741 против 0,721 и 0,345 против 0,326). Для HotpotQA доверительный интервал [0,014; 0,076] положителен, но широк. Название базовой модели в описании не приведено.
Риски и подводные камни
Измерены качество и память, но не скорость: данных о задержке и пропускной способности в описании нет, поэтому выигрыш в эффективности пока подтверждён лишь оценкой памяти. Сравнение с кросс-энкодером на HotpotQA и в исследовании масштабирования не называет конкретную модель. Перенос на другие наборы данных и другие базовые модели не проверялся.