Co

CodeT5

编程大模型

CodeT5

发布时间: 2021-09-02

模型参数(Parameters)
未披露
最高上下文长度(Context Length)
2K
是否支持中文
不支持
推理能力(Reasoning)

模型基本信息

是否支持推理过程

不支持

最高上下文输入长度

2K tokens

最长输出结果
暂无数据
模型类型

编程大模型

发布时间

2021-09-02

模型预文件大小

892MB

开源和体验地址

代码开源状态
预训练权重开源
Apache 2.0 - 免费商用授权
GitHub 源码
Hugging Face
在线体验
暂无在线体验地址

官方介绍与博客

API接口信息

接口速度(满分5分)
暂无数据
接口价格
输入价格:
  • 文本: 暂无数据
  • 图片: 暂无数据
  • 音频: 暂无数据
  • 视频: 暂无数据
  • Embedding: 暂无数据
输出价格:
  • 文本: 暂无数据
  • 图片: 暂无数据
  • 音频: 暂无数据
  • 视频: 暂无数据
  • Embedding: 暂无数据

输入支持的模态

文本

输入不支持

图片

输入不支持

视频

输入不支持

音频

输入不支持

Embedding(向量)

输入不支持

输出支持的模态

文本

输出不支持

图片

输出不支持

视频

输出不支持

音频

输出不支持

Embedding(向量)

输出不支持

CodeT5模型在各大评测榜单的评分

发布机构

模型介绍

Salesforce最近发布了一种新的编程语言预训练模型——CodeT5。这是一种预训练的编码器-解码器模型,它的目标是更好地理解和生成代码。与许多其他模型不同的是,CodeT5能够同时处理代码理解和代码生成任务,同时允许多任务学习。

模型简介

CodeT5模型基于著名的T5架构,是一种编码器-解码器模型,用于处理代码理解和生成任务。这种模型不仅可以处理自然语言,而且还可以处理编程语言。该模型在大规模未标记数据上进行预训练,然后在具体任务上进行微调,这与BERT、GPT和T5等模型的工作方式相同。

CodeT5的创新之处在于,它考虑了代码中的标记类型信息,特别是开发者赋予的标识符。在编程中,开发者通常会使用信息丰富的标识符来提高代码的可理解性,这些标识符通常包含丰富的代码语义信息。为了利用这些代码特有的知识,CodeT5引入了一种新的、标识符意识的目标,训练模型识别哪些标记是标识符,并在它们被掩盖时恢复它们。

模型基本参数

CodeT5模型在CodeSearchNet数据上进行预训练,该数据包含了六种编程语言的单模态(只有编程语言)和双模态(编程语言和自然语言)数据。此外,模型还收集了来自开源GitHub仓库的额外C/C#数据。在CodeXGLUE基准测试中,对CodeT5模型进行了多任务微调,包括两个理解任务:代码缺陷检测和克隆检测,以及代码概括、生成、翻译和改进等生成任务【7†source】。

模型特点

  1. 支持多任务学习:CodeT5模型支持多任务学习,可以在多个任务上进行微调,这使得模型具有很高的灵活性和广泛的应用可能性。
  2. 标识符意识的预训练目标:CodeT5模型引入了一种新的、标识符意识的预训练目标,训练模型识别哪些标记是标识符,并在它们被掩盖时恢复它们。这使得模型能够更好地理解代码的语义【8†source】。
  3. 优秀的实验效果:CodeT5模型在CodeXGLUE基准测试的14个子任务上均获得了最好的结果。这进一步证明了模型的效果和优势。

总的来说,Salesforce的CodeT5模型是一种新颖的、能够处理代码理解和生成任务的预训练模型。通过引入标识符意识的预训练目标和支持多任务学习,这个模型在理解和生成代码方面展现出了很强的能力,为编程语言处理领域带来了新的突破。

关注DataLearnerAI公众号

关注DataLearnerAI微信公众号,接受最新大模型资讯

DataLearnerAI WeChat