打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
代码大战白热化:WizardCoder挑落Bard及Claude,性能直追ChatGPT
userphoto

2023.06.23 上海

关注

Github链接:https://github.com/nlpxucan/WizardLM/tree/main/WizardCoder

论文链接:https://arxiv.org/abs/2306.08568

作为大语言模型(LLM)最重要也最具挑战性的能力之一,代码生成与补全同时吸引了 AIGC 学术界与工业界广泛研究和关注。根据 OpenAI 相关技术报告,GPT4 在 HumanEval 经典代码生成与补全任务中取得了惊人的成绩,一次通过率高达 85% 以上!

与此同时,在开源领域,由 Huggingface BigCode Project 主导发布的 StarCoder 更进一步提升了开源模型在这一领域的表现,达到了新的先进水平。

然而,我们依然注意到,目前最佳开源模型 InstructCodeT5+ 在 HumanEval 任务上的通过率也仅约为 35%,仍远低于包括 ChatGPT、Bard、Claude 等在内的一众闭源模型性能。

显然,与开放域通用对话能力相比,闭源与开源 LLM 在代码生成方面的差距尤为明显,又因为代码生成对于准确度与逻辑推理能力的严苛标准,因此追赶和提升难度也更高。

最近,WizardLM 团队开源了一款全新的代码大模型——WizardCoder,它打破了闭源模型的垄断地位,显著超越 Anthropic Claude 与谷歌 Bard,成为新时代的开源领军者。

距离 WizardLM 宣布团队开源 WizardCoder 仅 5 天,该模型即获得了大模型社区广泛的关注与认可。

甚至有知名软件工程师在 Python 与 JavaScript 语言上试用 WizardCoder 一天后,认为不必再继续使用 GPT-4。

也有网友调侃,本周 WizardCoder 的出现使他感受到了与阅读 CVPR 推文和整理自家花园一样的快乐。

而在 YouTube, 顶流 AI 博主 Aitrepreneur 也制作了专业的评测视频,高度赞誉 WizardCoder。

WizardCoder性能详情

具体地,在代码补全任务中,WizardCoder 经过了四个专业评测(HumanEval, HumanEval+, MBPP, 与 DS-1000)。

令人惊叹的是,它在 HumanEval 和 HumanEval+ 两个任务上的表现仅次于千亿级别的巨无霸模型 GPT3.5/4,位列第三名,同时显著领先 Claude 和 Bard,尽管 WizardCoder 的参数量远远小于以上四者。

除了与闭源模型的 PK,WizardCoder 还与当前的开源代码模型进行了对比。毫无疑问,在 HumanEval 和 MBPP 这两个代码补全任务中,WizardCoder 依然以惊人的优势超越了现有的开源模型 SOTA。

其中在 HumanEval 任务中,WizardCoder 的 pass@1 指标提升了 22.3 个百分点,在 MBPP 任务中,pass@1 指标提升了 8.2 个百分点。

除了之前以上评测,WizardCoder 还接受了数据科学领域相关的代码补全和代码插入任务的挑战 DS-1000。这些任务要求模型熟悉并巧妙运用各种数据科学库,如 numpy 和 pytorch,来完成代码。

实验结果表明,在几乎所有的相关任务中,WizardCoder 依然远超当前开源模型的最高水平(SOTA),持续展现出卓越的性能。

与此同时,在 Huggingface 社区中,网友们利用编程面试问题数据集 CanAiCode对 WizardCoder 进行了评测。结果显示 WizardCoder 取得了惊人的 98.5% 准确率,位居第二位,它仅比 ChatGPT 多做错了一道题,得分遥遥领先第三名(且同为 Wizard 家族的 WizardLM-30B)。这进一步证明了 WizardCoder 在编程领域的强大实力。

WizardCoder是怎样炼成的

我们仔细研究了相关论文,希望解开这款强大代码生成工具的秘密。与其他知名的开源代码模型(例如 StarCoder 和 CodeT5+)不同,WizardCoder 并没有从零开始进行预训练,而是在已有模型的基础上进行了巧妙的构建。它选择了以 StarCoder 为基础模型,并引入了 Evol-Instruct 的指令微调技术,将其打造成了目前最强大的开源代码生成模型。

2.1 Evol-Instruct算法

这个算法可以追溯到该团队之前的另外一个开源大模型 WizardLM。

手动创建、收集和筛选高质量指令数据需要巨大的工作量,但 Evol-Instruct 提出了一种高效的方法,利用 LLM(语言模型)而不是人类来创建各种复杂度级别的大量指令数据。

通过利用该算法生成的指令数据集,WizardLM 仅以 130 参数量成为了 AlpacaEval 开源大模型排行榜中的冠军。

2.2 Code Evol-Instruct

与 WizardLM 不同,WizardCoder 在 Evol-Instruct 的基础上进行了代码领域的适配。其思路是不再采用分叉进化的方式,而是从一个简单的初始指令开始,逐步线性演化为更复杂的指令。

对应的进化 prompt 为:

根据代码领域的相关特性,包括代码调试和时空复杂度,研究者们在进化操作中引入了 5 项限制。这些限制对应的 prompt 如下:

WizardLM团队的开源工作

Wizard 团队在GitHub 及 Huggingface 平台上向公众开源了一系列基于 Evol-Instruct 算法的指令微调大模型,其中包括 WizardLM-7/13/30B-V1.0 和 WizardCoder-15B-V1.0,Wizard 团队以其持续研究和分享优质的 LLM 算法赢得了业界的广泛赞誉,让我们满怀期待地希望他们未来贡献更多的开源成果。

模型链接:

https://huggingface.co/WizardLM

参考文献

[1] GPT-4: https://openai.com/gpt-4

[2] Claude: https://www.anthropic.com/index/introducing-claude

[3] WizardLM: https://github.com/nlpxucan/WizardLM

[4] WizardCoder: https://github.com/nlpxucan/WizardLM/tree/main/WizardCoder

[5] HumanEval: https://github.com/openai/human-eval/tree/master

[6] MBPP: https://github.com/google-research/google-research/tree/master/mbpp

[7] DS-1000: https://ds1000-code-gen.github.io/

[8] CanAiCode: https://huggingface.co/spaces/mike-ravkine/can-ai-code-results

更多阅读

#投 稿 通 道#

让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

· 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

· 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

· PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
超越所有开源模型,击败 Claude、Bard,专门用于编程任务的大模型来了
集成14款AI,让ChatGPT、GPT4、Claude克劳德、Bard等AI同时回答
如何利用人工智能帮你做事:工具选择指南
ChatGPT羊驼家族全沦陷!CMU博士击破LLM护栏,人类毁灭计划脱口而出
chatGPT与Google bard谁更强?
StarCoder 代码助手: 愿源代码与你同在!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服