chatglm本地服务器大模型量化cpu INT4 INT8 half float运行、多卡多GPU运行改这一条指令就行啦!

一、ChatGLM3的几种推演方式

ChatGLM3常规方案的GPU推演中half和float是两种最常用的格式,half格式占13GB显存,float格式占40GB显存。此外还提供了几种GPU量化格式的推演:INT4和INT8量化。

CPU版本的ChatGLM3推演:

python 复制代码
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).cpu().float()

INT4版本的ChatGLM3推演:(不是所有的硬件都支持INT4操作)

python 复制代码
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).quantize(4).cuda()

INT8版本的ChatGLM3推演:

python 复制代码
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).quantize(8).cuda()

half版本的ChatGLM3推演:

python 复制代码
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).half().cuda()

float版本的ChatGLM3推演:

python 复制代码
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).float().cuda()

二、多卡推演

由于高精度的float推演形式需要较大的显存(40G),往往一张显卡很难满足其生产力需求,这时我们就可以使用多张显卡同时进行推演运算,而实现多卡推演的方式其实也特别简单。我们在这采取最简单的一种方式,就是在上述代码中加上一句device_map="auto"就可以了。

例:

python 复制代码
model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True, device_map="auto").float()

这时我们将float量化的模型启动起来,新建一个terminal窗口输入nvidia-smi -l 2便可查看各显卡的使用情况:

bash 复制代码
nvidia-smi -l 2

就可以看到三张显卡都自动分配运行起来了以满足40G的运存要求:

相关推荐
OpenCSG7 小时前
Hugging Face遭遇AI Agent攻击:AI资产管理正在进入新阶段
人工智能·大模型
冰封之寂8 小时前
Docker 资源管理终极指南:CPU、内存与 IO 的精细化控制
linux·运维·服务器·docker·云计算
云计算磊哥@9 小时前
运维开发宝典058-大型网站nginx服务器管理全集4
服务器·nginx·运维开发
酷可达拉斯10 小时前
Linux操作系统-shell编程之Grep与正则表达式
linux·运维·服务器·正则表达式·centos
stereohomology13 小时前
Kimi K3编程实力远超GLM5.2:一个Trae复赛证据
人工智能·大模型·对比·why不coding
OpenCSG13 小时前
CSGClaw v0.3.17-v0.3.18版本更新
大模型·私有化·csgclaw
玖玥拾14 小时前
Unity 3D 笔记(十四)Unity/C# Socket 网络笔记3
服务器·网络·unity·c#
三84415 小时前
使用Samba/NFS实现文件共享/自动挂载共享目录/autofs自动挂载服务
linux·服务器·网络
高铭杰16 小时前
万物皆可KV(2)SurrealDB 存储布局分析
linux·服务器
万事可爱^16 小时前
Claude 新发布的 Opus 5,系统提示语删了 80%,半价还能逼近 Fable 5
android·服务器·数据库·人工智能·claude