如何使用小型自动生成的数据集训练编码LLM

虽然像GPT-4这样的大型语言模型(LLM)在编写软件代码方面非常精通,但是这些模型的成本和不透明性激发了人们对更加经济、规模更小的编码LLM的兴趣。

这些替代方案可以针对特定任务进行微调,并且成本很低。开发这些LLM的一大挑战是在训练数据集的大小和模型的性能之间找到最佳平衡点。

针对这一挑战,微软公司在最近发表的一篇论文中介绍了一种使用更少示例训练高效编码语言模型的新技术。这篇文章介绍了WaveCoder模型,并声称优于其他在类似数量的示例上训练的编码LLM。

作为WaveCoder的补充,微软公司还开发了CodeOcean,这是一个包含2万个不同代码示例的精选数据集。该数据集可以增强编码应用的基础模型的微调。

选择正确的编码示例

图1 CodeOcean管道

虽然WaveCoder是一个令人印象深刻的LLM模型,但这篇论文中更有趣的部分是CodeOcean,它是一个附带的数据集。CodeOcean解决了一个重大挑战:创建一个平衡成本效益和质量的数据集。研究人员认为一个具有最大多样性的数据集可以产生令人印象深刻的结果,即使它包含的示例有限。

该研究团队从CodeSearchNet开始,这是一个包含200万对注释和代码的广泛编码数据集。他们使用基于BERT的Transformer模型为每个示例生成嵌入,将复杂信息转换为数字列表。

他们对嵌入应用了一种聚类算法,根据它们的相似性对示例进行排序。这种方法使研究人员能够从原始数据集中提取一个子集,最大限度地提高多样性。

添加说明

在建立核心数据集之后,研究人员必须创建包含代码和指令的训练示例。为了实现这一点,他们创建了一个生成器-鉴别器框架,用于根据原始代码示例生成指导性数据。最初,他们使用GPT-4在特定的场景中制作任务定义。这些初始任务定义与指导提示相结合,被提供给GPT-3.5,以生成额外示例的相应指令。

图2 CodeOcean的生成器-鉴别器框架

对于鉴别器组件,研究人员制定了一个单独的评估提示。这个提示以及代码和指令示例提供给GPT-4进行评估。然后,CodeOcean管道使用良好的示例来生成未来的训练示例。

研究人员通过这个迭代过程生成了2万个高质量的教学样本。这些示例跨越了四个不同的编码任务类别:代码生成、代码摘要、语言翻译(从一种编程语言到另一种编程语言)和代码修复。这四个类别包含了LLM编码任务的很大一部分。

训练WaveCoder

图3 WaveCoder优于其他在类似数量的示例上训练的编码LLM

生成用于编码LLM的训练示例有很多方法。但微软的CodeOcean以强调泛化和示例效率而与众不同。与依赖大量数据的研究不同,CodeOcean可以使用较小的数据集实现高性能。

为了证明CodeOcean的有效性,研究人员对三种编码语言模型进行了微调:StarCoder-15B、CodeLLaMA(7B和13B)和DeepseekCoder-6.7B。考虑到数据集的大小,其微调既快速又经济高效。研究人员根据HumanEval、MBPP和HumanEvalPack这三个关键的编码基准对微调后的模型进行了评估。

通过在CodeOcean上进行多次训练,所有模型在这些基准测试上都有了显著的改进。在代码生成方面,研究人员描述了WaveCoder的影响和局限性:“在微调过程之后,与基础模型和一些开源模型相比,WaveCoder模型的性能有了显著的提高,但它仍然落后于专有模型(例如GPT-4和Gemini),以及使用7万多个训练数据训练的指示模型。”

WaveCoder和WizardCoder之间的性能差异很小,有78000个训练示例。这表明“精细化和多样化的指令数据可以显著提高指令调优的效率。”

WaveCoder在代码摘要和修复任务方面尤为出色。它在几乎所有编程语言上的表现都优于其他开源模型。这一成功强调了“定义和分类代码相关任务对增强代码LLM泛化能力的有效性”。

虽然微软公司尚未发布WaveCoder和CodeOcean的模型、代码和数据,但有关Hugging Face的讨论表明,该公司正在审查是否将它们对外发布。展望未来,研究人员的目标是探索更大数据集的效果,以及将CodeOcean与其他编码数据集相结合的潜在好处。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/225369.html<

(0)
管理的头像管理
上一篇2025-04-16 21:04
下一篇 2025-04-16 21:06

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注