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

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项目。

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

7eb6cc4be7f57817f6ae792fe84cf7b5.png

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

cd ChatGLM3
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)配置术语详解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/601386.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PyCharm怎么安装Comate与使用示范

目录 简单介绍Comate 安装步骤详解 Comate使用示范详解 使用总结 简单介绍Comate Baidu Comate智能编码助手是一款基于文心大模型打造的编码辅助工具,具备多重优势,包括代码智能、应用场景丰富、创造价值高、广泛应用等。它能帮助开发者提升编码效率…

数仓开发中期:理论巩固

一、数仓以及商业智能(Data Warehousing and Business Intelligence, DW/BI)系统 1.1数据操作和数据获取的区别 对所有组织来说,信息都是其最重要的财富之一。信息几乎总是用作两个目的:操作型记录的保存和分析型决策的制定。简单来说&…

关于vs2019 c++ STL 中容器的迭代器的 -> 运算符的使用,以 list 双向链表为例

(1)如下的结构体 A ,若有指针 p new A() ;则可以使用 p->m , p->n 解引用运算符。 struct A { int m ; int n; } 对于 STL 中提供的迭代器,提供了类似于指针的功能。对迭代器也可以使用 -> 运算…

ElasticSearch知识点汇总

1、ES中的​​​​​​​倒排索引是什么。 倒排索引,是通过分词策略,形成了词和文章的映射关系表,这种词典映射表即为倒排索引 2、ES是如何实现master选举的。 选举过程主要包括以下几个步骤: 心跳检测: 每个节点…

docker安装elasticsearch:7.17.21

docker安装elasticsearch:7.17.21 下载对应版本的docker镜像 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.21启动容器 docker run --name elasticsearch-test -p 9200:9200 -p 9300:9300 -e "discovery.typesingle-node" -t docker.elastic.…

学习通下载PDF资源

今天突然发现,学习通的pdf资源居然是没有下载入口的,这整的我想cv一下我的作业都搞不了,于是我一怒之下,怒了一下。 可以看到学习通的pdf资源是内嵌在网页的,阅读起来很不方便,虽然他内置了阅读器&#xf…

如何做好一个活动策划?

活动策划的关键要素是什么? 首先,要明确一个概念:做活动就是走钢丝,没有保险的高空走钢丝!因为,活动没有“彩排”,只有现场"直播”! 无论什么类型的活动,人数是50人还是2000人,也不论预算…

Linux网络编程(一) 网络基础

一、一些概念 1.1、局域网与广域网 局域网:局域网将一定区域内的各种计算机、外部设备和数据库连接起来形成计算机通信的私有网络。广域网:又称广域网、外网、公网。是连接不同地区局域网或城域网计算机通信的远程公共网络。 1.2、IP IP地址本质就是…

某制造公司屋顶分布式光伏发电案例分享--分布式光伏电力监控系统解决方案

安科瑞薛瑶瑶18701709087/17343930412 ★分布式光伏监控系统 分布式光伏监控电力系统遵循安全可靠、经济合理原则,满足电力系统自动化总体规划要求,且充分考虑光伏发电的因素,对分布式光伏发电、用电进行集中监控、统一调度、统一运维、满足…

苍穹外卖项目---------收获以及改进(5-6天)

①HttpClient 核心作用:在java编码中发送http请求 第一步:引入依赖 第二步:使用封装一个工具类 package com.sky.utils;import com.alibaba.fastjson.JSONObject; import org.apache.http.NameValuePair; import org.apache.http.client.co…

向各位请教一个问题

这是菜鸟上的一道题目,单单拿出来问问大家,看看能不能解惑 ,谢谢各位! 题目25:求12!3!...20!的和 解题思路:这个题不知道为什么我用DEV C 5.11显示出来为0.000000,可能版本有问题?&a…

【JVM】内存结构

内存结构 Java 虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁。另外一些则是与线程一一对应的,这些与线程一一对应的数据区域会随着线程开始和结束而创建和销毁。 线程私有…

Agent AI智能体:我们的生活即将如何改变?

你有没有想过,那个帮你设置闹钟、提醒你朋友的生日,甚至帮你订外卖的智能助手,其实就是Agent AI智能体?它们已经在我们生活中扮演了越来越重要的角色。现在,让我们一起想象一下,随着这些AI智能体变得越来越…

【Ansiable】ansible的模块和主机清单

Ansible Ansible是一个基于Python开发的配置管理和应用部署工具,现在也在自动化管理领域大放异彩。它融合了众多老牌运维工具的优点,Pubbet和Saltstack能实现的功能,Ansible基本上都可以实现。 Ansible能批量配置、部署、管理上千台主机。比…

【无标题】程序设计和c语言-谭浩强配套(适合专升本)

一晃大半年没更新了,一直在备考,想着这几天把前段时间学的c语言给大家分享一下,在此做了一个专栏,有需要的小伙伴可私信获取。 说明:本专栏所有内容皆适合专升本复习资料,本人手上也有日常刷题整理的错题以…

电脑提示mfc140u.dll文件丢失了?怎么快速修复mfc140u.dll文件

当你的电脑提示你的mfc140u.dll文件丢失了,那么就要小心了,可能你的某些程序出问题了!这时候需要我们去进行相关的修复,只有修复了这个mfc140u.dll文件,才能正常的使用某些程序。下面一起来了解一下mfc140u.dll文件吧。…

修改ElTable组件的样式(element-plus)

效果展示 <div class"table_main"><ElTable:data"tableList":header-cell-style"{color: #ffffff,background: #6f7f93,}"class"table_border":highlight-current-row"false"><ElTableColumn type"inde…

sql注入练习

1.什么是SQL注入 SQL注入是比较常见的网络攻击方式之一&#xff0c;它不是利用操作系统的BUG来实现攻击&#xff0c;而是针对程序员编写时的疏忽&#xff0c;通过SQL语句&#xff0c;实现无账号登录&#xff0c;甚至篡改数据库 2.sql注入原理 攻击者注入一段包含注释符的SQL语…

欧鹏RHCE 第四次作业

unit4.web服务的部署及高级优化方案 1. 搭建web服务器要求如下&#xff1a; 1.web服务器的主机ip&#xff1a;172.25.254.100 2.web服务器的默认访问目录为/var/www/html 默认发布内容为default‘s page 3.站点news.timinglee.org默认发布目录为/var/www/virtual/timinglee.org…

建设智慧公厕,打造便捷、环保、安全的公共厕所使用体验

近年来&#xff0c;随着科技的快速发展&#xff0c;智慧公厕在城市建设中起到了重要的作用。通过信息化手段、智慧化管理和科技创新智能设备等措施&#xff0c;智慧公厕实现了许多令人惊叹的改变。本文将以智慧公厕源头实力厂家广州中期科技有限公司&#xff0c;大量精品案例项…