类似ChatGPT的开源项目ChatGLM-6B安装尝试

发布时间 2023-03-28 22:11:41作者: 李潇然

项目git地址

https://github.com/THUDM/ChatGLM-6B

配置要求:

本机电脑显卡显存6G以上。只有cpu则需要32GB以上。

安装基础环境

1.安装python 3.10版本

https://www.python.org/ftp/python/3.10.10/python-3.10.10-amd64.exe

2.安装cuda(有显卡)

下载页面

https://developer.nvidia.com/cuda-downloads

3.根据ChatGLM-6B文档要求,修改cli_demo.py

import os
import platform
from transformers import AutoTokenizer, AutoModel

tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
# model = AutoModel.from_pretrained("/Users/zhengxiaodu/Downloads/chatglm-6b", trust_remote_code=True).half().to("mps")
model = AutoModel.from_pretrained("THUDM/chatglm-6b-int4-qe", trust_remote_code=True).half().cuda()
model = model.eval()

os_name = platform.system()
clear_command = 'cls' if os_name == 'Windows' else 'clear'


def build_prompt(history):
    prompt = "欢迎使用 ChatGLM-6B 模型,输入内容即可进行对话,clear 清空对话历史,stop 终止程序"
    for query, response in history:
        prompt += f"\n\n用户:{query}"
        prompt += f"\n\nChatGLM-6B:{response}"
    return prompt


def main():
    history = []
    print("欢迎使用 ChatGLM-6B 模型,输入内容即可进行对话,clear 清空对话历史,stop 终止程序")
    while True:
        query = input("\n用户:")
        if query == "stop":
            break
        if query == "clear":
            history = []
            os.system(clear_command)
            print("欢迎使用 ChatGLM-6B 模型,输入内容即可进行对话,clear 清空对话历史,stop 终止程序")
            continue
        count = 0
        for response, history in model.stream_chat(tokenizer, query, history=history):
            count += 1
            if count % 8 == 0:
                os.system(clear_command)
                print(build_prompt(history), flush=True)
        os.system(clear_command)
        print(build_prompt(history), flush=True)


if __name__ == "__main__":
    main()


4.下载项目

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

5.安装

pip install -r requirements.txt

6.运行

python cli_demo.py

报错信息如下:

 

 

暂未解决,待续。。。。。。。。。。。。。。