newsmode
search
Меню
arrow_back Назад

P1: I don’t use RAG, I just retrieve documents – Hamel’s Blog - Hamel Husain

auto_awesomeКраткое саммари

В рамках курса LLM Evals Хамел Хусейн пригласил исследователя поиска Бенжамина Клавье (Benjamin Clavié), создателя инструментов RAGatouille и rerankers, чтобы открыть мини-серию из пяти частей об оценке и оптимизации RAG. Бен оспаривает тезис «RAG мёртв», утверждая, что устарела лишь узкая и неверно понятая версия RAG из 2023 года — наивный одновекторный семантический поиск, тогда как сам принцип retrieval остаётся необходимым, ведь веса LLM заморожены во времени и не знают о новых данных. Он разбирает ограничения одновекторного поиска (потеря информации при сжатии в ~1000 измерений) и доказывает, что большие контекстные окна (например, 1M токенов у Gemini) не заменяют retrieval из-за стоимости и нехватки места. Лучший подход — комбинировать разные методы поиска: grep, wget, BM25, ColBERT, агентный и веб-поиск, рассуждения. Бен анонсирует следующих докладчиков: Nandan Thakur (бенчмарки и FreshStack), Orion Weller (рассуждения и поиск), Antoine Chaffin (late-interaction и ColPali) и Bryan Bischof с Ayush Chaurasia (мультимодальный поиск).

В рамках нашего курса LLM Evals я пригласил Benjamin Clavié, чтобы открыть мини-серию из пяти частей об оценке и оптимизации RAG. Бен — исследователь поиска (retrieval), создавший такие широко используемые инструменты, как RAGatouille и rerankers, среди прочего. Его доклад был посвящён важным изменениям в RAG и тому, на что стоит обращать внимание (late-interaction, рассуждения, оценки, мультимодальность и т.д.).

Ниже представлена аннотированная версия презентации со ссылками на таймкоды для каждого слайда.


👉 Именно такие вещи мы разбираем на нашем курсе AI Evals. Узнать больше о курсе можно здесь. 👈


Аннотированная презентация

Дерзкое название доклада.

Бен представляется, отмечая, что живёт в городе Мусасино, Япония (где находится Музей Гибли). Сейчас он занимается ML R&D в Answer.AI. Он шутит о своей широко разошедшейся фотографии профиля, которую называет «The Monopicture» — единственным снимком пятилетней давности, зажившим собственной жизнью. Он также упоминает свою недавнюю работу над ModernBERT и тонкости, связанные с ColBERT, о которых обещает рассказать позже.

Бен обсуждает спорную идею о том, что «RAG мёртв». Он объясняет, что это утверждение применимо лишь к очень узкому и часто неверно понимаемому определению RAG, которое было популяризировано маркетингом.

«RAG», который многие узнали в 2023 году: упрощённый одновекторный подход на основе семантического поиска, возможно, устарел. Однако сама лежащая в основе концепция retrieval по-прежнему актуальна.

Бен разбирает аббревиатуру: Retrieval Augmented Generation. Он отмечает, что в оригинальной статье о RAG на самом деле описывался процесс, заметно отличающийся от сегодняшнего общепринятого толкования, но название закрепилось. По сути, пайплайн прост: вы каким-то образом извлекаете документы и передаёте их генеративной модели, чтобы дополнить её вывод. Он утверждает, что всегда будет необходимость предоставлять моделям внешнюю информацию, на которой они не обучались.

На этом слайде показан стандартный упрощённый вызов LLM: на вход подаётся промпт, LLM генерирует ответ, и на выходе получается результат. Это базовая схема для понимания того, как RAG меняет процесс.

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

Бен обращается к распространённому аргументу: раз такие инструменты, как Claude Code, не используют «RAG», значит, RAG мёртв. То, что люди часто называют «RAG», — это наивный полный перебор, одновекторный семантический поиск. Это определение активно продвигалось маркетингом в 2023–2024 годах, потому что его было просто продавать. Заявлять, что RAG мёртв, потому что мы теперь используем лучшие инструменты поиска, по его словам, «всё равно что заявлять, будто HTML мёртв, потому что мы теперь используем CSS».

Бен объясняет ограничения одновекторного поиска. Он вынужден сжимать смысл целого документа или фрагмента в один сравнительно небольшой вектор (например, ~1000 измерений). Такое сжатие неизбежно приводит к потере информации. Модель обучена приоритизировать ту информацию, которую она считает полезной для сопоставления запросов с документами на основе обучающих данных (вроде данных поиска Bing), которые, скорее всего, не похожи на ваши специфические, насыщенные предметной областью данные (например, уникальную кодовую базу). Именно из-за этого несоответствия универсальные embedding-модели часто плохо справляются со специализированными областями, такими как поиск по коду.

Бен разбирает аргумент о том, что огромные контекстные окна (например, 1M токенов у Gemini или гипотетические 10M) делают RAG ненужным. Он приводит аналогию: это всё равно что кто-то в 1999 году заявлял бы, что жёсткие диски мертвы, ведь скоро появятся планки оперативной памяти на 512 МБ. На деле даже 10M токенов — это мало для многих корпоративных баз знаний или крупных наборов данных. Кроме того, стоимость и неэффективность того, чтобы запихивать всё в контекст для каждого запроса, делают это непрактичным.

Retrieval никуда не денется. Веса LLM заморожены на определённый момент времени. Они не знают о вашем новом внутреннем проекте, об обновлённой политике компании или о той «реально классной новой библиотеке fasthtml, которую вы хотите попробовать». Обучать модель на каждом новом фрагменте информации сложно и неэффективно. Бен утверждает, что мы и сами не захотели бы, чтобы модели навсегда хранили всю эту разовую информацию; мы хотим, чтобы их ограниченное пространство весов использовалось для интеллекта, а не просто для хранения знаний. Retrieval необходим, чтобы вводить эту внешнюю, актуальную информацию.

Бен подводит итоги сказанному: - RAG никуда не денется. - Наивные методы (вроде базовой косинусной близости) показывают свои пределы, подталкивая нас к более совершенным и продвинутым техникам поиска. - RAG — лучший способ предоставить моделям актуальную информацию. - Длинные контекстные окна не заменяют retrieval. Диаграмма Венна показывает, что «мёртвой» оказалась упрощённая идея перебора всего одним вектором, а не RAG в целом.

Классический Бен — впереди ещё сюрпризы!

Есть что ещё обсудить по поводу более совершенных методов поиска.

Бен возвращается к своей аналогии. Хотя увеличение объёма оперативной памяти не убило жёсткие диски, это сделали SSD (для потребителей). SSD — это просто «лучший жёсткий диск». Аналогично, то, что убило «RAG образца 2023 года», — это попросту лучший RAG (а конкретнее — лучшие формы поиска).

Чтобы показать всё многообразие поиска, Бен перечисляет различные инструменты: grep, wget, агентный поиск, BM25, ColBERT, веб-поиск и даже рассуждения. Всё это — допустимые методы поиска. Лучший подход зачастую предполагает их использование в сочетании.

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

Первый приглашённый эксперт — Nandan Thakur. Когда доступны тысячи подходов к поиску, надёжные бенчмарки очень важны. Однако популярные бенчмарки вроде BEIR и MTEB теперь входят в обучающие данные всех базовых моделей, что приводит к загрязнению данных и даёт более слабый сигнал. Nandan, руководивший разработкой BEIR, расскажет о своих новых подходах к созданию не переобученных, заслуживающих доверия бенчмарков, таких как непрерывно обновляемый FreshStack.

Следующий — Orion Weller, который исследует пересечение рассуждений и поиска. Как retrieval вписывается в мир, где модели могут «разглагольствовать о своих мыслях»? Orion изучит, могут ли поисковые системы думать или использовать рассуждения других моделей для повышения производительности.

Antoine Chaffin расскажет о late-interaction и мультивекторных моделях вроде ColBERT. Эти модели решают проблему потери информации одновекторных методов, используя отдельный вектор для каждого токена. Antoine объяснит, как они работают, и представит свою работу над ColPali, призванную упростить использование этих мощных моделей.

Финальный доклад представят Bryan Bischof и Ayush Chaurasia — о мультимодальном поиске. Они объяснят, что для мультимодальных данных вроде графиков и таблиц одного лишь наивного семантического поиска недостаточно. Они поделятся тем, как создали свой лучший рецепт мультимодального поиска, объединив современные техники с «древними инструментами».

Записаться на серию можно по ссылкам выше или здесь: p2: Evals, p3: Reasoning, p4: Late-Interaction и p5: Multimodal.


👉 Именно такие вещи мы разбираем на нашем курсе AI Evals. Узнать больше о курсе можно здесь. 👈


Видео

Полное видео: