【ChatGLM2-6B】我在3090显卡上部署了清华大学开源中英双语对话模型

简介: 【ChatGLM2-6B】我在3090显卡上部署了清华大学开源中英双语对话模型

前言

  盼望已久的国内开源项目终于来了,这次可算是对于现在仍然没有ChatGtp人员的福音。在这里我将着重记录如何部署清华大学开源的ChatGLM2-6B项目。

性能简介

ChatGLM2-6B 是开源中英双语对话模型 ChatGLM-6B 的第二代版本,在保留了初代模型对话流畅、部署门槛较低等众多优秀特性的基础之上,ChatGLM2-6B 引入了如下新特性:

  1. 更强大的性能:在同尺寸开源模型中具有较强的竞争力
  2. 更长的上下文:允许更多轮次的对话
  3. 更高效的推理:INT4 量化下,6G 显存支持的对话长度由 1K 提升到了 8K。
  4. 更开放的协议:ChatGLM2-6B 权重对学术研究完全开放,在获得官方的书面许可后,亦允许商业使用。如果您发现我们的开源模型对您的业务有用,我们欢迎您对下一代模型 ChatGLM3 研发的捐赠。

硬件选择

  在README中的性能一栏中我们发现,作者团队是使用的硬件为A100-SXM4-80G 这对于我们个人来说是很难实现的。如采用CPU推理的话,这将不现实,我们无法忍受如此漫长的推理等待时间。那么GPU则是我们必须面对需要解决的问题了。根据清华团队在readme中所述:

使用官方实现,batch size = 1,max length = 2048,bf16 精度,测试硬件为 A100-SXM4-80G,软件环境为 PyTorch 2.0.1

  我们需要满足Pytorch 2.0 在pytorch官网上查阅如下可知我们需要的CUDA为11.7 或 11.8满足算力以及CUDA的版本要求可知常用显卡中3090符合要求。

image.png

量化等级 编码 2048 长度的最小显存 生成 8192 长度的最小显存
FP16 / BF16 13.1 GB 12.8 GB
INT8 8.2 GB 8.1 GB
INT4 5.5 GB 5.1 GB

部署安装

首先需要下载本仓库:

shell

复制代码

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

第二步: 使用 pip 安装依赖:pip install -r requirements.txt,其中 transformers 库版本推荐为 4.30.2torch 推荐使用 2.0 以上的版本,以获得最佳的推理性能。

第三步: 考虑到本地加载模型大多数人找不到相关文件夹带来的种种BUG,因此我在这里将不介绍本地加载。创建本地test_chat.py文件并运行等待系统下载模型文件(模型较大,请耐心等待)

shell

复制代码

from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True, device='cuda')
model = model.eval()
response, history = model.chat(tokenizer, "你好", history=[])
print(response)

使用尝鲜

等待了半天,激动人心的时刻即将来临!直接运行程序进行提问:

shell

复制代码

python cli_demo.py

image.png


相关文章
|
存储 消息中间件 安全
构建便捷高效的宠物医疗预约服务平台:基于Spring Boot的实现
构建便捷高效的宠物医疗预约服务平台:基于Spring Boot的实现
构建便捷高效的宠物医疗预约服务平台:基于Spring Boot的实现
|
存储 缓存 JSON
微信小程序使用本地存储方法
微信小程序使用本地存储方法
928 1
|
缓存
如何实现一个每日打卡签到功能
如何实现一个每日打卡签到功能
1213 0
|
4月前
|
人工智能 机器人 API
Hermes Agent是什么?本地+云端+Docker全平台部署与阿里云百炼接入实操手册
Hermes Agent是由Nous Research开发的开源自主AI智能体框架,遵循MIT开源协议,核心定位是打造具备持久记忆、自我进化、多工具调用与跨平台接入能力的“数字员工”。它并非简单的聊天机器人,而是能自主规划任务、沉淀技能、跨会话召回记忆的智能执行体,真正实现“越用越聪明”。
694 5
|
缓存 算法 Java
【开发利器Hutool】推荐一个超好用的本地缓存
【开发利器Hutool】推荐一个超好用的本地缓存
2812 0
【开发利器Hutool】推荐一个超好用的本地缓存
|
存储 安全 固态存储
删除的文件还能回来吗?当然可以!教你如何恢复
误删文件不必慌,恢复机会仍存在!删除的文件常被标记而非立即清除,故在新数据覆盖前,文件恢复是可能的。SSD例外,因其TRIM功能即时擦除。恢复步骤:检查回收站,利用系统恢复功能,或专业软件如DiskGenius扫描硬盘。及时行动,避免数据覆盖至关重要。预防最佳:定期备份,谨慎操作,启用安全防护,确保数据安全无忧。记得,预防优于事后恢复!🚀✨ (239 characters)
删除的文件还能回来吗?当然可以!教你如何恢复
|
存储 XML 算法
kvm虚拟机磁盘使用luks加密
kvm虚拟机磁盘使用luks加密
kvm虚拟机磁盘使用luks加密
|
自然语言处理 安全 搜索推荐
阿里通义等提出Chronos:慢思考RAG技术助力新闻时间线总结
在数字化时代,新闻信息的指数级增长使得从海量文本中提取和整理历史事件的时间线变得至关重要。为了应对这一挑战,阿里巴巴通义实验室与上海交通大学的中断者提出了一种基于Agent的新闻时间线摘要新框架——CH RONOS,源自希腊神话中的时间之神柯罗诺斯,该框架通过迭代多轮的自我提问方式,结合检索增强生成技术,从互联网上检索相关事件信息,并生成时间顺序的新闻摘要,为新闻时间线摘要生成提供了一种全新的解决方案。
964 44
|
人工智能 自然语言处理 算法
云端问道11期实践教学-创建专属AI助手
本次分享意在帮助用户更加全面、深入地了解百炼的核心产品能力,并通过实际操作学会如何快速将大模型与自己的系统及应用相结合。主要包括以下三个方面: 1. 阿里云百炼产品定位和能力简介 2. 知识检索 RAG 智能体应用能力和优势 3. 最佳落地案例实践分享
1126 56
|
运维 Linux 程序员
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题
最全树莓派4B安装64位Linux(不用显示器键盘鼠标),Linux运维面试送分题

热门文章

最新文章