View in Telegram
Круги записки на полях или могут ли заметки помочь вам с long-context RAG'ом. Вот и лето прошло и день знаний, поэтому дядя решил начать новый учебный год с нового обзорчика. Под конец лета 2024го, появилась интересная статья о том, как еще можно работать с длинными подсказками в RAG. Помимо интересной стратегии работы с чанками, рассказанно и об архитектурных хинтах с KV-cache в модели. Далее чуть подробнее. Для начала, рассмотрим стратегию работы с длинным контекстом подсказки. Вам на вход приходит long-context и инструкция к нему. Далее следует нарезка контекста на чанки, но с доп инструкцией выделить LLM "заметки" из этих кусочков (возможно по аналогии с саммари). После, мы отбираем с LLM те заметки, которые полезны для изначальной целевой инструкции и клеим к ним ее, получая ответ. Тут кажется, что это имеется computational overhead — крч оверкил по числу вызовов и времени работы. Вам не кажется. Сначала нарежь, потом LLM заметки напиши, далее выбери LLM полезные для цели заметки, сгенери ответ. Итого 3 вызова+нарезка. Но авторы не лыком шиты и предлагают использовать умное KV-кеширование. Когда ваша модель видит каждый чанк, она заполняет часть KV-кэша, который соответствует увиденным токенам. Таким образом, к концу обработки заметок и генерации ответа KV-кэш заполнен и готов. За счет этого происходит экономия вычислений. Схема будет ниже, подробности, включая псевдокод алгоритма, читаем в статье. Немного про метрики: В среднем +7-10% ап на multihop и summarization-like тасках. Но нет значимого апа по SQUAD. Использовать ли это вместо classic RAG, решать Вам. Читаем статью, делаем выводы.
Telegram Center
Telegram Center
Channel