48个代码大模型汇总,涵盖原始、改进、专用、微调4大类

代码大模型具有强大的表达能力和复杂性,可以处理各种自然语言任务,包括文本分类、问答、对话等。这些模型通常基于深度学习架构,如Transformer,并使用预训练目标(如语言建模)进行训练。

在对大量代码数据的学习和训练过程中,代码大模型能够提升代码编写的效率和质量,辅助代码理解和决策,在代码生成、代码补全、代码解释、代码纠错以及单元测试等任务中都表现出十分出色的能力。

为了帮大家深入掌握代码大模型的发展历程和挑战,我这次整理了相关的48个模型以供同学们学习,分为了4大类,包括原始LM、LM改进、专用LM,以及微调模型。

模型原文及代码需要的同学看文末

原始LM

1.Lamda: Language models for dialog applications

用于对话应用程序的语言模型

模型简介:LaMDA是一种专门用于对话的神经网络语言模型,通过预训练和微调,可以显著提高其安全性和事实依据。在安全性方面,使用少量众包工人注释的数据进行微调的分类器过滤候选响应可以提高模型的安全性。在事实依据方面,允许模型咨询外部知识源可以使生成的响应基于已知来源。

2.Palm: Scaling language modeling with pathways

使用路径缩放语言模型

模型简介:本文介绍了一种名为PaLM的540亿参数密集激活Transformer语言模型,使用Pathways新机器学习系统在多个TPU Pod上进行高效训练。作者通过数百个语言理解和生成基准测试展示了规模缩放的持续优势,PaLM在一些多步推理任务上实现了突破性的性能,超过了最新的细调最先进技术和人类平均水平。此外,PaLM在多语言任务和源代码生成方面也表现出强大的能力。

3.Gpt-neox-20b: An open-source autoregressive language model

一个开源的自回归语言模型

模型简介:论文介绍了一种200亿参数的自回归语言模型GPT-NeoX-20B,该模型在Pile上进行训练,并通过允许性许可证向公众免费提供其权重。GPT-NeoX-20B是目前提交时公开可用权重最大的密集自回归模型。在这项工作中,作者描述了该模型的架构和训练,并在一系列语言理解、数学和基于知识的任务上评估了其性能。作者发现GPT-NeoX-20B是一个非常强大的少样本推理器,当评估5个示例时,其性能比类似的GPT-3和FairSeq模型获得更多收益。

  • 4.BLOOM: A 176b-parameter open-access multilingual language model

  • 5.lama: Open and efficient foundation language models

  • 6.GPT-4 technical report

  • 7.lama 2: Open foundation and finetuned chat models

  • 8.Textbooks are all you need II: phi-1.5 technical report

LM改进

1.Evaluating large language models trained on code

评估基于代码训练的大型语言模型

模型简介:Codex是一个用GPT模型微调的代码生成器,它在GitHub Copilot中有应用。在HumanEval评估集中,Codex的表现优于GPT-3和GPT-J。此外,通过从模型中重复采样,可以生成对困难提示的有效解决方案。然而,Codex存在局限性,例如难以处理描述长操作链的文档字符串以及将操作绑定到变量的能力。最后,作者讨论了部署强大的代码生成技术可能带来的更广泛的影响,包括安全、隐私和伦理问题。

2.Solving quantitative reasoning problems with language models

使用语言模型解决定量推理问题

模型简介:本文介绍了一种名为Minerva的大型语言模型,该模型在一般自然语言数据上进行预训练,并在技术内容上进行了进一步的训练。该模型在技术基准测试中实现了最先进的性能,而无需使用外部工具。作者还对物理学、生物学、化学、经济学和其他需要定量推理的科学领域的200多个本科水平的问题进行了评估,发现该模型可以正确回答近三分之一的问题。

3.Palm 2 technical report

Palm 2技术报告

模型简介:本文介绍了一种新型最先进的语言模型,该模型具有更好的多语言和推理能力,并且比其前身PaLM更计算高效。PaLM 2是一种基于Transformer的模型,使用多种目标进行训练。通过在英语和多语言语言以及推理任务上的广泛评估,作者证明PaLM 2在不同模型大小下对下游任务的质量有显著提高,同时表现出比PaLM更快和更高效的推理。

4.Code llama: Open foundation models for code

开放源代码模型

模型简介:论文提出了一个大型语言模型家族CodeLlama,可以生成代码,具有先进性能、开箱即用的填充能力以及对编程任务的指令跟随能力。作者提供了多种版本,覆盖各种应用,所有模型都在16k个令牌的序列上进行训练,并在最多100k个令牌的输入上有所改进。该模型在几个基准测试中表现出色,作者也发布了CodeLlama的Python版本。

专用LM

1. Learning and evaluating contextual embedding of source code

学习与评估源代码的上下文嵌入

模型简介:本文介绍了一种名为CuBERT的开源代码理解BERT模型,该模型使用GitHub上740万个Python文件的去重语料库进行预训练。作者还创建了一个包含五个分类任务和一个程序修复任务的开源基准测试集,类似于文献中提出的代码理解任务。作者将CuBERT与不同的Word2Vec标记嵌入、BiLSTM和Transformer模型以及已发布的最先进模型进行了比较,结果表明,即使使用较短的训练时间和较少的标记示例,CuBERT也能超越所有其他模型。

2.Codebert: A pre-trained model for programming and natural languages

一种用于编程和自然语言的预训练模型

模型简介:论文介绍了一种新的预训练模型CodeBERT,用于编程语言和自然语言。该模型使用基于Transformer的神经网络架构进行开发,并使用混合目标函数进行训练,以支持下游的自然语言代码搜索、代码文档生成等应用。作者通过微调模型参数在两个NL-PL应用上评估了CodeBERT的性能,结果表明,CodeBERT在这些任务上表现出色。

3.Graphcodebert: Pre-training code representations with data flow

基于数据流的代码表征预训练模型

模型简介:论文介绍了一种基于数据流的代码表征预训练模型Graphcodebert,该模型考虑了代码的内在结构。作者使用数据流作为语义级别的代码结构,而不是采用抽象语法树(AST)这样的语法级别的代码结构。作者还引入了两个结构感知的预训练任务,并在四个任务上评估了该模型,结果表明该模型在代码搜索、克隆检测、代码翻译和代码优化等任务上表现出色。

  • 4.Syncobert: Syntax-guided multi-modal contrastive pre-training for code representation

  • 5.CODE-MVP: learning to represent source code from multiple views with contrastive pre-training

  • 6.Intellicode compose: code generation using transformer

  • 7.Codexglue: A machine learning benchmark dataset for code understanding and generation

  • 8.A systematic evaluation of large language models of code

  • 9.Codegen: An open large language model for code with multi-turn program synthesis

  • 10.CERT: continual pretraining on sketches for library-oriented code generation

  • 11.Pangu-coder: Program synthesis with function-level language modeling

  • 12.Codegeex: A pre-trained model for code generation with multilingual evaluations on humaneval-x

  • 13.Textbooks are all you need

  • 14.Codefuse-13b: A pretrained multi-lingual code large language model

  • 15.Incoder: A generative model for code infilling and synthesis

  • 16.Santacoder: don’t reach for the stars!

  • 17.Starcoder: may the source be with you!

  • 18.Multi-task learning based pre-trained language model for code completion

  • 19.Unixcoder: Unified cross-modal pre-training for code representation

  • 20.Pymt5: multi-mode translation of natural language and python code with transformers

  • 21.Studying the usage of text-to-text transfer transformer to support code-related tasks

  • 22.DOBF: A deobfuscation pre-training objective for programming languages

  • 23.Unified pre-training for program understanding and generation

  • 24.Codet5: Identifier-aware unified pre-trained encoder-decoder models for code understanding and generation

  • 25.Sptcode: Sequence-to-sequence pre-training for learning source code representations

  • 26.Competition-level code generation with alphacode

  • 27.Natgen: generative pre-training by "naturalizing" source code

  • 28.Codet5+: Open code large language models for code understanding and generation

代码微调

1.Wizardcoder: Empowering code large language models with evolinstruct

使用evolinstruct为大型语言模型提供动力

模型简介:本文介绍了WizardCoder模型,它通过将Evol-Instruct方法应用于代码领域,为大型语言模型提供了更强的能力。作者在四个著名的代码生成基准测试上进行了实验,结果表明该模型比其他开源的大型语言模型表现更好,甚至超过了一些封闭的语言模型。

2.Pangu-coder2: Boosting large language models for code with ranking feedback

使用排名反馈提高大型语言模型的代码能力

模型简介:论文提出了一种新的RRTF(Rank Responses to align Test&Teacher Feedback)框架,可以有效且高效地提高预训练的大型语言模型的代码生成能力。在该框架下,作者提出了PanGu-Coder2,它在OpenAI HumanEval基准测试上达到了62.20%的pass@1。此外,通过对CoderEval和LeetCode基准测试进行广泛评估,作者表明PanGu-Coder2始终优于之前的所有Code LLM。

3.Octopack: Instruction tuning code large language models

指令调优代码大型语言模型

模型简介:该论文介绍了通过使用Git提交中的代码更改和人类指令,对大型语言模型进行指令调优的方法。这种方法利用了自然结构的Git提交,将代码更改与人类指令配对起来。他们编译了一个包含4TB数据的数据库CommitPack,涵盖了350种编程语言的Git提交。在16B参数的StarCoder模型上,与其他指令调优模型进行基准测试,该方法在HumanEval Python基准上取得了最佳性能(46.2% pass@1)。

  • 4.Mftcoder: Boosting code llms with multitask fine-tuning

  • 5.Compilable neural code generation with compiler feedback

  • 6.Coderl: Mastering code generation through pretrained models and deep reinforcement learning

  • 7.Execution-based code generation using deep reinforcement learning

  • 8.RLTF: reinforcement learning from unit test feedback

关注下方《学姐带你玩AI》🚀🚀🚀

回复“代码大模型”领取模型原文及源码

码字不易,欢迎大家点赞评论收藏!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/201423.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

配电网重构单时段+多时段(附带matlab代码)

配电网重构单时段多时段 对于《主动配电网最优潮流研究及其应用实例》的基本复现 简介:最优潮流研究在配电网规划运行中不可或缺,且在大量分布式能源接入的主动配电网环境下尤为重要。传统的启发式算法在全局最优解和求解速度上均无法满足主动配电网运行…

什么是计算机病毒?

计算机病毒 1. 定义2. 计算机病毒的特点3. 计算机病毒的常见类型和攻击方式4. 如何防御计算机病毒 1. 定义 计算机病毒是计算机程序编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或程序代码。因其特点与生…

【面试】typescript

目录 为什么用TypeScript? TS和JS的区别 控制类成员可见性的访问关键字? public protected),该类及其子类都可以访问它们。 但是该类的实例无法访问。 私有(private),只有类的成员可以访问…

什么是媒体发布?媒体发布平台有哪些?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 一,什么是媒体发布? 媒体发布是指利用互联网媒体及移动端媒体和传统媒体发布关于人物、品牌、商业公司等的新闻及推广软文和传记等的行为。媒体平台可以是电视、…

C51--LCD1602显示屏

LCD602显示: 1、概述 LCD602是一种工业字符型液晶,能够同时显示16x02,即32字符(16列,2行) 2、引脚: VSS:电源地VDD:电源正极——5V电源VO: 液晶显示偏压 …

激光切割机切割工件出现锯齿是什么原因?

金属激光切割机因切割速度快,效率高,切割效果好受到广大金属加工需求的厂家追捧,但在使用时不免出现一些小问题,如:在激光切割加工的时候出现锯齿的问题。 编辑搜图 请点击输入图片描述(最多18字&#xff…

详解Python中httptools模块的使用

httptools 是一个 HTTP 解析器,它首先提供了一个 parse_url 函数,用来解析 URL。这篇文章就来和大家聊聊它的用法吧,感兴趣的可以了解一下 如果你用过 FastAPI 的话,那么你一定知道 uvicorn,它是一个基于 uvloop 和 h…

京东API商品详情接口,通过商品ID获取商品名称,淘宝主图,价格,颜色规格尺寸,库存,SKU数据等调用示例

要接入京东API接口以采集电商平台上的商品数据,可以按照以下步骤进行: 注册并获取API密钥:在使用API接口之前,需要注册并获取API密钥。API密钥是识别身份的唯一标识符。每个API接口都有自己的注册、认证和授权过程,因…

Find My电容笔|苹果Find My技术与电容笔结合,智能防丢,全球定位

随着平板电脑的流行,有不少厂商都投入到了电容笔的开发当中,现在的电容笔不仅在精度上有了提高,甚至在笔触和压感上的研究都有进步。电容笔是利用导体材料制作的具有导电特性、用来触控电容式屏幕完成人机对话操作用的笔,电容笔通…

tsx语法

安装JSX库 安装完之后在vite.config.ts进行插件使用,代码如下: 然后就可以愉快的使用TSX来开发Vue组件了,下面主要说一下SFC和TSX的部分区别。 基本语法对照 defineComponent 和 setup setup中函数的返回值有多种方式,可以直接…

异常数据检测 | Python实现oneclassSVM模型异常数据检测

支持向量机(SVM)的异常检测 SVM通常应用于监督式学习,但OneClassSVM[8]算法可用于将异常检测这样的无监督式学习,它学习一个用于异常检测的决策函数其主要功能将新数据分类为与训练集相似的正常值或不相似的异常值。 OneClassSVM OneClassSVM的思想来源于这篇论文[9],SVM使用…

挑战传统IT:RPA以更低的成本和更高的效率领跑数字化转型

在企业数字化进程中,传统的IT解决方案往往带来高成本和低效率的问题。因此,如何顺利地、平稳地进行数字化转型对企业来说是核心考虑。 为此,本文将深入探讨RPA(Robotic Process Automation)如何以其独特的优势&#xf…

RabbitMQ消息模型之发布订阅Publish-Subscribe

发布订阅模型 Publish/Subscribe 发布订阅模型也称为广播模型,交换机类型需要指定为Fanout,正如从名称中猜到的那样,它是将接收到的所有消息广播到它知道的所有队列中。每个消费者都监听自己的队列,所以同一个消息,会…

MNIST手写数字识别

本篇文章是博主在人工智能等领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对人工智能等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅解。文章分类在Pytorch&#xff…

OpenMMlab导出FCN模型并用onnxruntime推理

导出onnx文件 直接使用脚本 import torch from mmseg.apis init_modelconfig_file configs/fcn/fcn_r18-d8_4xb2-80k_cityscapes-512x1024.py checkpoint_file fcn_r18-d8_512x1024_80k_cityscapes_20201225_021327-6c50f8b4.pth model init_model(config_file, checkpoin…

YOLOv8 代码部署

一、获取代码 YOLOv8官方GitHub网址 https://github.com/ultralytics/ultralytics 获取YOLOv8代码压缩包 二、虚拟环境配置 这个就不写了,装个Anaconda,网上教程很多 三、PyCharm安装与配置(可选) 这个也不写了,…

磁环电感参数计算

磁环电感参数计算 1.什么是电感磁饱和2.电感饱和的原因3.电感饱和带来的影响3.1 感应电动势变化3.2 电感值变化3.3 功率损耗增加3.4 系统稳定性受到影响4.饱和电流计算最近在做DC/DC电源,电感是用磁环绕制的,所以关注一下磁环绕制电感参数的计算,学习学习。 某款磁环参数。 …

SpringBoot——Swagger2 接口规范

优质博文:IT-BLOG-CN 如今,REST和微服务已经有了很大的发展势头。但是,REST规范中并没有提供一种规范来编写我们的对外REST接口API文档。每个人都在用自己的方式记录api文档,因此没有一种标准规范能够让我们很容易的理解和使用该…

3dMax导出glft和glb格式模型插件Max2Babylon教程

为了满足Autodesk提供自己的导出管道之前的迫切需要,Babylon.js导出器可用于3dMax。导出器可以将3dMax场景导出为.glTF文件、.glb文件或.babylon文件。 【适用版本】 3dMax2015 - 2024 【安装方法】 1.选择和自己电脑中3dMax所对应的插件版本,解压缩。…

基于Qt MP3音频播放器示例(可制作音频播放器)

​本次MP3文件也给出来,方便大家调试。话不多说直接上源码。 整个项目下载地址:CSDN:GetCode 昵称-》Qt魔术师:https://gitcode.com/m0_45463480/QtMP3/tree/main## .pro # 指定项目类型为应用程序。TEMPLATE = app# 指定项目的名称为musicplayerTARGET = musicplayer# 添…