- 简介本文介绍了一种名为AlchemistCoder的代码生成模型,它是一系列经过增强的Code LLMs,并且在多源数据上进行了微调,具有更强的代码生成和泛化能力。为了实现这一点,研究人员首次揭示了多源代码语料库中不同风格和质量之间的内在冲突,并引入了称为AlchemistPrompts的数据特定提示,通过事后重新标记来协调不同的数据源和指令响应对。此外,他们还提出将数据构建过程纳入微调数据中作为代码理解任务,包括指令演变、数据过滤和代码审查。广泛的实验表明,AlchemistCoder在同等规模的所有模型中处于领先地位(6.7B/7B),并且与更大的模型(15B/33B/70B)相媲美甚至超越了它们,展示了他们的方法在提高指令遵循能力和推动代码智能边界方面的有效性。
- 图表
- 解决问题本文旨在提高预训练代码语言模型(LLMs)的代码生成和泛化能力,通过在多源数据上进行微调,解决现有Code LLMs单一数据源、质量和多样性有限的问题。
- 关键思路本文提出了一种新的数据特定提示方法,称为AlchemistPrompts,以解决多源代码库中不同风格和质量之间的冲突,并将数据构建过程纳入微调数据中作为代码理解任务,包括指令演化、数据过滤和代码审查。
- 其它亮点本文提出的AlchemistCoder在相同大小的模型(6.7B/7B)中表现卓越,甚至可以与更大的模型(15B/33B/70B)相媲美或超越,展示了该方法在提高指令跟随能力和推进代码智能方面的有效性。实验使用了多个数据集,包括CodeSearchNet、Github、StackOverflow等,并开源了代码。
- 在此领域的相关研究包括CodeBERT、GraphCodeBERT、GPT等。
沙发等你来抢
去评论
评论
沙发等你来抢