>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
Python

如何在自己的 GPU 上使用 RL 训练基于 LLM 的智能体

使用强化学习训练语言模型长期以来一直与大规模集群和封闭实验室相关联。虽然 SFT(监督微调)已成为 ML 工程师的常规操作,但可靠地运行 PPO 或 GRPO 来处理多步智能体一直是一个相当大的挑战。您要么必须围绕 vLLM 和 DeepSpeed 编写自己的封装代码,要么忍受现成框架的局限性。

来自伯克利 Sky Computing Lab 的研究人员决定简化这一过程,并将 SkyRL 项目开源。这是一个功能完整的框架,涵盖了完整的 RL 微调周期:从隔离环境中的轨迹生成到运行时更新模型权重。

框架组成

开发者没有构建一个单体系统,而是将项目拆分为多个独立的层,可以轻松组合以满足您的特定任务需求。

核心层 skyrl负责在您的硬件上进行训练编排。它结合了训练引擎和分布式推理。该层的主要特点是支持开放的 Tinker API 标准。您可以编写一次训练脚本,然后在配备 NVIDIA 或 AMD GPU 的本地服务器以及云端运行它。

skyrl-gym提供了创建训练环境的接口。与经典的机器人 Gymnasium 不同,这里的环境针对文本和代码交互进行了适配。开箱即用,您可以获得对 SQL 数据库、Python 解释器、搜索引擎和 Linux 终端的支持。

skyrl-agent专注于长时域任务。它帮助训练能够执行数十个顺序步骤、调用外部工具并根据环境响应调整其操作的智能体。

实践成果

一个高质量框架的定义不在于抽象的数量,而在于实际指标。项目团队在 Text-to-SQL 任务上展示了该库的能力。

作者采用了一个标准的 70 亿参数模型,并通过 SkyRL-SQL 管道进行 RL 训练。数据集仅包含 653 个训练样本。该模型不仅仅是记忆正确的 SQL 查询——它学会了在真实的 DBMS 中执行它们,接收执行错误,并在下一步修复语法。因此,这个小模型在专业基准测试中的生成准确率超过了商业 GPT-4o 和 o4-mini 服务。

另一个有趣的例子是与 Harbor 环境集成,用于训练命令行智能体。该模型学习在真实终端中工作:编辑文件、运行测试、在代码库中查找 bug,以及在无需人工干预的情况下部署环境。

技术实现细节

在传统的模型 RL 训练中,推理和训练经常相互阻塞。模型生成响应,过程停止,计算梯度,更新权重,然后才开始新的迭代。SkyRL 实现了完全异步模式,即所谓的飞行中权重更新。

当 actor 生成新 token 并与环境交互时,训练过程同时更新模型参数。新权重实时传输到推理服务,这大大减少了昂贵加速器的停机时间。

该库并不试图从零开始重新发明轮子。在底层,它使用来自开源社区的成熟解决方案:veRL、OpenRLHF 和 Search-R1 的理念。

项目已有哪些应用

尽管还很年轻,该框架已经成为多个第三方研究项目的基础。

斯坦福的一个团队使用 SkyRL 创建了 Biomni-R0。这是一个能够解决复杂生物医学任务并以专家水平构建逻辑链的智能体。CodeScout 项目应用该框架在 SWE-Bench 基准测试中进行精确的代码 bug 定位。OpenThoughts-Agent 和 Endless Terminals 等项目也在该库的基础上开发,其中 RL 用于在 Linux 终端中生成程序性任务,无需人工数据标注。

从哪里开始实验

您需要一台配备多 GPU 的 Linux 服务器并安装 PyTorch。安装过程是标准的 Python 项目流程:

git clone https://github.com/NovaSky-AI/SkyRL.git
cd SkyRL
pip install -e .

然后您可以运行一个现成的训练配方。例如,要在数学或 SQL 任务上启动最简单的 RL 循环,只需从 examples 文件夹调用相应的脚本:

python -m skyrl.train --config-name=math_ppo

如果您想集成自己的环境,只需从 Gymnasium API 类继承并定义 step()reset() 方法。模型将接收文本或系统响应作为观察,并将生成的文本作为动作返回。

是否值得将其应用到您的项目中

SkyRL 对已经超越标准 SFT 并希望从中等规模模型中榨取最大性能的研发团队和工程师非常有用。通过 RL 教 LLM 在特定领域使用工具是一种在准确性和查询成本上击败通用专有模型的可行方法。

主要注意事项:该项目正在积极开发中。代码库有大约 400 个开放问题,各个模块的架构仍在不断演进。如果您需要一个带有

相关项目