迅速逼近 ChatGPT!Meta Llama 最新程式码产生模型直追 GPT-4
▼
发表开源商用大模型 Llama 2 后,Meta 日前又发表程式设计版 Code Llama,弥补程式码任务表现不佳缺点,拉近与闭源 GPT 模型的差距,测试结果直追 GPT-4。
Code Llama发表前两天,OpenAI开放微调GPT-3.5功能,允许开发者和企业据自己需求客制模型。身为开源和闭源综合实力最强的两大模型,不免有些你追我赶意味,甚至出现一丝火药味。
程式设计为大语言模型最重要应用,几乎所有产品和服务都离不开,每次最佳化和改版都有重要意义。此次Code Llama是在Llama 2基础上,以特定程式资料库训练,支援C++、Java、Python、PHP、Typescript(Javascript)、C#和Bash等许多主流语言,且依然开源可商用。
Code Llama对程式设计专家和初学者都非常好用,无论专业程式设计语言还是自然语言描述程式设计需求,Code Llama都能理解,并产生程式码或相关解释,大大降低开发门槛和效率。
多版本模型涵盖更多特定场景
Meta部落格文说明Code Llama分为7B、13B和34B三个参数版,可满足不同服务和延迟要求。每版模型都使用500B tokens与相关资料训练。
最小7B参数模型可用单GPU运行,回应速度快,适用低延迟任务。但比起更大模型,程式码产生或理解当然不够精准。最大34B模型提供最佳编码辅助,复杂程式设计表现最好,但需要最多计算资源,延迟也可能更高。中等规模13B参数模型在性能和延迟间找到平衡点。7B和13B模型经过中间填充(fill-in-the-middle,FIM)训练,理解如何在现成程式码内加入新程式码,可补全直接自动程式码等,无需另外设定或训练。
Code Llama支援一次性理解并记住最多10万token上下文,强大的文本处理能力对处理大型程式库或长篇文章都非常有用。当开发者需处理大量程式码时,可将整个程式码片段一次性喂给Code Llama。为了满足更多特定需求,Meta还针对Python和自然语言指令微调两个Code Llama变体,分别称为Code Llama-Python和Code Llama-Instruct。
Python是最受欢迎程式设计语言,多领域广泛应用,特别数据科学、机器学习等。专门针对Python的模型能更准确产生和理解Python程式码,提高模型处理相关任务时的性能。
Code Llama-Instruct更注重理解自然语言指令,非常适合不很熟悉程式设计但又有这方面需求的使用者,更容易理解自然语言指令,更适合非专业使用者,除了产生程式码,也能胜任其他相关自然语言处理任务,如程式码注释或产生文件。
透过更多垂直子版,Code Llama模型涵盖更广范例和族群,满足不同场景特定需求,更容易取得竞争优势。Meta说明,Code Llama更专注程式码任务,不适合当成聊天或写文章等日常语言的基础模型,只是为了帮助人们设计程式或处理程式码问题而设计。
性能和安全性双双领先
Code Llama的性能,多程式码基准测试都达开源模型最先进程度。Code Llama所有模型在MultiPL-E都优于其他公开模型。34B参数版的HumanEval得分为53.7%,MBPP得分56.2%,与ChatGPT(GPT 3.5)相当,优于其他开放解决方案。
安全性方面,Meta采取许多措施,如研究者要求写恶意程式,Code Llama是否会听话产生,并与ChatGPT比较,结果显示Code Llama更不容易产生有问题或有害程式码。
Meta详细介绍Code Llama的论文〈Code Llama: Open Foundation Models for Code〉披露Code Llama开发细节及如何基准测试等,其中出现Unnatural Code Llama模型(上图),各项评分都非常高,但只是一闪而过并未详述,或许之后Code Llama还会出现更强版本。
(本文由 品玩 授权转载;首图来源:Meta)
▼
特别声明 本页内容仅供参考,版权终归原著者所有,若有侵权,请联系我们删除。