从 CodeGeeX 官方 GitHub README 翻译整理的快速上手指南。
CodeGeeX 是一个开源的多语言代码生成模型,拥有 130 亿参数,在包含 20 多种编程语言的大规模代码语料上预训练而成。截至 2022 年 6 月,模型已在 1536 块昇腾 910 AI 处理器上训练了超过 8500 亿个 token。
CodeGeeX 支持昇腾和 NVIDIA 两种平台,单张昇腾 910、NVIDIA V100 或 A100 即可完成推理。模型权重和代码均已开源,供研究使用。
git clone https://github.com/zai-org/CodeGeeX.git
cd CodeGeeX
pip install -r requirements.txt
模型权重需申请后下载。访问申请页面:
https://models.aminer.cn/codegeex/download/request
申请通过后,将权重文件放入 models/ 目录。
单卡推理示例(以 NVIDIA V100 为例):
python scripts/inference.py \
--model-path models/codegeex_13b.pt \
--tokenizer-path models/tokenizer \
--input "def fibonacci(n):" \
--max-length 128
在终端运行以下命令,让 CodeGeeX 根据注释生成 Python 代码:
python scripts/inference.py \
--model-path models/codegeex_13b.pt \
--tokenizer-path models/tokenizer \
--input "# 计算斐波那契数列的第 n 项" \
--max-length 256
模型会输出类似:
def fibonacci(n):
if n <= 1:
return n
return fibonacci(n-1) + fibonacci(n-2)
Tab 接受建议,按 Esc 忽略。翻译整理自 GitHub README,原文:https://github.com/zai-org/CodeGeeX