ART README

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

ART logo

Agent Reinforcement Trainer

Train multi-step agents for real-world tasks using GRPO.

PRs-Welcome PyPI version Train Agent

Join Discord Documentation

🚀 W&B Training: Serverless RL

W&B Training (Serverless RL) is the first publicly available service for flexibly training models with reinforcement learning. It manages your training and inference infrastructure automatically, letting you focus on defining your data, environment and reward function—leading to faster feedback cycles, lower costs, and far less DevOps.

✨ Key Benefits:

# Before: Hours of GPU setup and infra management
# RuntimeError: CUDA error: out of memory 😢

# After: Serverless RL with instant feedback
from art.serverless.backend import ServerlessBackend

model = art.TrainableModel(
  project="voice-agent",
  name="agent-001",
  run_name="agent-001",
  base_model="Qwen/Qwen3.6-27B"
)

backend = ServerlessBackend(
    api_key="your_wandb_api_key"
)
model.register(backend)
# Edit and iterate in minutes, not hours!

📖 Learn more about W&B Training →

ART Overview

ART is an open-source RL framework that improves agent reliability by allowing LLMs to learn from experience. ART provides an ergonomic harness for integrating GRPO into any python application. For a quick hands-on introduction, run one of the notebooks below. When you're ready to learn more, check out the docs.

📒 Notebooks

Agent Task Example Notebook Description Comparative Performance
ART•E [Serverless] 🏋️ Train agent Qwen 3.6 27B learns to search emails using RULER benchmarks
2048 [Serverless] 🏋️ Train agent Qwen 3.6 27B learns to play 2048 benchmarks
ART•E LangGraph 🏋️ Train agent Qwen 2.5 7B learns to search emails using LangGraph [Link coming soon]
MCP•RL 🏋️ Train agent Qwen 2.5 3B masters the NWS MCP server [Link coming soon]
Temporal Clue 🏋️ Train agent Qwen 2.5 7B learns to solve Temporal Clue [Link coming soon]
Tic Tac Toe 🏋️ Train agent Qwen 2.5 3B learns to play Tic Tac Toe benchmarks
Codenames 🏋️ Train agent Qwen 2.5 3B learns to play Codenames benchmarks
AutoRL [RULER] 🏋️ Train agent Train Qwen 2.5 7B to master any task [Link coming soon]
Distillation (SFT) 🏋️ Train model Distill text-to-SQL from Qwen 3 235B to Qwen 3.6 27B [Link coming soon]
Summarizer (SFT + RL) 🏋️ Train model Train a document summarizer with SFT warmup then RL [Link coming soon]
SFT from a dataset 🏋️ Train model Fine-tune Qwen 3.6 27B on text-to-SQL from a dataset [Link coming soon]

📰 ART News

Explore our latest research and updates on building SOTA agents.

📖 See all blog posts →

Why ART?

Installation

ART agents can be trained from any client machine that runs python. To add to an existing project, run this command:

pip install openpipe-art

🤖 ART•E Agent

Curious about how to use ART for a real-world task? Check out the ART•E Agent blog post, where we detail how we trained Qwen 2.5 14B to beat o3 at email retrieval!

🔁 Training Loop Overview

ART's functionality is divided into a client and a server. The OpenAI-compatible client is responsible for interfacing between ART and your codebase. Using the client, you can pass messages and get completions from your LLM as it improves. The server runs independently on any machine with a GPU. It abstracts away the complexity of the inference and training portions of the RL loop while allowing for some custom configuration. An outline of the training loop is shown below:

  1. Inference

    1. Your code uses the ART client to perform an agentic workflow (usually executing several rollouts in parallel to gather data faster).
    2. Completion requests are routed to the ART server, which runs the model's latest LoRA in vLLM.
    3. As the agent executes, each system, user, and assistant message is stored in a Trajectory.
    4. When a rollout finishes, your code assigns a reward to its Trajectory, indicating the performance of the LLM.
  2. Training

    1. When each rollout has finished, Trajectories are grouped and sent to the server. Inference is blocked while training executes.
    2. The server trains your model using GRPO, initializing from the latest checkpoint (or an empty LoRA on the first iteration).
    3. The server saves the newly trained LoRA to a local directory and loads it into vLLM.
    4. Inference is unblocked and the loop resumes at step 1.

This training loop runs until a specified number of inference and training iterations have completed.

🧩 Supported Models

ART should work with most vLLM/HuggingFace-transformers compatible causal language models, or at least the ones supported by Unsloth. Gemma 3 does not appear to be supported for the time being. If any other model isn't working for you, please let us know on Discord or open an issue on GitHub!

🤝 Contributing

ART is in active development, and contributions are most welcome! Please see the CONTRIBUTING.md file for more information.

📖 Citation

@misc{hilton2025art,
  author = {Brad Hilton and Kyle Corbitt and David Corbitt and Saumya Gandhi and Angky William and Bohdan Kovalevskyi and Andie Jones},
  title = {ART: Agent Reinforcement Trainer},
  year = {2025},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/openpipe/art}}
}

⚖️ License

This repository's source code is available under the Apache-2.0 License.

🙏 Credits

ART stands on the shoulders of giants. While we owe many of the ideas and early experiments that led to ART's development to the open source RL community at large, we're especially grateful to the authors of the following projects:

Finally, thank you to our partners who've helped us test ART in the wild! We're excited to see what you all build with it.

ART (OpenPipe/ART)

Searching Database…

10.8K ·GitHub
这是什么?ART(Agent Reinforcement Trainer)是 OpenPipe 开源的一个强化学习框架,能让大模型智能体从经验中学习:你可以用 GRPO 训练多步智能体去完成真实世界的任务。
ART 是一个我在代码里调用的库,还是替我训练模型的服务?两部分都有:一个是嵌入你应用里的 Python 客户端,另一个是独立的训练服务器。客户端兼容 OpenAI 接口,你的代码只需要收发消息,而服务器会在后台处理 vLLM 推理和 GRPO 训练。
怎么上手?把 pip 包加到任意 Python 项目里,先跑一个示例训练笔记本——邮件搜索、2048、井字棋——然后再接上你自己的智能体和奖励函数。
我能训练哪些模型?有哪些是不支持的?大多数兼容 vLLM/HuggingFace transformers 的因果模型都可以,包括 Unsloth 支持的所有模型——但目前暂不支持 Gemma 3。遇到跑不起来的模型,可以在 GitHub 或 Discord 上反馈。
训练智能体需要我自己有 GPU 吗?不需要。你可以在自己的笔记本上跑客户端,让服务器临时启动一个带 GPU 的环境(或者用本地 GPU);用托管版的 W&B serverless 方案则完全不用操心基础设施。
W&B Training(Serverless RL)是什么?一个在 ART 之上叠加的托管服务——也是第一个公开的用强化学习训练模型的服务。它替你跑训练和推理基础设施,宣称成本低 40%、训练快 28%,可扩展到 2000+ 并发请求,而且每个检查点都能通过 W&B Inference 立即调用。
我实际能用它把智能体训练成做什么?示例笔记本涵盖邮件研究(ART•E)、2048、井字棋、Codenames、Temporal Clue 这类游戏、MCP 服务器上的工具调用(MCP•RL),以及 LangGraph 智能体。还有只做 SFT 的任务,比如把文本转 SQL 的能力从 Qwen 3 235B 蒸馏到 Qwen 3.6 27B。
它能配合 LangGraph 或 MCP 服务器用吗?可以。ART 与 LangGraph 集成,让你能用强化学习训练现有的 LangGraph 智能体;MCP•RL 则会自动训练模型学会使用任意 MCP 服务器上的工具。
我能用它做普通的监督微调,而不只是强化学习吗?可以——除了强化学习,它还支持 SFT:从更大的模型蒸馏、用数据集微调,以及在切换到强化学习之前先做 SFT 预热阶段,专门的笔记本里有演示。
What are similar projects?unsloth, halo, verl, ms-swift, verl, OpenClaw-RL, DeepAnalyze, NeoHorse
Creator
OpenPipe
Size
96.1 MB
Stars
10.8K
Age
1y
Commits · 90 Days