ChatGLM-6B int4的本地部署与初步测试

0. 前言

本次笔记是对于实习初期,初次接触到LLM大模型的一些记录。内容主要集中在对于环境的配置的模型的运行。
本人的硬软件配置如下:

GPU: RTX3060 6GB显存
内存: 32GB
系统: Windows 11

1. Anaconda3 + Pycharm 的环境搭建

我使用的是Anaconda3 + PyCharm 的环境搭建。
首先下载去anaconda官网下载最新版的anaconda.
安装时注意选择Add Anaconda3 to PATH, 这样可以直接在Pycharm的终端上运行。

image

等待安装完毕后,进入Pycharm官网安装IDE
直接下载Community版本,然后安装过程中全部点击通过即可。

安装Pycharm完毕之后,需要创建一个新的anaconda的虚拟环境。方便运行包的管理

进入cmd 命令提示符,输入:conda activate

激活conda,随后创建新的虚拟环境:conda create --name ChatGLM-6B python=3.10

这里的ChatGLM-6B是自定义名字,python的版本可以自行修改

随后进入Pycharm,点击文件>新建项目>先前配置好的解释器, 如下图选择, 选择预先配置好的解释器,点击···,选择conda环境。 然后在可执行文件那里选择··· 选择到你刚刚创建的虚拟环境目录下(也就是envs\环境名称)找到python.exe)

image

配置完毕后,打开Pycharm的终端,如果出现类似与这样,环境名称在括号中,说明配置虚拟环境成功。

image

2. Pytorch的安装

在anaconda环境配置完毕之后,需要安装模型所需要最重要的包,Pytorch。

先点击Pytorch官网 看到如下界面:

image

根据自己显卡的Cuda版本来进行选择,随后在Pycharm的终端输入命令下载Pytorch

如果不知道Cuda是多少,可以运行cmd,输入nvidia-smi 查看Cuda版本:

image

安装完毕后,输入

import torch   
torch.cuda.is_available()

如果输出True,说明Pytorch配置完毕!

image

3. 安装ChatGLM-6B 代码

目前为止所有准备工作就绪,可以安装ChatGLM-6B的代码了。
进入存有ChatGLM-6B的Github 在确保计算机安装Git的情况下,在Pycharm的终端下git clone repo到项目文件夹下。当然如果电脑没有配置Git环境就需要下载下来解压到目录即可。

目录路径如下:image

然后继续在终端输入命令,cd到requirement.txt的目录下,然后用pip命令安装ChatGLM-6B所需要的所有软件包:

pip install -r requirements.txt

等待安装完毕后,ChatGLM-6B的环境就配置完成了。

4. 预训练的下载与测试

在安装完CharGLM-6B的代码之后,我们依然需要下载预训练的模型。进入预训练模型下载网址 将里面全部的文件下载到一个文件夹下,注意这个文件夹可以不在Pycharm的项目之内,例如我下在D:\\data\\llm\\chatglm-6b-int4中。

image

因为要下载数个GB的模型,所以下载时间可能会比较长,需要耐心等待~

下载完毕之后,就可以在Pycharm项目中创建可运行文件,我的叫做test.py 然后输入一下代码加载模型并开始测试:

import torch.cuda
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("D:\\data\\llm\\chatglm-6b-int4", trust_remote_code=True, revision="")
model = AutoModel.from_pretrained("D:\\data\\llm\\chatglm-6b-int4", trust_remote_code=True, revision="").half().cuda()
model = model.eval()
response, history = model.chat(tokenizer, "介绍一下你自己", history=[])
print(response)
response, history = model.chat(tokenizer, "请问你能再重复一遍吗?谢谢!", history=history)
print(response)

如下,如果一开始报错,请耐心等待,在30s左右模型会给出结果:

image

如果程序遇到如下报错

Kernel not compiled with GPU support

可能是显卡没有安装Cuda,进入NVIDIA官网 下载GPU所对应版本的CUDA Toolkit后重启即可。

5. 网页Demo的使用

一直用Python和模型对话还是会有些不太方便,因此官网也给出了网页式对话。
在Pycharm的终端gradio:

pip install gradio

然后打开程序web_demo.py 将里面原本的路径改为你自己预训练模型的存储位置,然后运行即可。

image

以上,就可以在本地安装并且使用ChatGLM了。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用\[1\]和引用\[2\]的信息,ChatGLM-6B-INT4和ChatGLM-6B是两个不同的模型。ChatGLM-6B-INT4是ChatGLM-6B模型的一个变种,它使用了INT4量化技术,可以在保持相对较高的模型性能的同时,减少模型的存储空间和计算资源需求。因此,ChatGLM-6B-INT4相对于ChatGLM-6B来说,具有更小的模型体积和更高的推理效率。 #### 引用[.reference_title] - *1* [ChatGLM-6B-INT4部署](https://blog.csdn.net/weixin_43890157/article/details/131614431)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [本地部署 ChatGLM-6B](https://blog.csdn.net/engchina/article/details/130527699)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【ChatGLM】使用ChatGLM-6B-INT4模型进行P-Tunning训练记录及参数讲解](https://blog.csdn.net/sinat_14840559/article/details/131124471)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值