verl README

The project's README from github.com/XiaomiMiMo/verl. As one markdown file: README.md.

XiaomiMiMo/verl

Agentic RL training code for MiMo. The detailed training recipe can be found in Section 7 of our report MiMo-V2.6: Scaling Reinforcement Learning Towards Self-Improvement.

This fork adds reproduction code for five RL environments upon verl (0.9.0.dev).

Domain Task Family Verifier Launch script Settings
Code Software engineering Executable tests scripts/code/train.sh scripts/code/env.example
Cyber Vulnerability reproduction Rule checks scripts/arvo/arvo.sh scripts/arvo/arvo.env.example
General Knowledge work Rubric-based judging scripts/general/general.sh scripts/general/general.env.example
Visual Web development Visual grading scripts/design/webdev.sh scripts/design/webdev.env.example
Music Symbolic music composition Rule checks scripts/design/music.sh scripts/design/music.env.example

Each launch script reads the variables listed in the *.env.example next to it; set those before launching.


The original verl README follows.


👋 Hi, everyone! verl is a RL training library initiated by ByteDance Seed team and maintained by the verl community.

Ask DeepWiki.com GitHub Repo stars Twitter Documentation

seed logo

verl: Volcano Engine Reinforcement Learning for LLMs

verl is a flexible, efficient and production-ready RL training library for large language models (LLMs).

verl is the open-source version of HybridFlow: A Flexible and Efficient RLHF Framework paper.

verl is flexible and easy to use with:

verl is fast with:

verl-arch.png

News

more...
  • [2025/04] [Seed-Thinking-v1.5](https://github.com/ByteDance-Seed/Seed-Thinking-v1.5/blob/main/seed-thinking-v1.5.pdf) tech report is released! Trained with verl, Seed-Thinking-v1.5 achieves 86.7 on AIME 2024, 55.0 on Codeforces and 77.3 on GPQA, demonstrating excellent reasoning abilities in STEM and coding. Beyond reasoning tasks, the method demonstrates notable generalization across diverse domains.
  • [2025/07] verl keynote at [AWS AI Hours Singapore](https://pages.awscloud.com/aws-ai-hours-sg.html#agenda) on 7/8, verl & verl-agent project updates at [Agent for SWE meetup](https://lu.ma/e498qhsi) by LF AI & Data Singapore on 7/11.
  • [2025/06] verl team will provide latest project updates at [PyTorch Day China](https://www.lfasiallc.com/pytorch-day-china/) on June 7th. Meet our dev team in Beijing!
  • [2025/04] [VAPO](https://arxiv.org/pdf/2504.05118) (value-based augmented PPO) paper covers our latest RL method for reasoning models. Trained from Qwen-32B-base model, VAPO achieves 60.4 on AIME 2024, outperforming DAPO-32B.
  • [2025/05] [PF-PPO](https://arxiv.org/abs/2409.06957), accepted to ICML 2025, is now supported in verl! PF-PPO enhances policy learning efficiency and robustness by filtering potentially noisy reward signals and reusing high-quality experiences via a replay buffer.
  • [2025/04] We will give a tutorial about latest post-training techniques and programming guide for verl at [ICLR 2025 Expo](https://iclr.cc/virtual/2025/calendar?filter_events=Expo+Talk+Panel&filter_rooms=), [SCI-FM workshop](https://open-foundation-model.github.io/) and [LMSys afterparty](https://lu.ma/d23nyynm). Talk materials available [here](https://github.com/eric-haibin-lin/verl-community/tree/main/iclr25).
  • [2025/03] verl v0.3.0.post1 is released! See [release note](https://github.com/verl-project/verl/releases/) for details. It achieves [~1.4x speedup](https://tongyx361.github.io/blogs/posts/verl-intro/#/verl-flexible-and-efficient-rl-for-llms) compared to prev versions.
  • [2025/05] verl will be presented at [A2M Shanghai](https://a2m.msup.com.cn/home/?aid=4488&city=shanghai) on 5/16 - 5/17.
  • [2025/05] verl will be presented at [GOSIM x PyTorch Day 2025](https://paris2025.gosim.org/). See you in Paris!
  • [2025/03] We introduced the programming model of verl at the [vLLM Beijing Meetup](https://mp.weixin.qq.com/s/n77GibL2corAtQHtVEAzfg) and [verl intro and updates](https://github.com/eric-haibin-lin/verl-community/blob/main/slides/verl-lmsys-meetup.pdf) at the [SGLang-LMSYS Org Meetup](https://lu.ma/ntjrr7ig) in Sunnyvale mid-March.
  • [2025/03] We will present verl(HybridFlow) at EuroSys 2025. See you in Rotterdam!
  • [2025/02] verl v0.2.0.post2 is released!
  • [2025/02] We presented verl in the Bytedance/NVIDIA/Anyscale Ray Meetup. See you in San Jose!
  • [2025/01] [Doubao-1.5-pro](https://team.doubao.com/zh/special/doubao_1_5_pro) is released with SOTA-level performance on LLM & VLM. The RL scaling preview model is trained using verl, reaching OpenAI O1-level performance on math benchmarks (70.0 pass@1 on AIME).
  • [2024/12] verl is presented at Ray Forward 2024. Slides available here
  • [2024/12] The team presented Post-training LLMs: From Algorithms to Infrastructure at NeurIPS 2024. Slides and video available.
  • [2024/10] verl is presented at Ray Summit. Youtube video available.
  • [2024/08] HybridFlow (verl) is accepted to EuroSys 2025.

Key Features

Getting Started

Documentation

Quickstart:

Running a PPO example step-by-step:

Reproducible algorithm baselines:

Algorithm recipes (recipe/):

For code explanation and advance usage (extension):

Blogs from the community

Performance Tuning Guide

The performance is essential for on-policy RL algorithm. We have written a detailed performance tuning guide to help you optimize performance.

Upgrade to vLLM >= v0.8.2

verl now supports vLLM>=0.8.2 when using FSDP as the training backend. Please refer to this document for the installation guide and more information. Please avoid vllm 0.7.x, which contains bugs that may lead to OOMs and unexpected errors.

Use Latest SGLang

SGLang is fully supported with verl, and SGLang RL Group is working extensively on building unique features, including multi-turn agentic RL, VLM RLHF, server-based RL, and partial rollout. Please refer to this document for the installation guide and more information.

Upgrade to FSDP2

verl is fully embracing FSDP2! FSDP2 is recommended by torch distributed team, providing better throughput and memory usage, and is composible with other features (e.g. torch.compile). To enable FSDP2, simply use verl main and set the following options:

actor_rollout_ref.ref.strategy=fsdp2
actor_rollout_ref.actor.strategy=fsdp2
critic.strategy=fsdp2

Furthermore, FSDP2 cpu offloading is compatible with gradient accumulation. You can turn it on to save memory with actor_rollout_ref.actor.fsdp_config.offload_policy=True. For more details, see https://github.com/verl-project/verl/pull/1026

AMD Support (ROCm Kernel)

verl runs on AMD ROCm GPUs (MI300X / MI325X / MI355X) with FSDP, FSDP2, and Megatron trainer backends, and vLLM as the validated inference engine (SGLang support is in progress). See the AMD ROCm quick-start guide for container bring-up, environment verification, and training examples.

Citation and acknowledgement

If you find the project helpful, please cite:

@article{sheng2024hybridflow,
  title   = {HybridFlow: A Flexible and Efficient RLHF Framework},
  author  = {Guangming Sheng and Chi Zhang and Zilingfeng Ye and Xibin Wu and Wang Zhang and Ru Zhang and Yanghua Peng and Haibin Lin and Chuan Wu},
  year    = {2024},
  journal = {arXiv preprint arXiv: 2409.19256}
}

verl is inspired by the design of Nemo-Aligner, Deepspeed-chat and OpenRLHF. The project is adopted and contributed by Bytedance, Anyscale, LMSys.org, Alibaba Qwen team, Shanghai AI Lab, Tsinghua University, UC Berkeley, UCLA, UIUC, University of Hong Kong, ke.com, All Hands AI, ModelBest, JD AI Lab, Microsoft Research, StepFun, Amazon, LinkedIn, Meituan, Camel-AI, OpenManus, Xiaomi, NVIDIA research, Baichuan, RedNote, SwissAI, Moonshot AI (Kimi), Baidu, Snowflake, Skywork.ai, JetBrains, IceSword Lab, and many more.

Awesome Projects Built with verl

Welcome to register your awesome project build with verl for other developers' reference!

Contribution Guide

See contributions guide

About ByteDance Seed Team

Founded in 2023, ByteDance Seed Team is dedicated to crafting the industry's most advanced AI foundation models. The team aspires to become a world-class research team and make significant contributions to the advancement of science and society. You can get to know Bytedance Seed better through the following channels👇

We are HIRING! Send us an email if you are interested in internship/FTE opportunities in RL for agents.

verl (XiaomiMiMo/verl)

vlm
Searching Database…

716 ·GitHub
What is this?verl is an open-source RL post-training framework for large language models, started by ByteDance Seed as the open-source version of the HybridFlow paper. This XiaomiMiMo fork adds agentic RL training code for MiMo, with reproduction code for five RL environments on top of verl 0.9.0.dev.
Is this a general RL framework, or a one-off recipe for training the MiMo model?Both layers: verl itself is a general RL training library where you build dataflows like GRPO or PPO in a few lines of code and plug in FSDP, Megatron-LM, vLLM or SGLang. This fork layers MiMo-specific agentic RL recipes, launch scripts and two agent submodules on top.
How do I kick off a training run?Each environment has its own launch script, e.g. scripts/code/train.sh for software engineering or scripts/arvo/arvo.sh for vulnerability reproduction. Init the thirdparty submodules, set the variables from the .env.example next to your script, then run it.
What kind of hardware do I need for this?A GPU box or cluster: training runs via FSDP, FSDP2 or Megatron-LM, rollout generation via vLLM, SGLang or HF Transformers. NVIDIA, AMD (ROCm MI300X / MI325X / MI355X) and Ascend are supported, scaling up to hundreds of GPUs.
Are there version gotchas with the inference engines like vLLM?Yes — avoid vLLM 0.7.x, which contains bugs that can lead to OOMs and unexpected errors; vLLM >= 0.8.2 is supported with the FSDP backend. SGLang is fully supported, including multi-turn agentic RL and server-based RL.
What are the five RL environments this fork adds?Code (software engineering, judged by executable tests), Cyber (vulnerability reproduction, rule checks), General (knowledge work, rubric-based judging), Visual (web development, visual grading) and Music (symbolic music composition, rule checks). Each has its own launch script and .env.example.
Which RL algorithms does verl implement?PPO, GRPO, GSPO, ReMax, REINFORCE++, RLOO, PRIME, DAPO, DrGRPO, KLCov, ClipCov and more, plus supervised fine-tuning. Rewards can be model-based or function-based verifiable rewards for math, coding and similar domains.
What are the mimoagent and uni-agent submodules for?mimoagent, a fork of mini-swe-agent, supplies agent harnesses, tools, execution environments and graders — the Code, Cyber, General and Visual environments use it. uni-agent adds a model gateway and TransferQueue trajectory capture and is used only by Code; Music uses neither.
Can I train vision-language models with it?Yes — verl supports vision-language models and multi-modal RL with Qwen2.5-VL and Kimi-VL, and rollouts can be multi-turn with tool calling.
What are similar projects?verl, ms-swift, halo, LoongForge, ktransformers, vllm, unsloth, airllm
Creator
XiaomiMiMo
Size
29.2 MB
Stars
716
Updated
CommitSep 26
Age
26d
Commits · 90 Days