完全开源的代码大模型OpenCoder来了,跻身性能第一梯队

完全开源的代码大模型OpenCoder来了,跻身性能第一梯队

💡 原文中文,约5400字,阅读约需13分钟。
📝

内容提要

OpenCoder项目由墨尔本大学和复旦大学的研究生合作开发,旨在提供高质量的开源代码大型语言模型(CodeLLM)。该项目公开了模型权重、训练数据和处理流程,推动了代码AI的可复现性发展。研究团队强调数据质量和合成数据的重要性,OpenCoder在多个评估任务中表现优异,超越了现有的开源模型。

🎯

关键要点

  • OpenCoder项目由墨尔本大学和复旦大学的研究生合作开发,旨在提供高质量的开源代码大型语言模型(CodeLLM)。
  • 该项目公开了模型权重、训练数据和处理流程,推动了代码AI的可复现性发展。
  • 研究团队强调数据质量和合成数据的重要性,OpenCoder在多个评估任务中表现优异,超越了现有的开源模型。
  • OpenCoder不仅公开了模型权重和推理代码,还提供了可重复的训练数据和完整的数据处理流程。
  • 构建高质量CodeLLM的关键因素包括数据质量、添加互联网代码相关语料和使用高质量合成数据。
  • OpenCoder希望通过更高的开源程度,加速研究进展,推动代码AI的可复现发展。
  • RefineCode是OpenCoder提出的高质量、可复现的数据集,包含9600亿个标记,涵盖607种编程语言。
  • 数据处理流程包括预处理、去重、转换、过滤和数据重配比,以确保数据的高质量。
  • OpenCoder采用WSD学习率调度策略,确保模型的稳定性与高效性。
  • 指令微调阶段使用两阶段训练策略,提升模型的泛化能力和适应性。
  • 消融分析表明,file-level去重是代码数据去重的最优选择,高质量合成数据对性能提升至关重要。
  • OpenCoder在HumanEval、MBPP等评估任务上显著超过现有开源模型,验证了其数据处理流程与合成数据的有效性。
  • OpenCoder在多语言代码生成评估基准中表现突出,证实了其出色的多语言性能。
➡️

继续阅读