Synth-APIGen-v0.1
收藏Hugging Face2024-10-10 更新2024-12-12 收录
下载链接:
https://huggingface.co/datasets/argilla/Synth-APIGen-v0.1
下载链接
链接失效反馈官方服务:
资源简介:
Synth-APIGen-v0.1数据集是由distilabel工具创建的,旨在生成可验证和多样化的函数调用数据集。该数据集包含多个字段,如函数名、函数描述、可用工具、查询、模型生成的答案、模型名称和哈希ID。数据集的创建过程包括生成或修改Python函数、准备种子工具、运行APIGen管道、合并和去重数据集,并生成训练数据。数据集主要用于文本生成任务,特别是函数调用相关的任务。
创建时间:
2024-10-01
原始信息汇总
Synth-APIGen-v0.1 数据集概述
数据集信息
特征
func_name: 函数名称,数据类型为字符串。func_desc: 函数描述,数据类型为字符串。tools: 可用工具,数据类型为字符串。query: 合成指令,数据类型为字符串。answers: 模型生成的参数,数据类型为字符串。model_name: 生成该行的模型名称,数据类型为字符串。hash_id: 由查询和答案生成的哈希值,用于去重,数据类型为字符串。
数据分割
train: 训练集,包含49402个样本,总大小为77390022字节。
下载与数据大小
- 下载大小: 29656761字节
- 数据集大小: 77390022字节
配置
default: 默认配置,包含训练集数据文件路径为data/train-*。
许可证
apache-2.0
任务类别
text-generation
语言
en
标签
syntheticdistilabelfunction-calling
数据集规模
10K<n<100K
数据集创建
创建过程
- 使用
distilabel==1.4.0版本创建。 - 基于APIGen: Automated Pipeline for Generating Verifiable and Diverse Function-Calling Datasets实现。
- 生成过程包括:
- 修改bigcode/self-oss-instruct-sc2-exec-filter-50k中的函数。
- 准备种子工具数据集argilla-warehouse/python-seed-tools。
- 运行
APIGen管道两次,生成argilla-warehouse/synth-apigen-llama和argilla-warehouse/synth-qwen-llama。 - 合并、去重并准备训练数据。
微调
- 数据格式化后可用于微调模型,如argilla-warehouse/apigen-synth-trl。
使用示例
- 数据集包含40K+个Python文件,示例代码展示了如何加载和使用这些函数。
数据集内容
- 原始数据集生成结果:
argilla-warehouse/synth-apigen-llama: 25727个样本argilla-warehouse/synth-apigen-qwen: 17678个样本- 总计: 43405个样本
- 添加6000个错误函数调用样本,总样本数为49402。
参考文献
搜集汇总
数据集介绍

构建方式
Synth-APIGen-v0.1数据集的构建过程基于APIGen框架,通过自动化流水线生成多样且可验证的函数调用数据。首先,从现有数据集中提取并修改Python函数,使其能够轻松转换为JSON模式工具。随后,使用这些函数生成种子工具,并通过APIGen流水线进行多次处理,以确保数据的多样性和数量。最后,合并并去重生成的数据集,同时添加了6000个错误函数调用示例,以增强数据集的鲁棒性。
特点
该数据集包含了丰富的函数调用信息,涵盖函数名称、描述、工具表示、用户查询、模型生成的答案以及模型名称等字段。其独特之处在于通过合成函数生成数据,确保了数据的多样性和可验证性。此外,数据集还包含了错误函数调用示例,能够有效支持模型在函数调用任务中的鲁棒性训练。
使用方法
使用Synth-APIGen-v0.1数据集时,可通过Hugging Face的`load_dataset`方法加载数据。用户可以选择特定的函数调用示例,并通过加载对应的Python模块来执行函数。数据集中的`query`和`answers`字段提供了用户查询和模型生成的参数,用户可以直接调用函数并验证其输出。此外,数据集还可用于微调模型,支持函数调用任务的训练和评估。
背景与挑战
背景概述
Synth-APIGen-v0.1数据集由Argilla团队于2024年创建,旨在通过自动化流程生成可验证且多样化的函数调用数据集。该数据集基于APIGen框架,结合了distilabel工具链,生成了大量合成函数调用数据。其核心研究问题在于如何通过自动化手段生成高质量的函数调用数据,以支持大语言模型在函数调用任务上的微调与评估。该数据集的创建受到了Berkeley Function-Calling Benchmark的启发,并通过与Salesforce等机构的数据集结合,进一步扩展了其应用范围。该数据集在自然语言处理领域,尤其是函数调用任务中,具有重要的研究价值和应用潜力。
当前挑战
Synth-APIGen-v0.1数据集在构建过程中面临多重挑战。首先,函数调用数据的生成需要确保多样性和可验证性,这对自动化流程的设计提出了较高要求。其次,数据集的构建依赖于多个外部数据源,如bigcode/self-oss-instruct-sc2-exec-filter-50k和Salesforce/xlam-function-calling-60k,如何高效整合这些数据并避免冗余成为一大难题。此外,数据集中包含大量合成数据,如何确保其真实性和实用性,尤其是在模型微调中的应用效果,仍需进一步验证。最后,数据集的去重和格式转换过程也面临技术挑战,需通过复杂的算法确保数据质量。
常用场景
经典使用场景
Synth-APIGen-v0.1数据集在自然语言处理领域中的经典使用场景主要集中于函数调用任务的自动化生成与验证。该数据集通过合成函数生成多样化的函数调用示例,广泛应用于文本生成模型的训练与评估。研究人员可以利用该数据集构建复杂的函数调用场景,测试模型在处理多步骤任务时的表现,尤其是在需要结合上下文理解与函数执行的场景中。
衍生相关工作
Synth-APIGen-v0.1数据集衍生了一系列相关研究工作,特别是在函数调用任务的模型优化与评估方面。基于该数据集,研究人员开发了多种改进模型,如基于LLM的函数调用优化模型,以及用于评估模型在复杂任务中表现的基准测试工具。此外,该数据集还启发了更多关于自动化数据生成与验证的研究,推动了相关领域的进一步发展。
数据集最近研究
最新研究方向
在自然语言处理领域,函数调用数据集的生成与优化正成为研究热点。Synth-APIGen-v0.1数据集通过自动化流水线生成多样化的函数调用数据,为模型训练提供了丰富的资源。该数据集不仅包含了大量经过验证的函数调用示例,还通过引入错误函数调用数据,增强了模型对异常情况的处理能力。这一研究方向与当前大模型在函数调用任务中的性能提升密切相关,特别是在多轮对话和复杂指令理解方面,Synth-APIGen-v0.1为模型提供了更为真实的训练环境。此外,该数据集的生成方法也为其他领域的数据集构建提供了新的思路,推动了自动化数据生成技术的发展。
以上内容由遇见数据集搜集并总结生成



