这项由伊利诺伊大学厄巴纳-香槟分校的钱程、Emre Can Acikgoz、何琦、王宏儒、陈秀思、Dilek Hakkani-Tür、Gokhan Tur和季恒领导的研究于2025年4月发表在arXiv预印本平台,论文编号为arXiv:2504.13958v1。研究团队已将相关代码开源于GitHub仓库:https://github.com/qiancheng0/ToolRL
一、研究背景:为什么大语言模型需要更好的工具使用能力?
想象一下,你拥有一个聪明的助手,它知道很多知识,但在面对需要使用计算器、搜索引擎或查询最新信息时却显得笨手笨脚。这正是当前大语言模型(LLMs)面临的困境。虽然这些模型已经通过监督微调(SFT)学会了使用工具的基本能力,但它们常常在面对复杂或不熟悉的场景时表现不佳。
就像一个只会按照食谱烹饪的厨师,一旦面对食谱上没有的原料或突发状况,就不知所措。传统的监督微调方法让模型学会了"模仿"如何使用工具,但缺乏真正的灵活性和适应能力。例如,如图1所示,通过监督微调训练的模型可能会过度解释工具的用途,或者在应该拒绝不适当工具时失败,仅仅是模仿了训练数据中的线索(如"等等"这样的词),而没有真正理解工具使用的深层逻辑。
与此同时,强化学习(RL)技术,特别是应用于像R1这样的模型,已经在数学和逻辑推理领域展现出惊人的能力。这些模型能够进行自我反思、自我纠正,并进行长期规划。那么,我们能否将强化学习的优势应用到工具集成推理(Tool-Integrated Reasoning,简称TIR)中呢?
TIR不仅仅是对静态文本进行推理,还需要模型能够选择合适的工具、解释中间输出,并随时调整其策略。这是一个动态且交互式的过程,就像一个厨师不仅要按照食谱烹饪,还要根据食材的新鲜度、客人的口味偏好和烹饪过程中的各种变化来灵活调整。
这项研究正是聚焦于一个关键问题:如何设计有效的奖励机制,引导大语言模型在使用工具时做出最佳决策?这不同于传统的问答任务,工具使用涉及多层次的复杂性:每一轮交互可能需要调用多个工具,每个工具又有不同的参数需要精确指定。如何设计细粒度的奖励信号来指导模型穿越这种复杂性,仍然是一个未被充分探索的挑战。
二、研究创新:用奖励塑造工具使用行为
研究团队设计了一个原则性的奖励框架,用于训练大语言模型更好地使用工具。这个框架可以应用于各种RL算法,但他们主要使用群体相对策略优化(Group Relative Policy Optimization,简称GRPO)来展示其有效性。
首先,他们将TIR任务形式化:给定一套工具T和用户查询Q,模型需要生成一个推理轨迹,包括多个推理步骤,每个步骤都可能涉及工具调用和相应的观察。模型的目标是在每一步选择最佳的工具集,以最大化即时奖励和累积奖励。
想象一下,你在玩一个角色扮演游戏,每次行动都会得到游戏系统的即时反馈,告诉你这个行动有多好。同时,你也在考虑如何让整个游戏过程的总分最高。这就是模型面临的挑战。
研究团队设计的奖励函数包含两个关键组成部分:
格式奖励(Format Reward):评估模型输出是否遵循预期的结构,包括思考过程、工具调用和回应。这就像检查你是否按照游戏规则进行操作。
正确性奖励(Correctness Reward):评估工具调用的准确性,包括工具名称匹配、参数名称匹配和参数内容匹配。这相当于评估你在游戏中做出的具体决策是否正确。
最终的奖励值是这两部分的总和,范围在[-3, 4]之间。这种细粒度的设计能够捕捉工具调用的复杂结构,而不是简单地给出二元的对/错评价。
研究团队还使用GRPO算法对模型进行训练。这种算法会对来自同一查询的多个回应进行标准化处理,减少样本之间的方差,从而使训练更加稳定。就像在多名学生中评定成绩时,不仅看绝对分数,还要考虑班级整体水平,这样能更准确地评估每个学生的表现。
三、实验设置:如何评估工具学习的效果?
为了支持基于RL的工具学习,研究团队构建了一个多样化的数据集,涵盖各种工具使用场景:
ToolACE:一个通用工具使用数据集,模型需要学习何时调用工具与直接回应,提高多步交互中的决策能力。
Hammer(掩码版):Hammer数据集的一个子集,工具和参数名称被随机化,迫使模型依赖描述而非记忆标签,从而增强泛化能力并减少对特定工具的过拟合。
xLAM:一个组合性数据集,每轮可能需要一个或多个工具调用,鼓励模型思考工具依赖关系并积极规划多样的工具调用行动。
他们从ToolACE中抽取2000个示例,从Hammer和xLAM中各抽取1000个示例,创建了一个平衡的数据集,涵盖不同复杂程度和工具使用类型。多步轨迹被分解为单步实例,将之前的对话历史注入到用户提示中以保留上下文。这种设置鼓励策略探索,教导模型在每一步中适当地选择和应用工具。
所有RL实验都使用veRL框架进行,采用GRPO算法。对于每个训练步骤,他们采样512个批次,每个查询生成4个回应,总共训练15轮。为了鼓励更广泛的策略探索,他们移除了KL正则化并应用1.0的生成温度。他们使用Qwen-2.5-Instruct和Llama-3.2-Instruct系列模型作为初始化,然后在自定义奖励设计下使用GRPO目标进行进一步调优。
研究团队在多个基准上评估了他们的方法,包括:
Berkeley函数调用排行榜(BFCL):这是一个全面的基准测试,涵盖了各种挑战,包括单步推理、多步工具使用、实时执行、不相关工具拒绝、同时多工具选择和多工具应用。
API-Bank:一个三级评估框架,包含73种不同的复杂API工具,通过自然的多轮对话评估LLM选择和应用工具的能力。
Bamboogle:一个代表性的问答基准,包含各种问答任务,根据最终答案准确性而非工具使用正确性进行评估。
他们将他们的方法与多个基线进行比较,包括:原始指令模型、在RL数据上进行SFT的模型、在已经过SFT的模型上应用GRPO、以及使用PPO的模型(包括冷启动和SFT初始化版本)。
四、研究发现:细致的奖励设计带来的显著提升
实验结果表明,研究团队的GRPO方法,从头开始训练的Qwen2.5-Instruct系列模型,普遍优于其他基线。它在BFCL基准上取得了17%的绝对提升,在API-Bank上取得了15%的提升,比在相同数据量上训练的SFT高出约10%的绝对增益。
有趣的是,GRPO也能改善已经通过有限SFT初始化的模型,通常优于在10倍数据上进行全规模SFT的模型。然而,这种设置的表现仍不如冷启动GRPO。研究团队推测,SFT初始化可能导致记忆和过拟合,这减少了GRPO在泛化方面的有效性。如图5所示,SFT初始化的模型在训练奖励上取得更高分数,这归因于SFT和RL数据之间的分布对齐,但在两个基准测试中的泛化表现却较差。这进一步强调了更高的训练奖励并不一定转化为更好的泛化能力。
研究团队还评估了他们的奖励设计在PPO环境中的有效性。结果显示,虽然冷启动的PPO在某些情况下可以优于SFT,但它在不同的模型设置中往往不那么稳定。相比之下,GRPO即使从冷启动开始也能持续获得更高的奖励,这表明他们的奖励设计对PPO部分有效,但在GRPO框架中表现最佳。如图6所示,GRPO不仅获得了更高的正确性奖励,还能在训练过程中更快地获得格式奖励。有趣的是,PPO从SFT初始化中受益,通常产生比冷启动更好的结果,而GRPO在从头开始训练时表现更好。
研究团队还评估了他们训练的模型在两个具有挑战性的环境中的泛化能力:不熟悉的场景和新颖的任务目标。具体来说,他们测试了模型在未见过的编程语言中使用工具的能力,以及检测不相关工具的能力,这两者都没有在RL训练或数据集中明确包含。如图7所示,当从头开始使用GRPO基于奖励设计训练时,Qwen2.5-3B-Instruct模型始终取得最高性能。
此外,研究团队还评估了他们的模型在自由形式工具使用的问答环境中的有效性。不同于结构化的工具选择和应用任务,问答环境:(1)对工具调用参数没有约束,(2)仅评估最终答案,使其成为"目标导向"而非"过程导向"的任务。这自然引入了多步交互场景。
具体来说,他们使用Bamboogle,一个多跳问答数据集,来评估这种能力。模型配备了一个网络搜索工具,他们报告了所有基线和他们的方法的答案准确性和工具调用次数。结果表明,他们的奖励设计在这种环境中取得了最高性能,尽管这种环境在训练期间没有被明确考虑。值得注意的是,他们的冷启动GRPO模型在准确性上超过了其他模型,而不依赖于过多的工具调用次数。这表明模型可以在需要时灵活地调用工具,有效地利用反馈,明智且高效地导航到正确答案。
五、深入分析:什么样的奖励设计最有效?
为了识别最佳的奖励策略,研究团队系统地探索了广泛的奖励配置,涵盖四个关键维度:
奖励类型:奖励什么方面
奖励规模:奖励多少
奖励粒度:奖励信号的详细程度
奖励动态:奖励如何随时间演变
长度奖励的效果
研究团队首先检验了基于长度的奖励的作用。以往研究表明,类似R1的模型能促进更深入的推理,这常反映在更长的思考轨迹中。为了鼓励这种行为,他们引入了一个与思考字段长度成比例的奖励项:
Rlength = min(Lthink/Ltarget, 1)
其中Lthink表示模型输出中思考部分的长度,Ltarget表示目标输出长度,他们实证设置为512。研究发现,原始模型很少生成长度超过这一目标一半的回应,使512成为鼓励更长输出的合理有效目标。这个基于长度的组件被添加到总体奖励中,现在包括格式、正确性和推理长度。
如图8所示,随着训练的进行,回应长度和长度奖励普遍增加,特别是对Qwen模型系列。这表明长度奖励确实有效地鼓励了更长的推理。然而,表5中的下游结果显示,添加长度奖励并不一致地提高任务性能,在较小规模的模型中甚至可能导致显著的性能下降。这些观察表明,虽然延长推理看起来很理想,但对工具使用任务并不总是有益。事实上,过度的长度可能引入不必要的复杂性,导致过度思考和效率降低。
由于固定长度的奖励展示出最小影响并且迅速收敛,研究团队探索了一种随训练步骤调整的动态长度奖励。具体来说,他们定义:
Rdynamic = min(Lthink/(Ltarget · (1 + p)), 1)
其中S表示训练步骤,p = Scurrent/Stotal ∈ [0, 1]表示归一化的训练进度。这个公式随着时间的推移逐渐增加目标思考长度,与模型成熟度保持一致。
如图9所示,这种方法在思考长度上产生了更稳定的增长,特别是对于Llama模型。然而,表5中的性能结果显示,即使是计划的奖励也未能提高性能。这进一步支持了他们的假设,即延长推理可能对这项任务没有好处,甚至可能产生负面影响。
奖励规模的效果
接下来,研究团队研究了奖励规模的影响,特别是正确性和格式奖励之间的相对权重。R1风格RL中的先前工作通常给予正确性奖励比格式奖励更高的权重,强调学习正确答案的重要性,而不是表面上遵循格式。这种策略有助于防止奖励黑客行为,即模型可能利用格式启发式而不学习任务语义。
为了测试这种设计选择的重要性,他们进行了一个消融实验,将最大正确性和格式奖励均等化,将前者的范围设置为[-1, 1],与格式奖励匹配。这种调整只影响正确性奖励的最终归一化步骤。
如表6所示,这种等比例变体(表示为"Equal max")在大多数模型上导致总体准确率略有下降,只有Qwen2.5-3B例外,它维持了与原始设置相当的性能。这些结果强调了给予正确性奖励更大权重的重要性:这样做有助于引导模型掌握核心推理和工具使用能力,这对于稳健的泛化是必要的。
基于正确性奖励扮演更关键角色的见解,研究团队进一步认为不同奖励组件可能从在训练的不同阶段被强调中受益。这导致他们探索根据训练进度动态调整奖励规模。具体来说,他们假设在早期训练中,模型应该优先学习正确的输出格式,这是一个更容易的目标,然后再逐渐转向更具挑战性的工具使用正确性目标。为了测试这一假设,他们设计了两种动态奖励规模策略:
两阶段(粗粒度)设置:
他们将训练分为两个阶段。在第一个s训练步骤中,他们将正确性奖励降低到原始比例的1/3,同时保持格式奖励在原始比例。步骤s之后,他们将正确性奖励恢复到原始比例,同时将格式奖励减少到范围[0, 0.5](原始比例的1/2)。
在实验中,他们根据经验将转换点设置为s = 30步,因为他们观察到格式奖励通常在前30步内显著增加。因此,之后的步骤转向优化正确性更为有益。
动态(细粒度)设置:
他们在整个训练过程中应用两个奖励尺度之间的连续插值。最初,格式和正确性奖励尺度被平等设置。随着时间的推移,格式奖励尺度线性衰减至其原始值,而正确性奖励尺度逐渐增加至其原始值,允许训练相应地从格式遵循转向任务正确性。
他们在图10中呈现了原始和两种动态缩放策略的奖励动态。如表6所示,两阶段(粗粒度)奖励设置出乎意料地导致性能下降,而动态(细粒度)缩放能改善模型的基准表现。这些发现表明,奖励尺度的突然变化可能对训练动态产生负面影响。相比之下,从更简单目标到更复杂目标的平滑渐变过渡似乎更好地支持模型的学习轨迹和在GRPO训练期间的泛化。
奖励粒度的效果
研究团队现在对奖励粒度的影响进行了详细分析,特别关注正确性奖励。工具调用本质上对奖励分配提出了挑战,因为它涉及的方面超出了单一明确的答案(例如,与数学推理任务相比)。他们原始的奖励设计将正确性分解为匹配工具名称、参数名称和参数值,提供了一个细粒度的、"过程导向"的信号,反映了工具使用中的部分正确性。
为了评估这种粒度的影响,他们评估了三种具有逐渐粗粒度聚合级别的替代奖励公式:
细粒度:
他们对工具名称和参数名称匹配应用严格的精确匹配约束。具体来说,他们定义:
rname = 1[NG = NP] ∈ {0, 1} rparam = ∑(Gj∈G) 1[keys(PG) = keys(PP)] ∈ [0, |G|]
中间粒度:
他们将参数名称和值奖励合并为一个强制整个参数字典精确匹配的单一术语。
rparam + rvalue = ∑(Gj∈G) 1[PG = PP] ∈ [0, |G|]
粗粒度:
在最粗粒度的级别,他们完全纠缠工具名称、参数名称和参数值,将整个工具集作为一个单元处理。只有在生成的工具集完全匹配真值时才给予奖励:
rname + rparam + rvalue = 1[G = P] ∈ {0, 1}
奖励计算的所有其他方面保持与第3.3节中描述的相同。从他们原始的设计开始,这是最细粒度的,他们逐渐纠缠奖励组件以派生出越来越粗粒度的替代方案。
训练步骤间的奖励动态,如图11所示,表明随着奖励粒度变粗,模型在RL训练期间更难达到更高的奖励值。这表明过于严格和纠缠的奖励可能导致稀疏的学习信号,可能阻碍有效的信用分配。
表7中的实证结果进一步支持这一见解:他们原始的、最细粒度的奖励策略在各个模型上表现良好。总体而言,更细粒度的奖励分解导致更好的训练结果和更高的最终任务性能,表明它在促进更稳定和有效的策略学习方面的优势。
六、研究启示:工具学习的关键原则
通过对各种奖励策略的深入分析,研究团队提炼出了几个核心见解:
更长的推理轨迹并非天生更好,长度奖励可能降低性能。虽然R1类模型通常从延长思考轨迹中受益,但对于工具使用任务,更长并不意味着更好。过度的长度可能导致过度思考和效率降低。这就像在学习开车时,听取过多的指导反而会让新手司机感到混乱和犹豫。
动态奖励规模有助于模型平稳地从简单过渡到复杂行为。在训练过程中逐渐改变奖励的相对权重,可以引导模型首先掌握基础格式,然后再专注于更复杂的工具使用正确性。这类似于教育中的支架策略,先教简单概念,再逐渐增加复杂性。
细粒度的奖励分解带来更稳定和有效的学习。将奖励分解为多个组件,例如工具名称、参数名称和参数值的单独匹配,提供了更丰富的学习信号,有助于模型理解"部分正确"的概念。就像为孩子学习使用复杂玩具时,不仅仅告诉他们"对"或"错",而是具体指导哪些步骤做对了,哪些需要改进。
这些见解不仅适用于工具使用,还可能对广泛的LLM训练任务有指导意义,特别是那些涉及多步骤、复杂结构和精确格式的任务。
七、研究结论:奖励设计是工具学习的核心
这项研究表明,精心设计的奖励机制对于增强大语言模型的工具使用能力至关重要。研究团队开发的基于GRPO的方法,使用他们定制的奖励设计,在多个基准测试中一致地优于基线模型和标准SFT方法。
实验结果显示,从头开始使用GRPO训练的模型比基础模型提高了17%,比SFT模型提高了15%。此外,训练后的模型展示了强大的泛化能力,能够应对未见过的场景和任务目标,并表现出主动性和元认知推理等涌现行为。
研究团队对各种奖励策略的系统探索提供了对什么使奖励对工具调用LLMs"有用"的见解。他们的分析表明,细粒度的奖励分解、动态奖励规模和对长度的谨慎处理是有效工具学习奖励设计的关键组成部分。
这项工作开创了RL在通用TIR中的应用,为TIR中的奖励设计提供了第一个实证路线图,为更有能力和自主的LLM代理铺平了道路。通过揭示"奖励是工具学习所需的全部",这项研究为未来的LLM-as-agents研究开辟了新的可能性。
对于研究人员和开发者来说,这项研究提供了宝贵的指导,帮助他们设计更有效的奖励机制来提升大语言模型的工具使用能力。这不仅对学术研究有意义,对于实际应用也具有深远的影响,可能会带来更智能、更适应性强的AI助手,它们能够更有效地与各种工具集成,解决现实世界中的复杂问题。
有兴趣进一步了解这项研究的读者可以通过GitHub仓库(https://github.com/qiancheng0/ToolRL)访问所有代码和数据,探索这一革命性方法的细节。
好文章,需要你的鼓励
想象一下,你有一个非常聪明的朋友,他知道很多知识,但每当需要使用计算器、搜索引擎或查询最新天气时,却变得像个笨手笨脚的孩子。这正是当前大语言模型(简称LLMs,如ChatGPT这类AI系统)面临的尴尬处境。
想象你正在和一个智能助手聊天。如果你直接要求它提供有害信息,它很可能会礼貌拒绝。但如果你通过一系列看似无害的对话,逐步引导它走向你的真实目标呢?这就是当前AI安全领域面临的一个严峻挑战——多轮对话中的安全漏洞。
想象你在使用一个非常聪明的AI助手完成一项复杂任务,比如解决一道数学难题。你可能注意到这个助手会花很长时间"思考",一步一步写下大量推理过程,最后才给出答案。虽然这种详细的思考过程确实帮助AI做出了更准确的判断,但同时也带来了一个明显的问题:它太"啰嗦"了,消耗了大量的计算资源和时间。
想象一下,你正在进行一次CT扫描。医生告诉你,为了减少辐射对你身体的伤害,他们会使用低剂量的X射线。这听起来很棒,对吗?然而,就像在昏暗光线下拍照会产生大量噪点一样,低剂量CT扫描也会产生大量的图像噪声,这些噪声就像薄雾一样遮挡了重要的医学细节,可能导致医生错过关键的诊断信息,比如微小的肿瘤或低对比度的病变。