CITI: Enhancing Tool Utilizing Ability in Large Language Models without Sacrificing General Performance

📄 arXiv: 2409.13202v2 📥 PDF

作者: Yupu Hao, Pengfei Cao, Zhuoran Jin, Huanxuan Liao, Yubo Chen, Kang Liu, Jun Zhao

分类: cs.CL

发布日期: 2024-09-20 (更新: 2024-09-23)


💡 一句话要点

CITI:提升大语言模型工具利用能力,同时避免牺牲通用性能

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 工具学习 参数高效微调 组件重要性 迁移学习

📋 核心要点

  1. 现有方法过度关注工具利用的准确性和泛化性,忽略了对大语言模型通用性能的潜在损害。
  2. CITI方法通过分析模型组件的重要性,差异化地进行训练,缓解了工具学习与通用能力之间的冲突。
  3. 实验结果表明,CITI在提升工具利用能力的同时,有效保持了模型的通用性能。

📝 摘要(中文)

工具学习使大语言模型(LLMs)能够通过调用工具与外部环境交互,从而提高LLMs的准确性和能力范围。然而,以往的研究主要集中在提高模型工具利用的准确性和泛化到新的、未见过的工具的能力,过度地迫使LLMs调整特定的工具调用模式,而没有考虑到对模型通用性能的损害。这偏离了集成工具以增强模型的实际应用和初衷。为了解决这个问题,我们通过检查隐藏表示的变化和基于梯度的模型组件重要性得分来剖析能力权衡。基于分析结果,我们提出了一种基于组件重要性的工具利用能力注入方法(CITI)。根据不同组件的基于梯度的重要性得分,它通过对不同组件应用不同的训练策略来缓解微调过程引起的能力冲突。CITI对重要组件应用混合LoRA(MOLoRA)。同时,它微调LLM骨干网络中被认为不太重要的少量组件的参数,同时保持其他参数冻结。CITI可以有效地增强模型的工具利用能力,而不会过度损害其通用性能。实验结果表明,我们的方法在一系列评估指标上取得了出色的性能。

🔬 方法详解

问题定义:现有的大语言模型工具学习方法,为了提高工具利用的准确性和泛化能力,往往会过度调整模型的参数,导致模型在通用任务上的性能下降。这种trade-off限制了工具学习的实际应用价值,因为一个好的模型应该既能熟练使用工具,又能保持其原有的通用能力。

核心思路:CITI的核心思路是并非模型的所有组件对于工具利用都同等重要。通过分析模型内部不同组件对于工具学习的贡献程度,可以有选择性地调整重要组件,同时保持其他组件的参数不变,从而在提升工具利用能力的同时,尽可能地减少对通用性能的影响。

技术框架:CITI方法主要包含以下几个步骤:1) 组件重要性评估:使用基于梯度的重要性得分来评估模型中不同组件(例如,Transformer层)对于工具利用的贡献程度。2) 差异化训练策略:根据组件的重要性得分,对不同的组件应用不同的训练策略。对于重要的组件,使用 Mixture-Of-LoRA (MOLoRA) 进行微调,以更精细地调整其参数。对于不太重要的组件,则直接微调其参数,同时保持其他参数冻结。

关键创新:CITI的关键创新在于其差异化的训练策略,它能够根据模型内部组件的重要性,有选择性地进行参数调整。这种方法避免了对整个模型进行全局调整,从而减少了对通用性能的损害。与传统的微调方法相比,CITI更加精细化,能够更好地平衡工具利用能力和通用性能之间的关系。

关键设计:CITI的关键设计包括:1) 使用基于梯度的重要性得分来评估组件的重要性。具体来说,计算工具利用任务的损失函数关于每个组件参数的梯度,并使用梯度的范数作为该组件的重要性得分。2) 使用 MOLoRA 对重要组件进行微调。MOLoRA 是一种参数高效的微调方法,它通过引入多个 LoRA 模块,并使用一个门控机制来控制每个 LoRA 模块的激活程度,从而实现更精细的参数调整。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,CITI方法在提升工具利用能力的同时,显著优于传统的微调方法,并且能够更好地保持模型的通用性能。具体来说,CITI在工具利用准确率上取得了与现有方法相当的性能,同时在通用任务上的性能下降幅度更小。这表明CITI能够有效地平衡工具利用能力和通用性能之间的关系。

🎯 应用场景

CITI方法可以应用于各种需要大语言模型与外部工具交互的场景,例如智能助手、自动化报告生成、代码生成等。通过提升模型工具利用能力的同时保持通用性能,可以显著提高这些应用的实用性和用户体验。未来,该方法可以进一步扩展到多模态工具学习,例如结合视觉和语言工具,实现更复杂的任务。

📄 摘要(原文)

Tool learning enables the Large Language Models (LLMs) to interact with the external environment by invoking tools, enriching the accuracy and capability scope of LLMs. However, previous works predominantly focus on improving model's tool-utilizing accuracy and the ability to generalize to new, unseen tools, excessively forcing LLMs to adjust specific tool-invoking pattern without considering the harm to model's general performance. This deviates from the actual applications and original intention of integrating tools to enhance model. To tackle this problem, we dissect the capability trade-offs by examining the hidden representation changes and the gradient-based importance score of model's components. Based on the analysis result, we propose a Component Importance-based Tool-utilizing ability Injection method (CITI). According to the gradient-based importance score of different components, it alleviates the capability conflicts caused by fine-tuning process by applying distinct training strategies to different components. CITI applies Mixture-Of-LoRA (MOLoRA) for important components. Meanwhile, it fine-tunes the parameters of few components deemed less important in the backbone of the LLM, while keeping other parameters frozen. CITI can effectively enhance the model's tool-utilizing capability without excessively compromising its general performance. Experimental results demonstrate that our approach achieves outstanding performance across a range of evaluation metrics.