CodeGeex 在 M1/M2 芯片 Mac 上的安装性能优化

云静吖_9106

云静吖_9106

2026-06-22

504人浏览

原创

在m1/m2 mac上流畅运行codegeex需确保arm64架构、macos sonoma 14.5+、pytorch mps可用,使用int4量化模型并指定device='mps',响应延迟应稳定在200–400ms。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

codegeex 在 m1/m2 芯片 mac 上的安装性能优化

在M1/M2 Mac上安装并流畅运行CodeGeeX,必须绕过x86_64兼容层、启用Metal加速、控制显存占用,否则模型加载失败或响应延迟超3秒——这不是配置问题,而是ARM64环境未被正确激活的典型表现。

确认芯片架构与系统版本前提

打开「关于本机」→ 查看「芯片」是否为Apple M1、M2、M3或M4;同时点击「系统报告」→ 「软件」→「操作系统版本」,确认为macOS Sonoma 14.5或更高版本。低于14.4的系统无法启用MPS后端,【强行安装将导致torch.backends.mps.is_available()返回False】。

终端执行:uname -m,输出必须为arm64。若显示x86_64,说明当前shell仍运行于Rosetta环境,需退出终端重开或执行arch -arm64 $SHELL切换。

安装适配ARM64的Python与PyTorch

方法一:用Homebrew安装原生arm64 Python(推荐)
终端执行:brew install python@3.11 → brew link python@3.11 → python3.11 -m venv ~/codegeex-env → source ~/codegeex-env/bin/activate。

方法二:验证PyTorch MPS支持
激活环境后执行:pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu → python -c "import torch; print(torch.backends.mps.is_available())"。若输出False,立即停止后续步骤——说明PyTorch未识别到Metal设备,常见原因是系统版本不足或虚拟环境未激活。

这一步不能跳过,也无需额外加--force-reinstall。PyTorch官方wheel已内置MPS支持,只要系统和Python架构匹配,安装即生效。

下载并加载量化版CodeGeeX2模型

第一步:克隆仓库并进入目录
git clone https://gitcode.com/gh_mirrors/co/CodeGeeX2 → cd CodeGeeX2

CodeGeex 2.21.0
CodeGeex 2.21.0

CodeGeeX 2.21.0是智谱AI推出的AI编程助手版本,对Inline Chat功能进行了重大优化,包括UI设计升级、支持流式输出以提升响应速度,并新增“查看思路”按钮以便理解代码原理。同时,该版本在编辑器中新增CodeLens控件,支持一键“解释”代码或“添加注释”。目前该工具对个人开发者免费开放。

下载

第二步:安装依赖
pip install -r requirements.txt。注意requirements.txt中若有torch>=2.0.0,需手动删掉该行——因为已单独安装了MPS兼容版,重复安装会覆盖关键后端。

第三步:加载INT4量化模型
在Python脚本中使用:
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("THUDM/codegeex2-6b-int4", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/codegeex2-6b-int4", trust_remote_code=True, device='mps')。
【device必须指定为'mps',不能写'cuda'或'auto',否则默认走CPU,推理速度下降5倍以上】

第四步:强制绑定神经引擎(可选但强烈建议)
在加载模型前添加环境变量:import os; os.environ["PYTORCH_ENABLE_MPS_FALLBACK"] = "1"。这能防止部分算子在MPS不支持时静默降级到CPU,避免隐性卡顿。

启动本地服务并验证响应延迟

直接运行:python server.py --host 127.0.0.1 --port 8080 --device mps --quantize int4。

打开新终端,用curl测试:
curl -X POST "http://127.0.0.1:8080/generate" \
-H "Content-Type: application/json" \
-d '{"prompt":"# language: Python\n# 计算斐波那契数列前10项\n","max_length":128}'

观察返回时间。首次响应含模型加载,约需8–12秒;后续请求应在【200–400ms区间内完成】。若持续超过800ms,检查是否误用了非量化模型路径或device参数未设为mps。

相关文章

数码产品性能查询
数码产品性能查询

该软件包括了市面上所有手机CPU,手机跑分情况,电脑CPU,电脑产品信息等等,方便需要大家查阅数码产品最新情况,了解产品特性,能够进行对比选择最具性价比的商品。

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
CodeGeeX下载安装教程合集
CodeGeeX下载安装教程合集

提供CodeGeeX最新版下载地址、历史版本下载、VS Code安装教程、JetBrains安装教程及常见安装问题解决方案。

2026.06.16

636

15

CodeGeeX代码生成教程合集
CodeGeeX代码生成教程合集

汇总CodeGeeX代码生成技巧、代码补全教程、单元测试生成、代码优化及实际开发案例。

2026.06.16

617

31

CodeGeeX大模型教程合集
CodeGeeX大模型教程合集

详细介绍CodeGeeX底层模型能力、多语言代码生成效果、模型架构及应用场景

2026.06.16

136

10

CodeGeeX VSCode插件教程大全
CodeGeeX VSCode插件教程大全

专注CodeGeeX VS Code插件的安装配置、功能使用、快捷键及开发实践。

2026.06.16

690

15

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

2026.10.16

100

10

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

2026.10.16

60

10

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

2026.10.16

40

10

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

2026.10.16

40

15

Revel框架MVC路由与控制器
Revel框架MVC路由与控制器

本专题聚焦Revel框架MVC核心机制,讲解路由定义、控制器Action、参数绑定、请求响应和反向路由,并结合常见场景梳理接口请求处理流程。

2026.10.16

20

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 186人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 20.6万人学习

好课诞生记
好课诞生记

共20课时 | 7.2万人学习