DAPO: An Open-Source LLM Reinforcement Learning System at Scale

Сегодня разберём короткую, но ёмкую статью из Китая. Авторы предлагают опенсорсный метод работы с большими LLM RL: алгоритмы, инфраструктуру кода и датасеты. Забавно, что на момент подготовки обзора у ребят почти пустой GitHub — большая его часть заполнена картинками.

DAPO — Dynamic sAmpling Policy Optimization — не представляет из себя чего-то кардинально нового. Использованные авторами подходы либо витали в воздухе, либо публиковались в других статьях.

Этот метод — модификация GRPO, который в свою очередь получился после улучшения PPO. Все эти алгоритмы объединяет возможность переиспользовать генерации. В обычных on-policy RL-алгоритмах каждый шаг оптимизации требует генерации свежей модели. А в PPO-подобных можно заранее создать большой батч ответов и сделать для него не один, а сразу несколько шагов оптимизации. Зачем? Большой батч эффективнее генерировать!

Новое классное свойство появляется за счёт использования importance sampling и трюка с обрезкой градиентов там, где свежая политика и так уже слишком сильно отличается от той, что сгенерировала данные.

Конкретно DAPO отличается от GRPO четырьмя вещами. Здесь есть:

— Модификация процедуры обрезки градиентов — Clip-Higher. Верхний порог обрезки выше, чем у GRPO, что улучшает итоговое качество.
— Динамическое сэмплирование: авторы предлагают с запасом генерировать ответы и выкидывать те, которые набрали одинаковую награду.
— Усреднение функционала ошибки по токенам, а не по запросам. Это придаёт больший вес длинным генерациям в общем функционале.
— Фильтрация слишком длинных ответов. Ответы, превысившие рекомендуемую длину получают небольшой штраф, а ответы вышедшие за максимальную длину — вообще не участвуют в оптимизации.

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

Самый классный, на мой взгляд, результат, — авторам DAPO удалось обойти SoTA DeepSeek-R1-Zero-Qwen-32B в решении задач олимпиадной математики. При этом они потратили 50% от мощностей, которые использовали для аналогичного обучения Qwen.

Разбор подготовил Павел Темирчев

Душный NLP