PAI-Blade敏捷版的安装包包括了Wheel包和SDK。在CUDA环境,您需要安装Wheel包进行模型优化,安装SDK部署模型推理。而在端侧设备中,您只需要安装Wheel包进行模型优化即可,系统会将优化后的模型导出为MNN包,您可以使用MNN部署模型推理。本文详细介绍如何在不同类型的设备中分别安装PAI-Blade敏捷版。

使用限制

PAI-Blade敏捷版仅支持以下操作系统、Python版本、设备类型及框架版本:
  • 操作系统:Linux。
  • Python版本:Python 3.6、Python 3.7。
  • 设备类型:GPU CUDA 10.0、端侧设备(MNN)。
  • 框架版本:TensorFlow 1.15、PyTorch 1.6。
  • C++ SDK: 支持C++11和Pre-C++11两种ABI,支持RPM、DEB及TGZ三种格式。

注意事项

安装PAI-Blade敏捷版时,务必注意以下事项:
  • PAI-Blade敏捷版不会自动安装TensorFlow或PyTorch。因此,安装PAI-Blade敏捷版之前,必须确保环境中已经安装了支持的框架。
  • PyTorch 1.6官方不提供CUDA 10.0版本,您可以使用PAI-Blade敏捷版提供的Wheel包。

操作流程

在不同类型的设备中安装PAI-Blade敏捷版时,存在差异性。您可以参见如下步骤进行安装:
  • 在CUDA环境中安装时,您需要安装TensorFlow/PyTorch、Wheel包及SDK,具体步骤如下:
    1. 安装框架。

      如果您的模型使用的TensorFlow框架,则需要自行安装TensorFlow,详情请参见安装支持CUDA的TensorFlow。如果您的模型使用的PyTorch框架,则可以在安装Wheel包时同时安装PyTorch。

    2. 安装Wheel包,详情请参见安装支持CUDA的Wheel包
    3. 下载并安装SDK,详情其请参见下载并安装SDK
    4. 获取鉴权Token,详情请参见获取Token
  • 在端侧设备中安装时,您需要安装TensorFlow、MNN及Wheel包,详情请参见在端侧设备中安装PAI-Blade敏捷版

安装支持CUDA的TensorFlow

目前PAI-Blade敏捷版仅支持TensorFlow 1.15,请确保Python环境和依赖满足版本限制,详情请参见使用限制

您可以安装社区提供的TensorFlow包或PAI团队提供的TensorFlow包(相比社区版本,额外支持TensorRT),安装命令如下:
  • 安装社区版TensorFlow
    pip3 install tensorflow-gpu==1.15.0
  • 安装PAI团队提供的TensorFlow包:
    • 安装Python 3.6版本
      pip3 install http://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/3.7.0/py3.6.8_cu10.0/tensorflow_gpu-1.15.0-cp36-cp36m-linux_x86_64.whl
    • 安装Python 3.7版本
      pip3 install http://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/3.7.0/py3.7.4_cu10.0/tensorflow_gpu-1.15.0-cp37-cp37m-linux_x86_64.whl

安装支持CUDA的Wheel包

在CUDA 10.0上安装Wheel包,您可以使用如下命令:
  • 如果使用TensorFlow框架,您安装完TensorFlow后,只需要使用如下命令安装Wheel包。
    pip3 install pai-blade-gpu \
      -f https://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/repo.html
    无需修改任何参数,pip会在repo.html里寻找最新的Wheel包版本进行安装。
  • 如果使用PyTorch框架,您需要使用如下命令同时安装Wheel包和PyTorch 1.6。
    pip3 install torch==1.6.0a0+c57e22e torchvision==0.7.0a0+78ed10c \
        torch-addons pai-blade-gpu \
        -f https://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/repo.html
    无需修改任何参数,pip会在repo.html里寻找最新的Wheel包进行安装。

下载并安装SDK

PAI-Blade敏捷版的SDK仅支持Linux系统和GCC编译器。为方便用户使用,PAI-Blade敏捷版提供两种GCC ABI(GCC ABI官方文档)的SDK包,您可以根据实际需要进行下载:
  • pre-cxx11 ABI
    如果GCC版本低于5.1或设置了宏_GLIBCXX_USE_CXX11_ABI=0,请使用pre-cxx11 ABI的SDK。三种格式的下载地址如下:
  • cxx11 ABI
    如果GCC版本大于等于5.1,且未配置宏_GLIBCXX_USE_CXX11_ABI=0,请使用cxx11 ABI的SDK。三种格式的下载地址如下:
安装适合您的SDK包,例如安装3.7.0版本的RPM包或DEB包,其安装命令分别如下:
  • 安装RPM包
    rpm -ivh http://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/3.11.0/py3.6.8_cu100/blade_cpp_sdk_gpu-3.11.0-Linux.rpm
  • 安装DEB包
    wget http://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/3.11.0/py3.6.8_cu100/blade_cpp_sdk_gpu-3.11.0-Linux.deb
    dpkg -i blade_cpp_sdk_gpu-3.11.0-Linux.deb
RPM包和DEB包的默认的安装路径为/usr/local,安装或解压后的SDK目录结构如下所示。
/usr/local/
├── bin
│   └── tao_compiler_main
└── lib
    ├── libblade_ops.so
    ├── libral_base_context.so
    ├── libtao_ops.so
    └── libtorch_addons.so
部署模型时会使用/usr/local/lib子目录下的SO文件。

获取Token

PAI-Blade敏捷版SDK运行时需要鉴权Token,且能够在阿里云环境中使用。请使用钉钉扫描如下二维码或搜索21946131群号,加入PAI-Blade敏捷版客户群,从而获取试用Token。Blade客户群

在端侧设备中安装PAI-Blade敏捷版

在端侧设备中,PAI-Blade敏捷版仅支持从TensorFlow模型转换为MNN,并进行优化。因此,您需要预先安装TensorFlow和MNN,命令如下。
pip3 install tensorflow==1.15 MNN==1.1.0
优化端侧模型时,您可以使用GPU或CPU版本的PAI-Blade敏捷版。安装PAI-Blade敏捷版Wheel包的具体命令如下:
  • 如果您已安装GPU,则使用如下命令。
    pip3 install pai-blade-gpu \
      -f https://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/repo.html
  • 如果没有安装GPU,则使用如下命令。
    pip3 install pai-blade-cpu \
      -f https://pai-blade.oss-cn-zhangjiakou.aliyuncs.com/release/repo.html