智能体通过将切换LoRA适配器作为工具(SLAaaT)解锁新能力

arXiv cs.LG 论文

摘要

本文介绍了SLAaaT,这是一种使AI智能体在轨迹中动态切换专用LoRA适配器的方法,提高了能力的组合性,并在合成编码任务上超越了基线。

arXiv:2608.17034v1 Announce Type: new 摘要:后训练可以解锁新能力并提高在特定任务上的性能,但有时以其他领域的灾难性遗忘为代价。这在组合不同能力的长期智能体轨迹中造成了问题。我们通过赋予智能体一个工具来在中途切换专用LoRA适配器,从而拒绝这种权衡。为了测试其有效性,我们组合了两个逻辑上简单但需要专业化的合成编码任务。我们发现这使模型能够解决之前无法解决的问题,模型能够自主切换(并找到一种新策略,在一个任务上超越了我们的人类启发式基线),并且与仅使用一个专用适配器的智能体相比,这导致了高达18倍的能力开销减少。我们的方法在任务能力和令牌使用方面也显著优于生成子智能体。
查看原文
查看缓存全文

缓存时间: 2026/08/19 10:19

# 通过将切换LoRA适配器作为工具来解锁代理的新能力 (SLAaaT)
来源:https://arxiv.org/html/2608.17034
###### 摘要

后训练能够解锁新能力并提升在特定任务上的性能,但有时会导致在其他领域出现灾难性遗忘。这在组合不同能力的长代理轨迹中带来了问题。我们拒绝这种权衡,赋予代理一个工具,使其能够在轨迹中途切换专门的LoRA适配器。为了测试其有效性,我们组合了两个逻辑简单但需要专门化的合成编码任务。我们发现,这使得模型能够解决之前无法解决的问题,模型能够自主切换(并在一项任务上找到了一种超越我们人类启发式基线的策略),并且与仅使用一个专门适配器的代理相比,其能力税最多降低了18倍。我们的方法在任务能力和令牌使用方面也显著优于生成子代理。

## 1 引言

表1:在四种表示法绑定下的任务通过次数(每单元格50次中的通过数)。阴影深浅随通过率缩放。行分为单配置分支、在固定{fauxjson, fauxthon}库上进行路由的分支,以及前沿参考分支。条件json–python(控制)fauxjson–pythonjson–fauxthonkeystone(两者)总计/200base42022064fauxjson(固定)00000fauxthon(固定)19011030fused00000arrow(令牌级)4102043subagent38219059heuristic4518308101autoswitch(模型)4537304116sonnet5(参考)49816275对于给定的架构和参数预算,模型通常需要在专业化和通用性之间做出权衡(10 (https://arxiv.org/html/2608.17034#bib.bib1))。这在小语言模型中尤为明显,它们能快速吸收新能力(3 (https://arxiv.org/html/2608.17034#bib.bib2)),但也可能遗忘旧有能力(5 (https://arxiv.org/html/2608.17034#bib.bib3))。

微调使小型模型在特定任务上能与大型模型相媲美(7 (https://arxiv.org/html/2608.17034#bib.bib4))。然而,这些模型目前被用作功能有限的子代理专家(2 (https://arxiv.org/html/2608.17034#bib.bib5))。即使在代理环境中作为工具暴露,这些专家模型也只是被调用并切换一次(8 (https://arxiv.org/html/2608.17034#bib.bib6))。

在本文中,我们允许代理在同一个轨迹内重复热交换其自身的LoRA适配器。我们发现代理通过组合这些交换来解决新的合成任务,而无需牺牲整体容量。仅通过一个上下文示例,模型就能学会何时使用此工具,在大多数任务上接近我们人类启发式切换的性能,并在两项任务上超越它。模型超越了所有其他基线,包括保持单个LoRA适配器、使用在所有任务上微调的融合适配器、Arrow(6 (https://arxiv.org/html/2608.17034#bib.bib7)),以及将调用子代理作为工具;表1 (https://arxiv.org/html/2608.17034#S1.T1)总结了我们的结果。所有代码、提示和数据均在Huggingface上提供:https://huggingface.co/kennethge123/autolora。

## 2 方法

### 2\.1 任务设计

一个用于检验后训练技能是否可组合的任务应具有以下特性:

- • 所需技能在基础模型中缺失,且难以通过上下文示例引出(能力是通过后训练获得的)
- • 任务分解为多个阶段,每个阶段需要一项技能,且后续阶段的成功取决于前一阶段的成功
- • 子任务本身是简单的,具有模型已能解决的等效对应任务,因此性能差异并非源于难度
- • 任务成功是可验证的
- • 每个子任务的训练语料完全不相交

我们设计了一个包含两个步骤的合成数据处理流程:将数据从YAML翻译为JSON或一种名为Fauxjson的合成标记格式,然后使用Python或Fauxthon编写程序来处理此数据,并将结果输出为XML。Fauxjson和Fauxthon只是关键词/符号被循环置换的JSON和Python。例如,符号\[\{,\},:\]可能映射到\[\},:,\{\]\。这共享分词器,干扰模型的强大先验知识,并保持规范简单。

我们的测试套件总共包含5种不同的处理任务类型(无损转换、计数、聚合、排序和分组),每种任务类型有10个不同的任务,每个任务有10个YAML输入(1个提供给模型,9个保留用于评分)。如果翻译后的数据文件正确且程序在所有10个输入上产生正确结果,则得分为1,否则为0。

### 2\.2 适配器设计

我们的微调数据包括20k对合成的YAML到Fauxjson翻译对,以及20k个从MBPP(1 (https://arxiv.org/html/2608.17034#bib.bib8))(950行)、Magicoder(9 (https://arxiv.org/html/2608.17034#bib.bib9))(9,050行)和合成程序(10k行)转译而来的Fauxthon编码练习。所有合成数据要么是通过程序转译生成的,要么是由Claude Sonnet 5生成的;Fauxjson和Fauxthon由我们的转译器生成并经过验证可往返转换。训练详情见附录A (https://arxiv.org/html/2608.17034#A1)。

Fauxjson、Fauxthon和融合适配器各训练1个epoch。融合适配器使用了两个数据集的打乱组合。

### 2\.3 模型与采样

我们使用了Qwen3\.6\-35B\-A3B,一个足够大以理解工具调用并能解决非平凡编码问题但仍受容量限制的模型。对于采样,我们给予模型20轮对话和4096个令牌的预算,我们通过人工验证确认这些限制仅在模型陷入生成重复内容时才会达到。我们关闭了思考模式。

### 2\.4 适配器调用与工具

我们使用了标准的子代理调用工具,由宿主模型编写提示。对于我们的启发式切换决策,我们监控file\_writetools,并切换到与文件扩展名对应的适配器。Autoswitch是一个新工具,模型选择基础(无适配器)、fauxthon或fauxjson,然后测试平台相应地切换模型。

## 3 结果

我们回答三个问题:分别训练的技能是否可组合,模型能否自行路由它们,以及每种配置的成本是多少?

表1 (https://arxiv.org/html/2608.17034#S1.T1)总结了每种条件的端到端通过率,图1 (https://arxiv.org/html/2608.17034#S3.F1)显示了每种条件保留了多少基础能力。统计说明见附录C (https://arxiv.org/html/2608.17034#A3)。

图 1:通用能力的保留。每种条件在IFEval、HumanEval\+、MATH\-500和BFCL\-lite的随机冻结子集上的通过率;黑条表示基础模型(等同于人类启发式)。融合和fauxthon适配器支付了巨大的能力税,在HumanEval\+上最为严重(3\.7%和7\.3%),而路由条件(autoswitch、subagent、arrow)则接近基础水平。这就是第3节 (https://arxiv.org/html/2608.17034#S3)中提到的“能力税”。表2:在代理工具调用混淆之外,仅在fauxjson和fauxthon任务上测试我们的四种单配置条件。阴影深浅随分数缩放(越高越好)。子任务basefauxjsonfauxthonfusedfauxjson翻译/50023044fauxthon程序测试/50000290360#### 组合性

我们首先验证技能是否存在于各自的适配器中。我们在仅Fauxjson翻译任务和Fauxthon编程任务上重新运行了四种单适配器配置。为了移除代理测试平台的混淆,我们让模型只输出一个代码块。我们发现每个适配器在各自任务上表现良好,并且融合适配器实际上在每任务知识方面表现最佳(表2 (https://arxiv.org/html/2608.17034#S3.T2))。然而,融合在所有代理任务上失败(表1 (https://arxiv.org/html/2608.17034#S1.T1))。分析轨迹后,我们发现强有力的证据表明这是由于灾难性遗忘:融合条件忘记了Python和JSON,同时编写了语法正确但语义错误的Fauxthon代码。

理想情况下,组合性允许端到端成功的概率与每个子任务的成功直接相关。对于人类启发式条件,我们发现这在很大程度上是成立的:关键得分8/508/50接近预测值18/50×30/50≈11/50\\nicefrac\{\{18\}\}\{\{50\}\}\\times\\nicefrac\{\{30\}\}\{\{50\}\}\\approx 11/50,因此切换机制本身在很大程度上保持了跨轨迹的连续性。

#### 路由

Autoswitch在Fauxjson\-Python任务上击败了我们的启发式方法,因为它发明了一种创新的新策略:使用Fauxjson适配器来编写Python代码。这表明模型已经可以自主发现最优的路由选择。同时,Autoswitch在Fauxjson–Fauxthon(关键)条件上的实际得分4/504/50,远低于其在单独的Fauxjson–Python和JSON–Fauxthon任务上的表现所预测的37/50×30/50≈22/50\\nicefrac\{\{37\}\}\{\{50\}\}\\times\\nicefrac\{\{30\}\}\{\{50\}\}\\approx 22/50,表明仍有巨大的能力提升空间。

表 3:每次任务尝试的输出令牌数。阴影深浅随令牌数缩放(令牌数越多越差)。条件通过:均值通过:中位数失败:均值失败:中位数autoswitch(116次通过)1,7938342,138797subagent(59次通过)5,2421,07139,40736,731#### 成本

融合和fauxthon适配器都产生了显著的能力税,而切换机制在很大程度上避免了这一点(图1 (https://arxiv.org/html/2608.17034#S3.F1))。与子代理条件相比,Autoswitch产生了大致相同的能力税,两者都源于不必要的路由。Autoswitch对于中位成功使用的令牌也比子代理少1\.3倍,对于中位失败使用的令牌则少46\.1倍(表3 (https://arxiv.org/html/2608.17034#S3.T3))。

## 4 局限性与未来方向

#### 局限性

我们的任务是合成设计的:Fauxjson和Fauxthon隔离了组合性问题。所有结果使用单个基础模型(Qwen3\.6\-35B\-A3B)、单个训练种子,并且每个任务只有一个样本,因此我们报告了二项式置信区间(附录C (https://arxiv.org/html/2608.17034#A3))。我们的路由库仅包含两个适配器,扩展到多个适配器可能会引发不同的行为。最后,人类启发式是一个固定的文件扩展名规则,而不是最优策略,因此“击败启发式”应被理解为击败一个强大的手写规则,而非上限。

#### 未来方向

本文确立了模型可以有效地切换自身的LoRA适配器,其策略有时能击败人类切换决策。未来的工作可以使用强化学习来训练更强的路由策略。为不同LoRA适配器重用KV缓存的功能已经存在,解决了最大的技术挑战(4 (https://arxiv.org/html/2608.17034#bib.bib10))。未来的工作可以将此方法扩展到生产环境。

## 致谢与资金披露

感谢Thinking Machines通过Tinker研究资助支持这项研究。

## 参考文献

- Austin等人(2021)J\. Austin, A\. Odena, M\. Nye, M\. Bosma, H\. Michalewski, D\. Dohan, E\. Jiang, C\. Cai, M\. Terry, Q\. Le, and C\. SuttonProgram synthesis with large language models\.arXiv preprint arXiv:2108\.07732\.外部链接:Link (https://arxiv.org/abs/2108.07732)引用于:附录 D (https://arxiv.org/html/2608.17034#A4.p1.1),§2\.2 (https://arxiv.org/html/2608.17034#S2.SS2.p1.1)\.
- Belcak等人(2025)P\. Belcak, G\. Heinrich, S\. Diao, Y\. Fu, X\. Dong, S\. Muralidharan, Y\. C\. Lin, and P\. MolchanovSmall language models are the future of agentic AI\.arXiv preprint arXiv:2506\.02153\.外部链接:Link (https://arxiv.org/abs/2506.02153)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p2.1)\.
- Fu等人(2023)Y\. Fu, H\. Peng, L\. Ou, A\. Sabharwal, and T\. KhotSpecializing smaller language models towards multi\-step reasoning\.在第40届国际机器学习会议论文集中,外部链接:Link (https://arxiv.org/abs/2301.12726)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p1.1)\.
- Li等人(2025)A\. Li, K\. Greenewald, T\. Parnell, and N\. AzizanEfficient multi\-adapter LLM serving via cross\-model KV\-cache reuse with activated LoRA\.arXiv preprint arXiv:2512\.17910\.外部链接:Link (https://arxiv.org/abs/2512.17910)引用于:§4 (https://arxiv.org/html/2608.17034#S4.SS0.SSS0.Px2.p1.1)\.
- Marek等人(2026)M\. Marek, D\. Cho, S\. Qiu, R\. Chunara, P\. Izmailov, and A\. G\. WilsonForgetting in language models: capacity, optimization, and self\-generated replay\.arXiv preprint arXiv:2605\.26097\.外部链接:Link (https://arxiv.org/abs/2605.26097)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p1.1)\.
- Ostapenko等人(2024)O\. Ostapenko, Z\. Su, E\. M\. Ponti, L\. Charlin, N\. Le Roux, M\. Pereira, L\. Caccia, and A\. SordoniTowards modular LLMs by building and reusing a library of LoRAs\.在第41届国际机器学习会议论文集中,外部链接:Link (https://arxiv.org/abs/2405.11157)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p3.1)\.
- Patil等人(2023)S\. G\. Patil, T\. Zhang, X\. Wang, and J\. E\. GonzalezGorilla: large language model connected with massive APIs\.arXiv preprint arXiv:2305\.15334\.外部链接:Link (https://arxiv.org/abs/2305.15334)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p2.1)\.
- Shekar and Krishnan (2025)P\. C\. Shekar and A\. KrishnanAdaptive minds: empowering agents with LoRA\-as\-tools\.arXiv preprint arXiv:2510\.15416\.外部链接:Link (https://arxiv.org/abs/2510.15416)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p2.1)\.
- Wei等人(2024)Y\. Wei, Z\. Wang, J\. Liu, Y\. Ding, and L\. ZhangMagicoder: empowering code generation with OSS\-Instruct\.在第41届国际机器学习会议论文集中,外部链接:Link (https://arxiv.org/abs/2312.02120)引用于:附录 D (https://arxiv.org/html/2608.17034#A4.p1.1),§2\.2 (https://arxiv.org/html/2608.17034#S2.SS2.p1.1)\.
- Yue等人(2025)Y\. Yue, Z\. Chen, R\. Lu, A\. Zhao, Z\. Wang, Y\. Yue, S\. Song, and G\. HuangDoes reinforcement learning really incentivize reasoning capacity in LLMs beyond the base model?\.在神经信息处理系统进展,第38卷。外部链接:Link (https://openreview.net/forum?id=4OsgYD7em5)引用于:§1 (https://arxiv.org/html/2608.17034#S1.p1.1)\.

## 附录A 训练与评估详情

所有适配器均通过Tinker API在Qwen3\.6\-35B\-A3B上训练一个epoch。

表 4:LoRA训练超参数。基础模型Qwen3\.6\-35B\-A3BLoRA秩16学习率1×10−41\\times 10^\{\-4\},3%线性预热,余弦衰减至0优化器Adam批大小128个对话轮次周期1Fauxjson训练行数20,000Fauxthon训练行数20,000评估使用20轮对话和每次尝试4,096个令牌的预算,并禁用思考(第2\.3节 (https://arxiv.org/html/2608.17034#S2.SS3))。测试任务从所有训练数据中保留;每种条件的50个任务中,每个任务使用1个显示给模型的YAML输入和9个保留用于评分的输入。

## 附录B 计算

所有训练和评估均在Tinker API(Thinking Machines)上运行,Arrow基线除外,它在本地单个NVIDIA DGX Spark上运行。生成主结果表(表1 (https://arxiv.org/html/2608.17034#S1.T1))大约需要两天的端到端墙钟时间。

## 附录C 统计说明

表1 (https://arxiv.org/html/2608.17034#S1.T1)中的每个单元格都是单次运行(一个种子=5,每个任务一个样本)中n=50n=50个独立任务的通过计数。将每个单元格视为二项...

相似文章

Code2LoRA:超网络生成的适配器,用于软件演进中的代码语言模型

Hugging Face Daily Papers

Code2LoRA 引入了一个超网络,该超网络能够从代码仓库中一次性前向传播生成 LoRA 适配器,使得冻结的代码大语言模型无需额外 token 即可适应仓库上下文,并高效支持不断演进的代码库。此外,它还提供了 RepoPeftBench,一个用于仓库条件代码建模的基准测试。

超越LoRA:稀疏诱导的适配是否更好?

arXiv cs.LG

本文提出了对LoRA的稀疏诱导适配方法,包括廉价LoRA(cLA)和链式循环变体(c³LA),并提供了理论泛化界以及实证评估,结果显示在保持竞争性性能的同时,训练时间最多减少10%,峰值GPU内存节省最多15%。