Исследователи из Moonshot AI представили Seer: систему онлайн-обучения контексту для быстрого синхронного подкрепления обучения RL

Команда исследователей из Moonshot AI и Университета Цинхуа разработала новую систему онлайн-обучения контексту под названием Seer. Она направлена на решение проблемы узких мест в синхронном подкреплении обучения RL для больших языковых моделей.

Почему синхронный вывод замедляется для моделей рассуждений?

Современные рабочие нагрузки RL используют длинные цепочки рассуждений. В экспериментах с Seer исследователи применили GRPO к трём различным моделям: Moonlight, Qwen2 VL 72B и Kimi K2. Эти рабочие нагрузки выполняются на 32 вычислительных узлах с 8 графическими процессорами H800 на каждом узле.

Три задачи используют 32, 128 и 256 графических процессоров соответственно, с 400, 600 и 800 запросами на итерацию и 8 или 16 ответами на запрос. Максимальная длина генерации велика: Moonlight настроен на 65 536 токенов, Qwen2 VL 72B — на 40 960 токенов, а Kimi K2 — на 98 304 токена.

Архитектура Seer на основе Mooncake и vLLM

Seer сохраняет алгоритм RL идентичным синхронному veRL. Каждая итерация обучения использует только данные из текущей итерации вывода, поэтому система сохраняет поведение в рамках политики. Фаза обучения использует Megatron для распределённой оптимизации. Фаза вывода использует собственную реализацию vLLM в качестве механизма логического вывода.

Чтобы поддерживать агрессивное планирование запросов, Seer опирается на глобальный пул KVCache, построенный на основе дезагрегированной архитектуры KVCache Mooncake, используемой в производстве для Kimi.

Три ключевых механизма Seer:

* Разделенный вывод. Seer разбивает группы на два этапа. Сначала он разбивает каждую группу на отдельные запросы. Затем делит каждый запрос на несколько фрагментов на основе длины генерации.
* Контекстно-зависимое планирование. Исследовательская группа отмечает, что разные запросы в одной группе, как правило, имеют коррелированную длину выходных данных. Seer использует эту структуру в качестве онлайн-контекста.
* Адаптивное групповое спекулятивное декодирование. Seer добавляет адаптивное групповое спекулятивное декодирование поверх двух предыдущих компонентов для ускорения декодирования, особенно для длинных запросов в конце.

Эти механизмы управляются буфером запросов, диспетчером контекста и пулом механизмов логического вывода, подключёнными к глобальному пулу KVCache.

Результаты

Результаты показывают, что разделённый вывод обеспечивает до 35% улучшения пропускной способности по сравнению с базовым уровнем. Добавление контекстно-зависимого планирования увеличивает этот показатель до 47% по сравнению с базовым уровнем. Включение адаптивного группового спекулятивного декодирования увеличивает общее ускорение до 77–87% по сравнению с базовым уровнем в оцениваемой итерации.

Влияние на обучение RL

Исследовательская группа оценивает Seer на трёх задачах RL, построенных на Moonlight, Qwen2 VL 72B и Kimi K2. Они выполняют 10 итераций вывода для каждой задачи и измеряют количество выходных токенов в секунду и время завершения для каждого вывода.

Seer улучшает пропускную способность вывода на 74–97% по сравнению с veRL при том же алгоритме RL и механизме логического вывода на основе vLLM. Задержка в конце уменьшается на 75–93%.

Ключевые выводы

* Узкое место в выводе: Seer нацелена на фазу вывода в синхронном RL, которая составляет около 63–87% времени итерации и определяется длинными хвостовыми запросами и фрагментацией KV-кэша.
* Три основных механизма: Seer сочетает разделённый вывод, контекстно-зависимое планирование и адаптивное групповое спекулятивное декодирование, чтобы использовать длину выходных данных и сходство шаблонов среди ответов GRPO, которые используют общий запрос.
* Тонкая настройка планирования в глобальном KV-кэше: запросы разбиваются на фрагменты и перемещаются по глобальному пулу KVCache в стиле Mooncake, что сохраняет синхронное RL в рамках политики, поддерживая при этом высокую загрузку памяти GPU и сокращая вытеснения.
* Онлайн-контекст для снижения задержки в конце: статистика длины на уровне групп из спекулятивных запросов управляет контекстно-зависимым планированием, что приближает к оптимальному планированию с учётом длин и резко сокращает время, затрачиваемое на последние 10% запросов.
* Измеренные комплексные преимущества: в рабочих нагрузках RL производственного уровня с Moonlight, Qwen2 VL 72B и Kimi K2 Seer улучшает пропускную способность вывода на 74–97% и снижает задержку в конце на 75–93% по сравнению с современным синхронным базовым уровнем на основе vLLM.

Комментарии редакции

Seer — это важный вклад в развитие систем, поскольку она оптимизирует фазу вывода в синхронном RL без изменения базового алгоритма GRPO. Это позволяет сохранить гарантии политики и воспроизводимости, одновременно устраняя реальное узкое место в инфраструктуре.

Сочетание разделённого вывода, контекстно-зависимого планирования и адаптивного группового спекулятивного декодирования предлагает практический шаблон для других стеков RL, которые полагаются на длинные цепочки рассуждений и большие объёмы KVCache.

В целом, Seer показывает, что онлайн-обучение контексту на системном уровне теперь так же важно, как и архитектура модели, для эффективного масштабирования рассуждений RL.

1. Какие проблемы решает система Seer, разработанная командой исследователей из Moonshot AI и Университета Цинхуа?

Ответ: система Seer решает проблему узких мест в синхронном подкреплении обучения RL для больших языковых моделей, оптимизируя фазу вывода в синхронном RL без изменения базового алгоритма GRPO.

2. Какие механизмы используются в системе Seer для ускорения вывода?

Ответ: в системе Seer используются три ключевых механизма: разделённый вывод, контекстно-зависимое планирование и адаптивное групповое спекулятивное декодирование. Эти механизмы позволяют использовать длину выходных данных и сходство шаблонов среди ответов GRPO, которые используют общий запрос, что ускоряет вывод.

3. Какие результаты были получены при тестировании системы Seer на трёх задачах RL?

Ответ: при тестировании системы Seer на трёх задачах RL, построенных на Moonlight, Qwen2 VL 72B и Kimi K2, было обнаружено, что Seer улучшает пропускную способность вывода на 74–97% по сравнению с veRL при том же алгоритме RL и механизме логического вывода на основе vLLM. Также было отмечено, что задержка в конце уменьшается на 75–93%.

4. Какие выводы можно сделать из результатов тестирования системы Seer?

Ответ: из результатов тестирования системы Seer можно сделать вывод, что она значительно улучшает производительность систем RL, оптимизируя фазу вывода. Это делает её важным вкладом в развитие систем, которые полагаются на длинные цепочки рассуждений и большие объёмы KVCache.

5. Какие преимущества предлагает система Seer для других стеков RL?

Ответ: система Seer предлагает практический шаблон для других стеков RL, которые полагаются на длинные цепочки рассуждений и большие объёмы KVCache. Она позволяет сохранить гарантии политики и воспроизводимости, одновременно устраняя реальное узкое место в инфраструктуре.

Источник