Ubuntu的本地模型安装说明

@Ubuntu的本地模型安装说明

本人安装的硬件环境如下:
CPU:intel 至强E5 2.9/3.3G 10核/20线程
内存:64G
显卡:Tesla P40 24G ECC DDR5

本人自测及安装本地模型

你好! 这是你第一次对外发布文章,本人将之前在自已机器上安装成功的经验分享给大家,同时作为自己后期内容留存,希望你看也能够有启发性作用。

第一步:Ubuntu上安装Jupyter Notebook的最新版本

通过python有pip安装命令【需注意前期已安装好python工具】

sudo pip3 install notebook

第二步:安装Anaconda环境【该环境主要用于AI各种环境区分安装应用】

1.下载最新版本的Anaconda安装脚本

wget https://repo.anaconda.com/archive/Anaconda3-2022.05-Linux-x86_64.sh

2.执行下面命令运行安装脚本【注意在文件下载目录下执行】

bash Anaconda3-2022.05-Linux-x86_64.sh

3.系统安装目录(选择默认,如下面我选择的默认目录,如用sudo安装,会默认到root目录,该目录要求权限高,后期使用会遇到麻烦事)

/home/allanfan/anaconda3

4.手动激活Anaconda环境

source ~/anaconda3/bin/activate

5.验证安装是否成功,通过运行

conda list

第三步:创建python3.9虚拟环境,例如:我创建的虚拟环境名称为qinglan

1.安装过程提示都选择y,其中ipykernel是允许Jupyter Notebook使用该内核环境【前期是已安装Jupyter Notebook】

conda create -n qinglantrain python=3.9 ipykernel

2.在特定的conda环境中直接启动Jupyter Notebook,可以使用下面的命令(日志名称可以用虚拟环境名称)

conda activate qinglantrain 

3.安装Jupyter Notebook支持使用当前环境创建及运行代码

conda install nb_conda

安装成功测试Notebook是否可正常使用【以下命令执行后,在浏览器中打开http://127.0.0.1:8888即可访问】

nohup jupyter notebook --ip='*' --port=8888 --allow-root > qinglan.log 2>&1 &

4.安装当前虚拟环境模型运行的pytouch依赖项【我安装的pytouch对应的CUDA是11.8】

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

安装成功后查看cuda版本在当前虚拟环境下版本号

conda list | grep cuda

5.安装NLP包(我安装的是ModelScope官网的推理模型)

pip install modelscope
pip install modelscope[nlp] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html 

6.下载模型

下载压缩包方式【使用unzip命令解压下载的通义千问压缩包】

unzip Qwen-main.zip

命令下载方式[下面是python下载方式,支持在PYTHON命令中执行]

from modelscope.hub.snapshot_download import snapshot_download
model_dir = snapshot_download('Qwen/Qwen-7b-chat', 'v1.1.5')

7.安装tiktoken依赖项(主要用于训练时的语句分词)

pip install tiktoken -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

8.安装推理模型需要的依赖项文件requirements.txt

pip install -r requirements.txt

文件依赖内容如下:
transformers>=4.32.0,<4.38.0
accelerate
tiktoken
einops
transformers_stream_generator==0.0.4
scipy

9.安装gradio依赖项【该依赖项主要用于推理模型的WEB的DEMO启动】

pip install gradio

10.安装mdtex2html依赖项

pip install mdtex2html

11.安装flask及相关依赖项

pip install --upgrade flask[async]

12.安装accelerate依赖项

pip install accelerate

13.安装bitsandbytes依赖项

pip install bitsandbytes

14.安装peft依赖项

pip install peft

15.安装deepspeed peft<0.8.0依赖项

pip install deepspeed 
pip install --upgrade "peft<0.8.0"

16.安装auto-gptq依赖库

pip install auto-gptq

17.安装optimum依赖库

pip install optimum

18.安装MPI及mpi4py依赖库

下载MPI及解压(整个安装在主环境下进行的)

wget https://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2.tar.gz

解压下载的安装文件

tar xvzf openmpi-1.10.2.tar.gz

解压之后进入解压后的目录

cd openmpi-1.10.2

编译安装

./configure

用make继续进行安装

sudo make all install

添加环境变量【gedit需提前安装,如不支持,可在bash中执行 pip install gedit先安装】

cd ~
sudo gedit ~/.bashrc

在上面打开的文件最后一行添加以下内容

#mpi4py
export LD_LIBRARY_PATH+=:/usr/local/lib

执行以下命令激活当前环境

source /etc/profile

验证安装

cd openmpi-1.10.2/examples
make
mpirun -np 4 hello_c

如验证报错,追加安装openmpi-bin依赖项安装

sudo apt install openmpi-bin

安装mpi4py注意事项(当前安装在qinglantrain环境下进行的–运行时报cuda错误,可能是nvidia版本与pytouch版本不致导致的)

conda install mpi4py

19.用modelscope运行大模型进行微调处理【当前文件是modelscope下载模型自带功能】

bash finetune/finetune_lora_single_gpu.sh

20.安装语音开发插件

pip install pyaudio

21.接下来安装nginx,用于大模型对外发布,主要安装、启动及配置命令如下

安装nginx命令

sudo apt install nginx

启动nginx命令

systemctl status nginx

配置nginx命令

sudo gedit /etc/nginx/nginx.conf

命令执行后打开配置文件,修改内容如下:

server {
listen 80;
server_name python;

location / {
    proxy_pass http://127.0.0.1:5000;   # Python应用程序运行的地址及端口号
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
}

}

检测nginx配置修改是否正确

nginx -t
sudo nginx -t  # 测试配置文件是否有语法错误
sudo systemctl reload nginx  # 重新加载配置(不中断服务)

22.运行Llama3-Chinese-8B-Instruct需增加安装flash_attn依赖项

pip install flash_attn

整个安装过程注意事项

1.pytouch配套安装cuda版本要高于nvidia-smi的显卡驱动,不能高太多,否则运行依赖会报错;
2.查看当前显卡的驱动及cuda支持版本:

nvidia-smi

3.启动python的命令:

nohup python -u openai_api_linux.py > openai_api_linux.log 2>&1 & 

openai_api_linux.log将运行结果重指向到指定日志文件中, 第一个“>”代表每次运行删除原日志重新创建;如需追加日志修改成">>"

4.导出conda环境,用于当前环境运行成功的依赖项查看及复制

conda env export > environment.yml

5.查看软件运行命令

ps -ef | grep sk_linux_64

6.查看conda环境列表

conda env list

7.删除conda环境,需退出当前conda环境执行

conda remove --name model18_cuda118 --all

8.查看全部软件安装信息

dpkg --get-selections | grep / apt list --installed

ubuntu系统下改变pip下载源为清华镜像

export PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple

以上是本人亲测的modelscope的模型推理、微调功能,希望能够帮助大家对大模型的部署给予一点启发性帮助!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小军哥666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值