遇见数据集

glaiveai/glaive-function-calling

收藏
Hugging Face2023-09-27 更新2024-03-04 收录
官方服务:

资源简介:

--- license: apache-2.0 task_categories: - text-generation language: - en size_categories: - 10K<n<100K --- This dataset consists of 52k samples generated through [Glaive](https://glaive.ai) for the task of function calling, in the following format- ``` SYSTEM: You are an helpful assistant who has access to the following functions to help the user, you can use the functions if needed- { JSON function definiton } USER: user message ASSISTANT: assistant message Function call invocations are formatted as- ASSISTANT: <functioncall> {json function call} Response to the function call is formatted as- FUNCTION RESPONSE: {json function response} ``` There are also samples which do not have any function invocations, multiple invocations and samples with no functions presented and invoked to keep the data balanced.

许可证:Apache-2.0 任务类别: - 文本生成(text-generation) 语言: - 英文(en) 样本规模类别: - 10K<n<100K 本数据集包含52,000条样本,均通过[Glaive](https://glaive.ai)生成,用于函数调用(function calling)任务,具体格式如下: SYSTEM: 您是一名乐于助人的助手,可调用以下工具函数为用户提供协助,如需使用可直接调用: { "JSON格式的函数定义" } USER: 用户消息 ASSISTANT: 助手回复 函数调用的格式如下: ASSISTANT: <functioncall> {"JSON格式函数调用内容"} 函数调用响应的格式如下: FUNCTION RESPONSE: {"JSON格式函数响应内容"} 此外,数据集中还涵盖无函数调用、多函数调用,以及无可用函数且无需发起调用的样本,以保障数据分布的平衡性。

提供机构:
glaiveai
原始信息汇总

数据集概述

基本信息

  • 许可证:Apache-2.0
  • 任务类别:文本生成
  • 语言:英语
  • 数据集大小:10K<n<100K

数据内容

  • 样本数量:52k
  • 生成工具:Glaive
  • 任务描述:函数调用
  • 数据格式:
    • 系统提示:描述助手可用的函数定义。
    • 用户消息:用户输入。
    • 助手消息:助手的回复,可能包含函数调用。
    • 函数调用格式:ASSISTANT: <functioncall> {json function call}
    • 函数响应格式:FUNCTION RESPONSE: {json function response}

数据多样性

  • 包含无函数调用的样本、多次调用的样本以及无函数展示和调用的样本,以保持数据平衡。
搜集汇总
数据集介绍
构建方式
在函数调用这一自然语言处理的核心任务中,glaiveai/glaive-function-calling数据集应运而生。该数据集由Glaive平台自动生成,共计包含52,000条样本。其构建方式遵循一套统一的格式规范:系统消息中嵌入JSON格式的函数定义,随后是用户消息与助手消息的交替。函数调用以<functioncall>标签包裹JSON调用参数的形式呈现,而函数响应则通过FUNCTION RESPONSE前缀明确标注。为保持数据分布的均衡,构建过程刻意纳入了无函数调用、多次调用以及无函数定义的样本,从而模拟真实场景中的多样性。
特点
该数据集的核心特点在于其结构化的函数调用表示与平衡的样本设计。每条样本均严格遵循系统、用户、助手及函数响应的多轮对话格式,使得模型能够清晰学习何时触发函数调用、如何构建调用参数以及如何处理返回结果。尤为突出的是,数据集通过混合无调用、单次调用与多次调用的样本,避免了模型对函数调用的过度依赖,增强了其在无函数场景下的泛化能力。这种平衡策略确保了模型在训练后既能精准执行函数操作,又能维持自然对话的流畅性。
使用方法
使用该数据集时,研究人员可直接将其用于文本生成任务的微调,尤其是需要外部工具调用能力的对话模型。数据集已按统一格式预处理,用户只需加载后按标准序列到序列的学习框架进行训练。在推理阶段,模型需解析输入中的系统函数定义,并在适当时机输出格式化的<functioncall>标签。为评估性能,可对比模型生成的函数调用与实际标注的JSON参数,同时监测无调用样本上的误触发率。此外,数据集支持直接通过HuggingFace的datasets库加载,简化了数据流水线的搭建过程。
背景与挑战
背景概述
在大型语言模型(LLM)蓬勃发展的浪潮中,如何使模型具备与外部工具和应用程序接口进行动态交互的能力,成为实现智能体(Agent)系统的关键瓶颈。函数调用(Function Calling)作为连接自然语言理解与结构化程序执行的桥梁,允许模型根据用户意图自主选择并调用预定义的函数,从而突破纯文本生成的局限,迈向真正的任务自动化。由Glaive AI团队于2023年构建的glaiveai/glaive-function-calling数据集,正是为解决这一核心问题而生。该数据集包含约5.2万条通过专有生成引擎合成的样本,其设计精巧地覆盖了多种交互场景:既有标准的函数调用流程,也包含无需函数调用的纯对话、多次连续调用以及无函数定义的情形,确保了训练数据的多样性与平衡性。这一资源为微调开源模型(如LLaMA、Mistral等)提供了高质量的指令数据,显著推动了函数调用能力的普及与标准化,成为该领域内具有标杆影响力的训练语料。
当前挑战
该数据集所应对的领域挑战在于,传统语言模型缺乏对结构化外部工具调用的理解与生成能力,难以在复杂对话中准确识别何时需要触发函数、解析函数参数并正确格式化调用指令,这限制了模型在自动化客服、代码生成与API编排等实际应用中的落地。在构建过程中,数据合成面临两大难题:一是如何生成高度逼真且覆盖边缘场景的函数定义与调用示例,避免模型过拟合于有限模式;二是确保正负样本(含调用与不含调用的对话)的比例均衡,防止模型产生调用偏差或忽视非函数交互的合理性。此外,函数调用格式的严格性(如JSON语法)要求数据必须无语法错误,这对自动生成管道的质量控制提出了严峻挑战,任何格式瑕疵都可能导致下游模型学得错误的调用范式。
常用场景
经典使用场景
在自然语言处理与智能代理系统深度融合的背景下,glaiveai/glaive-function-calling数据集为函数调用任务提供了标准化的训练语料。该数据集包含约5.2万条样本,通过Glaive平台生成,采用结构化的对话格式,将用户指令、系统定义的功能函数及模型响应进行系统编排。其经典使用场景聚焦于训练大语言模型精准解析用户意图并触发相应函数调用,涵盖单次调用、多次调用以及无需调用等多种情形,从而确保模型在真实交互中具备灵活的函数选择与参数填充能力。
衍生相关工作
围绕glaive-function-calling数据集,衍生出多项经典工作。其中,基于该数据集的微调方法被用于构建更鲁棒的多函数选择模型,研究者通过对比不同提示策略与训练范式,揭示了函数定义描述对调用成功率的影响。此外,该数据集启发了函数调用领域的数据增强技巧,如基于语法树的负采样策略和跨领域函数泛化研究。在评估基准方面,相关工作将其与ToolBench、BFCL等数据集结合,构建了涵盖数百种真实API的综合测试框架,推动了函数调用任务从封闭场景向开放生态的演进。
数据集最近研究
最新研究方向
当前,大语言模型在工具调用与外部系统交互能力上的突破成为人工智能领域的前沿热点,glaiveai/glaive-function-calling数据集正是在这一浪潮中应运而生。该数据集包含约5.2万条由Glaive平台生成的函数调用样本,覆盖单次调用、多次调用及无调用等多种场景,旨在系统性地训练和评估模型理解JSON函数定义、精准生成函数调用指令以及处理函数返回结果的能力。随着ChatGPT、Claude等模型插件生态的爆发式增长,函数调用已成为连接语言模型与真实世界服务的核心桥梁,该数据集通过平衡正负样本与多样化交互模式,为提升模型在复杂任务中的可靠性与泛化性提供了关键支撑,其开源发布对推动智能代理、自动化工作流等前沿应用具有深远意义。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务