EulerOS(NPU)安装llamafactory

一、系统环境

复制代码
cat /etc/os-release
NAME="EulerOS"
VERSION="2.0 (SP10)"
ID="euleros"
VERSION_ID="2.0"
PRETTY_NAME="EulerOS 2.0 (SP10)"
ANSI_COLOR="0;31"

uname -m
aarch64

npu-smi info
# 8卡 ...

二、版本选择

  • CANN 8.2.RC1
  • torch 2.6.0
  • torch-npu 2.6.0

三、安装CANN 8.2.RC1

1. 官方下载地址

  • wget https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/CANN/CANN%208.2.RC1/Ascend-cann-toolkit_8.2.RC1_linux-aarch64.run
  • wget https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/CANN/CANN%208.2.RC1/Ascend-cann-kernels-910b_8.2.RC1_linux-aarch64.run

2、root用户安装CANN方便所有用户使用这个版本

复制代码
sh Ascend-cann-toolkit_8.2.RC1_linux-aarch64.run --check
sh Ascend-cann-toolkit_8.2.RC1_linux-aarch64.run --install
sh Ascend-cann-kernels-910b_8.2.RC1_linux-aarch64.run --check
sh Ascend-cann-kernels-910b_8.2.RC1_linux-aarch64.run --install

四、安装llamafactory

1. 创建新用户llamafactory

复制代码
useradd -m -s /bin/bash llamafactory
passwd llamafactory
usermod -aG HwHiAiUser llamafactory

visudo # /usr/local/Ascend权限
    llamafactory ALL=(ALL) NOPASSWD:ALL
su - llamafactory

2. 安装conda

复制代码
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh -O ~/miniconda.sh
bash ~/miniconda.sh -b -p $HOME/miniconda3
vim ~/.bashrc
	export PATH=$HOME/miniconda3/bin:$PATH
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r
conda init
conda create -n lf310 python=3.10 -y
conda activate lf310

3. 配置环境变量cann多个版本并存(vim ~/.bashrc

复制代码
# cp /usr/local/Ascend/ascend-toolkit/set_env.sh
export LD_LIBRARY_PATH=/usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64/common:/usr/local/Ascend/driver/lib64/driver
export ASCEND_TOOLKIT_HOME=/usr/local/Ascend/ascend-toolkit/8.2.RC1
export LD_LIBRARY_PATH=${ASCEND_TOOLKIT_HOME}/lib64:${ASCEND_TOOLKIT_HOME}/lib64/plugin/opskernel:${ASCEND_TOOLKIT_HOME}/lib64/plugin/nnengine:${ASCEND_TOOLKIT_HOME}/opp/built-in/op_impl/ai_core/tbe/op_tiling/lib/linux/$(arch):$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=${ASCEND_TOOLKIT_HOME}/tools/aml/lib64:${ASCEND_TOOLKIT_HOME}/tools/aml/lib64/plugin:$LD_LIBRARY_PATH
export PYTHONPATH=${ASCEND_TOOLKIT_HOME}/python/site-packages:${ASCEND_TOOLKIT_HOME}/opp/built-in/op_impl/ai_core/tbe:$PYTHONPATH
export PATH=${ASCEND_TOOLKIT_HOME}/bin:${ASCEND_TOOLKIT_HOME}/compiler/ccec_compiler/bin:${ASCEND_TOOLKIT_HOME}/tools/ccec_compiler/bin:$PATH
export ASCEND_AICPU_PATH=${ASCEND_TOOLKIT_HOME}
export ASCEND_OPP_PATH=${ASCEND_TOOLKIT_HOME}/opp
export TOOLCHAIN_HOME=${ASCEND_TOOLKIT_HOME}/toolkit
export ASCEND_HOME_PATH=${ASCEND_TOOLKIT_HOME}

4. gcc版本过低升级到8.4.0

  • gcc版本

  • 下载 wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-8.4.0/gcc-8.4.0.tar.gz

  • 解压 tar zxvf gcc-8.4.0.tar.gz

  • 下载依赖 ./contrib/download_prerequisites

  • 创建编译文件夹 mkdir buildgcc && cd buildgcc

  • 编译安装 安装到/path 目录下 不要覆盖系统的gcc 否则安装其他软件会报permission 错误 需要指定 需要指定 CC make CC=/path/gcc/bin/gcc

    复制代码
    sudo mkdir -p /path
    sudo chown -R llamafactory:llamafactory /path
    # /path 目录下 方便其他用户该版本
    ../configure -enable-checking=release -enable-languages=c,c++,fortran -disable-multilib --prefix=/path/gcc
    #make # 速度太慢改为并行编译
    make -j$(nproc) # 大概1~2h
    make install # 这个很快
  • 配置环境变量

    复制代码
    #gcc
    export gcchome=/path/gcc
    export PATH=$gcchome/bin:$PATH
    export PATH=$gcchome/lib:$PATH
    export PATH=$gcchome/lib64:$PATH
    export LD_LIBRARY_PATH=$gcchome/lib:$LD_LIBRARY_PATH
    export LD_LIBRARY_PATH=$gcchome/lib64:$LD_LIBRARY_PATH
    export LIBRARY_PATH=$gcchome/lib:$LIBRARY_PATH
    export LIBRARY_PATH=$gcchome/lib64:$LIBRARY_PATH
    export PATH=$gcchome/include:$PATH
    export LD_LIBRARY_PATH=$gcchome/include:$LD_LIBRARY_PATH
    export LIBRARY_PATH=$gcchome/include:$LIBRARY_PATH

5、安装llamafactory

也可以参考llamafactory微调

复制代码
conda activate lf310
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -e ".[torch-npu,metrics]" -i https://pypi.tuna.tsinghua.edu.cn/simple
pip show torch # 升级到2.6.0
pip uninstall torch torch-npu torchvision
pip install torch-npu==2.6.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
相关推荐
大龄Python青年3 小时前
Linux发行版Ubuntu24.04安装教程
linux·ubuntu·1024程序员节
落798.3 小时前
【在昇腾NPU上部署Llama-2-7B:从环境配置到性能测试的完整实战】
经验分享·llama·1024程序员节
金仓拾光集3 小时前
制造业库存系统卡顿?金仓数据库平替MongoDB实现高效稳定管理
1024程序员节
学编程的小程3 小时前
从MongoDB到国产数据库:一场2TB电子证照系统的“平滑着陆”实践
1024程序员节
weibkreuz3 小时前
maven打jar包,将依赖的jar提取出来
1024程序员节
在努力的前端小白4 小时前
Nginx反向代理WebSocket配置笔记
1024程序员节
Code-X04 小时前
Bash 与 Source:命令执行的核心差异解析
开发语言·bash·1024程序员节
黄思搏4 小时前
2-3-4树 - 2-3-4 Tree 原理与 C# 实现
数据结构·1024程序员节
潼心1412o4 小时前
数据结构(长期更新)第3讲:顺序表相关操作
数据结构·1024程序员节