Infinity Instruct:扩展指令选择与综合以增强语言模型:推动开源指令数据集的发展

发布时间:2026/6/1 12:24:13
Infinity Instruct:扩展指令选择与综合以增强语言模型:推动开源指令数据集的发展
Abstract大型语言模型LLMs在实际应用中展现出卓越的性能然而现有的开源指令数据集往往局限于数学或代码等狭窄领域这限制了模型的泛化能力并拉大了其与专有模型之间的差距。为弥合这一差距我们推出了 Infinity-Instruct这是一个高质量的指令数据集旨在通过一个两阶段流程同时提升大语言模型的基础能力和聊天能力。在第一阶段我们利用混合数据选择技术从超过1亿条样本中筛选出740万条高质量的基础指令InfInstruct-F-7.4M。在第二阶段我们经过指令选择、进化以及诊断性过滤这两个步骤合成了150万条高质量的聊天指令InfInstruct-G-1.5M。我们通过微调多个开源模型包括 Mistral、LLaMA、Qwen 和 Yi对 Infinity-Instruct 进行了实证评估结果显示模型在基础能力和指令遵循能力两大基准测试中均取得了显著提升并且持续优于官方的指令微调对应版本。值得注意的是InfInstruct-LLaMA3.1-70B 在指令遵循任务上超越了 GPT-4-0314 8.6%同时在基础能力方面达到了相当的水平。这些结果凸显了基础训练与聊天训练之间的协同效应并为大语言模型的整体开发提供了新的见解。我们的数据集和代码已公开发布。Introduction大型语言模型LLMs的问世标志着人工智能领域的一个重要里程碑而指令微调instruction fine-tuning作为一项关键技术通过增强模型遵循复杂提示的能力成为释放其在自然语言处理中全部潜力的关键 [25, 17, 24]。随着这些模型日益成为现实应用的核心其训练数据尤其是指令数据的质量和多样性已成为决定其性能的关键因素 [19, 30, 22, 11]。尽管在指令数据上对大型语言模型进行微调能够提升特定任务的性能但若在未提供足够正则化的情况下直接将预训练模型适配下游指令则可能导致对基本语言能力和推理能力的灾难性遗忘 [7]。这便在增强任务对齐与保留核心泛化能力之间形成了一种微妙的权衡。从头构建全面且高质量的指令数据集以用于微调尤其是满足现代大型语言模型所需规模时无论是在人力还是计算资源方面其成本都高得令人望而却步。一种颇具吸引力的替代方案是将现有的开源数据集进行整合。该方法充满挑战数据集的质量无法保证随机组合可能会降低性能而有效的混合通常需要专家知识以及对数据集组成比例进行耗时的人工调整。为了解决这些问题我们提出了 Infinity-Instruct这是一个原则性强且可扩展的流水线旨在系统性地构建指令数据集解决指令选择、标注和合成中的关键挑战。我们不再依赖启发式组合而是引入了一种以标注为导向的策略从大规模指令池中选择和合成数据从而生成兼具多样性和高质量的数据集。我们发布了两个经过精心筛选的数据集InfInstruct-F-7.4M一个基础指令数据集包含 740 万个指令这些指令是使用过滤、聚类和基于覆盖率等混合策略选择的。InfInstruct-G-1.5M一个通用对话指令数据集基于两层指令标注系统构建。我们首先使用开源模型对指令进行聚类和标注选择 120 万个高质量种子然后通过迭代式合成与诊断将其扩展生成更丰富的 150 万个对话指令。这些数据集经过严格的去重和污染过滤以确保泛化能力的纯净性。为了评估 Infinity-Instruct 的有效性我们在多个流行的开源大型语言模型LLM上进行了微调并推出了 InfInstruct 模型系列包括 InfInstruct-Mistral-7B、InfInstruct-Llama3.1-8B/70B、InfInstruct-Qwen-2-7B 和 InfInstruct-Yi-1.5-9B。这些模型在基础任务和对齐基准测试中均一致优于其官方指令微调版本。值得注意的是InfInstruct-Llama3.1-70B 在对话能力上超越了 GPT-4-0314 8.6%并在基础任务上与其表现持平而 InfInstruct-Llama3.1-8B 在基础任务和对齐基准测试中分别提升了 4.4% 和 7.4%。我们的研究还揭示出基础能力与对话能力之间存在正相关关系强调了数据集设计平衡性的重要性。Infinity-Instruct 为指令数据集的构建提供了一种可扩展的解决方案弥合了开源与专有 LLM 性能之间的差距。我们的主要贡献总结如下引入统一的 datasets 构建流水线我们设计了一种新颖的流水线系统性地策划数据集并合成数据以应对基础任务和对齐任务确保高质量和多样性。开发高质量数据集 Infinity-InstructInfInstruct-F-7.4M一个包含 740 万个指令的基础数据集这些指令是通过对超过 1 亿个样本使用稳健的数据选择策略选出的。InfInstruct-G-1.5M一个对话数据集通过两层标注系统和迭代优化合成确保对话场景中的多样性和质量。确保数据质量和泛化能力我们应用了去重和污染检测技术以保证模型在数学、代码和知识问答等各个领域中的鲁棒性和适用性。展示优越的模型性能在 Infinity-Instruct 上微调多个开源模型例如 Mistral、Llama、Qwen 和 Yi在基础任务和对齐基准测试中取得了最先进的结果。值得注意的是InfInstruct-Llama3.1-70B 在对话能力上超越了 GPT-4-0314 8.6%并在基础任务上实现了近乎持平的表现。2 method如图1所示Infinity-Instruct 流水线首先基于微调实验分析开源指令数据集的不足之处。随后我们从数学、代码和知识问答等多个领域收集超过1亿条开源指令。该流水线遵循两阶段流程。首先应用严格的数据选择模块对高质量的基础指令进行筛选与策展形成基础数据集InfInstruct-F-7.4M。其次选取部分种子指令作为起点进入数据合成阶段。该阶段通过迭代式的指令标注、进化与诊断过程生成高质量的指令数据。对话数据集InfInstruct-G-1.5M确保对话能力的鲁棒性与多样性。这种结构化方法确保基础数据集与对话数据集均经过优化以全面提升大语言模型LLM的性能。2.1 Open instruction dataset analysis在真实场景中开源模型与闭源模型的性能存在持续且显著的差异。我们认为一个重要的差距源于指令数据集。为了验证开源指令数据集的不足我们选择 Mistral-7B 模型并在近期多个开源数据集上进行微调。我们以 GPT-3.5 的整体能力作为参照以评估微调后的 Mistral-7B 在整体能力上的短板。首先我们收集了一组流行的语言模型基准测试集。表 2 汇总了实验结果显示在开源数据集中OpenHermes 始终表现出最佳性能。然而与 GPT-3.5 和 GPT-4 等闭源模型相比仍存在显著差距尤其在数据多样性、代码理解、基于知识的问答、对话生成以及其他高级能力方面。2.2 Instruction Collection基于对开放指令数据集的分析我们首先收集了数学、代码、常识问答和对话领域中最新、最前沿的指令数据集构建了数据池。该数据池包含超过 1 亿条指令。数据池的统计数据如表 1 所示。我们从数据池中选取了部分近期数据集并使用 Mistral-7B-v0.1 对这些数据集进行了微调。结果如表 2 所示。我们发现 OpenHermes 能够实现整体最佳的性能。然而与 GPT-3.5 或 GPT-4 相比仍存在差距这激励我们进一步通过数据选择和数据合成手段提升现有指令数据集的质量与多样性。2.3 Data Selection在本章中我们将介绍用于构建 Infinity-Instruct 基础数据集的数据选择模块。该模块的处理流程如图 2 所示。选择策略。我们引入了三种选择策略包括源过滤、基于规则的过滤以及 DSIR [21]。从任务角度出发我们根据任务特征如代码和数学选择适当的过滤规则。针对不同任务所使用的选择策略细节如下所述知识Knowledge。我们发现由于采用的数据清洗规则不同收集到的通用知识数据集质量参差不齐。为了增强模型的常识理解能力我们引入了 Flan 2022 数据集 [15]该数据集整合了当时所有公开可用的用于指令微调的学术数据集。该数据集融合了数百种高质量模板、多样化的格式模式以及广泛的数据增强包括零样本zero-shot、少样本few-shot和思维链chain-of-thought提示格式的组合。我们对数据集进行了专门整理剔除了来自知识含量相对较低的源的数据样本例如情感分类数据集如 SST-2、IMDb 电影评论。此外对于合成数据集和增强数据样本例如由相同种子数据生成的问答和问句生成样本我们实施了去重策略以降低增强样本的比例。数学Math。我们参考了 DSIR [21] 方法该方法旨在从无标记的目标样本出发从大型原始无标记数据集中选择一个子集以匹配期望的目标分布。为了提高模型的数学能力我们将 GSM8K 和 MATH 训练样本中的提示作为目标分布以指导从数学数据集池中筛选子集。除了从现有数据集中进行选择外为了增强模型对数值变化的敏感性我们还基于当前数据集合成数据。这包括为数学问题生成相应的思维链CoT和程序思维PoT推理过程并利用数据增强策略扩充数据集。详细信息参见 [26]。最终我们构建了约 140 万条数学指令数据。代码Code。遵循我们提升数学理解能力的方法论我们应用 DSIR 技术来整理来自开源指令数据集中广泛的编程领域数据。为了确保所选数据与目标任务特征紧密对齐我们将基于从 HumanEval 样本中获得的提示分布来执行重要性重采样过程。这种方法使我们能够优先考虑更能代表 HumanEval 中常见的编码挑战和推理过程的样本从而最终提升模型在多样化编程任务中的泛化和表现能力。评估与弱领域指令补充。为了优化数据利用率我们采用逐步增加每种任务数据量的渐进式方法。如第 2.1 节所述我们在 Mistral-7B 上进行微调实验以评估每个任务当前数据集的饱和程度。当观察到在当前数据集版本上微调的 Mistral-7B 与基准模型例如 GPT-3.5在特定任务上的性能存在差距时我们将放宽数据选择标准纳入额外的弱领域数据从而增强模型在未充分代表领域中的表现。最后通过合并每种任务的基础指令我们获得了 620 万条通用基础指令数据集。此外为了确保基础训练与指令遵循训练之间的平滑切换类似于重放策略 [27]我们添加了 120 万条种子指令如 2.4 节所述构成了最终版本的基础指令数据集 InfInstruct-F-7.4M。2.4 Data Synthesis现有研究表明采用多样化且具难度的对话指令有助于提升模型在现实场景中的对话能力。在本章中我们设计了一种迭代式指令进化流水线。如图3所示该流水线包含四个步骤指令标注系统构建、高质量种子指令构建、指令进化以及模型弱点检测。我们从900万开源指令出发最终合成了约150万条进化后的指令数据集即InfInstruct-G-1.5M。指令标注系统。高质量的标注系统有助于合成多样化数据并提升模型在不同对话场景中的泛化能力。因此我们使用开源语言模型即Qwen1.5-72B对每条指令进行二级标注然后通过嵌入聚类与人工调优对二级标签进行规范化处理。最终我们进一步利用语言模型的泛化能力对一级标签进行泛化扩展。我们最终构建的标注系统包含26个一级标签和超过一万五千个二级标签。关于标注系统的详细信息可参见文献[28]。高质量种子指令筛选。我们以难度和多样性为标准从900万对话指令中筛选出120万条高质量对话指令。我们统一使用Qwen1.5-7B模型来评估指令难度。具体而言筛选指南如下1长尾数据多样性。基于标注系统我们保留所有发生频率在20至200之间的能力标签下的全部指令并对发生频率在200至500之间的每个能力标签下的指令提取三分之一。这些指令将不再进入后续筛选流程。2多维能力多样性。我们将涉及多种能力的指令视为一项困难任务。基于标注体系我们优先保留涉及多能力标签的指令。3高语言建模损失难度我们计算候选指令答案部分的损失函数。较高的损失表明模型对指令所涉及的缺乏熟悉度同时也意味着生成正确答案的难度更大。4高收敛损失难度如文献[11]所述在特定指令上进行训练容易导致过拟合使模型产生有害偏见从而影响泛化能力。为避免这一现象我们移除了微调前后损失差异较大的样本。指令演化。我们进一步通过文献[22]提出的 evolve-instruct 指令演化算法以多步重写的方式扩展种子数据的难度。对于每条种子指令我们应用了 Wizard 提出的四种演化策略对其进行重写并要求重写模型判断改写后的指令是否与前文语义一致或者是否引入了有害信息。诊断。最后我们基于指令标注体系并结合针对各类能力合成的指令尝试分析开源模型的薄弱能力。具体而言我们从每种能力类型中提取演化后的指令并应用 GPT-4 对多个开源模型包括 Mistral-7B、Llama3-8B的回答质量进行评估。导致任一模型表现不佳的指令将被纳入下一轮指令演化。这种基于反馈的策略确保了我们的指令数据集能够更高效地扩展。2.5 去重与净化为避免任何重复我们对合成数据进行净化和去重处理。我们使用 BGE [20] 模型对指令进行向量化并计算 Infinity-Instruct 与开源基准测试中指令之间的余弦相似度。我们手动确定了 0.3 的阈值用于过滤重复样本和污染数据。5 结论在本文中我们提出了 Infinity Instruct这是一种全面的方法旨在推动开源指令数据集的发展并缩小与专有模型之间的性能差距。通过解决现有数据集往往侧重于狭窄任务领域这一局限性我们的工作强调高质量的数据筛选与合成以支持基础任务和对话任务。Infinity Instruct 的流程展示了鲁棒数据选择策略的重要性这一点由从超过1亿个样本中筛选出的基础数据集 InfInstruct-F-7M以及采用两层标注系统设计的对话数据集 InfInstruct-G-1.5M 所证明。通过严格的质控技术如去重和污染检测我们确保了数据集在数学、编码和基于知识的问答等多样本领域中的可靠性。我们在 Infinity Instruct 上对多个开源模型进行了微调并在基础任务和对话基准测试中取得了最先进SOTA的结果显著提升了各项性能指标。值得注意的是InfInstruct-Llama3.1-70B 展现了卓越的性能在聊天能力上超越了 GPT-4-0314 8.6%同时在基础任务中保持近乎持平的表现。这些结果凸显了开源倡议在推动构建可访问且高性能语言模型方面的变革性潜力。我们希望 Infinity Instruct 能成为更广泛研究社区中进一步创新的宝贵资源与催化剂。