记录部署ChatGLM大语言模型过程

1.什么是 ChatGLM:

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。
不过,由于 ChatGLM-6B 的规模较小,目前已知其具有相当多的局限性,如事实性/数学逻辑错误,可能生成有害/有偏见内容,较弱的上下文能力,自我认知混乱,以及对英文指示生成与中文指示完全矛盾的内容。更大的基于 1300 亿参数 GLM-130B 的 ChatGLM 正在内测开发中。


2.获取代码:

Github地址:https://github.com/THUDM/ChatGLM-6B

可以通过git方式获取,或者直接下载zip源码,本次git方式。

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

3.配置环境:

3.1配置显卡驱动和cuda:

之前已配置,支撑pytorch 、 paddle等环境,不再补充。

3.2 安装anaconda:

之前已配置,网上教程较多,不再多说。

3.3 为chatGLM配置独立环境

conda  create --name  chatglm python=3.8

环境创建后,激活环境

conda activate chatglm 

3.4 安装依赖包

打开文件位置,根据自己位置修改目录

cd /home/houshouzan/chatglm/ChatGLM-6B/

安装依赖包,需要的话后面加上清华镜像地址https://pypi.tuna.tsinghua.edu.cn/simple

pip install -r requirements.txt

4.下载模型:

4.1 方式一,huggingface_hub优雅下载:

安装huggingface_hub

pip install huggingface_hub

在./ChatGLM-6B/下创建文件夹./ChatGLM-6B/chatglm-6b/用于存放本地模型

mkdir chatglm-6b

进入chatglm-6b环境, 进入python终端

conda activate chatglm-6b
python

调用huggingface_hub下载ChatGLM-6B模型到指定本地路径

from huggingface_hub import snapshot_download
snapshot_download(repo_id="THUDM/chatglm-6b", local_dir="./chatglm-6b/")

下载过程中会中断,多尝试几次一般可以下载完。

4.2 方式二,通过官网下载:

官网地址:https://huggingface.co/THUDM/chatglm-6b/tree/main

记录部署ChatGLM大语言模型过程_第1张图片
需要全部下载。

4.2 方式三,通过迅雷等工具下载:

由于下载较慢,本次下载过程中,也使用这个方法,最后再传到服务器上,也比较麻烦,还是推荐第一种方法。

5.体验ChatGLM:

demo提供了两种方式,命令行和网页方式。

5.1 命令行方式:

需要修改源码中模型加载的位置,我前面模型下载到了chatglm-6b文件夹,所以修改cli_demo.py文件位置如下,修改保存:
记录部署ChatGLM大语言模型过程_第2张图片
运行命令行代码

python cli_demo.py

效果如下:
记录部署ChatGLM大语言模型过程_第3张图片

5.2 网页形式:

修改web_demo.py 加载模型代码,修改为自己模型所在位置。
记录部署ChatGLM大语言模型过程_第4张图片
运行web_demo.py ,默认端口7860 ,查看效果。
记录部署ChatGLM大语言模型过程_第5张图片

你可能感兴趣的:(语言模型,python,人工智能,nlp)