收藏文章 楼主

开源商用平台,可商用的开源软件

版块:科技头条   类型:普通   作者:科技资讯   查看:66   回复:0   获赞:0   时间:2023-08-27 05:29:29

GPT-4:在代码生成中,你们仍然是“兄弟”。

今天,Meta的开源Llama模型家族迎来了一个新成员——Code Llama,这是一个专门从事代码生成的基础模型。

作为Llama 2的代码专用版本,Code Llama基于特定的代码数据集进行了进一步的微调和训练。

Meta表示,Code Llama的开源协议和Llama 2一样,出于研究和商业目的是免费的。

相关论文《Code Llama:Open Foundation Models for Code》已经出版,47页,25位作者。

地址:https://ai . meta . com/research/publications/code-llama-open-foundation-models-for-code/

GitHub地址:https://github.com/facebookresearch/codellama

Code Llama系列模型有三个版本,参数分别为7B、13B、34B。并且支持多种编程语言,包括Python、C++、Java、PHP、Typescript (Javascript)、C#和Bash。

编码Llama稳定地支持多达100,000个令牌的上下文生成。下图2显示了Code Llama的微调过程。

就其效果而言,不同版本的Code Llama在HumanEval和MBPP数据集上的通过率(pass@1)可以超过GPT-3.5。

此外,在HumanEval数据集上,“自然”34b版本的Code Llama的pass@1接近GPT-4(62.2%对67.0%)。Meta没有发布这个版本,但是通过训练少量高质量的编码数据,取得了明显的效果提升。

这个特别版本吸引了很多人的关注,包括特斯拉前AI总监、回归OpenAI的Andrej Karpathy。

虽然文中提到它是“15000条非自然指令上的代码Llama-Python 34B的微调版”,但卡帕西仍然对这个“神秘的名字,模糊的描述,碾压其他秘密模型”感到好奇。

美洲驼代码是如何工作的

Code Llama的编码能力非常强,可以根据代码和自然语言提示生成代码(比如用户输入提示“帮我写一个输出斐波那契数列的函数。)它还可以帮助用户完成和调试代码。

用500B代码令牌和代码相关数据训练三个参数版本的代码Llama模型。7B和13B也是由FIM(中间填充)训练的,FIM允许将代码插入到现有代码中,这意味着它们可以支持开箱即用代码完成等任务。

下表是Code Llama的训练数据集。

利用这三种模型,可以满足不同的服务和延迟要求。比如7B机型可以在单个GPU上运行;34B模型可以返回最好的结果,并提供更好的编码帮助,但在速度方面,较小的7B和13B模型更快,更适合低延迟任务,如实时代码完成。

Code Llama不仅提供多达10万个上下文令牌的稳定生成,所有模型的训练令牌序列也高达16000个。

除了作为生成更长程序的先决条件之外,拥有更长的输入序列也为编码Llama带来了新的功能。例如,用户可以从他们的代码库中为模型提供更多的上下文,以使生成的代码更加相关。

值得一提的是,Meta进一步微调了Code Llama的另外两个变种:Code Llama-Python和Code Llama-Instruct。

Code Llama-Python是Code Llama的变种,在Python代码的100B令牌上进一步微调。下表是Code Llama-Python的训练数据集。

Code Llama-instruction是Code Llama的指令微调和对齐的变体,可以更好地理解输入提示。Meta建议在使用Code Llama进行代码生成时,使用Codellama-instruction的变体,因为Code Llama-instruction已经过微调,可以用自然语言生成有用且安全的答案。

Meta表示,他们不建议使用Code Llama或Code Llama-Python来执行一般的自然语言任务,因为这两种模型都不是为了遵循自然语言指令而设计的。Code Llama专门用于特定于代码的任务,不适合作为其他任务的基本模型。

使用Code Llama模型时,用户必须遵守许可和使用政策。

Code Llama性能如何?

Meta使用两个编码基准:HumanEval和MBPP(主要是基本的Python编程)进行测试。其中,HumanEval测试模型基于文档docstrings完成代码的能力,MBPP测试模型基于描述代码的能力。

结果表明,Code Llama的性能优于针对代码任务的开源LLM,也优于其自带的Llama 2。例如,Code Llama 34B在HumanEval上的得分为53.7%,在MBPP上的得分为56.2%,与其他最先进的开源解决方案相比是最好的,与ChatGPT相当。

然而,Code Llama也有风险。Meta表示,建立一个负责任的AI模型非常重要,他们在发布代码Llama之前采取了很多安全措施。作为红队测试的一部分,Meta定量评估了代码Llama生成恶意代码的风险。他们创建了一些提示,试图让模型生成恶意代码,并将Code Llama对这些提示的响应与ChatGPT (GPT3.5 Turbo)进行了比较。事实证明Code Llama的答案更安全。

从这个角度来说,编码能力并不是特别强的骆马2,这个坑已经被Code Llama填了。Meta希望Code Llama的出现能够激励其他研究人员基于Llama 2为研究和商业产品创造新的创新工具。

剧终

授权请联系本微信官方账号。

投稿或寻求报道:content@jiqizhixin.com。

 
回复列表
默认   热门   正序   倒序

回复:开源商用平台,可商用的开源软件

Powered by 7.12.10

©2015 - 2025 90Link

90link品牌推广 网站地图

您的IP:10.1.228.218,2025-12-20 04:39:13,Processed in 0.18214 second(s).

豫ICP备2023005541号

头像

用户名:

粉丝数:

签名:

资料 关注 好友 消息
免责声明
  • 1、本网站所刊载的文章,不代表本网站赞同其观点和对其真实性负责,仅供参考和借鉴。
  • 2、文章中的图片和文字版权归原作者所有,如有侵权请及时联系我们,我们将尽快处理。
  • 3、文章中提到的任何产品或服务,本网站不对其性能、质量、适用性、可靠性、安全性、法律合规性等方面做出任何保证或承诺,仅供读者参考,使用者自行承担风险。
  • 4、本网站不承担任何因使用本站提供的信息、服务或产品而产生的直接、间接、附带或衍生的损失或责任,使用者应自行承担一切风险。

侵权删除请致信 E-Mail:3454251265@qq.com