需部署codegeex为本地独立服务:一、安装python 3.9/3.10、cuda、pytorch 2.0.1+cu118及transformers 4.30.2等依赖;二、下载解压codegeex-13b模型至本地并记录绝对路径;三、配置config.yaml中model_path、device等参数后运行app.py;四、通过curl测试api是否返回有效代码补全;五、在vs code中将api地址设为http://127.0.0.1:8000并禁用云模型。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望在本地环境中运行CodeGeeX以保障数据隐私与离线可用性,则需将其部署为独立服务并配置模型加载路径、推理后端及API访问方式。以下是完成本地模式设置的具体步骤:
一、准备本地运行环境
CodeGeeX本地模式依赖Python运行时、CUDA(如使用GPU)及指定版本的PyTorch和transformers库,需预先安装兼容的依赖组合以确保模型权重正确加载与推理稳定。
1、安装Python 3.9或3.10版本,并创建独立虚拟环境:
python -m venv codegeex_env
2、激活虚拟环境后升级pip:
pip install --upgrade pip
3、安装指定版本的PyTorch(以CUDA 11.8为例):
pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
4、安装transformers>=4.30.0、accelerate、sentencepiece、tokenizers等核心依赖:
pip install transformers==4.30.2 accelerate==0.21.0 sentencepiece==0.1.99 tokenizers==0.13.3
二、下载并放置模型权重文件
CodeGeeX本地模式需手动获取官方发布的开源模型权重,存放于本地指定路径,供加载器识别;模型文件不可通过Hugging Face Hub自动拉取,必须离线解压后配置绝对路径。
1、从清华大学开源镜像站或ModelScope下载CodeGeeX-13B模型压缩包:
https://mirrors.tuna.tsinghua.edu.cn/git/Qwen/CodeGeeX/CodeGeeX-13B.zip
2、解压至本地目录,例如:
/home/user/models/codegeex-13b
3、确认解压后目录中包含config.json、pytorch_model.bin.index.json、tokenizer.model等关键文件
4、记录该目录的绝对路径,后续配置中将直接引用
三、配置本地服务启动参数
通过修改启动脚本或命令行参数,显式指定模型路径、设备类型(cpu/cuda)、最大序列长度及端口,避免默认连接远程API或尝试在线加载。
1、克隆官方CodeGeeX仓库:
git clone https://github.com/THUDM/CodeGeeX.git
2、进入codegeex/server目录,复制config.yaml.example为config.yaml
3、编辑config.yaml,将model_path字段设为第二步中记录的绝对路径,例如:
model_path: "/home/user/models/codegeex-13b"
4、设置device为cuda或cpu,batch_size不超过显存允许值,max_length建议设为2048
5、保存配置后,在server目录执行:
python app.py --config config.yaml
四、验证本地API服务是否就绪
本地模式启用后,CodeGeeX将以FastAPI服务形式监听指定端口,所有请求均不外发,响应由本地模型实时生成,可通过curl或Python requests发起测试调用。
1、检查终端输出是否出现“Uvicorn running on http://0.0.0.0:8000”字样
2、新开终端,执行测试请求:
curl -X POST "http://127.0.0.1:8000/generate" -H "Content-Type: application/json" -d '{"prompt":"def hello():","temperature":0.5,"max_length":64}'
3、观察返回JSON中output字段是否包含有效代码补全内容,且无网络超时或404错误
4、若返回error信息含“OSError: Can't load tokenizer”或“File not found”,请返回第二步核对tokenizer.model文件是否存在且路径拼写正确
五、集成至VS Code插件本地调用
VS Code插件默认连接云端API,需手动覆盖其请求地址为本地服务端点,并禁用自动更新模型行为,确保所有补全请求均路由至本机8000端口。
1、在VS Code中打开设置(Ctrl+,),搜索“codegeex.api.baseurl”
2、将值修改为:
http://127.0.0.1:8000
3、关闭“CodeGeeX: Enable Cloud Model”选项
4、重启VS Code,新建Python文件,输入def后触发补全,观察状态栏是否显示“Local model ready”
5、若插件报错“Connection refused”,请确认第三步中app.py仍在运行且未被意外终止










