chatglm2-6m模型
git 地址 https://github.com/THUDM/ChatGLM2-6B
模型百度网盘地址:链接:https://pan.baidu.com/s/1-LFcPB0H23RSpTKOECsjxw?pwd=5e3d
提取码:5e3d
1 模型简介
ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。
chatglm对显存的要求最低为6GB
2 模型使用
2.1 预训练准备:
- 模型加载:使用transformers 自动加载模型,网速限制,加载比较慢
本地下载模型,① Hugging Face Hub 网址:https://huggingface.co/THUDM/chatglm2-6b/tree/main
② 清华镜像源下载模型:地址:https://cloud.tsinghua.edu.cn/d/674208019e314311ab5c/
③ 本人百度网盘整理: 链接:https://pan.baidu.com/s/16VwlyCrLlpbEsNP0oPh2xg?pwd=0982
提取码:0982
2.2 代码下载及环境安装
- 1 代码下载
① 使用git : git clone https://github.com/THUDM/ChatGLM2-6B
②直接下载压缩包,在上面网址直接download zip - 2 环境安装
① 安装conda虚拟环境(可选项)conda create -n chatglm python=3.7
② 安装依赖包,进入ChatGLM2-6B目录,pip install -r requirements.txt
2.3 模型使用
- 模型加载
根据自己的显卡内存,修改模型加载项,如下,由于我的电脑是12G显存,使用原始的模型,内存不够,因此添加了.quantize(8)
model_path,为上面下载的预训练好的模型(可以使用百度网盘分享的)
model_path=r"E:\download\chatglm2-6b"
model = AutoModel.from_pretrained(model_path, trust_remote_code=True).quantize(8).cuda()
- 模型运行
方式一 :自建测试文件
from transformers import AutoTokenizer, AutoModel
# model_path=r"E:\download\chatglm2-6b-int4"
model_path=r"E:\download\chatglm2-6b"
tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
# model = AutoModel.from_pretrained(model_path, trust_remote_code=True, device='cuda')
# 按需修改,目前只支持 4/8 bit 量化
model = AutoModel.from_pretrained(model_path, trust_remote_code=True).quantize(8).cuda()
# model = AutoModel.from_pretrained(model_path,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)
方式二 :
使用web_demo.py
直接运行即可
方式三:使用streamlit
需要先找到streamlit所在文件,再执行以下命令
D:\pythonapp\anacondas\envs\chatglm\Scripts\streamlit run web_demo2.py
3 模型效果:
鸡兔同笼问题