使用自然语言生成高质量的代码是大模型落地中的高频需求。近日,IDEA研究院封神榜团队正式开源最新的代码大模型Ziya-Coding-34B-v1.0,我们在HumanEval Pass@1的评测上,取得了75.5的好成绩,超过了GPT-4(67.0)的得分,也成为目前已知开源模型新高。
封神榜团队正在为社区提供先进的大模型技术和经验,帮助生产和定制更多优秀垂类模型,推进大模型生态发展。
此次开源的Ziya-Coding-34B-v1.0,基于Code LLaMA 34B的预训练模型,经过了两个阶段的有监督精调,支持多种与代码相关的任务,包括代码生成、代码解释、代码纠错以及单元测试的生成等,能够以最佳性能辅助场景应用,欢迎点击开源链接体验!
Ziya-Coding-34B-v1.0开源地址
ModelScope地址:
Fengshenbang/Ziya-Coding-34B-v1.0
Huggingface地址:
IDEA-CCNL/Ziya-Coding-34B-v1.0
先进技术积累效果再创新高
封神榜团队在代码大模型的预训练和精调技术上积累了丰富的经验。在9月初,我们开源了基于StarCoder-15B的代码模型Ziya-Coding-v1。100B token高质量中英文自然语言的继续预训练,使其具备了优秀的自然语言理解能力,在使用中文进行代码相关任务等方面尤为突出。Ziya-Coding-v1在HumanEval Pass@1的评测上也取得了50.2的好成绩。
Meta发布的Code LLaMA 34B使用了500B的代码token,在LLaMA2 34B的基础上进行继续预训练,在代码相关任务上具备了优异的基础性能。以Code LLaMA 34B作为底座模型,社区开发出了WizardCoder-Python-34B-v1.0、Phind-CodeLLaMa-34B-v2和CodeFuse-CodeLLaMA-34B等优秀的代码指令模型。我们将训练Ziya-Coding-v1积累的先进经验迁移到了第二个版本的训练中,以Code LLaMA 34B模型作为底座进行精调。
我们收集并构造了约45万涵盖了几乎所有代码相关任务的指令数据进行第一阶段的微调,这其中包括约10万的中文指令和35万的英文指令,保证了数据的多样性,为模型对代码指令的意图理解能力打下了坚实的基础。在构造数据时,我们充分利用了高质量的无指令代码数据,使用LLM生成对应的指令,扩充得到了更多高质量的代码指令数据。
我们注意到,代码指令的难度和正确性是训练代码模型成功的关键。因此,我们引入了第二阶段的精调。我们使用evol-instruct的方法生成了大量高难度多要求的代码指令数据,并利用代码编译器作为反馈,筛选出能够通过编译的代码。最后利用LLM生成单元测试进一步验证代码的正确性。我们最终筛选出了46k数据,在第一阶段模型的基础上,使用较低的学习率进行微调,最终得到了我们的Ziya-Coding-34B-v1.0。
持续探索助力中国大模型社区发展
我们将持续对Ziya-Coding-34B-v1.0进行详尽的性能测试,欢迎关注我们的主页,了解更多使用示例和成功应用案例,同时也欢迎有意向进行商业合作的应用开发者与我们联系。
封神榜ModelScope主页
organization/Fengshenbang
封神榜huggingface主页
https://huggingface.co/IDEA-CCNL
封神榜github主页
IDEA-CCNL/Fengshenbang-LM
近期,LLM agent在社区中引起了火热的讨论,其光明的应用前景正在被更多人看到。作为agent中的重要组成部分,代码模型发挥着重要的作用,在商业分析、知识检索等领域,代码模型可以作为接口与知识和数据连接起来。封神榜团队也在积极探索agent相关技术,我们将在知识agent产品上进行持续的探索,欢迎关注我们的工作。
点击直达模型链接:https://modelscope.cn/models/Fengshenbang/Ziya-Coding-34B-v1.0/summary