AlchemistCoder是由InternLM开发的编码模型系列。基于Llama 2进行微调。

7B

17 拉取 2个月前更新

README

模型摘要
AlchemistCoder是由InternLM开发的一系列编码模型。
此模型基于Llama 2微调,应该擅长所有与编码相关的任务。

亮点

摘要:开源大规模语言模型(LLMs)及其专用变体,特别是代码LLMs,最近展现出令人印象深刻的性能。然而,以前的代码LLMs通常在单一来源数据上微调,这些数据的质量和多样性有限,可能无法充分调动预训练代码LLMs的潜力。在这篇论文中,我们介绍了AlchemistCoder,这是一个系列代码LLMs,通过在多云集数据上微调,提高了代码生成和泛化能力。为此,我们率先揭示多云集代码语料库中各种风格和质量的内在冲突,并引入了具有事后标注的数据特定提示,称为AlchemistPrompts,以协调不同的数据源和指令-响应对。此外,我们将数据构建过程纳入微调数据作为代码理解任务,包括指令进化、数据过滤和代码审查。大量实验表明,AlchemistCoder在各种相同大小(6.7B/7B)的模型中占据明显优势,并与更大模型(15B/33B/70B)相当甚至超越,展示了我们在改善指令跟随能力和推进代码智能边界方面的方法有效性。

AlchemistPrompts:设计为特定于数据提示,以协调多云集数据中的内在冲突并在细粒度级别减轻指令/响应不匹配。

代码理解任务:来自数据构建流程,包括指令进化、数据过滤和代码审查。

协调多云集数据:在包含6种高质量数据的200M令牌上微调的指令。

卓越的模型性能:超越所有相同大小(6.7/7B)的开源模型,并在6个代码基准测试中与更大模型(15B/33B/70B/ChatGPT)相当甚至击败。

高级通用能力:通过在MMLU、BBH和GSM8K上的显著改进而得到证明。