循环语言模型提升组合式工具调用能力
摘要
本文探讨了循环语言模型如何利用迭代潜在计算提升代理系统中的组合式工具调用,展示了对多步骤API交互的益处。
arXiv:2608.18171v1 公布类型:新
摘要:循环语言模型在推理基准测试上显示出有希望的结果,但其在代理工具使用方面的潜力尚未得到充分探索。我们在组合式工具调用环境中研究这个问题,其中模型必须协调多个API调用,维护中间状态,并在工具交互中保留依赖关系。我们在API-Bank、BFCL和NESTful上评估了原生和改装的循环语言模型,比较了在匹配的监督微调方案下训练的循环和非循环模型,以及在推理时变化的循环深度。在受控实验中,循环计算通常对组合式和依赖感知的工具使用有益,而对孤立API调用提供较小且更模型依赖的增益。多步骤工具使用的准确性通常随着循环深度的增加而提高;然而,自适应推理通过仅在需要时分配额外计算,实现了更优的计算性能权衡。我们的结果表明,循环语言模型是代理系统的一个有希望的架构,这些系统需要可靠的规划、协调和组合式工具使用工作流的执行。
查看缓存全文
缓存时间: 2026/08/20 10:02
# 循环语言模型提升组合式工具调用能力
来源:https://arxiv.org/html/2608.18171
Andrei Cristian PopescuHaitz Sáez de Ocáriz BordePietro Liòacp96@cam\.ac\.ukhs788@cam\.ac\.ukpl219@cam\.ac\.uk 英国剑桥大学计算机科学与技术系
###### 摘要
循环语言模型在推理基准测试中展现出良好性能,但其在智能体工具使用方面的潜力尚待探索。本文在组合式工具调用场景下研究这一问题——模型需要协调多次API调用、维持中间状态并维护工具交互间的依赖关系。我们在API-Bank、BFCL和NESTful基准上评估了原生与改造的循环语言模型,对比了在相同监督微调配置下训练的循环与非循环模型,并在推理时变化循环深度。受控实验表明:循环计算总体上有利于组合式与依赖感知的工具使用,而对孤立API调用的提升较小且因模型而异。多步骤工具使用的准确率通常随循环深度增加而提升;然而自适应推理通过仅在需要时分配额外计算,实现了更优的计算-性能权衡。研究结果表明,循环语言模型是构建需要可靠规划、协调及执行组合式工具使用工作流的智能体系统的有前景架构。
图1:循环计算主要提升组合式工具调用能力。(a)在相同监督微调条件下,Ouro模型在多调用BFCL类别上展现最大相对优势,而在以单次调用为主的API-Bank基准上差异相对不明显。(b)在Llama-3.2-1B和OLMo-2-1B中植入循环结构后,相较于非循环版本同样提升了多个组合式类别的性能。类别标签采用颜色编码:组合式任务为橙色,非组合式任务为黑色。
## 1引言
预训练语言模型日益作为智能体系统的决策组件,通过选择并调用外部工具来完成用户指定任务(12 (https://arxiv.org/html/2608.18171#bib.bib20);28 (https://arxiv.org/html/2608.18171#bib.bib18);24 (https://arxiv.org/html/2608.18171#bib.bib19);25 (https://arxiv.org/html/2608.18171#bib.bib21))。工具使用为研究预训练表征如何转化为行动提供了受控场景:简单请求可能仅需单次函数调用,而复杂任务则要求模型组合多次调用、维持中间状态并协调顺序或并行依赖关系。可靠的工具使用不仅需要生成看似合理的单独调用,更需在多个决策中构建并维护结构化的动作序列。
循环语言模型为强化此类结构化决策提供了天然机制。它们通过在每个令牌生成前反复优化隐状态表征,在不增加参数量的前提下增加推理时计算。尽管这种迭代计算在推理基准上已展现潜力,其对智能体行为的益处仍有待深入探索。本文主要贡献包括:
1. 在需要结构化、多步骤决策的受控场景中,评估迭代隐计算是否能提升组合式工具调用能力
2. 在API-Bank、BFCL和NESTful上评估原生与改造的循环模型,采用匹配的微调对比和基于Llama/OLMo骨干的改造方案
3. 最大收益出现在多调用与依赖感知任务中,表明当动作选择需在多次决策间保持结构时,循环计算尤为有效
4. 循环深度增加总体提升组合式工具调用,而自适应推理通过在无需额外优化时分配更少迭代次数,实现了更优的计算-性能权衡
## 2相关工作
本文回顾两条与研究最相关的工作脉络:用于隐计算的循环深度架构,以及使用语言模型进行规划与组合的方法。
#### 循环深度与隐计算
循环Transformer通过重复应用共享Transformer块增加模型有效深度,将推理计算与参数量解耦。早期循环与参数共享架构包括通用Transformer(5 (https://arxiv.org/html/2608.18171#bib.bib2))、深度均衡模型(2 (https://arxiv.org/html/2608.18171#bib.bib6))和ALBERT(15 (https://arxiv.org/html/2608.18171#bib.bib5))。近期研究将循环Transformer作为隐推理方法,通过循环迭代优化隐状态表征而非扩展显式推理令牌上下文(23 (https://arxiv.org/html/2608.18171#bib.bib8);6 (https://arxiv.org/html/2608.18171#bib.bib4);30 (https://arxiv.org/html/2608.18171#bib.bib3);11 (https://arxiv.org/html/2608.18171#bib.bib9);8 (https://arxiv.org/html/2608.18171#bib.bib10);29 (https://arxiv.org/html/2608.18171#bib.bib11);9 (https://arxiv.org/html/2608.18171#bib.bib12))。循环模型在算法推理、长度泛化、自适应计算和隐式测试时缩放等方面展现出优异性能(7 (https://arxiv.org/html/2608.18171#bib.bib7);1 (https://arxiv.org/html/2608.18171#bib.bib13);27 (https://arxiv.org/html/2608.18171#bib.bib14);14 (https://arxiv.org/html/2608.18171#bib.bib15);21 (https://arxiv.org/html/2608.18171#bib.bib16))。本文检验这些能力能否迁移至工具使用场景。
#### 工具使用模型中的规划与组合
工具增强语言模型通过调用外部函数实现检索、计算和软件环境交互,扩展了自回归生成能力。早期研究证明语言模型可以交替进行推理与工具执行(28 (https://arxiv.org/html/2608.18171#bib.bib18))、从自监督标注中学习API使用(24 (https://arxiv.org/html/2608.18171#bib.bib19)),或将请求路由至专用神经与符号模块(12 (https://arxiv.org/html/2608.18171#bib.bib20))。近期方法通过显式规划改进组合式工具使用,包括将任务分解为可执行工作流(25 (https://arxiv.org/html/2608.18171#bib.bib21);17 (https://arxiv.org/html/2608.18171#bib.bib22))、从大型工具集中检索相关API(22 (https://arxiv.org/html/2608.18171#bib.bib23);20 (https://arxiv.org/html/2608.18171#bib.bib24)),以及构建依赖感知执行图来调度顺序与并行函数调用(13 (https://arxiv.org/html/2608.18171#bib.bib25))。与这些主要通过外部规划、检索或执行策略增强工具使用的方法不同,本工作研究循环Transformer中额外的隐式迭代计算是否有利于组合式工具调用。API-Bank(16 (https://arxiv.org/html/2608.18171#bib.bib26))、BFCL(19 (https://arxiv.org/html/2608.18171#bib.bib27))和NESTful(4 (https://arxiv.org/html/2608.18171#bib.bib28))等基准用于评估从单函数调用到并行、顺序和嵌套API组合的复杂工具使用能力。
## 3背景
首先介绍循环Transformer使用的循环计算,然后将组合式工具调用形式化为基于工具调用集合及其依赖关系的结构化预测。
#### 循环Transformer
与堆叠不同Transformer层的经典架构不同,循环Transformer在多个循环迭代中重复应用共享的Transformer块。每次迭代优化隐状态表征,增加推理时计算同时保持参数固定。设$h^\{\(0\)\}$为输入序列的初始隐状态。在循环迭代$t$时,共享Transformer块更新隐状态:$h^\{\(t\)\}=F_\{\\theta\}\\!\\left\(h^\{\(t\-1\)\}\\right\)$,其中$F_\{\\theta\}$表示共享循环块。共享输出头在每次循环迭代后生成预测:$\pi_\{\\theta\}^\{\(t\)\}(y\mid x)=g_\{\\theta\}\\!\\left\(h^\{\(t\)\}\right\)$,产生一系列优化预测$\{\\pi_\{\\theta\}^\{\(1\)\},\\ldots,\\pi_\{\\theta\}^\{\(T\)\}\}$,其中$T$为最大循环迭代次数。
循环Transformer天然支持自适应计算。它们可以动态分配计算而非为每个令牌执行固定循环迭代次数,通过学习的停止策略或事后标准选择退出迭代(3 (https://arxiv.org/html/2608.18171#bib.bib1);30 (https://arxiv.org/html/2608.18171#bib.bib3);21 (https://arxiv.org/html/2608.18171#bib.bib16))。推理时,较简单的预测可在更少循环迭代后终止,改善精度-成本权衡。
#### 组合式工具使用形式化
设$\mathcal\{T\}=\{\\tau_\{1\},\\ldots,\\tau_\{N\}\}$为语言模型可用工具集,每个工具$\tau_\{i\}$由函数名、自然语言描述和参数模式指定。给定用户请求$x$,语言模型预测结构化工具调用分布$p_\{\\theta\}(c_\{k\}\mid x)$,其中$c_\{k\}=(f_\{k\},a_\{k\})$,$f_\{k\}\\in\\mathcal\{T\}$为选定函数,$a_\{k\}$为实例化参数。执行$c_\{k\}$返回观察值$o_\{k\}$,可纳入后续模型预测。
工具使用解可表示为有向无环图$G_\{x\}=(C_\{x\},E_\{x\})$,其中$C_\{x\}=\{c_\{1\},\\ldots,c_\{K\}\}$为工具调用集合,$(c_\{i\},c_\{j\})\\in E_\{x\}$表示调用$c_\{j\}$依赖于调用$c_\{i\}$的结果。单次调用任务满足$|C_\{x\}|=1$。独立调用无依赖可并行执行,而顺序调用受顺序约束。在依赖或嵌套序列中,早期调用返回的观察值用于实例化后期调用的参数:$a_\{j\}=\\phi_\{j\}(x,o_\{i_\{1\}\},\\ldots,o_\{i_\{m\}\})$,其中前驱调用为$\{c_\{i_\{1\}\},\\ldots,c_\{i_\{m\}\}\}$。更复杂的工作流可组合并行分支与顺序依赖。我们将多调用解的构建称为组合式工具调用。在此表示下,独立调用满足$E_\{x\}=\\varnothing$,依赖工作流满足$E_\{x\}\\neq\\varnothing$。因此$C_\{x\}$指定所需工具调用,$E_\{x\}$指定其间的输出-输入依赖关系。
现有基准强调工具调用过程的不同组件:API-Bank主要评估单次工具调用$c_\{k\}=(f_\{k\},a_\{k\})$,关注正确工具选择、参数定位和API调用。BFCL评估单次调用函数选择与独立多次调用生成,其Simple和Multiple类别要求$|C_\{x\}|=1$,而Parallel和Parallel-Multiple类别要求$|C_\{x\}|>1$且$E_\{x\}=\\varnothing$。NESTful强调依赖结构$E_\{x\}$,早期调用返回的输出作为后期调用的参数,形成分层执行链。这些基准评估节点级调用预测、结构化多次调用组合及依赖感知执行。
## 4实验设置
本节描述实验所用模型、训练流程、评估基准和推理协议。我们在相同监督微调配置下比较循环与非循环模型,并评估固定深度与自适应循环推理,以研究工具使用中进一步计算的作用。
### 4.1模型系列与变体
我们在两种互补设置中评估循环语言模型:首先比较循环Ouro-1.4B和Ouro-2.6B模型与Qwen3和Llama系列中相似参数规模的标准Transformer基线。使用相同数据集和优化设置微调相应基础检查点,并评估发布的指令微调Qwen和Llama检查点(最高8B参数)作为更强公开参考系统。更大的指令微调检查点也提供单次推理成本更接近多次循环迭代的参考点。
其次评估基于OLMo-2-1B和Llama-3.2-1B的改造循环模型。对每个模型,在相同数据和优化流程下监督微调后,比较循环检查点与其对应非循环父模型。这些对比能更直接地隔离引入循环计算的效果,同时保持底层预训练家族特性。Ouro和改造模型的架构细节见附录A(https://arxiv.org/html/2608.18171#A1)。
#### 监督微调
所有受控模型在Hermes函数调用数据集上进行监督微调。训练样本使用ChatML格式与Hermes JSON工具调用协议。数据集详细信息见附录B(https://arxiv.org/html/2608.18171#A2)。所有实验使用4096令牌最大序列长度、90/10训练-验证划分、2个训练周期、学习率$2\\times 10^\{\-5\}$的AdamW优化器、3%预热的余弦学习率衰减、梯度累积步数2、每设备批大小2、LoRA秩32和bf16精度。实验在NVIDIA A100 80GB GPU上运行。
Ouro模型使用原始训练目标微调:$\\mathcal\{L\}(\\theta,\\phi)=\\sum_\{t=1\}^\{T\}p_\{\\phi\}(t\\mid x)\\,\\mathcal\{L\}_\{\\theta\}^\{\(t\)\}(x)+\\beta\\,\\mathrm\{KL\}\\!\\left(p_\{\\phi\}(\\cdot\\mid x)\\,\\|\\,\\pi(\\cdot)\\right)$,其中$\\beta=0.1$,$\\mathcal\{L\}_\{\\theta\}^\{\(t\)\}$为循环迭代$t$时的下一令牌交叉熵,$p_\{\\phi\}(t\\mid x)$为学习的循环迭代分布,$\\pi$为循环深度的均匀先验。
改造的循环模型不学习退出分布,而是使用原始论文中提出的泊松-对数正态深度分布(18 (https://arxiv.org/html/2608.18171#bib.bib17))为每个训练批次独立采样循环次数$r$:$\\mathcal\{L\}(\\theta)=\\mathbb\{E\}_\{x\}\\mathbb\{E\}_\{r\\sim\\mathcal\{D\}_\{\\mathrm\{PLN\}\}}\\Bigg\[\\sum_\{\\ell=1\}^\{M\-1}\\Bigg(\\-\\log p_\{\\theta\}^\{\(r\)}\\!\\left(x_\{\\ell\+1\}\\mid x_\{1:\\ell}\\right)+\\beta\\,\\mathrm\{KL\}\\!\\left(p_\{\\theta_\{0\}\}(\\cdot\\mid x_\{1:\\ell})\\|p_\{\\theta\}^\{\(r\)}(\\cdot\\mid x_\{1:\\ell})\\right)\\Bigg)\\Bigg]$。相似文章
Looped语言模型改进组合工具调用
Looped语言模型通过利用循环计算来增强组合工具调用,在多步任务中提高准确性,同时自适应推理优化了性能和计算成本之间的平衡。研究表明,这些模型对于可靠的智能体系统很有前景。
循环语言模型中循环计算的分配
本文介绍了MixerLoop,一种通过选择性循环语言模型中的混合器组件同时仅应用一次前馈网络来分配循环计算的方法,以在降低计算成本的同时提升性能。
@tli104: 新论文:"Self-Compacting Language Model Agents" 语言模型代理会构建冗长的推理和工具调用轨迹。随着轨…
新论文提出自压缩语言模型代理,该类代理可自行决定何时清理其推理和工具调用轨迹,以避免积累错误和过时信息。
@systematicls: https://x.com/systematicls/status/2072975573287379194
本文讨论了循环在智能体工程中的关键作用,解释了通过向问题投入更多令牌如何提高解决方案质量,同时指出了简单循环实现中的陷阱,如错误累积和缺乏有意义的迭代。
具有自适应退出状态选择的循环状态空间语言模型
本文探索了使用Mamba和混合Mamba-Transformer骨干网络的循环(递归)状态空间语言模型,表明其在推理任务上优于非循环基线,并在等参数和等FLOPs预训练下保持竞争力,同时自适应退出状态选择改善了中间深度性能。