CPU服务器安装运行智谱大模型ChatGLM-6B

2024-03-13 11:28

本文主要是介绍CPU服务器安装运行智谱大模型ChatGLM-6B,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CPU运行智谱大模型ChatGLM-6B

说明

我的服务器配置是16C32G,跑大模型最好内存要大一些才行,不然跑不起来。

下载

git clone https://github.com/THUDM/ChatGLM-6B.git

安装依赖包

pip install -r requirements.txt

下载模型文件

在huggingface上需要翻墙,有条件的可以直接下载,不行可以使用国内的镜像。需要一个个文件下载

https://huggingface.co/THUDM/chatglm2-6b

*** 国内推荐,国内推荐,国内推荐-1 ***
https://aifasthub.com/models/THUDM

*** 国内推荐-2 ***
https://hf-mirror.com/THUDM/chatglm2-6b

下载后,我把模型文件保存到:/opt/models/chatglm2-6b目录下。

修改代码把GPU改成CPU

打开ChatGLM-6B-main目录的cli_demo.py文件,修改源代码

import os
import platform
import signal
from transformers import AutoTokenizer, AutoModel
import readlineMODEL_PATH="/opt/models/chatglm2-6b"tokenizer = AutoTokenizer.from_pretrained(MODEL_PATH, trust_remote_code=True)
# 把这一行复制一下,并注释掉
#model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).half().cuda()
# 把上面的一行改成以下一行
#model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).half().cpu()
# 或则去掉cpu(),改成以下这样,也可以
model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).half()
model = model.eval()

运行cli_demo.py

运行客户端代码后,会出现命令行的输入交付方式:

$ python cli_demo.py 欢迎使用 ChatGLM-6B 模型,输入内容即可进行对话,clear 清空对话历史,stop 终止程序用户:你是谁?ChatGLM-6B:我是一个名为 ChatGLM2-6B 的人工智能助手,是基于清华大学 KEG 实验室和智谱 AI 公司于 2023 年共同训练的语言模型开发的。我的任务是针对用户的问题和要求提供适当的答复和支持。

注意:此时可以观察以下CPU的使用状况。可以看到其中有一个CPU的使用率达到100%,其他的其实没有用起来。
另外,还有其他几个demo,比如web_demo.py等,还是同样的修改方式,由于我这里是登录到服务器上去运行大模型,所以暂时没有运行web_demo.py的前端代码。

待改进的问题

目前我的机器是16C32G(CPU)配置,虽然能够把ChatGLM-6B跑起来,而且能够正常的回答问题,但运行速度非常慢,几个字几个字的往外跳出来。
而跑其他的大模型,也是同样的效果,哪怕是最小的llama-chinese也很慢。这个后续需要想办法优化。

这篇关于CPU服务器安装运行智谱大模型ChatGLM-6B的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/804708

相关文章

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

Apache Tomcat服务器版本号隐藏的几种方法

《ApacheTomcat服务器版本号隐藏的几种方法》本文主要介绍了ApacheTomcat服务器版本号隐藏的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1. 隐藏HTTP响应头中的Server信息编辑 server.XML 文件2. 修China编程改错误

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

Python如何实现 HTTP echo 服务器

《Python如何实现HTTPecho服务器》本文介绍了如何使用Python实现一个简单的HTTPecho服务器,该服务器支持GET和POST请求,并返回JSON格式的响应,GET请求返回请求路... 一个用来做测试的简单的 HTTP echo 服务器。from http.server import HT

如何安装 Ubuntu 24.04 LTS 桌面版或服务器? Ubuntu安装指南

《如何安装Ubuntu24.04LTS桌面版或服务器?Ubuntu安装指南》对于我们程序员来说,有一个好用的操作系统、好的编程环境也是很重要,如何安装Ubuntu24.04LTS桌面... Ubuntu 24.04 LTS,代号 Noble NumBAT,于 2024 年 4 月 25 日正式发布,引入了众

如何安装HWE内核? Ubuntu安装hwe内核解决硬件太新的问题

《如何安装HWE内核?Ubuntu安装hwe内核解决硬件太新的问题》今天的主角就是hwe内核(hardwareenablementkernel),一般安装的Ubuntu都是初始内核,不能很好地支... 对于追求系统稳定性,又想充分利用最新硬件特性的 Ubuntu 用户来说,HWEXBQgUbdlna(Har

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

python中poetry安装依赖

《python中poetry安装依赖》本文主要介绍了Poetry工具及其在Python项目中的安装和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前言1. 为什么pip install poetry 会造成依赖冲突1.1 全局环境依赖混淆:1