CodeShell:北京大学与天府银行AI团队共同研发的多语言代码大模型

CodeShell 是一个由北京大学知识计算实验室和四川天府银行AI团队联合开发的多语言代码生成模型。本文将详细介绍 CodeShell 的特性、功能以及如何使用这一工具。

目录

  • CodeShell 是什么?
  • CodeShell 的主要特性
  • 如何使用 CodeShell?
  • CodeShell 是什么?

    CodeShell 是一个具有 70 亿参数的代码生成大模型,经过五千亿 Tokens 的训练,拥有 8192 的上下文窗口长度。在编程语言的自动评估 Benchmark(如 HumanEval 与 MBPP)中,CodeShell 展现了同类模型中的顶尖性能。

    • 模型代码库:CodeShell GitHub
    • 模型基座:CodeShell on Hugging Face
    • VSCode 插件:CodeShell VSCode Plugin

    CodeShell 的主要特性

    • 卓越的性能:在 HumanEval 和 MBPP 测试中,CodeShell 达到了业界领先水平。
    • 完整的技术体系:除了代码大模型,CodeShell 还开源了 IDE(VS Code 与 JetBrains)插件,构建了完整的开源技术栈。
    • 轻量化部署:支持在本地使用 C++ 部署,适用于无需 GPU 的个人电脑,且支持量化操作以减少内存消耗并提升速度。
    • 全面的评测体系:支持完整项目上下文,涵盖代码生成、缺陷检测与修复、测试用例生成等多任务评测。
    • 高效的训练:基于高效的数据治理体系,即使是从零开始,CodeShell 也仅通过训练五千亿 Token 实现了优异性能。

    如何使用 CodeShell?

    要开始使用 CodeShell,开发者首先需要访问其在 Hugging Face 上的页面,并通过 Transformers 库调用 CodeShell 和 CodeShell-Chat 模型。以下是初始化和使用 CodeShell 的基本步骤:

  • 环境准备:

    • 确保你的环境满足使用要求(如 Python、必要的库和工具)。
    • 安装必要的依赖包:bashCopy codepip install -r requirements.txt
  • 使用 Transformers 库:

    • 使用 Transformers 快速集成和调用 CodeShell。以下是一个示例代码,展示如何调用 CodeShell 模型进行代码生成:pythonCopy codefrom transformers import AutoTokenizer, AutoModeltokenizer = AutoTokenizer.from_pretrained(“WisdomShell/CodeShell-7B”)model = AutoModel.from_pretrained(“WisdomShell/CodeShell-7B”)inputs = tokenizer(“def hello_world():”, return_tensors=”pt”)outputs = model.generate(inputs[“input_ids”])print(tokenizer.decode(outputs[0]))
  • 通过以上步骤,开发者可以快速开始使用 CodeShell 进行代码生成和相关的软件开发任务。

    发表回复