
突破性进展:NVIDIA推出Nemotron-Research-Tool-N1,强化学习驱动的工具型语言模型超越GPT-4o
引言:重新定义工具使用型语言模型的训练范式
大型语言模型(LLM)的工具使用能力已成为扩展其功能边界的关键战略。传统方法通常依赖监督微调(SFT)来确保工具调用的正确性,或从更强大的模型中提炼推理轨迹。然而,这些方法各有局限:要么完全忽略推理过程,要么产生仅能模仿表面模式的伪推理,限制了模型的泛化能力。
近日,NVIDIA研究团队发布了一项突破性成果——Nemotron-Research-Tool-N1(简称Tool-N1),这是一系列基于强化学习训练的工具使用型语言模型。该研究受到DeepSeek-R1通过规则基础的强化学习成功引出推理能力的启发,采用类似的训练范式,通过二元奖励机制来评估工具调用的结构有效性和功能正确性,而无需标注的推理轨迹。
这种轻量级的监督方式使模型能够自主内化推理策略,在BFCL和API-Bank基准测试中,基于Qwen-2.5-7B/14B-Instruct构建的Tool-N1-7B和Tool-N1-14B取得了令人瞩目的成果,超越了包括GPT-4o在内的多个强大基线模型。
工具学习的问题定义
在正式介绍Tool-N1之前,我们首先明确工具学习的问题定义。考虑一个大型语言模型(LLM)和一组外部工具集合𝒵={zi},模型可以访问这些工具。每个工具zi可以表示为一个三元组(ni,di,ki),包含工具使用的基本信息:ni表示工具的名称,di提供工具的自然语言描述,ki指定工具的输入参数说明。
模型的目标是根据策略π响应用户查询。为实现这一目标,LLM可能在交互过程中发出多个带有适当参数的工具调用。在任何决策步骤t,LLM接收两种类型的输入:(1)历史上下文ct,由所有前面的工具调用和观察对组成;(2)当前可用的工具集𝒵。然后,LLM必须决定下一步行动。
形式上,决策过程定义为:
π(ct,𝒵~)→at, s.t. at⊆𝒵
其中at表示在步骤t选择的操作,对应从可访问工具子集𝒵~中抽取的一个或多个工具调用。ct表示历史上下文。具体来说:
{ at={z0(p0),…,zm(pm)}, ct=(a0,o0,…,at,ot) }
其中每个zm表示调用的第m个工具,pm是其对应的参数。m的值表示在时间t进行的工具调用数量。ot表示采取操作at后的观察结果。工具学习的最终目标是使LLM具备一个泛化策略π,通过产生一系列连贯的操作-观察对(at,ot)来有效解决用户查询。
Nemotron-Research-Tool-N1的创新方法
Nemotron-Research-Tool-N1是一个基于R1风格强化学习框架设计的通用工具使用型语言模型。Tool-N1构建于GRPO强化学习算法之上,旨在提高模型在复杂场景中的工具调用能力,特别是在LLM需要使用一组可访问工具解决查询的情况下。
形式上,给定历史上下文ct和当前可用工具集𝒵,模型生成一组候选响应[O¹,O²,...,Oᴺ]。每个响应包含(1)文本推理和(2)相关联的操作an。这些响应使用奖励函数进行评估,产生一个奖励集{r₁,r₂,...,rₙ}。然后使用GRPO算法估计优势并更新策略模型,受KL散度约束。第i个响应的相对优势Ai计算如下:
Ai = (ri - mean({r₁,r₂,...,rₙ})) / std({r₁,r₂,...,rₙ})
其中mean和std分别表示奖励的均值和标准差。
数据准备
许多先前的工作集中于收集大规模工具调用轨迹,然后通过监督微调(SFT)来提高LLM的工具使用能力。这些数据集通常由自然语言用户查询Q和一系列地面真实工具调用步骤(a₀,o₀,...,aₜ,oₜ)组成。然后训练模型根据观察到的轨迹预测每个后续操作at。然而,SFT往往表现出有限的泛化能力,因为模型倾向于记忆训练轨迹,而不是发展稳健的内在推理能力。
为充分利用社区中可用的SFT数据,研究团队统一并预处理了来自xLAM和ToolACE子集的数据,这些数据提供了单轮和多轮合成工具调用轨迹。由于这些数据集是由潜在不稳定的LLM生成的,它们通常包含不一致性和不适合GRPO训练的非结构化格式。研究团队通过过滤掉包含无效工具调用的样本来标准化数据集,特别是那些涉及候选工具列表中不存在的工具的样本。
可用工具从系统提示中提取,候选工具和地面真实工具调用都解析为结构化字典格式。丢弃了JSON解析失败或包含格式不一致的实例。这种预处理产生了适合强化学习的干净一致的数据集。对于来自ToolACE子集的多轮数据,研究团队进一步将每个轨迹分割成多个单步预测实例,其中每个实例包含一个目标工具调用,前面的步骤被视为上下文。使用R1风格的GRPO训练LLM,根据这些上下文信息和提供的工具预测每个工具调用步骤。
思考模板
遵循Guo等人(2025)的方法,研究团队采用了一个轻量级提示模板来引出LLM的工具调用。该提示明确指示模型在<think>...</think>标签内生成中间推理,然后在<tool_call>...</tool_call>标签内封装工具调用。
这个模板背后的设计理念是最小化对过于僵化格式规则的依赖,这可以降低过拟合特定提示模式的风险。通过允许模型在表达其推理方面有更大的灵活性,目标是促进跨多样化工具使用场景的更强泛化能力。此外,在训练期间使用这种轻量级提示设计使得生成的模型能够更容易与更复杂的提示策略集成。
奖励建模
按照数据准备中描述的方法,研究团队构建了一个训练数据集,其中每个地面真实工具调用表示为结构化字典。这种格式使得在强化学习过程中能够可靠地验证工具名称和参数-值对,而不仅仅是简单的字符串匹配。利用这种结构,研究团队定义了一个R1风格的二元奖励函数,共同评估推理格式的正确性和工具调用的准确性,包括其名称和参数。
格式检查:遵循先前的工作,研究团队在训练期间纳入格式检查,以验证模型的输出是否符合预期的结构约定——具体来说,推理是否封装在<think>...</think>标签内,工具调用是否正确放置在<tool_call>...</tool_call>标签内。这种结构约束鼓励模型在工具调用之前进行明确的推理,而不是直接跳到最终答案。通过强制格式遵守,目标是培养模型的内在推理能力,这可能潜在地有助于改善泛化——特别是对于分布外输入。
工具调用检查:研究团队还检查工具调用本身的正确性。工具调用输出被解析为字典,使得能够与地面真实调用进行精确匹配。这涉及检查预测的工具名称是否与地面真实相匹配,以及所有必需的参数是否存在且值正确。这种严格的匹配标准确保模型学习生成功能精确且可执行的工具调用。与SFT中的下一个标记预测逻辑相比,这种基于字典的匹配引入了更大的灵活性。它允许参数顺序变化而不受惩罚,鼓励模型关注工具调用的底层语义,而不是表面级记忆。这种设计促进了对工具使用的更深入理解,并支持更好的泛化。
二元奖励定义:给定上下文ct和预测操作at,研究团队定义了一个二元奖励函数r(ct,at)∈{0,1},当满足以下两个条件时,分配奖励1:(1)格式正确性:模型输出符合结构格式,即包含<think>...</think>和<tool_call>...</tool_call>标签;(2)工具调用正确性:预测的工具调用at在工具名称和所有参数键值对方面与地面真实调用at*完全匹配。
r(ct,at) = { 1, 如果 FormatCorrect(at) ∧ ToolCallMatch(at,at*) 0, 否则 }
其中FormatCorrect(at)在输出正确包装在两个所需标签中时返回true,ToolCallMatch(at,at*)在at在结构和内容上与地面真实工具调用at*完全匹配时返回true。
实验结果与分析
研究团队进行了广泛实验,证明了所提方法的优越性。实验主要在BFCL和API-Bank两个典型基准测试上进行评估。
实验设置
数据集:主要使用ToolACE和xLAM的子集作为训练数据集。ToolACE涵盖了广泛的工具调用场景,包括具有多个候选工具和并行函数调用的示例,覆盖了26,507个多样化工具的池。相比之下,xLAM专注于单轮函数调用,包含通过APIGen收集的60,000个实例。
模型:除非另有说明,研究团队使用Qwen2.5-7B/14B-Instruct作为主要骨干模型。为评估方法的泛化能力,还对替代骨干模型进行了评估,包括来自LLaMA家族的多个变体。实验中,研究团队与通用开源模型(如GPT系列和Gemini-2.0)以及专门的工具调用模型(包括ToolACE-8B、xLAM-2和Hammer2.1)进行了比较。
基准测试:主要评估单轮工具调用查询的性能。在几个代表性基准测试上评估了方法,包括Berkeley Function Call Leaderboard (BFCL)和API-Bank。对于BFCL,在Non-live和Live子集上进行了评估,分别对应合成和真实世界数据。每个子集包括四个类别:Simple、Multiple、Parallel和Parallel Multiple。Simple和Multiple场景都涉及单个工具的调用,Multiple类别具有多个候选工具。相比之下,Parallel和Parallel Multiple场景需要同时调用多个工具。对于API-Bank,排除了多轮案例。所有基准测试的性能都以准确率报告。
其他实现细节:所有实验使用开源强化学习库Verl进行。训练使用1024的批量大小和1×10⁻⁶的学习率。温度固定在0.7。熵系数设置为0,因为观察到引入熵对训练期间的探索产生负面影响。KL散度损失系数在所有实验中设置为1×10⁻³。所有训练运行在由4个节点组成的集群上执行,每个节点配备8个NVIDIA H100 80GB GPU。
主要结果
BFCL基准测试结果:实验结果清楚地表明,所有Tool-N1-7B/14B模型都取得了最佳的总体性能,超过了最先进的闭源模型(如GPT-4o)和专门的微调模型(包括xLAM-2-70B和ToolACE-8B)。值得注意的是,训练的工具调用推理模型显著优于在相同数据源上训练的监督微调基线(即ToolACE和xLAM系列)。结果证明,与标准监督微调相比,R1风格的强化学习为增强LLM的工具调用能力提供了更有效的范式。
API-Bank基准测试结果:为提供更全面的评估,研究团队还在API-Bank基准测试上进行了实验。Tool-N1-7B和Tool-N1-14B模型在大多数情况下都始终优于基线。值得注意的是,Tool-N1-7B/14B的准确率分别比GPT-4o高4.12%和5.03%,清楚地证明了该方法的有效性。
深入分析
可扩展性和泛化能力
可扩展性:扩展定律,它描述了模型大小和性能之间的关系,在理解训练方法的有效性方面起着关键作用。研究团队通过评估一系列模型大小来评估所提训练方法的扩展行为,包括来自Qwen2.5-Instruct系列的0.5B、1.5B、3B、7B和14B。为进行比较,还报告了没有任何额外训练的原始指令调整模型的性能。
研究团队报告了BFCL基准测试的Live和Non-Live类别的平均性能。如预期的那样,较大的模型在两种评估设置中始终优于较小的模型。值得注意的是,对于较小的模型(0.5B和1.5B),后训练的性能改进有限,而较大的模型表现出显著的增益。这些发现表明,R1风格的训练方法随着模型大小的增加而更有效地扩展。
泛化能力:研究团队进一步评估了不同骨干LLM的影响,以研究所提训练方法的泛化能力。除了Qwen系列,还包括使用基于LLaMA的模型的实验:LLaMA3-8B-Instruct和LLaMA3.1-8B-Instruct。这些评估在BFCL基准测试上进行。研究发现,在相同的模型规模下,Qwen2.5-Instruct显著优于两种LLaMA变体。这种优势可能是由于Qwen固有的更强推理能力,正如Gandhi等人(2025)先前观察到的那样。因此,R1风格的训练范式能够在应用于Qwen时引出更好的性能。
消融研究
奖励设计的消融:为评估奖励粒度如何影响模型行为,研究团队在两种奖励方案下评估了Tool-N1-7B:细粒度和二元。细粒度设置提供部分奖励,即使最终函数调用不正确,正确的推理格式也提供0.2的奖励,匹配函数名称再提供0.2的额外奖励。相比之下,二元设置仅在所有组件都正确时给予1.0的奖励,包括推理、函数名称和参数。Tool-N1在二元奖励下始终取得更好的性能,特别是在Live子集上(80.38%对76.61%),这涉及更现实的输入。
研究团队将这归因于减少了奖励黑客行为:在细粒度方案下,模型可能过度拟合表面线索,如格式化或部分匹配,而不确保完全执行正确性。此外,在二元设置中,观察到移除推理格式约束显著损害了性能(从80.38%下降到76.24%)。这突显了结构化推理在引导Tool-N1-7B实现可靠和可泛化工具使用方面的关键作用,特别是在复杂的真实世界场景中。
训练数据组成的消融:研究团队还调查了不同数据组成策略如何影响BFCL基准测试的性能。实验使用Tool-N1-7B模型进行。主要发现如下:(1)与原始模型(Qwen2.5-7B-Instruct)相比,R1风格的训练显著增强了工具调用能力;(2)ToolACE数据在实时设置中产生了特别强的改进;(3)与使用相同数据进行SFT训练的模型相比,R1风格的训练始终产生更好的性能。具体来说,仅在xLAM数据上训练的Tool-N1-7B模型比xLAM-8B SFT模型表现好6.36%,仅在ToolACE子集上训练的Tool-N1-7B模型比ToolACE-8B SFT模型表现好1.62%,尽管只使用了数据的一个子集。
SFT还是RL?:研究团队还进行了一项系统研究,比较了纯RL、监督微调(SFT)和常用的SFT-then-RL流程。使用5,518个提炼的推理轨迹进行分析,发现:(1)尽管在许多领域,对推理轨迹进行SFT然后进行RL的组合通常被认为是最佳实践,但在相等的数据预算下,在工具调用设置中没有观察到性能改进;(2)在相等的数据预算下,纯RL优于Reason-SFT和No-Reason SFT;(3)有趣的是,No-Reason SFT的表现仅比Reason-SFT略差,表明在SFT期间提供推理轨迹提供的额外好处有限。
结论与未来展望
Nemotron-Research-Tool-N1引入了一系列使用基于规则的强化学习训练的工具使用型语言模型。与依赖监督微调的先前方法不同,Nemotron-Research-Tool-N1利用仅监督最终答案和推理结构格式的奖励函数。这使模型能够在不需要注释推理轨迹的情况下学习有效的推理策略。
实验结果表明,Nemotron-Research-Tool-N1在多个基准测试中始终优于现有基线,包括BFCL和API-Bank。此外,当在相同数据上训练时,使用R1风格强化学习的模型比其SFT训练的对应物实现了更优越的性能,肯定了基于强化的训练相对于SFT的好处。
这项研究为工具使用型语言模型的训练提供了一个新的范式,强调了强化学习在培养模型推理能力方面的潜力。未来的研究方向可能包括探索更复杂的奖励函数、集成多模态工具和扩展到更广泛的应用领域。
论文:https://arxiv.org/abs/2505.00024v1
GitHub:https://github.com/NVlabs/Tool-N1
本文转载自顿数AI,作者:葱葱
