Press "Enter" to skip to content

伊利诺大学研究人员推出了Magicoder:一系列针对代码的完全开源大语言模型(LLM)

伊利诺伊大学厄巴纳香槟分校和清华大学的研究团队旨在通过引入Magicoder来解决从开源代码片段生成低偏差、高质量编码挑战的难题。Magicoder在各种编码基准测试中表现优于现有的语言模型,包括Python文本转代码生成、多语言编码和数据科学程序语言模型。

CodeGen、CodeT5、StarCoder和CODELLAMA等知名基础模型已经证明了语言模型在代码生成和理解方面的基本能力。指令微调的提出旨在通过使用指令-响应对来对预训练的语言模型进行微调,SELF-INSTRUCT和Evol-Instruct等方法则用于生成指令微调的合成数据。现有的代码基准测试,如HumanEval、MBPP、APPS和CodeContests,评估语言模型在从自然语言描述中开发单功能程序方面的能力。

Magicoder是一系列完全开源的用于代码的语言模型,使用OSS-INSTRUCT方法在75,000个合成指令数据上进行训练,该方法使用开源代码片段启发语言模型生成高质量的代码指令数据。该方法通过从GitHub获取种子代码片段,促使语言模型生成与种子代码相关的编码问题和解决方案,确保多样性和真实世界的相关性。评估使用HumanEval和MBPP等基准测试,重点关注pass1指标。使用INSTRUCTOR根据嵌入相似性对由OSS-INSTRUCT生成的数据进行分类。为了提高鲁棒性,采用了数据清洗技术,包括净化和提示过滤。

Magicoder以不超过70亿的适度参数量展现了与顶级代码模型竞争性能。使用OSS-INSTRUCT在75,000个合成指令数据上进行训练,Magicoder在Python文本转代码生成、多语言编码和数据科学程序语言建模方面超越了先进的代码模型。增强版MagicoderS进一步改进了代码生成性能,在各种基准测试中超过了类似或更大尺寸的其他模型。 MagicoderS-CL-7B在代码模型中同时实现了前沿结果,展示了强大和优越的代码生成能力。

总之,该研究突出了使用OSS-INSTRUCT的有效性,该方法利用语言模型从开源代码片段中生成编码挑战。经过OSS-INSTRUCT训练的Magicoder在不同的编码基准测试中比其他参数更大的语言模型表现更好。此外,当与Evol-Instruct结合时,它还增强了MagicoderS模型,在HumanEval基准测试中表现出与ChatGPT等领先模型相似的令人印象深刻的性能。该研究建议公开模型权重、训练数据和源代码,以支持未来对于代码的语言模型和扩展OSS-INSTRUCT到更大的基础模型以生成更高质量数据的研究工作。

Leave a Reply

Your email address will not be published. Required fields are marked *