2026年如何微调模型(Fine-Tuning):GRPO与RULER实战

akshay_pachaar 发布于 2026-03-05 阅读 63

本文介绍了使用GRPO和RULER进行强化学习微调(RFT)来提升LLM agent性能的方法。GRPO通过生成多个响应并相对评分来优化策略,无需绝对分数。RULER利用LLM作为裁判比较轨迹,自动生成奖励,无需手工标注。文章还介绍了ART框架,它专为支持工具调用和多轮交互的agent设计,并提供了训练MCP server agent的notebook示例。

图像

每个用 LLM 构建的团队最终都会遇到同样的瓶颈。

你写好了详细的系统提示,加了 few-shot 示例,调好了温度参数,但你的 Agent 仍有 30-40% 的出错几率。

最糟糕的是?它从来不会从这些错误中学习。

图像

微调就是你突破瓶颈的方法。

如果你在使用 GPT 或 Claude,那么你和其他人用的是同一个模型,拥有相同的能力、相同的成本,没有任何竞争优势。

但如果拿一个小型开源模型,针对你的特定任务进行微调呢?它的表现可以超越比它大 100 倍的模型,而成本和延迟却只有很小一部分。

图像

大多数开发者对微调的印象还停留在繁琐的准备工作上:精心策划的数据集、标注好的输出、手工设计的奖励函数。

但在 2026 年,情况已不再如此。

使用 GRPO 和 RULER 的现代微调技术已经改变了可能的边界。现在,你可以训练出真正通过经验来改进的 Agent,而无需编写任何奖励函数或收集任何标注示例。

本文会一步步讲解具体怎么做。

SFT 与强化微调的对比

大多数开发者都知道监督微调(SFT)。你收集输入-输出对,模型学习模仿它们。

问题在哪?SFT 教模型的是 该说什么,而不是 如何成功

对于那些需要搜索、调用 API 并且进行多步推理的 Agent 来说,模仿是不够的。你需要的是通过试错来改进。

可以这样理解:

SFT = 研读教科书(记住已知问题的答案)

RL = 在职培训(通过试错和反馈学习)

这就是强化微调(RFT)。你给模型一个奖励信号,让它自己发现最佳策略。

图像

GRPO 的工作原理

那么,这一切背后的算法是什么呢?

GRPO(组相对策略优化)是目前最流行的 RFT 算法。它也是 DeepSeek-R1 推理能力的核心算法。

核心思想很简单。GRPO 不是训练一个单独的模型来给回复打分,而是生成多个回复,然后让它们相互比较打分。

对于每个提示,具体工作流程如下:

  • 采样一个组:从当前模型生成 N 个回复
  • 给每个回复打分:一个奖励函数评估每次尝试
  • 在组内归一化:计算相对于组平均值的相对优势
  • 更新模型:强化高于平均的行为,抑制低于平均的行为

GRPO 只需要相对排名,不需要绝对分数。无论回复的分数是 0.3、0.5、0.7 还是 30、50、70,都不重要。只有排序才能驱动学习。

图像

ART:Agent 强化训练工具

GRPO 很强大,但你如何将它实际应用到真实世界的 Agent 上呢?

ART(Agent 强化训练工具)是一个 100% 开源框架,它将 GRPO 引入任何 Python 应用。

大多数 RL 框架是为简单的聊天机器人交互构建的:一个输入,一个输出,任务完成。真实的 Agent 则完全不同。它们会搜索文档、调用 API,并在产生答案之前进行多步推理。

图像

ART 正是为此而生。它提供了:

  • 对工具调用和多轮对话的原生支持
  • 与 LangGraph、CrewAI 和 ADK 的集成
  • 训练期间高效的 GPU 利用率

架构

ART 分为两部分:客户端和后端。

客户端是 Agent 代码所在的地方。它将推理请求发送到后端,并将每一个动作记录到一个轨迹(Trajectory)中,即一次 Agent 运行的完整历史。

后端则是繁重工作的执行地。它运行 vLLM 用于快速推理,以及基于 Unsloth 的 GRPO 用于训练。每次训练步骤后,新的 LoRA 检查点会自动加载到推理服务器中。

图像

完整的训练循环如下:

  • 客户端发送推理请求
  • 后端生成模型输出
  • Agent 在环境中执行动作(工具调用、搜索等)
  • 环境返回奖励
  • 训练器通过 GRPO 更新模型
  • 新的 LoRA 检查点加载到推理服务器中
  • 重复,每轮循环模型都比之前好一点点

RULER:不再需要手动编写奖励函数

这是最让人头疼的部分。

定义一个好的奖励函数一直是 RL 中最难的部分。训练一个邮件 Agent 需要标注好的正确答案。训练一个代码 Agent 需要测试套件。每一个都是一个独立的工程项目。

RULER(相对通用 LLM 生成奖励)完全消除了这个瓶颈。它使用 LLM 作为裁判来比较多个 Agent 轨迹并排序,不需要任何标注数据。

它的有效性基于两个关键洞察:

  • 让 LLM “给这个打分 0-10” 会产生不一致的结果
  • 让 LLM “这 4 次尝试中,哪一次最好地实现了目标?” 则可靠得多

而且由于 GRPO 只需要相对分数,绝对值根本无所谓。

过程分为三步:

  • 为一个场景生成 N 条轨迹
  • 将它们交给 LLM 裁判,裁判给每条轨迹打 0 到 1 分
  • 将这些分数直接作为 GRPO 的奖励

不需要编写奖励函数。不需要收集标注数据。

图像

整合起来:一个实际示例

我准备了一个完整可运行的笔记本,它训练一个 3B 模型,通过强化学习(使用 ART 框架)来掌握如何使用任何 MCP 服务器。

只需提供一个 MCP 服务器 URL,这个笔记本就会:

  • 查询服务器的工具
  • 生成一组使用这些工具的输入任务
  • 使用自动 RULER 评估来训练模型

你可以在 ART GitHub 仓库中找到更多示例来改编和上手。前往仓库 →(别忘了点 Star 🌟)

图像

感谢阅读!

  • 原文链接: x.com/akshay_pachaar/sta...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~

相关文章

0 条评论