揭秘当下八大顶尖编程大模型的精彩概览!

在大语言模型中,代码的支持功能可是个关键内容哦。你知道吗?那些专门用代码数据训练出来的模型,不仅在代码补全方面表现得很好,甚至还可能是大语言模型逻辑能力的一部分来源。今天我们就来聊聊目前业界对代码补全(生成)专门做的8个大模型。这些信息来源于DataLeanre的官方博客:当前业界最优秀的8个编程大模型简介:从最早的DeepMind的AlphaCode到最新的StarCoder全解析~ | 数据学习者官方网站(Datalearner)

揭秘当下八大顶尖编程大模型的精彩概览!

这里需要说明的是,我们要聊的可都是编程大模型,而不是代码补全插件,所以像AWS的CodeWhisper、Tabnine这些就不在讨论范围内啦。欢迎大家补充哦~

  • DeepMind的AlphaCode
  • OpenAI的Codex/GitHub的Copilot
  • Saleforce的CodeT5
  • Saleforce的CodeGen/CodeGen2
  • MetaAI的InCoder
  • 清华大学的CodeGeeX
  • Replit的Replit Code
  • BigCode的StarCoder/StarCoderBase

DeepMind的AlphaCode

DeepMind在2021年1月的AAAI-21会议上首次介绍了AlphaCode,这篇论文叫《AlphaCode: Neural Code Generation with Transformer Decoders》。

揭秘当下八大顶尖编程大模型的精彩概览!

虽然AlphaCode的模型和数据集还没有开源,但DeepMind已经提供了一个在线演示,大家可以输入代码注释,然后它会生成对应的Python代码,地址是:https://alphacode.deepmind.com。

在论文中,DeepMind提到AlphaCode使用的是Transformer编码器-解码器模型,并且通过大量开源的Python代码数据进行预训练。编码器这边负责把代码注释转化为向量表示,而解码器则生成相应的Python代码。

尽管AlphaCode没有开源,但作为首个能够依据自然语言描述生成结构化代码的AI系统,它在学术界和产业界都引起了轰动。它展示了通过大规模无监督学习,机器学习模型可以达到编写基本代码的能力,这让很多研究者充满期待,认为未来AI可能会真正帮助程序员,推动软件自动化生产的实现。

OpenAI的Codex和GitHub的Copilot

说到OpenAI Codex,这其实是基于GPT-3进一步发展的模型,早在2021年8月就对外发布了。它的训练过程中,吸收了大量自然语言和公开的代码,其中也包括了来自GitHub的代码。Codex最擅长的是Python,但它在JavaScript、Go、Perl、PHP、Ruby、Swift、TypeScript和Shell等多种编程语言上也游刃有余。更有意思的是,它能处理的Python代码内存是14KB,而GPT-3只有4KB,这意味着Codex在执行任务时可以利用更多的上下文信息,差不多是3倍多。

揭秘当下八大顶尖编程大模型的精彩概览!

而GitHub的Copilot是GitHub跟OpenAI联手推出的代码补全工具,它其实是基于Codex开发的一个插件,专门为了帮助程序员更高效地写代码。Codex作为一个编程模型,能够理解人类的语言指令,并生成能用的代码。简单来说,Codex是一个大型编程模型,而Copilot则是基于这个模型的一个实用工具。

Salesforce的CodeT5

在2021年9月,Salesforce发布了CodeT5模型。这个模型是通过800多万个函数和8种编程语言的代码训练出来的,最大版本的参数高达7.7亿(这个版本是在2022年7月推出的)。

截至目前,Salesforce已经推出了4个版本的CodeT5模型,都是开放源代码的。

  • CodeT5-small:参数数量为0.6亿
  • CodeT5-base:参数数量为2.2亿
  • CodeT5-large:参数数量为7.7亿
  • CodeT5-large-ntp-py:参数数量为7.7亿

Salesforce的CodeGen和CodeGen2

在2022年5月,Salesforce又推出了新的编程模型CodeGen。这个模型有多个版本,参数分别为3.5亿、20亿、60亿和160亿。同时,它的训练数据也分为三种:

  1. nl版本:基于Pile数据集进行训练
  2. multi版本:在nl版本的基础上,继续用多种编程语言的数据集进行训练
  3. mono版本:在multi版本上,进一步基于Python代码进行训练

这12个模型都可以在HuggingFace上找到,都是开源的哦。

2023年5月3日,Salesforce开源了CodeGen的第二代版本:CodeGen2。这个系列也有4个版本,分别为10亿参数、37亿参数、70亿参数和160亿参数。CodeGen2支持更多编程语言,并且可以进行代码插入,这里的插入指的就是在已有代码中添加新代码。

同样,CodeGen2也是完全开源的,其中160亿参数的版本开源文件大约有66GB。

MetaAI的InCoder

InCoder是MetaAI在2022年4月推出的一个大型编程模型。它的训练数据主要来自于一些开放许可的在线代码,比如GitHub和StackOverflow,专注于Python和JavaScript,覆盖了28种编程语言,总共使用了约200GB的数据(经过去重和清理处理)。

公开的模型有两个版本,一个是67亿参数,另一个是13亿参数。

虽然InCoder的训练数据都是开放许可的,但要注意的是,MetaAI发布的InCoder模型并不是可以用于商业用途的哦!

清华大学的CodeGeeX模型

在2022年9月,清华大学推出了名为CodeGeeX的模型。这个模型可是个大块头,拥有130亿个参数,支持多种编程语言哦!它是利用华为的MindSpore框架,经过在鹏城实验室的“鹏城云脑II”上,使用192个节点和1536个国产昇腾910 AI处理器进行训练的。到2022年6月22日,CodeGeeX经过两个月的努力,在超过8500亿个Token的20多种编程语言的代码库上完成了预训练。

揭秘当下八大顶尖编程大模型的精彩概览!


这个CodeGeeX模型的参数量真不小,达到130亿,内部结构有40层transformer,每层有5120个的self-attention模块,前馈层数量则是20480,最长可以支持2048的序列。

在各项测试中,CodeGeeX表现得相当不错,实在是国货之光!不过要记住,这个模型的预训练结果只限个人使用,不能用于商业哦!

Replit推出的Replit Code

Replit Code V1-3b是Replit推出的代码生成工具,它的模型有27亿个参数,支持20种编程语言,训练时使用了5250亿个tokens。经过10天的训练,这个模型的效果甚至超过了目前所有的开源模型(根据人工评估)。

揭秘当下八大顶尖编程大模型的精彩概览!

在2023年5月3日,Replit Code V1-3b正式上线,并在HuggingFace上开源。与此一同发布的还有Replit-finetuned-v1-3b,它们都是Replit开发的编程大模型。虽然Replit-code-v1-3b被明确标记为开源,但关于Replit-finetuned-v1-3b是否开源并没有明确的说明。2023年5月3日开放的是前者。

BigCode的StarCoder和StarCoderBase

StarCoder是BigCode基于GitHub数据训练的一个代码补全大模型,能够实现方法生成或代码行的补全。它的训练数据来自Stack v1.2,这是一个从GitHub收集的包含大量代码的数据集。StarCoder的context长度达到了8192个tokens。

StarCodeBase和StarCode同样是BigCode的开源编程大模型,它们都基于GPT-2架构。不同之处在于StarCodeBase是在超过80种编程语言上训练的,基于1万亿tokens的数据集,而StarCode则是在此基础上,继续在350亿的python tokens上进行训练。

这两个模型的参数规模也都是155亿,真是让人期待的成果!

来源:今日头条
原文标题:当前业界最优秀的8个编程大模型简介 – 今日头条
声明:
文章来自网络收集后经过ai改写发布,如不小心侵犯了您的权益,请联系本站删除,给您带来困扰,深表歉意!

《揭秘当下八大顶尖编程大模型的精彩概览!》有10条评论

  1. 从文章中了解到目前编程大模型的发展非常迅速,尤其是AlphaCode和Codex的表现让人期待,真希望能更快看到这些技术普及。

    回复
  2. 对这些编程大模型的介绍让我大开眼界,尤其是AlphaCode的能力真的令人震惊,期待它能在实际应用中帮助程序员提高效率。

    回复
  3. 文章提到的编程大模型真的很有意思,尤其是Codex在多种编程语言上的优势,未来程序员的工作会被极大简化。希望能看到更多应用实例。

    回复
  4. 对编程大模型的解析让我对未来的编程方式充满期待,尤其是AlphaCode的生成能力,真的可以减轻程序员的负担。希望能看到更多实际应用案例!

    回复
  5. 文章对各大编程大模型的深入分析很有价值,尤其是对AlphaCode的描述,让我对未来的编程工具充满期待。希望这些技术能真正帮助程序员提升效率。

    回复
  6. 这篇文章让我对编程大模型有了更深入的了解,特别是Codex在多语言上的表现非常出色,未来编程的智能化程度值得期待。

    回复
  7. 对编程大模型的精彩概览让我受益匪浅,特别是DeepMind的AlphaCode,真的是开启了编程的新纪元,希望能看到更多实际应用。

    回复
  8. 了解了当前的顶尖编程大模型,尤其是Codex和AlphaCode的能力,确实让人对未来的编程充满期待,这将大大提升开发效率。

    回复
  9. 了解到这些顶尖编程大模型的进展,尤其是AlphaCode的生成能力,未来的编程将更加智能化,期待能为开发者带来更多便利。

    回复
  10. 了解了这些顶尖编程大模型的特点,特别是StarCoder的崛起,让人对编程的未来充满期待,期待它们能进一步推动软件开发的智能化进程。

    回复

发表评论