ChatGLM2-6B开源中英双语对话模型 - Windos搭建运行使用教程
简介
ChatGLM2-6B 是开源中英双语对话模型 ChatGLM-6B 的第二代版本,相较于第一代,提升流畅性,门槛较低的同时又增加了许多新特性。
项目地址: Github - ChatGLM2-6B
环境配置要求
系统环境
为了快速上手,避免一些问题,本文使用Windows Server 2022
纯净系统进行搭建。
纯净
的系统进行测试。 配置要求
以下是我的配置,括号中表示最低配置
系统:Windows Server 2022(家用Win系统也可以)
CPU:Intel Xeon Platinum 8255C(Intel/AMD 均可,64位,8核心以上最好,不怎么吃CPU)
内存:32G (越大越好,最低16G)
显卡:Nvidia Tesla T4 16G(计算卡一张,内存不低于16g最佳越大越好,最低P4 8G,推荐:P40 24G|T4 16G|A10 24G)
Python环境安装
安装Anaconda
Anaconda介绍及安装Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包。Anaconda包括Conda、Python以及一大堆安装好的工具...
下载地址:Anaconda Download
点击Download
选择Windows 64bit版本进行下载。
下载完成后,运行安装程序。在安装界面中,选择 All Users
为当前计算机所有用户安装 Anaconda。接下来,选择安装路径,建议使用默认路径。
安装过程可能较慢,耐心等待安装完成即可。
安装完成后,打开Conda命令行
,输入 conda --version
检查 Anaconda 是否安装成功。
NVIDIA配置流程
驱动安装
驱动下载地址:驱动下载 Download
根据显卡型号 获取驱动程序,进行下载安装。
设置显卡开发者模式
这个也没什么好讲的,就按照图中显示配置即可。
记录版本号,以便用于下载Cuda
这里我的是12.2.138
安装 Cuda
上一步获取到的版本号:12.2.138
后面的数字不需要管,只需要记住 12.2
这个就可以。
打开网站:https://developer.nvidia.com/cuda-toolkit-archive
选择对应的版本下载。
cuDNN安装
下载地址:https://developer.nvidia.com/rdp/cudnn-download 依旧是需要选择对应的版本进行下载。
此处需登陆,没有账号的话注册一个即可,使用邮件地址注册。
下载完之后解压缩,我们将目录名称修改为cudnn
。
将该cudnn
目录,复制到目录 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2
目录下(就是你的CUDA安装地址,前面的目录一般都是有了的,只需要以此点进去即可)。
配置环境变量,添加2个环境变量路径,根据你自己的目录修改。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2\cudnn\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2\extras\CUPTI\lib64
安装Pytorch
地址:https://pytorch.org/
打开网站,下滑,选择需要安装的版本。
选择适用于您设备的cuda版本,由于我的是12.2,需要需要使用Preview版本。
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch-nightly -c nvidia
复制指令,到Anaconda指令窗口执行,请选择适合自己的版本下载,不要复制我的指令。
开始跑模型
创建模型虚拟环境
利用conda
创建虚拟环境
打开Conda Shell,执行:
conda create -n ChatGlm python=3.9
创建一个名为ChatGlm
的环境,此环境的Python版本为3.9
询问是否继续执行,选择 y
回车即可。
激活模型虚拟环境
这里的环境路径C:\ChatGlm
是我的路径,请将路径修改成自己的路径。
conda activate ChatGlm
c:
cd C:\ChatGlm
下载ChatGLM2-6B
这里不多赘述,直接Github:https://github.com/THUDM/ChatGLM2-6B
下载后将zip内的文件复制到你的环境路径,我的是C:\ChatGlm
。
安装模型需要的环境
先进入目录,若已经在这个目录下,无需执行这块代码
conda activate ChatGlm
c:
cd C:\ChatGlm
pip改为清华源(避免因网络不良导致报错安装环境失败)【非必需】
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
安装模型需要的环境
pip install -r requirements.txt
下载模型
原版模型下载[打不开挂科学]:https://huggingface.co/THUDM/chatglm2-6b/tree/main
量化模型下载[小显存使用]:https://huggingface.co/THUDM/chatglm2-6b-int4/tree/main
因为我的卡是Tesla T4 16G
,为了稳定运行,这里我使用Int4量化模型进行测试。模型文件不知道那些有用的话,建议全部下载放到chatglm2-6b
文件夹内。
下载后的模型存放到项目目录/model/chatglm2-6b
下,例如我的就是C:\ChatGlm\model\chatglm2-6b
如果你使用的是int4量化模型,则路径为/model/chatglm2-6b-int4
运行模型
正常模型
正常模型,请修改路径为绝对路径:
cli_demo.py 第8行:
原代码:
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True).cuda()
修改后:
tokenizer = AutoTokenizer.from_pretrained("model\\chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("model\\chatglm2-6b", trust_remote_code=True).cuda()
量化模型
针对量化模型,还需要修改一些代码:
cli_demo.py 第8行
原代码:
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True).cuda()
修改后:
tokenizer = AutoTokenizer.from_pretrained("model\\chatglm2-6b-int4", trust_remote_code=True)
model = AutoModel.from_pretrained("model\\chatglm2-6b-int4",trust_remote_code=True).cuda()
运行程序
运行程序有多种方法,这里只使用命令行进行演示
python cli_demo.py
不懂
教程都没写完... ::aru:dead::
?
::aru:knife:: ::aru:despise::
看不懂思密达,恕我只看得懂最后一图?
哈哈,很有意思的这个
看懂了,但是配置要求劝退了 ::aru:speechless::
int4量化模型 只需要6.2G显存即可运行。
低配置=pip卡住
pip卡住是网络问题,换成清华源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple或者挂个代理