Skip to main content

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:

  • 40% lower cost - Multiplexing on shared production-grade inference cluster
  • 28% faster training - Scale to 2000+ concurrent requests across many GPUs
  • Zero infra headaches - Fully managed infrastructure that stays healthy
  • Instant deployment - Every checkpoint instantly available via W&B Inference
# 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.8 27B learns to search emails using RULER benchmarks
2048 [Serverless] 🏋️ Train agent Qwen 3.8 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.8 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.8 27B on text-to-SQL from a dataset [Link coming soon]

Serverless notebooks use ART main (pinned to 88d3df2) and Qwen/Qwen3.8-27B. Benchmark charts show results from their original runs.

📰 ART News

Explore our latest research and updates on building SOTA agents.

📖 See all blog posts →

Why ART?

  • ART provides convenient wrappers for introducing RL training into existing applications. We abstract the training server into a modular service that your code doesn't need to interface with.
  • Train from anywhere. Run the ART client on your laptop and let the ART server kick off an ephemeral GPU-enabled environment, or run on a local GPU.
  • Integrations with hosted platforms like W&B, Langfuse, and OpenPipe provide flexible observability and simplify debugging.
  • ART is customizable with intelligent defaults. You can configure training parameters and inference engine configurations to meet specific needs, or take advantage of the defaults, which have been optimized for training efficiency and stability.

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.

Metadata

Release files for openpipe-art 0.5.21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openpipe-art 0.5.21
File Size Uploaded Provenance Actions
openpipe_art-0.5.21.tar.gz 11.1 MB With provenance Details for openpipe_art-0.5.21.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for openpipe-art 0.5.21
File Interpreter ABI Platform Actions
openpipe_art-0.5.21-py3-none-any.whl Python 3 none any Details for openpipe_art-0.5.21-py3-none-any.whl

Total release size: 22.4 MB

Release files / openpipe_art-0.5.21.tar.gz

Download URL openpipe_art-0.5.21.tar.gz
Size 11.1 MB
Tags Source
SHA-256 checksum
How to use checksums
6ce4f449391276feb2371d34cf8f72e3c8db505bea77629e0e414d914c3e5bcf
BLAKE2b-256 checksum
How to use checksums
d2e0f8347d643edc1784062dea608fdb750f945989454e7405ed18d4d5c87557
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / openpipe_art-0.5.21-py3-none-any.whl

Download URL openpipe_art-0.5.21-py3-none-any.whl
Size 11.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
480684e0782891800622b4c3e41d0919914cb9384118a4b2ae6ce2c32ce8d343
BLAKE2b-256 checksum
How to use checksums
ebca70cb763eaf8705abafe2c40b98e5ff77e139d27ccbdd99e21a332641623b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Security for openpipe-art 0.5.21

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for openpipe_art-0.5.21.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.5.21 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page