在windos系统下搭建chatglm2-6b模型详细安装教程

在这里插入图片描述
要进行下面步骤,实现要已经完成了Anaconda软件的安装,以及配置其环境变量,还需要GPU配置
不使用GPU也可以,但是目前博主还没有测试

一·、使用Anaconda创建虚拟环境

运行命令行:cmd

conda create -y -n 虚拟环境名称(自己创建)  python=python的版本号
或者是:
conda create --name 虚拟环境名称(自己创建)  python=python的版本号

在这里插入图片描述

二、初始化环境

初始化Conda环境,防止后续操作可能存在报错等问题。

conda init cmd.exe

三、激活环境

直接win+r 执行cmd
激活conda环境 此时只执行激活环境操作即可

conda activate 虚拟环境名称
此时就会在命令行出现:
带虚拟环境的名称的一个文件地址

此时测试python版本号:
python 看是否和上面创建的版本号是一样的

在这里插入图片描述

四、下载chatglm的源码文件

ChatGLM2-6B-main.zip官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘

git https://github.com/THUDM/ChatGLM2-6B.git  # 此时可能下载不成功

# 或者是自己下载压缩包zip
此时我改了文件的名称  原文件为ChatGLM2-6B-main 现在ChatGLM2-6B

五、安装程序的环境

将上面的压缩包,解压到一个目录(最后不要有中文目录) 我创建了一个ai目录,将解压的文件放到这,改了一个名称

解压出来叫ChatGLM2-6B-main ,去掉了main

在这里插入图片描述

法一:切换盘符到解压至的目录  cd 该目录(此时就是cd E:\ai\ChatGLM2-6B 如果没有切换成功,打一个盘符E: 可能就切换过去了)  在解压好的目录会看到有一个requirements.txt 的文件 
法二:直接在解压到的目录敲cmd  然后激活conda环境 conda activate 虚拟环境名称

在这里插入图片描述

安装环境需要的包

pip install -r requirements.txt

执行成功以后,继续安装其他包

# 1.更新charset_normalizer依赖库,不然必报错。 
pip install --upgrade charset_normalizer

# 2.安装CLI所用到的charset_normalizer依赖库,不然必报错。
pip install pyreadline

# 3.这个不安装也可以,安装也行,也不大  但是如果要访问web页面的话,需要安装
pip install streamlit streamlit-chat

在这里插入图片描述

六、安装torch

可以参考:Windows系统安装配置PyTorch和Conda环境教程 - openAI维基百科

查看本地GPU版本 重新一个cmd

mvidia-smi

在这里插入图片描述

执行命令

# 根据自己的GPU下载的版本来,可以比自己下载GPU版本低,但一定不能高
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126

在这里插入图片描述

七、下载模型

模型官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘

下载的模型解压到和刚刚源码文件放在一起

在这里插入图片描述

八、创建项目并运行

创建一个文件夹eg:demo,使用pycharm打开,然后配置python解释器,配置为刚刚创建的conda的虚拟环境名称

打开创建的一个文件,然后选择添加解释器

在这里插入图片描述

此时会出现一个弹窗,继续进行操作:

在这里插入图片描述

此时便可以在这个文件里面去进行操作了

创建一个demo的python文件

from transformers import AutoTokenizer, AutoModel
# 这个r里面的文件地址,就是刚刚我们解压以后的那个模型文件路径
# 字符串前的r表示原始字符串(raw string)。原始字符串会忽略字符串中的转义字符(如\n、\t等),将其视为普通字符。
# 这对于处理文件路径特别有用,因为文件路径中可能包含反斜杠(\),而反斜杠在普通字符串中是转义字符。
tokenizer = AutoTokenizer.from_pretrained(r"D:\openai.wiki\ChatGLM2-6B\THUDM\chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained(r"D:\openai.wiki\ChatGLM2-6B\THUDM\chatglm2-6b", trust_remote_code=True).cuda()
model = model.eval()
response, history = model.chat(tokenizer, "你好", history=[])
print(response)
response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)
print(response)

此时运行可能会去一个问题

控制台最后一行会出现

在这里插入图片描述

解决方法如下:

你的Python版本可能大于或等于3.10版本,因为 Python 3.10 版本将collections等一些属性放到了collections.abc子模块下。所以会出现collections’ has no attribute的错误。

如果你非要用Python的3.10及以上版本,也可以考虑找到最后报错的文件,一般是报错出现的最后一个文件。更改collections.attr 为 collections.abc.attr,attr 为报错中没有的属性。

更改方法:此时打开conda的安装目录,进入envs,按照自己刚刚创建的虚拟环境的名称进行查找,找到一个文件叫

py3k_compat.py 修改他

更改方法:此时打开conda的安装目录,进入envs,按照自己刚刚创建的虚拟环境的名称进行查找,找到一个文件叫

py3k_compat.py 修改他

在这里插入图片描述
在这里插入图片描述
上面所有流程,自己执行成功,博主也遇到过问题,困扰很久,参考另外一个博主的执行流程,有所感悟,这里非常感谢链接: link这篇博客!因为我布置环境,本地部署大部分按照这个博客来的,而且他/她还贴心地帮我把要从huggingface上下载巨慢的内容下载打包好了,真的是爱了!其中使用他的方案成功了,上面自己写的自己的方案也是成功了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值