引言

ChatGLM-6B是清华大学知识工程和数据挖掘小组(Knowledge Engineering Group (KEG) & Data Mining at Tsinghua University)发布的一个开源的对话机器人。6B表示这是ChatGLM模型的60亿参数的小规模版本,约60亿参数。

ChatGML-6B-int4量化模型是针对ChatGML-6B做的优化版本,占用更少的资源,以便个人电脑进行部署测试和使用。

大模型的部署一般需要GPU资源,而个人电脑一般都是Windows操作系统,且没有独立的GPU。那么大模型如何部署在只有CPU的Windows机器上呢?需要额外安装一个叫TDM-GCC的软件。

下面详细阐述ChatGML-6B-int4量化模型在Windows PC上的操作过程:

环境准备

ChatGML-6B-int4量化模型部署需要提供python运行环境、安装好Git版本管理工具和TDM-GCC软件。

1. 安装Anaconda

Anaconda是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。

下载安装

Anaconda官方下载地址:www.anaconda.com/download/ 下载之后,一路点击【next】,即可安装完成。

配置环境变量

在PC电脑的环境变量Path中增加Anaconda相关的环境变量。

E:\Anaconda 
E:\Anaconda\Scripts 
E:\Anaconda\Library\mingw-w64\bin
E:\Anaconda\Library\usr\bin 
E:\Anaconda\Library\bin

注意,其中E:\Anaconda改为Anaconda自己的安装根目录。

修改pip镜像源

修改pip安装软件的镜像源,可以加速依赖下载速度。

# 阿里源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

2. 安装Git

Git Windows版本下载地址:git-scm.com/download/wi… 下载之后可以一路点击【next】即完成安装,通过如下命令查看版本信息:

git version

3. 安装TDM-GCC

TDM-GCC主要对模型一些C代码提供编译环境,下载地址:jmeubank.github.io/tdm-gcc/ 下载之后可以一路点击【next】即完成安装。

模型部署

1. 下载模型源码并安装依赖

(1)在你的工作目录打开命令提示窗口,默认下载到当前目录

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

(2)切换到chatGLM-6B目录

cd ChatGLM-6B

(3)创建conda的虚拟环境,指定Python的版本

conda create -n VENV310 python=3.10

(4)激活环境

conda activate VENV310

(5)下载依赖包

pip install -r requirements.txt

本节指定的版本非常重要,否则会在下载依赖包环节出现各种问题。 本节操作目的主要是为下面的量化模型提供运行脚本和运行环境。

2. 下载量化模型

ChatGML-6B-int4量化模型下载比较麻烦,需要到huggingface网站下载,需要用到科学上网。网上说国内魔搭社区下载的模型代码不完整。

在huggingface上下载又有两种方式:通过Git下载和浏览器下载。

(1)Git下载方式:

git lfs install 
git clone https://huggingface.co/THUDM/chatglm-6b-int4


可以将该工程下载到chatGLM-6B目录下面。

(2)浏览器下载: 在浏览器打开huggingface.co/THUDM/chatg…,将目录下的文件全部下载到如下目录:

chatGLM-6B/chatglm-6b-int4  #如果没有该目录则新建


3. 运行量化模型

模型运行脚本文件为:ChatGLM-6B\cli_demo.py,修改该文件的模型加载代码,改为加载chatglm-6b-int4量化模型。修改内容如下:

# tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
# model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
tokenizer = AutoTokenizer.from_pretrained("chatglm-6b-int4", trust_remote_code=True)
model = AutoModel.from_pretrained("chatglm-6b-int4",trust_remote_code=True).float()


注意,量化模型目录chatglm-6b-int4一定要保证与当前文件在同一个父目录下。

运行出现的问题:

(1)在启动cli_demo的时候报错:No module named ‘readline’ 解决方案:下载pyreadline3,在当前激活的虚拟环境中执行如下命令:

python -m pip install pyreadline


(2)在启动cli_demo的时候报错:AttributeError: module ‘collections’ has no attribute ‘Callable’ 解决方案:这是pyreadline依赖包的文件py3k_compat.py有问题,需要修改依赖包的代码,把return isinstance(x, collections.Callable)改为 return isinstance(x, collections.abc.Callable)即可正常使用。

处理完上述问题之后,ChatGLM-6B\cli_demo.py该脚本可以正常运行,控制台会输出脚本内置问题的答案,由于电脑配置的问题,结果输出非常缓慢,且我的CPU使用率一直是100%,爆了!

在这里插入图片描述

大模型&AI产品经理如何学习

求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。

1.学习路线图

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

在这里插入图片描述

在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方图片前往获取

3.技术文档和电子书

这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。
在这里插入图片描述

4.LLM面试题和面经合集

这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。
在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

加入社区!打开量化的大门,首批课程上线啦!

更多推荐