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的运存要求:

相关推荐
VIP_CQCRE29 分钟前
一站式接入 OpenAI Chat Completions:用 Ace Data Cloud 更快把 AI 能力接进业务
大模型·openai·ai开发·mcp·acedatacloud
算力百科小星1 小时前
GPU算力解决方案怎么搭配更合理?用“基础负载+峰值负载”代替单平台包办
gpu算力·gpu服务器选型·gpu算力使用服务
yyk333242 小时前
Linux常见的基础命令
linux·运维·服务器
七夜zippoe2 小时前
LLM 选型指南:Agent 场景下大模型的核心能力评估框架
ai·大模型·llm·agent·核心 能力
邵奈一2 小时前
05 从记账本到档案卡:Agent 记忆的存与管
人工智能·大模型·agent
qq_395716172 小时前
RAID 相关操作,哪些操作会直接彻底销毁阵列数据?
服务器·网络·raid
降临-max2 小时前
从零开始快速开发一个 AI 辅助测试设计智能体(附完整源码)
软件测试·人工智能·大模型·agent·ai测试智能体
aixingkong9212 小时前
华为麒麟9050 系列芯片深度解析:韬折叠的奇迹
服务器·人工智能·硬件架构·硬件工程
又見山3 小时前
大模型推理成本砍半实录:KV Cache、量化与投机解码的工程实践
大模型
网硕互联的小客服3 小时前
服务器可以远程连接,但是为什么无法Ping通?如何解决处理?
运维·服务器