当前位置:   article > 正文

清华大模型ChatGLM3在本地Tesla P40上也运行起来了

清华大模型chat

5f7a7876ec587204be0185d4a0480b42.gif

正文共:999 字 14 图,预估阅读时间:1 分钟

我们之前部署了ChatGLM3清华大模型ChatGLM3部署初体验,但是运行体验比较差,主要就是因为Tesla M4的显存只有4 GB,无法支撑项目运行。为此,我还特意采购了Tesla P4和Tesla P40Tesla P40终于在DL580 Gen9上面跑起来了!

ChatGLM3是智谱AI和清华大学KEG实验室联合发布的对话预训练模型。该项目在GitHub的工程链接为:

https://github.com/THUDM/ChatGLM3

ChatGLM3模型推荐使用Conda和PyTorch进行部署和使用,正好我们已经部署好了成了!Tesla M4+Windows 10+Anaconda+CUDA 11.8+cuDNN+Python 3.11

因为需要使用Git来克隆项目,我们先安装Git命令。访问以下页面,按需选择需要的系统及软件版本:

https://git-scm.com/downloads

97ce4d7c3261347559490e8f0f3a6957.png

Windows版的下载链接如下:

https://github.com/git-for-windows/git/releases/download/v2.44.0.windows.1/Git-2.44.0-64-bit.exe

下载完成之后,按照推荐提示完成Git的安装。在Git安装过程中,确保选择选项将Git添加到系统PATH环境变量中。

a2fa9f079144b4883673387e1d8bb05b.png

安装完成后,打开Anaconda。首先,新创建一个ChatGLM3环境,Python需要使用3.10或更高版本,我们使用3.11.9版本。

cbdd49b8f2f41b210b27e6f1ec43ad8e.png

启动Terminal终端。

c56b45ddff1ca2b898ac0a574e39cc78.png

激活环境ChatGLM3环境,并下载ChatGLM3项目。

  1. conda activate ChatGLM3
  2. git clone https://github.com/THUDM/ChatGLM3

7eb6cc4be7f57817f6ae792fe84cf7b5.png

然后进入到项目中,使用pip安装依赖软件:

  1. cd ChatGLM3
  2. pip install -r requirements.txt

0ffbeb229d9d550bea59b7398f1584d3.png

安装完成后,运行以下命令在本地加载模型并启动demo:

streamlit run web_demo_gradio.py

6d3b88e934f22ccf585535e187012f16.png

如果有报错,按照提示一点点修改就可以了。然后就可以从命令行回显中看到demo的链接了,默认可以自动打开目标页面,也可以手动输入到浏览器进行访问。

d14e885788b2d4c523ee7158352b7bd0.png

初次访问需要下载并加载模型,可能需要花费一定时间(访问https://huggingface.co/可能需要互联网,请自行联网)。关键的模型文件一共是7个,共12.5 GB,大小分别为1.83 GB、1.97 GB、1.93 GB、1.82 GB、1.97 GB、1.93 GB、1.05 GB。

394532749bed3ec0f3c22f220a3745d5.png

或者先将模型下载到本地,再通过export MODEL_PATH=/path/to/model命令来指定从本地加载模型。具体参考以下链接:

https://huggingface.co/docs/transformers/installation#offline-mode

等加载完成即可进入到ChatGLM3 Demo页面。ChatGLM3 Demo 拥有三种模式:

Chat:对话模式,在此模式下可以与模型进行对话。

Tool:工具模式,模型除了对话外,还可以通过工具进行其他操作。

Code Interpreter:代码解释器模式,模型可以在一个Jupyter环境中执行代码并获取结果,以完成复杂任务。使用Code Interpreter还需要安装Jupyter内核:

ipython kernel install --name ChatGLM3 --user

我们现在使用的是对话模式,我们可以通过调节top_p(控制生成的文本的多样性)、temperature(控制模型生成文本的创造性或随机性)和max_length(生成文本的最大长度)等参数来调整模型行为。

6978167f5ebf2d349f49841677e17349.png

换了GPU之后,使用体验一下子提升起来了。第一句hello的响应大概用了三四秒钟,第二句就是秒回了。

b1334d9af3e9f0f24bc9465bee6c40f0.png

问一些技术行的问题也是可以答复的。

按照文档提示:默认情况下,模型以FP16精度加载,运行上述代码需要大概13 GB显存,现在我的显存够用了,看一下占用情况。

fdabd7bd8859e1f887d688d53c83900b.png

大约12.5 GB,跑起来毫无压力。

d226133d5244fcb65dcffdb6be00023f.png

不过,我们也注意到,每次提问都会增加一些显存的占用,试了几次,大概从10-50 MB不等,按照最大的50 MB来算,大概可以响应200次以上的对话,实际情况得以后测一下才能验证了。

终于把ChatGLM3在本地跑起来了!那服务器的耗电情况怎么样呢?

bad0647e595377dbba93a5213df35b3a.png

功能稳定之后,平均功功率大概在350瓦左右,计算时的最大功率大概能到850瓦,也就是说,如果本地运算,一小时的电费大概是4毛5,不便宜啊!

最后,分享一下ChatGLM3的在线文档:

https://zhipu-ai.feishu.cn/wiki/WvQbwIJ9tiPAxGk8ywDck6yfnof

df74afc9f45002fdfc8d442216fe775d.gif

长按二维码
关注我们吧

22377b2557f9a57195ceb1f4eb2e7106.jpeg

8f6c553e0aa5ec39192631defaa04ba8.png

HPE DL580 Gen9到家了,成功开机!

风雨同舟,感谢HP Proliant DL360 Gen9陪我走过的四年

【更清晰】照片分享,欢迎家庭新成员HPE ProLiant DL580 Gen9

Tesla P4终于在DL580 Gen9上面跑起来了!

人工智能如何发展到AIGC?解密一份我四年前写的机器学习分享材料

一起学习几个简单的Python算法实现

GPU性能测试中的张量和矩阵运算

清华大模型ChatGLM3部署初体验

使用vSRX测试一下IPsec VPN各加密算法的性能差异

RDP授权119天不够用?给你的Windows Server续个命吧!

天翼云研发告诉我:AH封装的IPsec不能穿越NAT设备

奇怪的知识又学到了:服务器的序列号、产品ID和UUID不见了怎么办?

RAID阵列的磁盘顺序能否调整?RAID重建需要多久?

如何操作RAID 5阵列的扩容?

快速定制VMware ESXi 8.0U2并部署到DL580 Gen9

惠普SSA(Smart Storage Administrator)配置术语详解

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/856645
推荐阅读
相关标签
  

闽ICP备14008679号