目 录CONTENT

文章目录

Amazon Nova 的强化微调 (RFT):通过反馈教导人工智能

Administrator
2026-02-27 / 0 评论 / 0 点赞 / 0 阅读 / 0 字

📢 转载信息

原文链接:https://aws.amazon.com/blogs/machine-learning/reinforcement-fine-tuning-for-amazon-nova-teaching-ai-through-feedback/

原文作者:Bharathan Balaji, Chakra Nagarajan, Anupam Dewan, and Vignesh Radhakrishnan


基础模型(Foundation models)在通用任务上提供了令人印象深刻的开箱即用性能,但许多组织需要模型能够理解其业务知识。当构建需要领域特定专业知识、执行通信风格、针对代码生成、金融推理或确保遵守行业法规等专业任务进行优化时,模型定制可以帮助您弥合通用 AI 与您的特定业务需求之间的差距。挑战在于如何有效地进行定制。传统的监督微调(supervised fine-tuning, SFT)可以提供结果,但前提是您必须拥有数千个经过仔细标记的示例,这些示例不仅展示了正确的最终答案,还展示了到达该答案的完整推理路径。对于许多实际应用,特别是那些存在多种有效解决方案路径的任务,创建这些详细的分步演示有时成本高昂、耗时费力。

在本文中,我们将探讨 Amazon Nova 模型的强化微调(Reinforcement Fine-Tuning, RFT),这是一种强大的定制技术,它通过评估而非模仿来学习。我们将介绍 RFT 的工作原理、何时使用它而非监督微调(SFT)、从代码生成到客户服务的真实世界应用,以及从完全托管的 Amazon Bedrock 到使用 Nova Forge 进行多轮智能体工作流程的各种实现选项。您还将学习有关数据准备、奖励函数设计和实现最佳实践的实用指南,以获得最佳效果。

一种新范式:通过评估而不是模仿来学习

如果可以教汽车不仅学习地图上的所有路径,还能学习在走错路时如何导航,那会怎样?这便是我们很高兴引入 Amazon Nova 模型的模型定制技术——强化微调(RFT)的核心思想。RFT 将范式从模仿学习转变为评估学习。您无需提供数千个带标签的示例,而是提供提示(prompts),并通过测试用例、可验证的结果或质量标准来定义什么使最终答案正确。然后,模型通过迭代反馈学习优化这些标准,发现自己通往正确解决方案的路径。

RFT 通过自动验证输出来支持代码生成和数学推理的模型定制,无需提供详细的分步推理过程。我们将 RFT 推广到我们的 AI 服务中,以便在您 AI 旅程的任何阶段都能满足您的需求:您可以从 Amazon Bedrock 中提供的完全托管体验开始,通过 Amazon Bedrock 获得更多控制权,使用 SageMaker 训练作业,使用 SageMaker HyperPod 扩展到高级基础设施,或者使用 Nova Forge 释放用于多轮对话和自定义强化学习环境的前沿功能。

2025 年 12 月,亚马逊推出了 Nova 2 系列——亚马逊首批内置推理能力的模型。与直接生成响应的传统模型不同,像 Nova 2 Lite 这样的推理模型会进行分步问题分解,在产生最终答案之前执行中间思考步骤。这种扩展的思考过程模仿了人类处理复杂分析任务的方式。当与 RFT 结合使用时,这种推理能力变得特别强大,RFT 不仅可以优化模型产生的答案,还可以优化其推理过程,教它发现更高效的推理路径,同时减少令牌使用量。截至今天,RFT 仅支持纯文本用例。

真实世界用例

在您可以定义和验证正确结果,但大规模创建详细的分步解决方案演示不切实际的场景中,RFT 表现出色。以下是一些 RFT 可以作为良好选择的用例:

  • 代码生成:您希望代码不仅正确,而且高效、可读,并能优雅地处理边缘情况,这些质量可以通过测试执行和性能指标以编程方式验证。
  • 客户服务:您需要评估回复是否有帮助、是否保持您的品牌声音,以及是否针对每种情况都采取了适当的语调。这些是无法简化为简单规则的判断,但可以由根据您的沟通标准训练的 AI 裁判进行评估。
  • 其他应用:内容审核(其中上下文和细微差别很重要);多步推理任务,如财务分析或法律文件审查;以及工具使用(您需要教模型何时以及如何调用 API 或查询数据库)。在每种情况下,即使您无法轻松地大规模演示分步推理过程,您也可以定义和验证正确的输出。
  • 探索性强的问题:游戏和策略、资源分配和调度等用例受益于模型使用不同方法并从反馈中学习的情况。
  • 带标签数据有限的场景:在只有有限带标签数据集的用例中,例如具有很少专家注释示例的领域特定应用程序、没有既定解决方案模式的新问题域、标记成本高的任务(医疗诊断、法律分析)。在这些用例中,RFT 有助于优化从奖励函数计算出的奖励。

RFT 的工作原理

RFT 通过一个三阶段的自动化过程运行(如图 1 所示):

第 1 阶段:响应生成——执行者模型(您正在定制的模型)接收来自训练数据集的提示,并为每个提示生成多个响应——通常是 4 到 8 个变体。这种多样性为系统提供了多种响应进行评估和学习。

第 2 阶段:奖励计算——系统不是将响应与带标签的示例进行比较,而是使用奖励函数来评估质量。您有两种选择:

  • 通过可验证奖励进行强化学习 (RLVR):实现为 AWS Lambda 函数的基于规则的评分器,适用于代码执行或数学问题验证等客观任务,您可以对其正确性进行编程检查。
  • 通过 AI 反馈进行强化学习 (RLAIF):基于 AI 的裁判,根据您配置的标准评估响应,适用于评估有用性、创造力或品牌声音遵循情况等主观任务。

第 3 阶段:执行者模型训练——系统使用评分后的提示-响应对,通过强化学习算法(如针对语言模型的优化算法 Group Relative Policy Optimization (GRPO))来训练您的模型。模型学会最大化生成高奖励响应的概率,同时最小化低奖励响应的概率。此迭代过程会持续进行,直到模型达到您所需的性能。

Figure 1: Illustration of how single pass of RFT works

图 1:RFT 单次通过工作原理示意图

RFT 的关键优势

以下是 RFT 的关键优势:

  • 无需大规模带标签数据集——RFT 只需提示和一种评估质量的方法。如果使用 Bedrock RFT,您甚至可以利用现有的 Bedrock API 调用日志作为 RFT 数据,无需创建专门的数据集。
  • 针对可验证结果进行优化——与需要明确演示如何得出正确答案的监督微调不同,RFT 针对您可以定义和验证正确结果的任务进行了优化,即使存在多种有效的推理路径。
  • 减少令牌使用量——通过优化模型的推理过程,RFT 可以减少完成任务所需的令牌数量,从而降低生产中的成本和延迟。
  • 安全且受监控——在定制过程中,您的专有数据绝不会离开 AWS 的安全环境,并且您可以实时监控训练指标,以跟踪进度并确保质量。

实施层级:从简单到复杂

亚马逊为使用 Nova 模型的强化微调提供了多种实施路径,从完全托管的体验到可定制的基础设施。通过遵循这种分层方法,您可以将 RFT 的实施与您的特定需求、技术专长和期望的控制级别相匹配。

Amazon Bedrock

Amazon Bedrock 为 RFT 提供了一个入口点,具有完全托管的体验,所需的机器学习专业知识最少。通过 Amazon Bedrock 控制台或 API,您可以上传训练提示、将奖励函数配置为 AWS Lambda 函数,只需单击几下即可启动强化微调作业。Bedrock 会自动处理所有基础设施配置、训练编排和模型部署。此方法适用于您需要优化特定标准而无需管理基础设施的简单用例。简化的工作流程使没有专用机器学习工程师的团队也能使用 RFT,同时仍能提供强大的定制功能。Bedrock RFT 支持 RLVR(基于规则的奖励)和 RLAIF(基于 AI 的反馈)方法,并内置了监控和评估工具来跟踪模型的改进。要开始使用,请参阅 Amazon Nova RFT GitHub 存储库。

Amazon SageMaker Serverless Model Customization

Amazon SageMaker AI 的无服务器模型定制专为那些准备超越提示工程和 RAG,进入对高影响、专业用例进行 LLM 微调的机器学习从业者而设计。无论是提高复杂推理、特定领域代码生成,还是优化用于包含规划、工具调用和反射的智能体工作流程的 LLM,SageMaker 的产品消除了传统上阻碍实验的基础设施和专业知识障碍。其核心在于,该服务将 GRPO 结合 RLVR/RLAIF 等高级强化学习技术带给开发人员,而无需复杂的 RL 设置,并提供超越基本准确性指标的全面评估套件。作为补充,AI 辅助的合成数据生成、集成的实验跟踪以及完整的沿袭和审计跟踪支持,完善了生产级的定制管道。部署灵活性允许团队将微调模型部署到 SageMaker 端点、Amazon Bedrock 或自定义基础设施,使其成为寻求加速模型定制周期并释放 Amazon Nova 等模型在现实世界应用中全部潜力的团队的引人注目的端到端无服务器解决方案。

SageMaker 训练作业

对于需要对训练过程有更多控制的团队,Amazon SageMaker 训练作业提供了一个灵活的中间地带,具有托管计算能力和调整多个超参数的能力。您还可以保存中间检查点,并使用它们来创建迭代训练工作流程,例如链接监督微调 (SFT) 和 RFT 作业,以逐步完善您的模型。您可以灵活地在 LoRA 和全秩(full-rank)训练方法之间进行选择,并完全控制超参数。对于部署,您可以选择 Amazon Bedrock 进行完全托管的推理,或选择 Amazon SageMaker 端点,您可以在其中控制实例类型、批处理和性能调优。此层级非常适合那些需要的定制超出了 Amazon Bedrock 范围,但又不需要专用基础设施的 ML 工程师和数据科学家。SageMaker 训练作业还与更广泛的 Amazon SageMaker AI 生态系统无缝集成,用于实验跟踪、模型注册和部署管道。Amazon Nova RFT 在 SageMaker 训练作业上使用 YAML 配置文件来配置训练作业。您可以从 SageMaker HyperPod 菜谱存储库中获取基础菜谱。

最佳实践:

  1. 数据格式:使用 JSONL 格式,每行一个 JSON 对象。
  2. 参考答案:包含您的奖励函数将与之比较的模型预测的基准值。
  3. 从小处开始:首先使用 100 个示例来验证您的方法,然后再扩展。
  4. 自定义字段:添加奖励函数评估所需的任何元数据。
  5. 奖励函数:设计时应考虑速度和可扩展性,使用 AWS Lambda。
  • 要开始使用 Amazon SageMaker 训练作业上的 Amazon Nova RFT,请参阅 SFTRFT 笔记本

SageMaker HyperPod

SageMaker HyperPod 为大规模 RFT 工作负载提供了企业级基础设施,具有针对分布式训练优化的持久性 Kubernetes 集群。此层级建立在 SageMaker 训练作业中可用的所有功能之上——包括检查点管理、迭代训练工作流程、LoRA 和全秩训练选项以及灵活部署——但规模更大,具有专用的计算资源和专门的网络配置。HyperPod 中的 RFT 实现针对更高的吞吐量和更快的收敛速度进行了优化,采用了最先进的异步强化学习算法,其中推理服务器和训练服务器独立全速工作。这些算法会考虑这种异步性,并实施用于训练基础模型的最先进技术。HyperPod 还提供高级数据过滤器,让您可以对训练过程进行精细控制,并减少崩溃的可能性。您可以对超参数进行精细控制,以最大限度地提高吞吐量和性能。HyperPod 专为需要大规模推动 RFT 边界的 ML 平台团队和研究组织而设计。Amazon Nova RFT 使用 YAML 配置文件来配置训练作业。您可以从 SageMaker HyperPod 菜谱存储库中获取基础菜谱。

  • 有关更多信息,请参阅 RFT 基础评估,以开始使用 Amazon SageMaker HyperPod 上的 Amazon Nova RFT 作业。

Nova Forge

Nova Forge 为构建复杂的智能体应用程序的 AI 研究团队和从业者提供了先进的强化反馈训练功能。通过摆脱单轮交互和 Lambda 超时限制,Nova Forge 能够在您自己的 VPC 中运行自定义扩展环境,实现复杂的多轮工作流程。这种架构为您提供了对轨迹生成、奖励函数以及与训练和推理服务器能力的直接交互的完全控制,这对于标准 RFT 层级无法支持的前沿 AI 应用至关重要。Nova Forge 使用 Amazon SageMaker HyperPod 作为训练平台,并提供与其他功能,如与 Amazon Nova 精选数据集的数据混合以及中间检查点。

主要特点:

  • 多轮对话支持
  • 执行时间超过 15 分钟的奖励函数
  • 附加算法和调优选项
  • 自定义训练配方修改
  • 最先进的 AI 技术

此进程中的每个层级都建立在前一个层级之上,随着 RFT 需求的演变,提供了一个自然的增长路径。从 Amazon Bedrock 开始进行初步实验,随着您完善方法而转向 SageMaker 训练作业,并使用 HyperPod 针对特定用例升级到 HyperPod 或 Nova Forge。这种灵活的架构确保您可以根据当前的复杂程度实施 RFT,同时为您未来的需求发展提供清晰的路径。

系统化的强化微调 (RFT) 方法

强化微调 (RFT) 通过结构化的、基于奖励的学习迭代来逐步改进预训练模型。以下是实施 RFT 的系统化方法。

第 0 步:评估基线性能

在开始 RFT 之前,请评估您的模型是否达到了最低可接受水平。RFT 要求模型在训练期间的多次尝试中至少能产生一种正确的解决方案。

关键要求:组相对策略需要跨多次滚动的输出多样性(通常每次提示生成 4-8 次)才能有效学习。模型需要在尝试中至少有一个成功或至少一个失败,这样它才能区分正向和负向示例以进行强化。如果所有滚动都持续失败,则模型没有可供学习的正面信号,使 RFT 无效。在这种情况下,您应该首先使用监督微调 (SFT) 来建立基本的任务能力,然后再尝试 RFT。如果失败模式主要是由于缺乏知识,在这种情况下 SFT 可能是更有效的起点;而如果失败模式是由于推理不佳,那么 RFT 可能是优化推理质量的更好选择。

第 1 步:确定正确的数据集奖励函数

选择或创建代表模型在生产中将遇到的场景的提示数据集。更重要的是,设计一个奖励函数,该函数:

  • 清晰地遵循您的评估指标跟踪的内容:您的奖励函数应直接衡量您在生产中关心的相同质量。
  • 捕获您对模型的期望:无论是正确性、效率、风格遵循情况,还是这些目标的组合。

第 2 步:调试和迭代

在整个训练过程中监控训练指标和模型滚动

需要关注的训练指标:

  • 奖励随时间的趋势(通常应增加)
  • 与基础模型的策略差异 (KL)
  • 随时间变化的生成长度

模型滚动分析:

  • 定期采样和审查生成的输出
  • 跟踪模型行为在训练步骤中的演变情况

常见问题及解决方案

可以直接在奖励函数中解决的问题:

  • 格式正确性:为格式错误的输出添加奖励惩罚
  • 语言混杂:惩罚不需要的语言切换
  • 生成长度:根据用例奖励适当的响应长度

需要数据集/提示改进的问题:

  • 覆盖范围有限:创建更全面的提示集,涵盖各种难度
  • 探索多样性不足:确保提示允许模型探索各种场景和边缘情况

RFT 是一个迭代过程。利用每次训练运行获得的见解来完善您的奖励函数、扩展您的提示集或在下一次迭代之前调整超参数。

关键 RFT 特性和选择指南

本节通过系统地分解 RFT 的核心组件和功能,概述了 RFT 的关键特性,以实现有效的模型优化。

全秩与 LoRA 对比

RFT 支持两种具有不同资源权衡的训练方法。全秩训练在训练期间更新所有模型参数,提供最大的模型适应潜力,但需要更多的计算资源和内存。低秩适应 (LoRA) 通过轻量级的适配器层更新一小部分参数,同时保持模型大部分冻结,从而实现参数高效的微调。

LoRA 需要的计算资源明显更少,产生的模型工件更小。重要的是,在 Amazon Bedrock 中部署的 LoRA 模型支持按需推理——您无需专用实例,只需为您使用的令牌付费。这使得 LoRA 成为一个极好的默认起点:您可以快速迭代和验证定制模型,而无需前期基础设施成本。随着流量需求的增长或高性能要求证明投资合理,您可以过渡到使用专用预留吞吐量实例进行全秩训练,以实现最大的吞吐量和最低的延迟。

推理与非推理对比

RFT 支持推理和非推理模型,每种模型都针对不同类型的任务进行了优化。推理模型在产生最终答案之前生成明确的中间思考步骤,非常适合复杂的分析任务,如数学问题解决、多步逻辑演绎和代码生成,在这些任务中展示推理过程会增加价值。您可以配置推理的努力程度级别——高以实现最大推理能力,低以实现最小开销。非推理模型在不显示中间推理步骤的情况下提供直接响应,优化速度和成本。它们最适合聊天机器人问答等任务,您希望获得更快的执行速度而没有推理开销,尽管这可能会导致输出质量低于推理模式。选择取决于您的任务要求:当中间思考步骤可以提高准确性,并且您需要在复杂问题上实现最大性能时,请使用推理模式。当您优先考虑速度和成本效率而非显式推理带来的潜在质量改进时,请使用非推理模式。

RFT 与 SFT 的对比

方法 最适用场景 优势 局限性
监督微调 (SFT) 具有明确期望输出的定义明确的任务,例如,“给定 X,正确输出是 Y。” • 直接教授事实知识(例如,“巴黎是法国的首都”) • 非常适合拥有高质量提示-响应对的情况 • 提供一致的格式和特定的输出结构 • 需要针对每个期望行为进行明确的带标签示例 • 在涉及模糊或多种有效解决方案的任务中可能表现不佳
强化微调 (RFT) 可以定义奖励函数的情景,即使只有一个有效解决方案 • 优化复杂的推理任务 • 高效地生成自己的训练数据,减少对大量人工标记示例的需求 • 可以平衡竞争目标(准确性、效率、风格) • 需要模型在多次尝试(通常为 4-8 次)中至少生成一个正确解决方案 • 如果模型持续无法生成正确的解决方案,仅靠 RFT 将不会有效

案例研究:使用 RFT 优化金融分析基准 (FinQA)

在此案例研究中,我们将引导用户完成 FinQA(一个金融分析基准)的示例案例研究,并以此演示响应中实现的优化。在此示例中,我们将使用来自 FinQA 公共数据集的 1000 个样本。

第 1 步:数据准备

以与 RFT 模式兼容的格式准备数据集,如 Nova 上的 RFT 中所述。RFT 数据遵循 OpenAI 对话格式。每个训练示例是一个 JSON 对象,其中包含。对于我们的 FinQA 数据集,格式化后的 train.jsonl 中的一个示例数据点如下所示:

{ "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Context: ....

Question: ....

Provide your answer in the following format:
ANSWER: [your answer here]" } ] } ], "reference_answer": { "answer": "65.3%" }, "data_source": "finqa" }

必需字段:

  • messages:包含系统、用户和可选的助手角色的对话轮次数组
  • reference_answer:用于奖励计算的预期输出或评估标准

可选字段:

  • id:用于跟踪和去重的唯一标识符
  • tools:模型可用的函数定义数组
  • 自定义元数据字段:在计算奖励时使用的任何附加元数据(例如,task_iddifficulty_leveldomain

第 2 步:构建奖励和评分函数

奖励函数是评估模型响应并为训练提供反馈信号的核心组件。它必须实现为接受模型响应并返回奖励分数的 AWS Lambda 函数。目前,AWS Lambda 函数的执行时间限制为 15 分钟。调整时间...




🚀 想要体验更好更全面的 AI 调用?

欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。

0

评论区