极简教学 | ChatGLM2-6B在只有cpu的linux服务器部署

目录

一、安装wget

二、安装git

三、安装pip

四、下载ChatGLM2-6B源码

五、安装Anaconda 

六、安装pytorch 

七、下载模型库 

八、最后的准备工作

九、运行程序

一、安装wget

1.删除自带的wget

 yum remove wget

2.重新安装wget

yum -y install wget

3.检测wget版本

rpm -qa | grep "wget"

若出现下图,则成功。 

二、安装git

1.删除自带的git

yum remove git

2.安装依赖

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install  gcc perl-ExtUtils-MakeMaker

3.用cd命令  cd /usr/src 进入对应文件夹,安装git

wget https://github.com/git/git/archive/v2.9.2.tar.gz

4.添加到环境变量

echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
source /etc/bashrc

 5.验证使用git --version验证是否成功,效果如下图

 

三、安装pip

1.下载pip压缩包

wget https://files.pythonhosted.org/packages/4b/30/e15b806597e67057e07a5acdc135216ccbf76a5f1681a324533b61066b0b/pip-22.2.2.tar.gz

2.解压缩

tar xf pip-9.0.1.tar.gz

3.下载setuptools 

wget https://pypi.python.org/packages/28/4f/889339f38da415e49cff15b21ab27becbf4c017c79fbfdeca663f5b33b36/setuptools-36.4.0.zip

4.解压缩

unzip setuptools-36.4.0.zip

5.编译并执行

cd setuptools-36.4.0
python setup.py build
python setup.py install

6.进入pip文件夹

cd pip-9.0.1

7.安装pip

python setup.py install

8.使用pip --version验证是否成功,效果如图 

 

四、下载ChatGLM2-6B源码

1.

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

2.下载对应的依赖

cd ChatGLM2-6B
pip install -r requirements.txt
pip install gradio

五、安装Anaconda 

1.前往Anaconda官网:Free Download | Anaconda

2. 选择Linux平台的64位版本,进行下载

3.使用cd命令进入安装包所在文件夹,使用sh命令安装

sh Anaconda3-2019.07-Linux-x86_64.sh

4.会出现很多信息,一路yes下去,观看文档用q跳过

5.输入conda -V查看版本验证是否安装成功

六、安装pytorch 

1.前往pytorch官网:https://pytorch.org/

 2.选择Stable,Linux,Conda,Python,CPU,并执行给出的指令即可

七、下载模型库 

1.由于chatglm2模型十分庞大,建议本地下载后传入服务器对应文件夹。THUDM/chatglm2-6b at main (huggingface.co)https://huggingface.co/THUDM/chatglm2-6b/tree/main2.注意要下载huggingface上的全部内容,放入文件夹中,理论上可以放在任何位置,下图放在了源代码文件中。

极简教学 | ChatGLM2-6B在只有cpu的linux服务器部署_第1张图片

八、最后的准备工作

1.conda创建虚拟环境

conda create --name ChatGLM2 python=3.10.6

2.激活虚拟环境

conda activate ChatGLM2

3.使用cd命令进入对应的文件夹,对于我来所是如下命令

cd /home/ai/ChatCLM2-6B/

4.修改cli_demo文件(使用命令行操作)

        1)将5,6行添加自己下载的模型文件的路径。

        2)第六行结尾的.cuda()改为.float()

tokenizer = AutoTokenizer.from_pretrained("/home/ai/ChatGLM2-6B/model", trust_remote_code=True)
model = AutoModel.from_pretrained("/home/ai/ChatGLM2-6B/model", trust_remote_code=True).float()

5. 修改 web_demo.py文件(使用可视化界面操作)

      1)将5,6行添加自己下载的模型文件的路径,

      2)第六行结尾的.cuda()改为.float()

tokenizer = AutoTokenizer.from_pretrained("/home/ai/ChatGLM2-6B/model", trust_remote_code=True)
model = AutoModel.from_pretrained("/home/ai/ChatGLM2-6B/model", trust_remote_code=True).float()

        3)在最后一行,将demo.queue().lanuch函数改为如下 

demo.queue().launch(share=True, inbrowser=True,server_name = '0.0.0.0')

         4)在predict函数中,第二句话改为

for response, history in model.stream_chat ( tokenizer ,input ,history,past_key_values=past_key_values, return_past_key_values=False, max_length=max_length, top_p=top_p,
temperature=temperature)

九、运行程序

1.命令行交互:python cli_demo.py 直接运行

        如果提示No model named xxx,可以尝试pip install xxx来解决

极简教学 | ChatGLM2-6B在只有cpu的linux服务器部署_第2张图片

2.可视界面交互:

        先使用ifconfig获取服务器物理地址

      然后python web_demo.py 运行,将显示的0.0.0.0:<端口数>中的0.0.0.0改为服务器的物理地址,使用浏览器访问即可。

        如果提示No model named xxx,可以尝试pip install xxx来解决    

        极简教学 | ChatGLM2-6B在只有cpu的linux服务器部署_第3张图片    

你可能感兴趣的:(服务器,linux,运维)