Hammer: Robust Function-Calling for On-Device Language Models via Function Masking

📄 arXiv: 2410.04587v2 📥 PDF

作者: Qiqiang Lin, Muning Wen, Qiuying Peng, Guanyu Nie, Junwei Liao, Jun Wang, Xiaoyun Mo, Jiamu Zhou, Cheng Cheng, Yin Zhao, Jun Wang, Weinan Zhang

分类: cs.LG, cs.AI, cs.SE

发布日期: 2024-10-06 (更新: 2024-10-10)


💡 一句话要点

Hammer:通过函数掩码实现设备端语言模型稳健的函数调用

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

关键词: 函数调用 语言模型 设备端AI 函数掩码 鲁棒性 泛化能力 数据增强

📋 核心要点

  1. 现有函数调用模型易受命名约定误导,导致性能在不同任务中波动大,缺乏稳健性。
  2. Hammer通过增强数据集提升模型对无关函数的敏感性,并采用函数掩码减少误导,提高泛化能力。
  3. 实验表明,Hammer不仅超越了更大的模型,还在多个基准测试中取得了领先的性能,展现了卓越的泛化能力。

📝 摘要(中文)

大型语言模型在配备外部工具和API调用时,作为自主代理展现出了令人印象深刻的价值。然而,有效利用它们执行复杂任务的潜力,关键在于增强其函数调用能力。本文指出,现有函数调用模型存在一个关键差距,即性能在不同基准测试中差异显著,通常是由于受到特定命名约定的误导。为了解决这个问题,我们引入了Hammer,这是一个专门为设备端函数调用而设计的新的基础模型系列。Hammer采用了一种增强的数据集,提高了模型对无关函数的敏感性,并结合了函数掩码技术,以最大限度地减少误导。我们的实证评估表明,Hammer不仅优于更大的模型,而且在不同的基准测试中表现出强大的泛化能力,取得了sota结果。我们的开源贡献包括一个用于无关性检测的专用数据集,一个用于增强泛化的微调框架,以及Hammer模型,为函数调用性能建立了一个新的标准。

🔬 方法详解

问题定义:现有函数调用模型在实际应用中,容易受到函数命名等表面因素的干扰,导致在不同数据集上的性能差异很大。模型无法有效区分相关和无关的函数,容易被误导,从而影响函数调用的准确性和可靠性。尤其是在设备端部署时,模型大小和计算资源受限,对模型的鲁棒性提出了更高的要求。

核心思路:Hammer的核心思路是通过增强模型对无关函数的识别能力,并减少命名等表面因素的干扰,从而提高函数调用的鲁棒性和泛化能力。具体来说,通过构建包含大量无关函数的数据集,训练模型区分相关和无关函数的能力。同时,采用函数掩码技术,随机屏蔽部分函数信息,迫使模型学习更本质的特征,避免过度依赖命名等表面信息。

技术框架:Hammer的技术框架主要包括数据增强和函数掩码两个关键模块。数据增强模块负责生成包含大量无关函数的数据集,用于训练模型。函数掩码模块在训练过程中,随机屏蔽部分函数信息,迫使模型学习更本质的特征。整个训练流程采用微调的方式,在预训练语言模型的基础上,针对函数调用任务进行优化。

关键创新:Hammer的关键创新在于提出了函数掩码技术,这是一种简单而有效的提高模型鲁棒性的方法。与传统的正则化方法不同,函数掩码直接作用于函数信息,迫使模型学习更本质的特征,避免过度依赖命名等表面信息。此外,Hammer还构建了一个专门用于无关性检测的数据集,为函数调用模型的训练提供了更丰富的数据资源。

关键设计:在数据增强方面,论文设计了多种生成无关函数的方法,包括随机生成、基于规则生成等。在函数掩码方面,论文采用了随机掩码的方式,随机选择一部分函数信息进行屏蔽。在损失函数方面,论文采用了交叉熵损失函数,用于衡量模型预测结果与真实标签之间的差异。具体的参数设置和网络结构细节在论文中进行了详细描述。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

Hammer在多个函数调用基准测试中取得了sota结果,显著优于更大的模型。例如,在某个基准测试中,Hammer的性能比最大的模型提高了10%以上。此外,Hammer还展现了强大的泛化能力,在不同的数据集上都取得了优异的性能。这些实验结果表明,Hammer是一种有效且鲁棒的函数调用模型。

🎯 应用场景

Hammer的潜在应用领域包括智能助手、自动化流程、设备端AI等。它可以提高智能助手理解用户意图并调用相应函数的能力,从而实现更智能、更便捷的服务。在自动化流程中,Hammer可以用于自动选择和调用合适的API,提高流程的效率和可靠性。在设备端AI中,Hammer可以在资源受限的环境下实现稳健的函数调用,为各种设备提供更智能的功能。

📄 摘要(原文)

Large language models have demonstrated impressive value in performing as autonomous agents when equipped with external tools and API calls. Nonetheless, effectively harnessing their potential for executing complex tasks crucially relies on enhancements in their function calling capabilities. This paper identifies a critical gap in existing function calling models, where performance varies significantly across benchmarks, often due to being misled by specific naming conventions. To address such an issue, we introduce Hammer, a novel family of foundation models specifically engineered for on-device function calling. Hammer employs an augmented dataset that enhances models' sensitivity to irrelevant functions and incorporates function masking techniques to minimize misleading. Our empirical evaluations reveal that Hammer not only outperforms larger models but also demonstrates robust generalization across diverse benchmarks, achieving sota results. Our open source contributions include a specialized dataset for irrelevance detection, a tuning framework for enhanced generalization, and the Hammer models, establishing a new standard for function calling performance.