人工智能技术的发展正在改变我们的生活和工作方式,例如ChatGPT聊天机器人,也越来越受到人们的喜爱和使用。ChatGLM 是由清华大学 KEG 实验室和智谱AI开发的人工智能聊天机器人程序,它基于大型语言模型 GLM-130B 训练而成,能够为用户提供自然流畅的对话交互。本文将介绍如何部署ChatGLM,帮助大家更好地了解和使用这一AI工具。
安装环境
- VMware虚拟机
- CPU:8 Core
- GPU:Tesla P40
- RAM:8G
- 系统:Ubuntu 22.04.1 LTS
- 用户:root
配置虚拟环境
安装Anaconda
参考之前的Anaconda安装方法,安装conda环境
创建conda虚拟环境
conda create --name chatglm_env python=3.10
中途按Y确认一下就行。
需要使用3.10版本的python,我使用的是3.10.9
github上没说推荐的python版本,但我使用3.9会报错
github上没说推荐的python版本,但我使用3.9会报错
RuntimeError: Library cudart is not initialized
激活环境
conda activate chatglm_env
查看python版本
python -V
安装ChatGLM-6B
选择安装目录
创建一个chatglm的目录
mkdir chatglm
cd /chatglm
从github上拉取最新的ChatGLM-6B-webui
git clone https://github.com/THUDM/ChatGLM-6B.git
进入项目目录
cd ChatGLM-6B
安装依赖
pip install -r requirements.txt
安装其他依赖
运行api.py需要pip install fastapi uvicorn
运行web_demo2.py需要pip install streamlit
选择ChatGLM模型
量化等级 | 最低 GPU 显存(推理) | 最低 GPU 显存(高效参数微调) |
---|---|---|
FP16(无量化) | 13 GB | 14 GB |
INT8 | 8 GB | 9 GB |
INT4 | 6 GB | 7 GB |
INT4-QE | 6 GB | 7 GB |
ChatGLM-6B
是一个开源的、支持中英双语问答的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。ChatGLM-6B-INT4
是 ChatGLM-6B 量化后的模型权重。具体的,ChatGLM-6B-INT4 对 ChatGLM-6B 中的 28 个 GLM Block 进行了 INT4 量化,没有对 Embedding 和 LM Head 进行量化。ChatGLM-6B-INT4-QE
是 ChatGLM-6B 量化后的模型权重。具体的,ChatGLM-6B-INT4-QE 对 ChatGLM-6B 中的 28 个 GLM Block 、 Embedding 和 LM Head 进行了 INT4 量化。
加载模型时需要用到最低GPU显存同等的内存大小
下载ChatGLM模型
按需选择模型:
chatglm-6b
chatglm-6b-int4
chatglm-6b-int4-qe
git clone https://huggingface.co/THUDM/chatglm-6b THUDM/chatglm-6b
启动项目
python web_demo.py
不出意外就能访问webui了