EasyR1: Ускоряем обучение мультимодальных RL-моделей в 3 раза

06 Apr, 2026
5,019
🔱 372
👥 24

Логотип EasyR1

Проблема: RL-тренировка — это дорого и медленно

Знакома ситуация, когда обучение модели с подкреплением (RL) занимает недели и требует десятков GPU? Особенно остро эта проблема стоит для мультимодальных моделей, работающих одновременно с текстом и изображениями.

Команда разработчиков из LLaMA Factory предлагает решение — фреймворк EasyR1, который уже используют в Amazon Web Services для построения LLM Model Hub. По их данным, система ускоряет обучение в 2-3 раза по сравнению с классическими подходами.

Что такое EasyR1?

EasyR1 — это форк проекта veRL от VolcEngine, доработанный для поддержки vision-language моделей. Фреймворк сочетает:

  • Эффективность: Оптимизированная архитектура HybirdEngine (на 30% меньше памяти)
  • Масштабируемость: Поддержка SPMD-режима vLLM для распределенных вычислений
  • Универсальность: Работа с текстовыми и мультимодальными моделями

5 причин попробовать EasyR1

  1. Широкая поддержка моделей

    Реклама
    • Языковые: Llama3, Qwen2/2.5/3
    • Мультимодальные: Qwen2-VL, Qwen2.5-VL, Qwen3-VL
    • Дистиллированные: DeepSeek-R1
  2. Современные алгоритмы RL

    • GRPO, DAPO, Reinforce++
    • ReMax и RLOO для стабильного обучения
  3. Оптимизации для экономии ресурсов

    • Padding-free тренировка (экономит до 40% памяти)
    • Поддержка bf16 (в 2 раза меньше VRAM)
    • Возобновление с чекпоинтов
  4. Готовые инструменты мониторинга

    • Интеграция с Wandb, SwanLab, Mlflow, Tensorboard
    • Подробные метрики обучения
  5. Простота развертывания

    • Готовые Docker-образы
    • Примеры запуска в 3 команды

Как это работает технически?

Архитектура EasyR1 основана на двух ключевых компонентах:

  1. HybirdEngine (из статьи на arXiv:2409.19256) — гибридный движок, оптимизирующий использование GPU
  2. vLLM в SPMD-режиме — для эффективного распределения вычислений

Схема GRPO в EasyR1

Интересный момент: для моделей 7B+ разработчики рекомендуют использовать multi-node обучение через Ray, что позволяет распределить нагрузку на несколько серверов.

Практическое применение: от математики до медицинских изображений

Вот несколько реальных кейсов использования EasyR1:

  1. Решение математических задач (Geometry3K dataset)

    bash examples/qwen2_5_vl_7b_geo3k_grpo.sh
    
  2. Анализ медицинских снимков (проект EditGRPO)

  3. Визуальное программирование (GUI-R1 для автоматизации работы с интерфейсами)

  4. Пространственное мышление (MetaSpatial для метавселенных)

Сообщество уже активно использует фреймворк — на GitHub есть более 15 проектов-побочных продуктов, включая Vision-R1 и Temporal-R1.

Насколько сложно начать?

Для быстрого старта разработчики предлагают готовый Docker-образ:

docker pull hiyouga/verl:ngc-th2.8.0-cu12.9-vllm0.11.0
docker run -it --ipc=host --gpus=all hiyouga/verl:ngc-th2.8.0-cu12.9-vllm0.11.0

А полный цикл обучения модели Qwen2.5-VL на датасете Geometry3K занимает всего 3 шага:

  1. Установка
  2. Запуск тренировки
  3. Объединение чекпоинтов

Ограничения и планы

Пока не поддерживается:

  • LoRA (в разработке)
  • Ulysses параллелизм для VL-моделей

Но команда активно работает над устранением этих ограничений.

Вывод: кому подойдет EasyR1?

Фреймворк особенно полезен:

  • Исследователям RL, работающим с большими моделями
  • Командам, разрабатывающим мультимодальные приложения
  • Тем, кто хочет сократить затраты на обучение моделей

Если вы работаете в области reinforcement learning или компьютерного зрения, стоит попробовать EasyR1 — возможно, это именно тот инструмент, который ускорит ваши эксперименты в разы.

P.S. Для тех, кто хочет глубже разобраться в алгоритме GRPO, рекомендую объяснение от Hugging Face.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.