searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Chinese LLaMA2预训练和指令精调实战-离线环境搭建

2023-09-05 08:11:06
75
0

一、离线环境搭建

(一)、安装NVIDIA显卡驱动

  • 查看操作系统
uname -a
cat /etc/redhat-release
  • 查看nvidia显卡相关信息
lspci -nn | grep -i nvidia
  • 根据nvidia显卡相关信息下载对应的nvidia驱动   
    • eg: 显卡型号是[A100 SXM4 40GB]
      • 按下图所示选择驱动下载

                     

    • 安装GCC、kernal组件、dkms等(这部分在环境中已安装,故没有写出安装步骤,未安装同学自行查询安装) 
      • 注意:查看安装nvidia驱动需要的依赖包kernel组件版本是否一致,没安装则需要安装 
      • rpm -qa :列出所有的已经安装在本机 Linux 系统上面的所有软件名,用grep +软件名筛选所需软件是否安装 (RPM 全名是“RedHat Package Manager ”。)
        • 查看系统中所有的kernel版本
rpm -qa|grep kernel 

                               

  • 安装nvidia驱动
# chmod -x 给文件执行权限 
chmod -x  ./NVIDIA-Linux-x86_64-515.105.01.run
# 安装
bash ./NVIDIA-Linux-x86_64-515.105.01.run
# 检查是否安装成功 - 动态显示显卡使用信息,每2秒刷新
nvidia-smi -l 2
watch -n 2 nvidia-smi 

                               

(二)、安装nvidia cuda toolkit组件

  • 查看nvidia驱动和nvidia cuda toolkit组件的对应关系

 

    • 相关查看docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
  • 下载nvidia cuda toolkit组件
    • 相关查看developer.nvidia.cn/cuda-toolkit-archive
    • 在线下载
wget developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
    • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
  • 安装nvidia cuda toolkit组件
    • 获取权限: chmod a+x cuda运行文件
    • 安装CUDA: bash cuda运行文件
    • 过程: 输入accept后回车,选择安装的内容,向下移动选择install,回车进行安装
  • 配置nvidia cuda toolkit组件环境变量
# 编辑环境变量文件 
vi ~/.bashrc
# 增加环境变量
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
# 使环境变量生效
source ~/.bashrc
# 查看是否安装成功
nvcc -V

(三)、安装Anaconda/Miniconda

  • 在线下载
wget mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.07-0-Linux-x86_64.sh
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
  • 安装Anaconda 
bash Anaconda3-2020.02-Linux-x86_64.sh
  • 配置conda环境变量
vim /etc/profile
# 添加环境变量
export ANACONDA_PATH=~/anaconda3
export PATH=$PATH:$ANACONDA_PATH/bin
# 使环境变量生效
source /etc/profile
# 查看是否安装成功
which anaconda
conda --version
conda info -e
python
# 查看虚拟环境
conda env list
# 激活环境
conda activate env_name

(四)、安装cudnn

  • 下载网址 (注意:nvidia驱动和cudnn的对应)
    • 相关参考developer.nvidia.com/rdp/cudnn-download
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上\

  • 安装cudnn
# 解压
tar -xf cudnn对应版本文件.tar.xz
# 进目录
cd cudnn解压后文件夹/
# 复制
cp ./include/*  /usr/local/cuda-11.7/include/
cp ./lib/libcudnn*  /usr/local/cuda-11.7/lib64/ 
# 授权
chmod a+r /usr/local/cuda-11.7/include/* /usr/local/cuda-11.7/lib64/libcudnn*
# 查看是否安装成功
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

(五)、单独安装pytorch

  • pytorch和cuda对应的版本
    • 相关参考pytorch.org/get-started/previous-versions/
    • eg: cuda 11.7    pytorch 1.13.1、2.0.0、2.0.1
  • pytorch和python对应的版本
    • 相关参考github.com/pytorch/vision
    • eg: pytorch 1.13.1     python >=3.7.2, <=3.10    
  • pytorch和torchvision对应的版本
    • 相关参考github.com/pytorch/vision
    • eg: pytorch 1.13.1      python >=3.7.2, <=3.10       torchvision 0.14.1     torchaudio==0.13.1
  • 如果是在线安装,一般用pip install和conda install
    • pip install是python自带的包管理工具,可以用来安装python包,但不能处理包之间的依赖关系,可能会导致依赖关系冲突或版本不兼容等问题
    • conda install是Anaconda提供的包管理工具,它不仅可以安装python包,还可以管理非python软件包,并且可以自动解决依赖关系,避免了依赖问题
conda install pytorch==1.13.1 torchvision==0.14.1 pytorch-cuda=11.7 -c pytorch -c nvidia
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url download.pytorch.org/whl/cu117
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
    • 下载网址(pytorch的源网站)相关参考download.pytorch.org/whl/torch_stable.html
      • 依赖包的下载
typing_extensions-4.4.0-py3-none-any.whl
cu117/torch-1.13.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
cu117/torchaudio-0.13.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
cu117/torchvision-0.14.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
    • pytorch的清华网站: mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/
    • 下载的.whl文件,上传到linux服务器之后,直接在它所在的目录用命令行输入
pip install torch-1.13.1+cu117-cp37-cp37m-linux_x86_64.whl
pip install torchaudio-0.13.1+cu117-cp37-cp37m-linux_x86_64.whl
pip install torchvision-0.14.1+cu117-cp37-cp37m-linux_x86_64.whl
  • 检查是否安装成功
python -c "import torch; print(torch.cuda.is_availabel())"  
import torch
print(torch.__version__)
print(torch.version.cuda)
print(torch.backends.cudnn.version())
  • 报错
python -c "import torch; print(torch._C._cuda_getDeviceCount())"
# 报错信息
/root/anaconda3/lib/python3.7/site-packages/torch/cuda/__init__.py:83: UserWarning: CUDA initialization: Unexpected error from cudaGetDeviceCount(). 
    • 原因:需要安装与驱动版本对应的nvidia-fabricmanager服务
driver_version=515.105.01
wget mirrors.cloud.aliyuncs.com/nvidia-cuda/rhel8/x86_64/nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
rpm -ivh nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
systemctl enable nvidia-fabricmanager
systemctl start nvidia-fabricmanager
systemctl status nvidia-fabricmanager

 

二、训练前准备

参考llama2大模型训练实战连载文《Chinese LLaMA2预训练和指令精调实战-训练前准备》

三、预训练

四、精调

0条评论
0 / 1000
l****n
28文章数
5粉丝数
l****n
28 文章 | 5 粉丝
原创

Chinese LLaMA2预训练和指令精调实战-离线环境搭建

2023-09-05 08:11:06
75
0

一、离线环境搭建

(一)、安装NVIDIA显卡驱动

  • 查看操作系统
uname -a
cat /etc/redhat-release
  • 查看nvidia显卡相关信息
lspci -nn | grep -i nvidia
  • 根据nvidia显卡相关信息下载对应的nvidia驱动   
    • eg: 显卡型号是[A100 SXM4 40GB]
      • 按下图所示选择驱动下载

                     

    • 安装GCC、kernal组件、dkms等(这部分在环境中已安装,故没有写出安装步骤,未安装同学自行查询安装) 
      • 注意:查看安装nvidia驱动需要的依赖包kernel组件版本是否一致,没安装则需要安装 
      • rpm -qa :列出所有的已经安装在本机 Linux 系统上面的所有软件名,用grep +软件名筛选所需软件是否安装 (RPM 全名是“RedHat Package Manager ”。)
        • 查看系统中所有的kernel版本
rpm -qa|grep kernel 

                               

  • 安装nvidia驱动
# chmod -x 给文件执行权限 
chmod -x  ./NVIDIA-Linux-x86_64-515.105.01.run
# 安装
bash ./NVIDIA-Linux-x86_64-515.105.01.run
# 检查是否安装成功 - 动态显示显卡使用信息,每2秒刷新
nvidia-smi -l 2
watch -n 2 nvidia-smi 

                               

(二)、安装nvidia cuda toolkit组件

  • 查看nvidia驱动和nvidia cuda toolkit组件的对应关系

 

    • 相关查看docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
  • 下载nvidia cuda toolkit组件
    • 相关查看developer.nvidia.cn/cuda-toolkit-archive
    • 在线下载
wget developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
    • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
  • 安装nvidia cuda toolkit组件
    • 获取权限: chmod a+x cuda运行文件
    • 安装CUDA: bash cuda运行文件
    • 过程: 输入accept后回车,选择安装的内容,向下移动选择install,回车进行安装
  • 配置nvidia cuda toolkit组件环境变量
# 编辑环境变量文件 
vi ~/.bashrc
# 增加环境变量
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
# 使环境变量生效
source ~/.bashrc
# 查看是否安装成功
nvcc -V

(三)、安装Anaconda/Miniconda

  • 在线下载
wget mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.07-0-Linux-x86_64.sh
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
  • 安装Anaconda 
bash Anaconda3-2020.02-Linux-x86_64.sh
  • 配置conda环境变量
vim /etc/profile
# 添加环境变量
export ANACONDA_PATH=~/anaconda3
export PATH=$PATH:$ANACONDA_PATH/bin
# 使环境变量生效
source /etc/profile
# 查看是否安装成功
which anaconda
conda --version
conda info -e
python
# 查看虚拟环境
conda env list
# 激活环境
conda activate env_name

(四)、安装cudnn

  • 下载网址 (注意:nvidia驱动和cudnn的对应)
    • 相关参考developer.nvidia.com/rdp/cudnn-download
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上\

  • 安装cudnn
# 解压
tar -xf cudnn对应版本文件.tar.xz
# 进目录
cd cudnn解压后文件夹/
# 复制
cp ./include/*  /usr/local/cuda-11.7/include/
cp ./lib/libcudnn*  /usr/local/cuda-11.7/lib64/ 
# 授权
chmod a+r /usr/local/cuda-11.7/include/* /usr/local/cuda-11.7/lib64/libcudnn*
# 查看是否安装成功
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

(五)、单独安装pytorch

  • pytorch和cuda对应的版本
    • 相关参考pytorch.org/get-started/previous-versions/
    • eg: cuda 11.7    pytorch 1.13.1、2.0.0、2.0.1
  • pytorch和python对应的版本
    • 相关参考github.com/pytorch/vision
    • eg: pytorch 1.13.1     python >=3.7.2, <=3.10    
  • pytorch和torchvision对应的版本
    • 相关参考github.com/pytorch/vision
    • eg: pytorch 1.13.1      python >=3.7.2, <=3.10       torchvision 0.14.1     torchaudio==0.13.1
  • 如果是在线安装,一般用pip install和conda install
    • pip install是python自带的包管理工具,可以用来安装python包,但不能处理包之间的依赖关系,可能会导致依赖关系冲突或版本不兼容等问题
    • conda install是Anaconda提供的包管理工具,它不仅可以安装python包,还可以管理非python软件包,并且可以自动解决依赖关系,避免了依赖问题
conda install pytorch==1.13.1 torchvision==0.14.1 pytorch-cuda=11.7 -c pytorch -c nvidia
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url download.pytorch.org/whl/cu117
  • 因为我们是离线安装,所以需要在本地下载后上传到远程机上
    • 下载网址(pytorch的源网站)相关参考download.pytorch.org/whl/torch_stable.html
      • 依赖包的下载
typing_extensions-4.4.0-py3-none-any.whl
cu117/torch-1.13.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
cu117/torchaudio-0.13.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
cu117/torchvision-0.14.1%2Bcu117-cp37-cp37m-linux_x86_64.whl
    • pytorch的清华网站: mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/
    • 下载的.whl文件,上传到linux服务器之后,直接在它所在的目录用命令行输入
pip install torch-1.13.1+cu117-cp37-cp37m-linux_x86_64.whl
pip install torchaudio-0.13.1+cu117-cp37-cp37m-linux_x86_64.whl
pip install torchvision-0.14.1+cu117-cp37-cp37m-linux_x86_64.whl
  • 检查是否安装成功
python -c "import torch; print(torch.cuda.is_availabel())"  
import torch
print(torch.__version__)
print(torch.version.cuda)
print(torch.backends.cudnn.version())
  • 报错
python -c "import torch; print(torch._C._cuda_getDeviceCount())"
# 报错信息
/root/anaconda3/lib/python3.7/site-packages/torch/cuda/__init__.py:83: UserWarning: CUDA initialization: Unexpected error from cudaGetDeviceCount(). 
    • 原因:需要安装与驱动版本对应的nvidia-fabricmanager服务
driver_version=515.105.01
wget mirrors.cloud.aliyuncs.com/nvidia-cuda/rhel8/x86_64/nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
rpm -ivh nvidia-fabric-manager-${driver_version}-1.x86_64.rpm
systemctl enable nvidia-fabricmanager
systemctl start nvidia-fabricmanager
systemctl status nvidia-fabricmanager

 

二、训练前准备

参考llama2大模型训练实战连载文《Chinese LLaMA2预训练和指令精调实战-训练前准备》

三、预训练

四、精调

文章来自个人专栏
AI-llama大模型,go语言开发
28 文章 | 2 订阅
0条评论
0 / 1000
请输入你的评论
0
0