Улучшать LLM или улучшать поиск, когда делаем RAG?
На подкасте обсуждали интересный вопрос. Что важнее улучшать в RAG: поиск, который ищет информацию или LLM, которая выдает по информации ответ. Тогда я ответил максимально скомкано.
Как обычно, после встречи появляются аргументы к диалогу, который уже прошел.
На самом деле, скорее всего у вас нет такого выбора. Улучшать поиск сильно проще, чем улучшать LLM. Именно поэтому в интернете только этим и занимаются.
Из прошлого поста мы поняли, что для LLM вы можете либо промпт крутить, либо дообучать ее. Промпт вы накрутите за неделю, дальше крутить не стоит. А вот LLM доучить, чтобы она, например, не галлюцинировала, вам потребуется куча нервов и ресурсов. Про такие методы есть отличный обзор, изучайте, если сильны духом.
Скорее всего, вам останется улучшать поиск. Для этого есть понятный набор действий. Собираете датасет: запросы и релевантные к ним документы. Считаете поисковые метрики. Дебажите, где что сломалось. Накручиваете классические эвристики из поиска, например, переформулируете правильно запрос или улучшаете модель ранжирования. Радуетесь, как растут метрики. Красота.
За кем будущее?
Поиск в RAG - набор инженерных решений. LLM - штука, которая поддается законам масштабирования. Как думаете, что будет быстрее развиваться?
Посмотрите внимательно на график (данные из статьи). На нем показано, как деградирует качество разных LLM, при росте размера контекста. Посмотрите, как сильно деградирует качество GPT-4o mini по сравнению с ее старшим братом GPT-4o. Чем мощнее модель, тем лучше она будет работать с длинным контекстом. И это будет продолжаться, пока мы всю «Войну и мир» не будем в контекст выкладывать.
Недавно вышла Gemini 2.5 pro. На сложном бенчмарке MRCR, в котором нужно отвечать на очень длинном диалоге, модель показывает 95% качества на среднем контексте в 128 тысяч токенов. Это примерно 200 страниц английского текста.
Пока еще не "Война и мир". Да и пока в реальных задачах метрики не такие сказочные. Пока что крутим поиск. Пока что.
Post #46
2.87K

- 👍 16
- 🔥 7
- ❤ 5
- ❤🔥 2
- 🐳 2
- 🙏 1
- 👾 1