当前位置:   article > 正文

使用 CPU 本地安装部署运行 ChatGLM-6B 获得自己的专属 AI 宠物_cpu部署chatglm

cpu部署chatglm

ChatGLM-6B 是一个清华开源的、支持中英双语的对话语言模型,基于GLM架构,具有62亿参数。结合模型量化技术,ChatGLM-6B可以本地安装部署运行在消费级的显卡上做模型的推理和训练(全量仅需14GB显存,INT4 量化级别下最低只需 6GB 显存)虽然智商比不过 openAI 的 ChatGPT 模型,但是ChatGLM-6B 是个在部署后可以完全本地运行,可以自己随意调参,几乎没有任何审查限制,也几乎没有对话轮数限制的模型。

部署过程

硬件与软件准备

  • 随便一个CPU(差不多就行,毕竟我看网友还有用赛扬N6210这种东西跑的)
  • 至少32GB的内存(因为模型运行大概需要23~25GB内存)
  • 大于30GB硬盘可用空间
  • 最好有SSD(最开始要将模型读到内存中,模型本体大概就需要占用11GB内存,使用HDD会经历一个漫长的启动过程)

正式开始部署

按照官方文档安装Python3.9+

下载 ChatGLM-6B

  1. # 下载项目源代码
  2. git clone https://github.com/THUDM/ChatGLM-6B
  3. # 切换到项目根目录
  4. cd ChatGLM-6B
  5. # 安装依赖
  6. pip install -r requirements.txt
  7. # 安装web依赖
  8. pip install gradio
  • 整个路径中,不要有中文(比如“C:\AI对话工具\”),也不要有空格(比如“C:\Program Files”)可以避免很多奇怪的问题。
  • 如果你对自己的网络稳定性非常信任,可以跳过下一步的下载模型的步骤

下载模型

  1. #下载模型
  2. git clone https://huggingface.co/THUDM/chatglm-6b

需要下载十几个GB的东西。

如果实在网络不太行,可以将最后那一条下载模型部分命令替换为

  1. # 下载模型实现
  2. GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm-6b

然后从这里手动下载模型参数文件,并将下载的文件替换到刚才新建的chatglm-6b 文件夹内(注意这个文件夹最后是小b结尾)

修改为 CPU 运行 ChatGLM-6B

重新回到ChatGLM-6B目录下,复制一份web_demo.py文件,重名为web.py

将开头第5和第6行代码

  1. from transformers import AutoModel, AutoTokenizer
  2. import gradio as gr
  3. import mdtex2html
  4. tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
  5. model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
  6. model = model.eval()

修改为

  1. from transformers import AutoModel, AutoTokenizer
  2. import gradio as gr
  3. import mdtex2html
  4. tokenizer = AutoTokenizer.from_pretrained("chatglm-6b", trust_remote_code=True)
  5. model = AutoModel.from_pretrained("chatglm-6b", trust_remote_code=True).float()
  6. model = model.eval()
  1. 改了模型的存放路径:删除了 THUDM/ 这个第5和第6行都要改。(这个修改只有执行了上一步下载模型的需要,如果你没执行下载模型那一步,不要改)
  2. 从用cuda运行改为了用CPU运行:第6行最后的.half().cuda()改为.float()(从用GPU的cuda改成用CPU运行)
  3. 如果未来代码变动,或者你想改cli启动的那个文件的话,可以参照上文改。

运行 ChatGLM-6B

重新回到 chatglm-6B 文件夹(注意是程序的,不是放模型的那个文件夹)输入以下命令

python web.py

程序会运行一个 Web Server,并输出地址(应该是 127.0.0.1:7860 )。在浏览器中打开输出的地址即可使用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/189616
推荐阅读
相关标签
  

闽ICP备14008679号