今天详细解析Hammer模型如何通过函数名和参数名的修改,数倍提升模型在Function Calling任务中的准确性。
一、改名提升模型性能,看似玄学也有依据
简洁命名的模糊性
在大多数编程语言中,函数名和参数名都是对功能的抽象表达。通常情况下,简洁的命名规则便于代码阅读与理解,但当这些简洁的命名被直接作为模型输入时,可能会导致一定程度的模糊性。例如,假设我们有一个名为get_data的函数,该函数可能用于从数据库、文件或网络获取数据,但不同的上下文可能会让模型难以判断其真正用途。
特别是在存在复杂功能的情况下,简洁的命名约定可能导致误导。例如,save可能表示保存文件、保存数据,甚至是提交数据库事务。此时,模型仅依赖函数名推断函数目的时,简洁命名反而可能降低准确性。
同名参数的误导性
同样,函数参数名的命名惯例也可能影响模型的判断。在数据集中,不同的函数可能使用相同或类似的参数名,导致模型在推断过程中受到历史数据的干扰。比如,data或input等参数名可能在不同的函数中具有完全不同的含义,但如果模型只依据参数名来推断其用途,可能会引发错误推断。
命名约定的不一致性
在实际开发中,命名约定常常因团队、项目或语言的不同而存在差异。例如,驼峰式命名(CamelCase)和下划线式命名(snake_case)在同一数据集中可能并存。如果训练数据集中的命名方式与测试环境中的不一致,模型的表现可能会受到负面影响。在这种情况下,模型可能无法准确理解不同命名方式的函数或参数,影响其调用的准确性。
Schema描述更加准确有力
Schema描述提供了更灵活的自然语言解释,往往更准确和详细,并通常包含函数和参数名称旨在传达的信息"。
函数和参数名称的简洁和简洁格式可能会导致歧义,并误导模型的理解,特别是在存在复杂功能的情况下。相比之下,描述提供了对函数作用和预期行为的更全面的视角,超越了函数和参数名称所能传达的内容。通过关注描述而不是名称,模型可以更准确地把握函数的意图,并避免训练数据中特定命名模式引入的陷阱。
二、如何实现改名后的模型训练
增强数据集:微调与多样性提升
为了提升函数调用准确率,Hammer模型采用了增强数据集的策略。在此方法中,模型通过对数据集进行扩展,尤其是在xLAM-function-calling-60k数据集上增加了7,500个实例,这些实例专注于检测无关性,从而使得模型能够更好地区分相关和无关的函数调用。
通过这种增强方式,模型能够更好地处理在训练集和测试集之间存在的命名不一致性。对数据集的微调不仅提高了模型对函数名的敏感度,也让模型学会了如何忽略无关的参数和函数。
函数屏蔽:减少对名称的依赖
Hammer模型采用了函数屏蔽技术,在训练过程中随机将候选函数名称替换为随机字符串。这一策略的核心思想是使得模型更关注函数的功能描述,而非函数名称。这种方式迫使模型理解函数的功能,而不仅仅是通过名称来推测其目的。
具体来说,模型通过仅仅理解函数的输入输出及其描述来进行函数调用,而非依赖可能模糊或误导的名称信息。例如,在训练过程中,模型可能会遇到如下两种情况:
在屏蔽后的训练过程中,模型不会通过get_user_data来猜测其功能,而是通过函数描述或参数来推断其功能。
函数描述的优化
除去函数名本身,函数描述也是模型理解函数目的的重要线索。通过增强训练集中的函数描述,并将这些描述与输入输出匹配,模型能够更好地学习到函数的实际功能。这一过程涉及到对数据集的精细化处理,使得每个函数都附带一个尽可能详细的描述。
这种优化策略,结合函数屏蔽和增强数据集的手段,能有效提升模型对函数调用的准确性和鲁棒性。
三、启发
高质量数据是金矿
在任何机器学习任务中,高质量数据都至关重要。而数据的质量不仅仅体现在标注的准确性,还包括数据的多样性和丰富性。Hammer模型的成功不仅仅在于使用了大规模的数据集,更在于对已有数据进行了精细化的改造和优化。作为AI工程师,我们应该从数据源的多样性和质量上投入更多精力,而不仅仅关注模型的复杂度。
从人的角度出发
大多数工程师在设计函数时,往往是从功能描述出发,而非仅依赖函数名称。这一思维模式实际上与模型的思维方式存在类似性。通过从人的角度理解模型如何处理函数调用,我们可以发现许多潜在的优化空间。例如,考虑到工程师在编写函数时会根据其功能来定义参数,而不仅仅依赖参数名本身,模型也应该更多地关注函数的功能描述。
四、最后分享
AI大模型作为人工智能领域的重要技术突破,正成为推动各行各业创新和转型的关键力量。抓住AI大模型的风口,掌握AI大模型的知识和技能将变得越来越重要。
学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。
这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!
1. 成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
2. 大模型经典PDF书籍
书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)
3. 大模型视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
4. 2024行业报告
行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
5. 大模型项目实战
学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。
6. 大模型面试题
面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。