CodeGeeX,预训练多语言代码生成模型,已提供VSCode、IDEA、PyCharm、GoLand、CLion等插件下载

light1年前 ⋅ 3992 阅读

https://github.com/THUDM/CodeGeeX

CodeGeeX 是一个具有 130 亿参数的多编程语言代码生成预训练模型。CodeGeeX 采用华为 MindSpore 框架实现,在鹏城实验室 “鹏城云脑 II” 中的 192 个节点(共 1536 个国产昇腾 910 AI 处理器)上训练而成。特性:

  1. 高精度代码生成:支持生成 Python、C++、Java、JavaScript 和 Go 等多种主流编程语言的代码,在 HumanEval-X 代码生成任务上取得 47%~60% 求解率;
  2. 跨语言代码翻译:支持代码片段在不同编程语言间进行自动翻译转换;
  3. 自动编程插件:CodeGeeX 插件现已上架 VSCode 插件市场;

消息:

  • 2022-12-13 : 我们在codegeex-vscode-extension中发布了 CodeGeeX VS Code 扩展的源代码。
  • 2022-12-11:CodeGeeX 现在可用于 Jetbrains IDE(IntelliJ IDEA、PyCharm、GoLand、CLion 等)
  • 2022-12-04:我们发布了量化的源代码(需要更少的 GPU RAM:27GB -> 15GB)和模型并行性(可以在 <8G RAM 的多个 GPU 上运行)。
  • 2022-09-30:我们发布了 Ascend 和 NVIDIA 平台的跨平台源代码和模型权重。

架构:CodeGeeX是一个基于transformers的大规模预训练编程语言模型。它是一个从左到右的自回归解码器,它将代码和自然语言作为输入并预测下一个标记的概率。CodeGeeX 包含 40 个变换器层,自注意力块的隐藏大小为 5,120,前馈层的隐藏大小为 20,480,使其大小达到 130 亿个参数。它支持的最大序列长度为 2,048。

(左图: CodeGeeX 训练数据中编程语言的比例。 右图:训练损失与 CodeGeeX 训练步骤的关系图。)

官网有个JavaScript写快排的demo,和GitHub Copilot一样,只需要写一个方法的注释描述,模型自动帮你实现方法逻辑

https://models.aminer.cn/codegeex/assets/video/CodeGeeX_example.webm

如果在本地IDEA中安装这个插件,IDEA会把模型下载到用户本地的机器上进行推理来自动生产代码吗?

@gex9901  不用,保持本地机器联网就行CodeGeeX模型部署在云端做推理用

CodeGeeX 在跨代码翻译上有一些优势,这与其训练数据是混合代码的数据有关,但在推理响应速度和代码补全内容的可用性上还有很大的提升空间,与Copilot还是有一些差距的

CodeGeeX/Copilot 和 ChatGPT 现在是开发必备

全部评论: 0

    相关推荐