diff --git a/MindIE/LLM/Pangu/openPangu-Embedded-1B-OrangePi/README.md b/MindIE/LLM/Pangu/openPangu-Embedded-1B-OrangePi/README.md index 6cf7109aa30cad1acdd4edb2bdcf6ad4625753fa..8916403f60f6f94ce60eb16c72b1b960bed5afc6 100644 --- a/MindIE/LLM/Pangu/openPangu-Embedded-1B-OrangePi/README.md +++ b/MindIE/LLM/Pangu/openPangu-Embedded-1B-OrangePi/README.md @@ -85,7 +85,7 @@ openPangu-Embedded-1B 是基于昇腾 NPU 从零训练的高效语言模型, | 包名 | | -------------------------------------------- | - | torch-2.1.0-cp310-cp10-linux_aarch64.whl | + | torch-2.1.0-cp310-cp310-linux_aarch64.whl | | ... | - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的torch安装包。 @@ -102,8 +102,6 @@ openPangu-Embedded-1B 是基于昇腾 NPU 从零训练的高效语言模型, | 包名 | | --------------------------- | -| pytorch_v2.1.0_py38.tar.gz | -| pytorch_v2.1.0_py39.tar.gz | | pytorch_v2.1.0_py310.tar.gz | | ... | @@ -123,12 +121,12 @@ pip install torch*_aarch64.whl ### 1.4 安装模型仓 使用编译好的包进行安装 - - 下载编译好的包(预计8月上旬发布版本,届时更新下载链接) + - 下载编译好的包[链接](https://support.huawei.com/enterprise/zh/ascend-computing/mindie-pid-261803968/software/266130647?idAbPath=fixnode01|23710424|251366513|254884019|261408772|261803968) | 包名 | | ------------------------------------------------------------ | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch1.11.0-abi0.tar.gz | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch2.1.0-abi1.tar.gz | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz | | ... | - 将文件放置在\${working_dir}路径下 diff --git a/MindIE/LLM/Qwen3/Qwen3-0.6B-OrangePi/README.md b/MindIE/LLM/Qwen3/Qwen3-0.6B-OrangePi/README.md index 0a995767c16a462bcfc2884a34ae217c1e2a6d90..e019a51f650afc9fe6388daada318159135996b5 100644 --- a/MindIE/LLM/Qwen3/Qwen3-0.6B-OrangePi/README.md +++ b/MindIE/LLM/Qwen3/Qwen3-0.6B-OrangePi/README.md @@ -10,7 +10,7 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 ## 约束条件 * 在OrangePi AIpro(20T)上部署Qwen3-0.6B模型 -* 需要修改权重目录下的config.json文件,"torch_dtype"字段改为"float16", "max_position_embedding"字段改为4096, 删除“rope_scaling”字段 +* 需要修改权重目录下的config.json文件,"torch_dtype"字段改为"float16", "max_position_embedding"字段改为4096, 删除“rope_scaling”字段, 注意检查“transformers”字段以对齐版本 * 由于此硬件为单卡,仅支持TP=1 ## 权重 @@ -19,16 +19,42 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 - [Qwen3-0.6B](https://huggingface.co/Qwen/Qwen3-0.6B/tree/main) -## 新建环境 +## 环境准备 -### 1.1 安装CANN -- CANN-kernels[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-kernels-310b_8.1.RC1_linux-aarch64.run) -- CANN-toolkit[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-toolkit_8.1.RC1_linux-aarch64.run) -- 安装顺序:先安装toolkit 再安装kernel +### 1.1 虚拟环境 -#### 1.1.1 安装toolkit +- 创建虚拟环境:香橙派属于边端设备,需要创建虚拟环境进行部署 + ```shell + conda create -n env_name python=3.10 + ``` + +- 获取设备信息 + - 使用`uname -a`指令查看服务器是x86还是aarch架构 + - 使用以下指令查看abi是0还是1 + ```shell + python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ``` + 若输出结果为True表示abi1,False表示abi0 + +### 1.2 资源下载 -- 下载 +请前往[昇腾社区/社区版资源下载](https://www.hiascend.com/developer/download/community/result?module=ie+pt+cann)下载适配板卡的MindIE、CANN和PTA组件,各版本配套表如下: +| 组件 | 版本 | +| - | - | +| MindIE | 2.1.RC1 | +| CANN | 8.2.RC1 | +| PTA | 7.1.0 | + +- CANN下载内容:toolkit(工具包);kernels(算子包);nnal(加速库) +- PTA下载内容:torch_npu + +### 1.3 安装CANN + +- 安装顺序:先安装toolkit 再安装kernel 最后安装nnal + +#### 1.3.1 安装toolkit + +- 检查包 | cpu | 包名(其中`${version}`为实际版本) | | ------- | ------------------------------------------------ | @@ -42,60 +68,51 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 source /usr/local/Ascend/ascend-toolkit/set_env.sh ``` -#### 1.1.2 安装kernel +#### 1.3.2 安装kernel -- 下载 +- 检查包 | 包名 | | ------------------------------------------ | -| Ascend-cann-kernels*_${version}_linux.run | +| Ascend-cann-kernels_${version}_linux.run | - - 根据芯片型号选择对应的安装包 + - 根据芯片型号选择对应的安装包(310B) - 安装 ```bash chmod +x Ascend-cann-kernels-*_${version}_linux.run - ./Ascend-cann-kernels-*_${version}_linux.run --install + ./Ascend-cann-kernels-_${version}_linux.run --install ``` -#### 1.1.3 安装加速库 -- 下载加速库 - - [下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-nnal_8.1.RC1_linux-aarch64.run)。 +#### 1.3.3 安装加速库 + +- 检查包 | 包名(其中`${version}`为实际版本) | | -------------------------------------------- | - | Ascend-cann-nnal_${version}_linux-aarch64.run | - | ... | - - - 将文件放置在\${working_dir}路径下 + | Ascend-cann-nnal-_${version}_linux-aarch64.run | - 安装 ```shell chmod +x Ascend-cann-nnal_*_linux-*.run - ./Ascend-cann-nnal_*_linux-*.run --install --install-path=${working_dir} - source ${working_dir}/nnal/atb/set_env.sh - ``` -- 可以使用`uname -a`指令查看服务器是x86还是aarch架构 -- 可以使用以下指令查看abi是0还是1 - ```shell - python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ./Ascend-cann-nnal_*_linux-*.run --install + source /usr/local/Ascend/nnal/atb/set_env.sh ``` - - 若输出结果为True表示abi1,False表示abi0 -### 1.2 安装PytorchAdapter + +### 1.4 安装PytorchAdapter 先安装torch 再安装torch_npu -#### 1.2.1 安装torch +#### 1.4.1 安装torch - 下载 | 包名 | | -------------------------------------------- | - | torch-2.1.0-cp310-cp10-linux_aarch64.whl | - | ... | + | torch-2.1.0-cp310-cp310-linux_aarch64.whl | - - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的torch安装包。 + - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的开源torch安装包。 - 安装 ```bash @@ -103,42 +120,31 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 pip install torch-2.1.0-cp310-cp310-linux_aarch64.whl ``` -#### 1.2.2 安装torch_npu +#### 1.4.2 安装torch_npu -[下载PyTorch Adapter](https://www.hiascend.com/developer/download/community/result?module=pt),安装方法: +- 检查包 | 包名 | | --------------------------- | -| pytorch_v2.1.0_py38.tar.gz | -| pytorch_v2.1.0_py39.tar.gz | -| pytorch_v2.1.0_py310.tar.gz | +| torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | | ... | - 安装选择与torch版本以及python版本一致的npu_torch版本 ```bash # 安装 torch_npu,以 torch 2.1.0,python 3.10 的版本为例 -tar -zxvf pytorch_v2.1.0_py310.tar.gz -pip install torch*_aarch64.whl +pip install torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl ``` -### 1.3 安装开源软件依赖 -| 默认依赖 | [requirement.txt](./requirements.txt) | -- 开源软件依赖请使用下述命令进行安装: - ```bash - pip install -r ./requirements.txt - ``` -### 1.4 安装模型仓 +### 1.5 安装模型仓 + 使用编译好的包进行安装 - 下载编译好的包 - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz) - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz) | 包名 | | ------------------------------------------------------------ | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch1.11.0-abi0.tar.gz | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch2.1.0-abi1.tar.gz | - | ... | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz | - 将文件放置在\${working_dir}路径下 - 解压 @@ -157,6 +163,34 @@ pip install torch*_aarch64.whl pip install atb_llm-0.0.1-py3-none-any.whl --force-reinstall ``` +### 1.6 安装开源软件依赖 + +- 默认依赖路径:${working_dir}/MindIE-LLM/requirements/requirements.txt +- 开源软件依赖请使用下述命令进行安装: + ```bash + pip install -r requirements.txt + ``` + +### 1.7 内存占用优化补丁 + +针对边端设备内存受限的代码补丁 +```shell +--- model_runner.py ++++ model_runner.py +@@ -241,7 +241,6 @@ + else: + self.attn_mask = getattr(self.model, "attn_mask", None) + +- self.check_npu_mem() + self.model.to(weights.device) + weights.release_file_handler() +``` +将上述补丁文件放置到目录${working_dir}/MindIE-LLM/atb_llm/runner目录下保存为remove_npu_check.patch +进入该目录并运行命令 +```shell +patch model_runner.py < remove_npu_check.patch +``` + ## 纯模型推理 diff --git a/MindIE/LLM/Qwen3/Qwen3-1.7B-OrangePi/README.md b/MindIE/LLM/Qwen3/Qwen3-1.7B-OrangePi/README.md index e637d949811f6f5ca062abe9752d158689aa226d..33714c5e72ad872452c86a417ac3f0d7e93fa57d 100644 --- a/MindIE/LLM/Qwen3/Qwen3-1.7B-OrangePi/README.md +++ b/MindIE/LLM/Qwen3/Qwen3-1.7B-OrangePi/README.md @@ -10,7 +10,7 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 ## 约束条件 * 在OrangePi AIpro(20T)上部署Qwen3-1.7B模型 -* 需要修改权重目录下的config.json文件,"torch_dtype"字段改为"float16", "max_position_embedding"字段改为4096, 删除“rope_scaling”字段 +* 需要修改权重目录下的config.json文件,"torch_dtype"字段改为"float16", "max_position_embedding"字段改为4096, 删除“rope_scaling”字段,注意检查“transformers”字段以对齐版本 * 由于此硬件为单卡,仅支持TP=1 ## 权重 @@ -19,16 +19,42 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 - [Qwen3-1.7B](https://huggingface.co/Qwen/Qwen3-1.7B/tree/main) -## 新建环境 +## 环境准备 -### 1.1 安装CANN -- CANN-kernels[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-kernels-310b_8.1.RC1_linux-aarch64.run) -- CANN-toolkit[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-toolkit_8.1.RC1_linux-aarch64.run) -- 安装顺序:先安装toolkit 再安装kernel +### 1.1 虚拟环境 -#### 1.1.1 安装toolkit +- 创建虚拟环境:香橙派属于边端设备,需要创建虚拟环境进行部署 + ```shell + conda create -n env_name python=3.10 + ``` + +- 获取设备信息 + - 使用`uname -a`指令查看服务器是x86还是aarch架构 + - 使用以下指令查看abi是0还是1 + ```shell + python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ``` + 若输出结果为True表示abi1,False表示abi0 -- 下载 +### 1.2 资源下载 + +请前往[昇腾社区/社区版资源下载](https://www.hiascend.com/developer/download/community/result?module=ie+pt+cann)下载适配板卡的MindIE、CANN和PTA组件,各版本配套表如下: +| 组件 | 版本 | +| - | - | +| MindIE | 2.1.RC1 | +| CANN | 8.2.RC1 | +| PTA | 7.1.0 | + +- CANN下载内容:toolkit(工具包);kernels(算子包);nnal(加速库) +- PTA下载内容:torch_npu + +### 1.3 安装CANN + +- 安装顺序:先安装toolkit 再安装kernel 最后安装nnal + +#### 1.3.1 安装toolkit + +- 检查包 | cpu | 包名(其中`${version}`为实际版本) | | ------- | ------------------------------------------------ | @@ -42,60 +68,51 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 source /usr/local/Ascend/ascend-toolkit/set_env.sh ``` -#### 1.1.2 安装kernel +#### 1.3.2 安装kernel -- 下载 +- 检查包 | 包名 | | ------------------------------------------ | -| Ascend-cann-kernels*_${version}_linux.run | +| Ascend-cann-kernels_${version}_linux.run | - - 根据芯片型号选择对应的安装包 + - 根据芯片型号选择对应的安装包(310B) - 安装 ```bash chmod +x Ascend-cann-kernels-*_${version}_linux.run - ./Ascend-cann-kernels-*_${version}_linux.run --install + ./Ascend-cann-kernels-_${version}_linux.run --install ``` -#### 1.1.3 安装加速库 -- 下载加速库 - - [下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-nnal_8.1.RC1_linux-aarch64.run)。 +#### 1.3.3 安装加速库 +- 检查包 | 包名(其中`${version}`为实际版本) | | -------------------------------------------- | | Ascend-cann-nnal_${version}_linux-aarch64.run | | ... | - - 将文件放置在\${working_dir}路径下 - - 安装 ```shell chmod +x Ascend-cann-nnal_*_linux-*.run - ./Ascend-cann-nnal_*_linux-*.run --install --install-path=${working_dir} - source ${working_dir}/nnal/atb/set_env.sh - ``` -- 可以使用`uname -a`指令查看服务器是x86还是aarch架构 -- 可以使用以下指令查看abi是0还是1 - ```shell - python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ./Ascend-cann-nnal_*_linux-*.run --install + source /usr/local/Ascend/nnal/atb/set_env.sh ``` - - 若输出结果为True表示abi1,False表示abi0 -### 1.2 安装PytorchAdapter + +### 1.4 安装PytorchAdapter 先安装torch 再安装torch_npu -#### 1.2.1 安装torch +#### 1.4.1 安装torch - 下载 | 包名 | | -------------------------------------------- | | torch-2.1.0-cp310-cp10-linux_aarch64.whl | - | ... | - - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的torch安装包。 + - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的开源torch安装包。 - 安装 ```bash @@ -103,42 +120,30 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 pip install torch-2.1.0-cp310-cp310-linux_aarch64.whl ``` -#### 1.2.2 安装torch_npu +#### 1.4.2 安装torch_npu -[下载PyTorch Adapter](https://www.hiascend.com/developer/download/community/result?module=pt),安装方法: +- 检查包 | 包名 | | --------------------------- | -| pytorch_v2.1.0_py38.tar.gz | -| pytorch_v2.1.0_py39.tar.gz | -| pytorch_v2.1.0_py310.tar.gz | -| ... | +| torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | - 安装选择与torch版本以及python版本一致的npu_torch版本 ```bash # 安装 torch_npu,以 torch 2.1.0,python 3.10 的版本为例 -tar -zxvf pytorch_v2.1.0_py310.tar.gz -pip install torch*_aarch64.whl +pip install torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl ``` -### 1.3 安装开源软件依赖 -| 默认依赖 | [requirement.txt](./requirements.txt) | -- 开源软件依赖请使用下述命令进行安装: - ```bash - pip install -r ./requirements.txt - ``` -### 1.4 安装模型仓 +### 1.5 安装模型仓 + 使用编译好的包进行安装 - 下载编译好的包 - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz) - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz) | 包名 | | ------------------------------------------------------------ | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch1.11.0-abi0.tar.gz | + | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch2.1.0-abi0.tar.gz | | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch2.1.0-abi1.tar.gz | - | ... | - 将文件放置在\${working_dir}路径下 - 解压 @@ -157,6 +162,34 @@ pip install torch*_aarch64.whl pip install atb_llm-0.0.1-py3-none-any.whl --force-reinstall ``` +### 1.6 安装开源软件依赖 + +- 默认依赖路径:${working_dir}/MindIE-LLM/requirements/requirements.txt +- 开源软件依赖请使用下述命令进行安装: + ```bash + pip install -r requirements.txt + ``` + +### 1.7 内存占用优化补丁 + +针对边端设备内存受限的代码补丁 +```shell +--- model_runner.py ++++ model_runner.py +@@ -241,7 +241,6 @@ + else: + self.attn_mask = getattr(self.model, "attn_mask", None) + +- self.check_npu_mem() + self.model.to(weights.device) + weights.release_file_handler() +``` +将上述补丁文件放置到目录${working_dir}/MindIE-LLM/atb_llm/runner目录下保存为remove_npu_check.patch +进入该目录并运行命令 +```shell +patch model_runner.py < remove_npu_check.patch +``` + ## 纯模型推理 diff --git a/MindIE/LLM/Qwen3/Qwen3-4B-OrangePi/README.md b/MindIE/LLM/Qwen3/Qwen3-4B-OrangePi/README.md index 1d39b06303813138764ad0b744ee8a4bf2e406fd..07494b76d789525525e2aaac69364c0a2405d871 100644 --- a/MindIE/LLM/Qwen3/Qwen3-4B-OrangePi/README.md +++ b/MindIE/LLM/Qwen3/Qwen3-4B-OrangePi/README.md @@ -19,16 +19,42 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 - [Qwen3-4B](https://huggingface.co/Qwen/Qwen3-4B/tree/main) -## 新建环境 +## 环境准备 -### 1.1 安装CANN -- CANN-kernels[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-kernels-310b_8.1.RC1_linux-aarch64.run) -- CANN-toolkit[下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-toolkit_8.1.RC1_linux-aarch64.run) -- 安装顺序:先安装toolkit 再安装kernel +### 1.1 虚拟环境 -#### 1.1.1 安装toolkit +- 创建虚拟环境:香橙派属于边端设备,需要创建虚拟环境进行部署 + ```shell + conda create -n env_name python=3.10 + ``` + +- 获取设备信息 + - 使用`uname -a`指令查看服务器是x86还是aarch架构 + - 使用以下指令查看abi是0还是1 + ```shell + python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ``` + 若输出结果为True表示abi1,False表示abi0 + +### 1.2 资源下载 -- 下载 +请前往[昇腾社区/社区版资源下载](https://www.hiascend.com/developer/download/community/result?module=ie+pt+cann)下载适配板卡的MindIE、CANN和PTA组件,各版本配套表如下: +| 组件 | 版本 | +| - | - | +| MindIE | 2.1.RC1 | +| CANN | 8.2.RC1 | +| PTA | 7.1.0 | + +- CANN下载内容:toolkit(工具包);kernels(算子包);nnal(加速库) +- PTA下载内容:torch_npu + +### 1.3 安装CANN + +- 安装顺序:先安装toolkit 再安装kernel 最后安装nnal + +#### 1.3.1 安装toolkit + +- 检查包 | cpu | 包名(其中`${version}`为实际版本) | | ------- | ------------------------------------------------ | @@ -42,60 +68,51 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 source /usr/local/Ascend/ascend-toolkit/set_env.sh ``` -#### 1.1.2 安装kernel +#### 1.3.2 安装kernel -- 下载 +- 检查包 | 包名 | | ------------------------------------------ | -| Ascend-cann-kernels*_${version}_linux.run | +| Ascend-cann-kernels_${version}_linux.run | - - 根据芯片型号选择对应的安装包 + - 根据芯片型号选择对应的安装包(310B) - 安装 ```bash chmod +x Ascend-cann-kernels-*_${version}_linux.run - ./Ascend-cann-kernels-*_${version}_linux.run --install + ./Ascend-cann-kernels-_${version}_linux.run --install ``` -#### 1.1.3 安装加速库 -- 下载加速库 - - [下载链接](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-cann-nnal_8.1.RC1_linux-aarch64.run)。 +#### 1.3.3 安装加速库 + +- 检查包 | 包名(其中`${version}`为实际版本) | | -------------------------------------------- | - | Ascend-cann-nnal_${version}_linux-aarch64.run | - | ... | - - - 将文件放置在\${working_dir}路径下 + | Ascend-cann-nnal-_${version}_linux-aarch64.run | - 安装 ```shell chmod +x Ascend-cann-nnal_*_linux-*.run - ./Ascend-cann-nnal_*_linux-*.run --install --install-path=${working_dir} - source ${working_dir}/nnal/atb/set_env.sh - ``` -- 可以使用`uname -a`指令查看服务器是x86还是aarch架构 -- 可以使用以下指令查看abi是0还是1 - ```shell - python -c "import torch; print(torch.compiled_with_cxx11_abi())" + ./Ascend-cann-nnal_*_linux-*.run --install + source /usr/local/Ascend/nnal/atb/set_env.sh ``` - - 若输出结果为True表示abi1,False表示abi0 -### 1.2 安装PytorchAdapter + +### 1.4 安装PytorchAdapter 先安装torch 再安装torch_npu -#### 1.2.1 安装torch +#### 1.4.1 安装torch - 下载 | 包名 | | -------------------------------------------- | - | torch-2.1.0-cp310-cp10-linux_aarch64.whl | - | ... | + | torch-2.1.0-cp310-cp310-linux_aarch64.whl | - - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的torch安装包。 + - 根据所使用的环境中的python版本以及cpu类型,选择对应版本的开源torch安装包。 - 安装 ```bash @@ -103,42 +120,30 @@ Qwen3是Qwen系列中最新一代的大型语言模型,提供了密集和混 pip install torch-2.1.0-cp310-cp310-linux_aarch64.whl ``` -#### 1.2.2 安装torch_npu +#### 1.4.2 安装torch_npu -[下载PyTorch Adapter](https://www.hiascend.com/developer/download/community/result?module=pt),安装方法: +- 检查包 | 包名 | | --------------------------- | -| pytorch_v2.1.0_py38.tar.gz | -| pytorch_v2.1.0_py39.tar.gz | -| pytorch_v2.1.0_py310.tar.gz | -| ... | +| torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | - 安装选择与torch版本以及python版本一致的npu_torch版本 ```bash # 安装 torch_npu,以 torch 2.1.0,python 3.10 的版本为例 -tar -zxvf pytorch_v2.1.0_py310.tar.gz -pip install torch*_aarch64.whl +pip install torch_npu-2.1.0.post13-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl ``` -### 1.3 安装开源软件依赖 -| 默认依赖 | [requirement.txt](./requirements.txt) | -- 开源软件依赖请使用下述命令进行安装: - ```bash - pip install -r ./requirements.txt - ``` -### 1.4 安装模型仓 +### 1.5 安装模型仓 + 使用编译好的包进行安装 - 下载编译好的包 - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz) - - [下载链接-abi0](https://mindie.obs.cn-north-4.myhuaweicloud.com/xiangchengpai_20250211/Ascend-mindie-atb-models_2.0.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz) | 包名 | | ------------------------------------------------------------ | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch1.11.0-abi0.tar.gz | - | Ascend-mindie-atb-models_1.0.RC1_linux-aarch64_torch2.1.0-abi1.tar.gz | - | ... | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi0.tar.gz | + | Ascend-mindie-atb-models_2.1.RC1_linux-aarch64_py310_torch2.1.0-abi1.tar.gz | - 将文件放置在\${working_dir}路径下 - 解压 @@ -157,6 +162,34 @@ pip install torch*_aarch64.whl pip install atb_llm-0.0.1-py3-none-any.whl --force-reinstall ``` +### 1.6 安装开源软件依赖 + +- 默认依赖路径:${working_dir}/MindIE-LLM/requirements/requirements.txt +- 开源软件依赖请使用下述命令进行安装: + ```bash + pip install -r requirements.txt + ``` + +### 1.7 内存占用优化补丁 + +针对边端设备内存受限的代码补丁 +```shell +--- model_runner.py ++++ model_runner.py +@@ -241,7 +241,6 @@ + else: + self.attn_mask = getattr(self.model, "attn_mask", None) + +- self.check_npu_mem() + self.model.to(weights.device) + weights.release_file_handler() +``` +将上述补丁文件放置到目录${working_dir}/MindIE-LLM/atb_llm/runner目录下保存为remove_npu_check.patch +进入该目录并运行命令 +```shell +patch model_runner.py < remove_npu_check.patch +``` + ## 纯模型推理