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

相关推荐
酒旅Agent开发实战1 分钟前
酒店供应链MCP实践分享
人工智能·大模型·酒店预订·ai agent·mcp
程序员-Benothing8 分钟前
Linux 软件包管理:yum / apt / dnf 命令使用全解析
linux·运维·服务器
芯飞云41 分钟前
芯飞云服务器日常使用体验:从配置选型到实际负载的技术分析
运维·服务器
香吧香1 小时前
Skill 机制解析:从定义、触发到调用外部工具
大模型
严谨的麻辣烫1 小时前
AI Agent为什么越来越需要固定出口IP?从API白名单到生产环境网络管理
服务器·网络·tcp/ip·代理服务器
牢姐与蒯1 小时前
Linux文件(一).前传之基础IO
linux·运维·服务器
captain3761 小时前
TCP网络编程:ServerSocket与Socket详解
服务器·网络·tcp/ip
CBeann2 小时前
如何设计CLAUDE.md
大模型·llm·微调
IT·陈寒2 小时前
JavaScript性能优化完全指南
人工智能·大模型·api·创业·变现·简历优化
薛定谔的猫-菜鸟程序员2 小时前
端侧免费大模型实测:MiniCPM5-2B-Q4_K_M 架构拆解与 4GB 显卡实测
人工智能·大模型·agent·hermes·minicpm5-2b