В последние годы большие языковые модели (LLM) стали важным инструментом в области искусственного интеллекта, однако их эффективность часто ограничивается длиной контекста. Команда исследователей из Meta Superintelligence Labs, Национального университета Сингапура и Университета Райса представила новый фреймворк декодирования под названием REFRAG (REpresentation For RAG), который переосмысляет подход к генерации с дополнением извлечением (RAG). Этот инновационный метод позволяет расширить окна контекста LLM в 16 раз и достигнуть ускорения времени до первого токена (TTFT) до 30,85 раз без потери точности.
- Почему длинный контекст является узким местом для LLM?
- Как REFRAG сжимает и сокращает контекст?
- Как достигается ускорение?
- Как REFRAG сохраняет точность?
- Что показывают эксперименты?
Почему длинный контекст является узким местом для LLM?
Механизм внимания в больших языковых моделях масштабируется квадратично с увеличением длины ввода. Это означает, что если документ вдвое длиннее, затраты на вычисления и память могут увеличиться вчетверо. В результате, это не только замедляет вывод, но и увеличивает размер кеша ключ-значение (KV), что делает приложения с большим контекстом непрактичными в производственных системах. В контексте RAG большинство извлеченных фрагментов мало влияют на конечный ответ, но модель все равно платит полную квадратичную цену за их обработку.
Как REFRAG сжимает и сокращает контекст?
REFRAG вводит легкий энкодер, который разбивает извлеченные фрагменты на куски фиксированного размера (например, 16 токенов) и сжимает каждый в плотное векторное представление. Вместо подачи тысяч сырых токенов декодер обрабатывает более короткую последовательность векторных представлений. Результат — сокращение длины последовательности в 16 раз без изменений в архитектуре LLM.
Как достигается ускорение?
Сокращая входную последовательность декодера, REFRAG уменьшает квадратичные вычисления внимания и сокращает кеш KV. Эмпирические результаты показывают ускорение TTFT в 16,53 раза при k=16 и в 30,85 раза при k=32, что значительно превосходит предыдущие достижения CEPE (которые достигли только 2–8 раз). Пропускная способность также улучшается до 6,78 раза по сравнению с базовыми показателями LLaMA.
Как REFRAG сохраняет точность?
Политика обучения с подкреплением (RL) контролирует сжатие, определяя наиболее информационно насыщенные куски и позволяя им обходить сжатие, подавая сырые токены непосредственно в декодер. Эта избирательная стратегия гарантирует, что критические детали — такие как точные числа или редкие сущности — не теряются. На множестве тестов REFRAG поддерживал или улучшал перплексию по сравнению с CEPE, работая при значительно меньшей задержке.
Что показывают эксперименты?
REFRAG был предварительно обучен на 20 миллиардах токенов из корпуса SlimPajama (Books + arXiv) и протестирован на наборах данных с длинным контекстом, включая Book, Arxiv, PG19 и ProofPile. На тестах RAG, задачах многократного диалога и суммаризации длинных документов REFRAG стабильно превосходил сильные базовые показатели:
- 16-кратное расширение контекста по сравнению со стандартной LLaMA-2 (4k токенов).
- ~9,3% улучшение перплексии по сравнению с CEPE на четырех наборах данных.
- Лучшая точность в условиях слабого извлечения, где доминируют нерелевантные фрагменты, благодаря способности обрабатывать больше фрагментов при том же бюджете задержки.
REFRAG демонстрирует, что LLM с длинным контекстом не обязательно должны быть медленными или требовательными к памяти. Сжимая извлеченные фрагменты в компактные векторные представления и избирательно расширяя только важные, Meta Superintelligence Labs сделала возможным обработку гораздо больших входных данных при значительно более высокой скорости. Это делает приложения с большим контекстом — такие как анализ целых отчетов, ведение многократных диалогов или масштабирование корпоративных систем RAG — не только возможными, но и эффективными, без потери точности. Для более подробной информации вы можете ознакомиться с [докладом Meta](https://ai.facebook.com/blog/refrag-new-approach-to-scaling-rag/) и [исследованием о RAG](https://arxiv.org/abs/2107.00756).
Часто задаваемые вопросы
Почему длинный контекст является проблемой для больших языковых моделей?
Механизм внимания в больших языковых моделях масштабируется квадратично с увеличением длины ввода, что приводит к значительным затратам на вычисления и память. Это замедляет вывод и увеличивает размер кеша ключ-значение, делая приложения с большим контекстом непрактичными в производственных системах.
Как REFRAG помогает сжать и сократить контекст?
REFRAG использует легкий энкодер, который разбивает извлеченные фрагменты на куски фиксированного размера и сжимает их в плотные векторные представления. Это позволяет декодеру обрабатывать более короткую последовательность, сокращая длину последовательности в 16 раз без изменений в архитектуре LLM.
Как REFRAG достигает ускорения времени до первого токена?
Сокращая входную последовательность декодера, REFRAG уменьшает квадратичные вычисления внимания и сокращает кеш KV. Это позволяет достичь ускорения TTFT в 16,53 раза при k=16 и в 30,85 раза при k=32, что значительно превосходит предыдущие достижения.
Как REFRAG сохраняет точность при сжатии контекста?
REFRAG использует политику обучения с подкреплением для контроля сжатия, определяя наиболее информационно насыщенные куски и позволяя им обходить сжатие. Это гарантирует, что критические детали не теряются, поддерживая или улучшая перплексию по сравнению с другими методами.
Какие результаты показали эксперименты с REFRAG?
REFRAG был протестирован на наборах данных с длинным контекстом и стабильно превосходил сильные базовые показатели, расширяя контекст в 16 раз и улучшая перплексию на ~9,3% по сравнению с CEPE. Он также показал лучшую точность в условиях слабого извлечения.







