基于 ChatGLM-6B 部署本地私有化 ChatGPT( 二 )

3、部署ChatGLM 6B
3.1 下载源码
直接下载chatGLM-6B  https://Github.com/THUDM/ChatGLM-6B
git下载  git clone https://github.com/THUDM/ChatGLM-6B
3.2 安装依赖
进入ChatGLM-6B目录
使用 pip 安装依赖:pip install -r requirements.txt,其中 transformers 库版本推荐为 4.27.1,但理论上不低于 4.23.1 即可 。
此外,如果需要在 cpu 上运行量化后的模型,还需要安装 gcc 与 openmp 。多数 linux 发行版默认已安装 。对于 windows ,可在安装 TDM-GCC 时勾选 openmp 。Windows 测试环境 gcc 版本为 TDM-GCC 10.3.0,Linux 为 gcc 11.3.0
3.3 下载模型
从 Hugging Face Hub 下载
可以手动下载https://huggingface.co/THUDM/chatglm-6b/tree/main
git下载 git clone https://huggingface.co/THUDM/chatglm-6b
将模型下载到本地之后,将以上代码中的 THUDM/chatglm-6b 替换为你本地的 chatglm-6b 文件夹的路径,即可从本地加载模型;
在chatglm-6b文件下创建一个model文件夹放模型文件
3.4 代码调用
可以通过如下代码调用 ChatGLM-6B 模型来生成对话:
模型的实现仍然处在变动中 。如果希望固定使用的模型实现以保证兼容性,可以在 from_pretrained 的调用中增加 revisinotallow="v1.1.0" 参数 。
>>> from transformers import AutoTokenizer, AutoModel>>> tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", tRust_remote_code=True)>>> model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()>>> model = model.eval()>>> response, history = model.chat(tokenizer, "你好", history=[])>>> print(response)你好
【基于 ChatGLM-6B 部署本地私有化 ChatGPT】


推荐阅读