Исследователи NVIDIA представили ProRL Agent — масштабируемую инфраструктуру, предназначенную для обучения многоходовых агентов LLM с помощью методов обучения с подкреплением (RL). Система реализует философию «rollout-as-a-service», отделяя оркестрацию роллаутов агентов от цикла обучения.
Основная проблема: плотная связь
Задачи многоходовых агентов включают взаимодействие с внешними средами, такими как репозитории кода или операционные системы, посредством итеративного использования инструментов. Многие существующие фреймворки — включая SkyRL, VeRL-Tool, Agent Lightning, rLLM и GEM — встраивают контроль роллаутов непосредственно в процесс обучения.
Такая плотная связь приводит к двум основным ограничениям:
1. Конфликтующие требования к системе. Роллауты связаны с вводом-выводом (I/O), требующим создания песочницы, длительных сеансов работы с инструментами и асинхронной координации. Обучение требует интенсивных вычислений на GPU, сосредоточенных на прямых/обратных проходах и синхронизации градиентов. Запуск обоих процессов в одном процессе приводит к интерференции и снижению эффективности использования оборудования.
2. Барьер обслуживания. Встраивание логики роллаутов в тренерскую систему затрудняет миграцию на разные бэкенды обучения или поддержку новых сред выполнения без повторного внедрения конвейера выполнения.
Дизайн системы: rollout-as-a-service
ProRL Agent работает как автономный HTTP-сервис, который управляет полным жизненным циклом роллаута. Тренер RL взаимодействует с сервером исключительно через API, оставаясь независимым от базовой инфраструктуры роллаута.
Трёхэтапный асинхронный конвейер
Для максимизации пропускной способности сервер управляет роллаутами через асинхронный трёхэтапный «конвейер»:
- INIT: рабочие инициализации запускают контейнеры с песочницей и настраивают инструменты.
- RUN: рабочие роллаута управляют многоходовым циклом агента и собирают траектории.
- EVAL: рабочие по оценке оценивают результаты по сравнению с истинным значением, чтобы сформировать сигналы вознаграждения.
Назначая каждому этапу независимый пул рабочих, ProRL Agent позволяет фазам перекрываться в разных заданиях, предотвращая замедление оценок (например, выполнение полного набора тестов) и остановку процесса роллаута.
HPC-совместимая песочница и оптимизированные инструменты
ProRL Agent использует Singularity для своей инфраструктуры песочницы. В отличие от платформ на основе Docker, Singularity позволяет выполнять работу без прав root, что требуется для развёртывания на общих кластерах HPC, управляемых Slurm.
Система включает несколько оптимизаций для сокращения задержки выполнения инструментов, которая часто доминирует над общим временем роллаута:
- Эффективный Bash: заменяет мультиплексирование терминала на основе tmux прямым псевдотерминалом на основе ptyprocess, сокращая задержку команд оболочки с 0,78 с до 0,42 с.
- Прямой API IPython: подключается к постоянным ядрам через API внутри процесса вместо сетевых шлюзов, устраняя сетевые накладные расходы.
- Доменные сокеты Unix (UDS): заменяет TCP-зацикливание для связи между агентом и сервером выполнения внутри контейнера, чтобы сократить дополнительную задержку.
Расширенные возможности для масштабируемого RL
Инфраструктура вводит механизмы для повышения стабильности обучения и использования оборудования:
- Балансировка нагрузки и повторное использование префиксного кэша. Сервер управляет пулом бэкендов логического вывода LLM (например, vLLM) с помощью минимальной кучи, упорядоченной по количеству назначений. Когда назначается задача, все последующие вызовы в рамках этой задачи направляются на тот же бэкенд. Эта стратегия максимизирует повторное использование префиксного кэша, сокращая время вывода для нескольких ходов агента.
- Коммуникация «токен-в/токен-из». Чтобы устранить дрейф повторной токенизации — когда последовательность токенов, генерируемая во время роллаута, отличается от используемой во время обучения, — ProRL Agent использует идентификаторы токенов в качестве канонического представления на протяжении всего процесса. Логарифмические вероятности и идентификаторы передаются без изменений от бэкенда логического вывода к тренеру.
- Оптимизированная реализация DAPO. Система поддерживает динамическую оптимизацию политики выборки (DAPO), которая отфильтровывает «неинформативные» подсказки, дающие равномерные вознаграждения. ProRL Agent использует асинхронный механизм пополнения для поддержания максимальной пропускной способности, досрочно завершая избыточные активные задания, как только будет достигнуто целевое количество информативных подсказок.
Экспериментальные результаты на SWE-Bench Verified
Система была проверена с использованием моделей Qwen3 в различных масштабах. ProRL Agent последовательно улучшал производительность по сравнению с воспроизведёнными базовыми показателями.
| Модель | Масштаб | Воспроизведённый базовый уровень | ProRL Agent (RL) |
|——-|——-|——-|——-|
| Qwen3-4B | 14,8 | 21,2 | |
| Qwen3-8B | 9,6 | 18,0 | |
| Qwen3-14B | 15,4 | 23,6 | |
Примечание: предыдущий результат для SkyRL-Agent-14B-v0 составлял 21,6.
Помимо разработки программного обеспечения, система продемонстрировала универсальность в областях STEM, Math и Code, показав устойчивый рост вознаграждения во время обучения с подкреплением. Тесты масштабируемости подтвердили, что пропускная способность роллаута увеличивается почти линейно по мере добавления вычислительных узлов.
Ключевые выводы
- Архитектурное разделение. ProRL Agent рассматривает полный жизненный цикл роллаута агента — включая инициализацию среды, выполнение инструментов и оценку вознаграждения — как независимый HTTP-сервис, отделяя задачи с интенсивным вводом-выводом от обучения с интенсивным использованием GPU.
- Значительные приросты производительности. Эта инфраструктура позволила модели Qwen3-8B почти удвоить свою производительность на бенчмарке SWE-Bench Verified (с 9,6% до 18,0%), а модель Qwen3-14B улучшила показатели с 15,4% до 23,6%.
- Сокращение задержек системы. Целенаправленные оптимизации, такие как замена tmux на ptyprocess для выполнения команд оболочки, сократили задержку действий с 0,78 с до 0,42 с, способствуя почти линейному масштабированию пропускной способности на вычислительных узлах.
- Устранение дрейфа токенизации. Фреймворк использует конвейер связи «токен-в/токен-из», гарантируя, что точные идентификаторы токенов, сгенерированные во время роллаута, передаются тренеру без риска потери при повторной токенизации.
- HPC-совместимое развёртывание. Используя Singularity вместо Docker, ProRL Agent поддерживает выполнение без прав root и интеграцию с Slurm, позволяя проводить крупномасштабное обучение агентов на общих высокопроизводительных вычислительных кластерах.
Подписывайтесь на нас в Twitter и присоединяйтесь к нашему сообществу в ML SubReddit и подписывайтесь на наш Newsletter. А также, присоединяйтесь к нам в Telegram!
1. Какие проблемы решает ProRL Agent в контексте обучения многоходовых агентов LLM?
ProRL Agent решает две основные проблемы:
* Конфликтующие требования к системе, когда роллауты связаны с вводом-выводом (I/O), требующим создания песочницы, длительных сеансов работы с инструментами и асинхронной координации, а обучение требует интенсивных вычислений на GPU.
* Барьер обслуживания, когда встраивание логики роллаутов в тренерскую систему затрудняет миграцию на разные бэкенды обучения или поддержку новых сред выполнения без повторного внедрения конвейера выполнения.
2. Каким образом ProRL Agent обеспечивает масштабируемость и эффективность обучения многоходовых агентов LLM?
ProRL Agent работает как автономный HTTP-сервис, который управляет полным жизненным циклом роллаута. Трёхэтапный асинхронный конвейер (INIT, RUN, EVAL) позволяет максимизировать пропускную способность сервера и предотвратить замедление оценок. Кроме того, система включает несколько оптимизаций для сокращения задержки выполнения инструментов.
3. Какие оптимизации включены в ProRL Agent для сокращения задержки выполнения инструментов?
В ProRL Agent включены следующие оптимизации:
* Эффективный Bash: замена мультиплексирования терминала на основе tmux прямым псевдотерминалом на основе ptyprocess, сокращая задержку команд оболочки с 0,78 с до 0,42 с.
* Прямой API IPython: подключение к постоянным ядрам через API внутри процесса вместо сетевых шлюзов, устранение сетевых накладных расходов.
* Доменные сокеты Unix (UDS): замена TCP-зацикливания для связи между агентом и сервером выполнения внутри контейнера, чтобы сократить дополнительную задержку.
4. Какие экспериментальные результаты были получены при использовании ProRL Agent с моделями Qwen3?
Система была проверена с использованием моделей Qwen3 в различных масштабах. ProRL Agent последовательно улучшал производительность по сравнению с воспроизведёнными базовыми показателями. Модель Qwen3-8B почти удвоила свою производительность на бенчмарке SWE-Bench Verified (с 9,6% до 18,0%), а модель Qwen3-14B улучшила показатели с 15,4% до 23,6%.
5. Какие ключевые выводы можно сделать из представленного текста о ProRL Agent?
Ключевые выводы:
* Архитектурное разделение: ProRL Agent рассматривает полный жизненный цикл роллаута агента как независимый HTTP-сервис, отделяя задачи с интенсивным вводом-выводом от обучения с интенсивным использованием GPU.
* Значительные приросты производительности: инфраструктура позволила модели Qwen3-8B почти удвоить свою производительность на бенчмарке SWE-Bench Verified, а модель Qwen3-14B улучшила показатели.
* Сокращение задержек системы: целенаправленные оптимизации сократили задержку действий, способствуя почти линейному масштабированию пропускной способности на вычислительных узлах.
* Устранение дрейфа токенизации: фреймворк использует конвейер связи «токен-в/токен-из», гарантируя, что точные идентификаторы токенов передаются тренеру без риска потери при повторной токенизации.
* HPC-совместимое развёртывание: используя Singularity вместо Docker, ProRL Agent поддерживает выполнение без прав root и интеграцию с Slurm, позволяя проводить крупномасштабное обучение агентов на общих высокопроизводительных вычислительных кластерах.