OpenPipe/ART

Agent Reinforcement Trainer: train multi-step agents for real-world tasks using GRPO. Give your agents on-the-job training. Reinforcement learning for Qwen3.6, GPT-OSS, Llama, and more!

OpenPipe / ART – 代理强化学习训练器

是什么 – ART(代理强化学习训练器)是一个开源 Python 库,可将大型语言模型(LLM)转变为通过强化学习(RL)训练的代理。它提供了一个轻量级、兼容 OpenAI 的客户端,您的现有代码可以调用,以及一个独立的服务器,负责执行重负载的推理和基于 LoRA 的 RL 更新(使用 GRPO 算法)。整个流程可以在本地 GPU 上运行,也可以在由 Weights & Biases(W&B)支持的托管、无服务器后端上运行,无需自行配置集群。


核心理念

概念 对您意味着什么
GRPO 一种策略梯度方法(广义奖励基础策略优化),在冻结的基础模型之上更新 LoRA 适配器。
无服务器 RL ART 可以通过 W&B 后端在云端启动临时的 GPU 环境,并自动处理扩展、检查点和推理服务。
客户端-服务器分离 您的应用程序与一个外观像 OpenAI 聊天 API 的轻量级客户端通信。服务器负责实际的模型推理(通过 vLLM)和 RL 训练。
轨迹与奖励 每次代理的 rollout 都会被记录为一系列消息(系统/用户/助手)。在 rollout 完成后,您分配一个标量奖励,服务器使用该奖励计算策略梯度。

快速入门(一行代码)

from art.serverless.backend import ServerlessBackend
import art

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_KEY")
model.register(backend)   # 启动托管 GPU 环境
# 现在可以像 OpenAI 聊天客户端一样使用 model
response = model.chat([{"role": "user", "content": "Schedule a meeting tomorrow"}])

上述代码创建了一个支持 LoRA 的模型,将其注册到无服务器后端,您即可立即发送提示。后台 ART 将执行以下操作:

  1. 通过 vLLM 在最新的 LoRA 上运行提示。
  2. 将交互记录为轨迹。
  3. 当您稍后调用 model.train()(或让客户端在一批 rollout 后自动训练)时,服务器使用 GRPO 更新 LoRA,并立即将新检查点提供使用。

重要笔记本(动手演示)

任务 笔记本 使用模型 您将看到的内容
邮件搜索代理(ART·E) train‑art‑e.ipynb Qwen‑3.8 27B + RULER 代理学习检索相关邮件;展示训练曲线。
玩 2048 2048.ipynb Qwen‑3.8 27B RL 训练的代理在数千次 rollout 中提升游戏分数。
井字棋 tic‑tac‑toe.ipynb Qwen‑2.5 3B 简单的回合制游戏;可视化胜率增长。
猜词游戏 Codenames_RL.ipynb Qwen‑2.5 3B 代理学习给出提示和猜测单词;绘制胜率。
SFT + RL 摘要器 sft‑rl.ipynb Qwen‑2.5 7B 先通过监督微调预热,再通过 RL 微调以获得更好的摘要。

训练循环工作原理

  1. 推理 – 您的应用调用 model.chat(...)。请求发送到 ART 服务器,服务器使用 vLLM 在当前 LoRA 上运行基础模型并返回完成结果。所有消息都存储在一条轨迹中。
  2. 奖励分配 – 在 rollout 完成后,您附加一个数值奖励(例如成功/失败、分数,或由 RULER 系统生成的奖励)。
  3. 批量发送 – 收集到足够多的轨迹后,客户端将它们批量发送到服务器。
  4. GRPO 更新 – 服务器使用奖励计算策略梯度,更新 LoRA 适配器,写入新检查点,并将其重新加载到推理引擎中。
  5. 循环重复 – 推理使用最新更新的策略继续;该过程持续进行,直到达到目标迭代次数或性能阈值。

作者声称的主要优势

  • 成本效益 – 共享推理集群可将每次运行成本降低约 40%。
  • 速度 – 可处理超过 2000 个并发请求,相比单 GPU 设置,壁钟时间训练快约 28%。
  • 零运维 – 无服务器后端自动配置 GPU 节点、监控健康状况并自动关闭。
  • 即时检查点访问 – 每个 LoRA 检查点均可立即通过同一客户端用于推理。
  • 即插即用 – 与任何在 vLLM/HuggingFace-transformers 中运行的模型兼容(大多数因果 LLM)。README 指出 Gemma 3 目前不支持。

安装与基本用法

pip install openpipe-art   # 拉取库及其 vLLM/GRPO 依赖

然后导入客户端(art.TrainableModel)并可选地导入后端(art.serverless.backend.ServerlessBackend 用于 W&B,或 art.local.backend.LocalBackend 用于本地 GPU)。

生态系统集成

  • W&B – 用于托管无服务器 RL、实验跟踪和推理部署。
  • LangGraph – 最新集成允许使用 RL 训练基于 LangGraph 的代理图。
  • Langfuse – 提供提示、响应和奖励的可观测性。
  • OpenPipe – ART 背后的公司提供额外托管服务(非开源库必需)。

谁可能使用 ART?

  • 研究实验室:构建多步骤 LLM 代理(邮件助手、工具使用机器人、游戏代理)并需要 RL 微调的人。
  • 产品团队:已有 LLM 驱动的工作流,希望基于经验学习改进,但不想自行构建 RL 基础设施的人。
  • 教育者/学生:寻找即用型 LLM 强化学习沙箱的人;Colab 笔记本提供一键启动。

许可与引用

  • 许可证:Apache‑2.0(宽松,适合商业使用)。
  • 引用:提供学术用途的 BibTeX 条目。

总结

ART 是一个专为 LLM 代理的 LoRA 基础策略优化而设计的强化学习框架。通过将轻量级客户端与可扩展服务器(可选地通过 W&B 实现无服务器)分离,它让开发者能够专注于定义环境、rollout 和奖励函数,而库则负责推理、轨迹记录和 GRPO 更新。如果您需要将 LLM 转变为自我改进的代理,并希望避免从头构建 RL 管道,ART 是一个具体且生产就绪的选项。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目