安装Paddle系列深度学习框架

合集:AI开发环境

PaddlePaddle(飞桨)由百度开发并开源。它支持全面的深度学习应用,包括计算机视觉、自然语言处理、机器学习等领域,并提供高性能的分布式训练能力。PaddleNLP是百度飞桨旗下的自然语言处理工具库,它提供了丰富的预训练模型和高效的开发工具,旨在帮助开发者简化自然语言处理任务的开发流程,提升模型的训练效率和推理速度。

一、环境准备

创建虚拟环境

首先根据特定的Python版本创建Anaconda虚拟环境。PaddlePaddle的Anaconda安装支持Python3.8 – 3.12版本。

conda create -n paddle_env python=YOUR_PY_VER
conda activate paddle_env

查看运行环境:

python -c "import platform;print(platform.architecture()[0]);print(platform.machine())"
64bit
AMD64

查看CUDA版本信息

nvidia-smi是 NVIDIA 提供的一个命令行工具,用于监控和管理 NVIDIA GPU 设备的状态和性能。它基于 NVIDIA 管理库 (NVML) 构建,可以帮助用户轻松获取有关 GPU 的实时信息,包括 GPU 的使用情况、温度、内存占用等。nvidia-smi 查看到的 CUDA 版本号表示当前 GPU 驱动程序支持的”最高CUDA Toolkit 版本号”。例如,当您在 nvidia-smi 输出中看到 “CUDA Version” 为 12.2 时,这意味着您的 GPU 驱动程序支持 CUDA 12.2。您可以在这个版本的 CUDA Toolkit 下开发和运行 CUDA 应用程序。请注意,虽然驱动程序支持的 CUDA 版本与实际安装的 CUDA Toolkit 版本可能不完全相同,但驱动程序支持的版本应高于或等于实际安装的 CUDA Toolkit 版本。否则,您可能无法正常运行 CUDA 应用程序。

在Windows cmd 中输入 nvidia-smi

C:\Users\86138>nvidia-smi
Thu Nov 7 16:49:35 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 538.18                 Driver Version: 538.18       CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU Name                     TCC/WDDM | Bus-Id       Disp.A | Volatile Uncorr. ECC |
| Fan Temp   Perf         Pwr:Usage/Cap |         Memory-Usage | GPU-Util Compute M. |
|                                         |                     |               MIG M. |
|=========================================+======================+======================|
|   0 NVIDIA GeForce MX150         WDDM | 00000000:02:00.0 Off |                 N/A |
| N/A   42C   P0             N/A / ERR! |     0MiB / 2048MiB |     0%     Default |
|                                         |                     |                 N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                           |
| GPU   GI   CI       PID   Type   Process name                           GPU Memory |
|       ID   ID                                                             Usage     |
|=======================================================================================|
| No running processes found                                                           |
+---------------------------------------------------------------------------------------+

参考本社区文章:《安装CUDA和cuDNN》。

安装清华数据源(可选)

若部分国内用户无法访问Anaconda官方数据源,可执行以下命令安装清华数据源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/
conda config --set show_channel_urls yes

二、安装PaddlePaddle

1、安装PaddlePaddle3.0-bata

CPU版本

如果您的计算机没有NVIDIA® GPU,请安装PaddlePaddle的CPU版本

conda install paddlepaddle==3.0.0b1 -c paddle

GPU版本

如果您使用的是CUDA 11.8:

conda install paddlepaddle-gpu==3.0.0b1 paddlepaddle-cuda=11.8 -c paddle -c nvidia

如果您使用的是CUDA 12.3:

conda install paddlepaddle-gpu==3.0.0b1 paddlepaddle-cuda=12.3 -c paddle -c nvidia

安装样例

选择python3.12和cuda11.8:

conda create -n paddle3-p312 python=3.12
conda activate paddle3-p312
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/
conda config --set show_channel_urls yes
conda install paddlepaddle-gpu==3.0.0b1 paddlepaddle-cuda=11.8 -c paddle -c nvidia

验证安装

检查paddle版本:conda list paddle

# packages in environment at D:\App-Data\conda3\envs\paddle3-gpu:
#
# Name                   Version                   Build Channel
paddlepaddle-cuda         11.8                   windows   paddle
paddlepaddle-gpu         3.0.0b1         py312_gpu_cuda11.8_windows   paddle

检查python版本:conda list python

# packages in environment at D:\App-Data\conda3\envs\paddle3-gpu:
#
# Name                   Version                   Build Channel
python                   3.12.7               h14ffc60_0   anaconda

查看已安装的paddle-gpu版本信息:

conda list paddle
# packages in environment at D:\App-Data\conda3\envs\paddle3-gpu:
#
# Name                   Version                   Build Channel
paddlepaddle-cuda         11.8                   windows   paddle
paddlepaddle-gpu         3.0.0b1         py312_gpu_cuda11.8_windows   paddle

安装完成后,您可以使用python或python3执行:

python -c "import paddle; paddle.utils.run_check()"

输出:

Running verify PaddlePaddle program ...
I1223 11:21:21.460244 18936 program_interpreter.cc:243] New Executor is Running.
W1223 11:21:21.491614 18936 gpu_resources.cc:119] Please NOTE: device: 0, GPU Compute Capability: 6.1, Driver API Version: 12.2, Runtime API Version: 11.8
W1223 11:21:21.711949 18936 gpu_resources.cc:164] device: 0, cuDNN Version: 8.9.
I1223 11:22:08.906093 18936 interpreter_util.cc:648] Standalone Executor is Used.
PaddlePaddle works well on 1 GPU.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.

根据以上输出,可看出工作环境:Driver API Version: 12.2, Runtime API Version: 11.8,cuDNN Version: 8.9。如果出现PaddlePaddle安装成功!则表示验证安装成功。

2、安装PaddlePaddle2.6

PaddlePaddle 2.6 官方推荐 Python 3.7~3.9。

CPU版本

如果您的计算机没有NVIDIA® GPU,请安装PaddlePaddle的CPU版本

conda install paddlepaddle==2.6.1 –channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/

GPU版本

如果您使用的是CUDA 11.2,cuDNN 8.2.1:

conda install paddlepaddle-gpu==2.6.1 cudatoolkit=11.2 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge

如果您使用的是CUDA 11.6,cuDNN 8.4.0:

conda install paddlepaddle-gpu==2.6.1 cudatoolkit=11.6 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge

如果您使用的是CUDA 11.7,cuDNN 8.4.1:

conda install paddlepaddle-gpu==2.6.1 cudatoolkit=11.7 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge

您可以参考NVIDIA官方文档了解CUDA和cuDNN的安装过程和配置方法。或参考本社区文章:《安装CUDA和cuDNN》。

验证安装

安装完成后,您可以使用python或python3进入Python解释器,然后执行:

python -c "import paddle; paddle.utils.run_check()"

输出:

Running verify PaddlePaddle program ...
I1223 11:21:21.460244 18936 program_interpreter.cc:243] New Executor is Running.
W1223 11:21:21.491614 18936 gpu_resources.cc:119] Please NOTE: device: 0, GPU Compute Capability: 6.1, Driver API Version: 12.2, Runtime API Version: 11.8
W1223 11:21:21.711949 18936 gpu_resources.cc:164] device: 0, cuDNN Version: 8.9.
I1223 11:22:08.906093 18936 interpreter_util.cc:648] Standalone Executor is Used.
PaddlePaddle works well on 1 GPU.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.

如果出现PaddlePaddle安装成功!,则表示验证安装成功。

3、安装PaddlePaddle1.8.5

CPU版本

conda install paddlepaddle==1.8.5

GPU版本

CUDA版本要求:

CUDA toolkit 9.0/10.0 with cuDNN v7.3+
Hardware devices with GPU computing power over 1.0

CUDA9.0 PaddlePaddle

conda install paddlepaddle-gpu==1.8.5 cudatoolkit=9.0 -c paddle

CUDA10.0 PaddlePaddle

conda install paddlepaddle-gpu==1.8.5 cudatoolkit=10.0 -c paddle

安装样例

conda create -n paddle1-8-p3-8 python=3.8
conda activate paddle1-8-p3-8
conda install paddlepaddle==1.8.5

验证安装

查看安装的版本信息

conda list paddle
# packages in environment at D:\App-Data\conda3\envs\paddle1-8-p3-8:
#
# Name                   Version                   Build Channel
paddlepaddle             1.8.5                   pypi_0   pypi

安装完成后,您可以使用python或python3进入Python解释器,然后使用

import paddle.fluid
fluid.install_check.run_check()

如果出现“Your Paddle Fluid is installed successfully!”,则表示验证安装成功。

4、参考资料

三、安装PaddleNLP

以下是关于PaddleNLP的详细介绍:

1、功能和特点

  • 开箱即用的NLP工具集:PaddleNLP提供了丰富的开箱即用的产业级NLP预置模型,覆盖自然语言理解与生成两大场景,提供产业级的效果与极致的推理性能。
  • 丰富完备的中文模型库:精选45+个网络结构和500+个预训练模型参数,涵盖业界最全的中文预训练模型,包括文心NLP大模型的ERNIE、PLATO等,以及BERT、GPT、RoBERTa、T5等主流结构。
  • 高性能分布式训练与推理:PaddleNLP支持高性能分布式训练与推理,包括FastTokenizer和FastGeneration,以及飞桨4D混合并行分布式训练技术Fleet,旨在提升模型部署性能。

2、应用场景

PaddleNLP适用于多种自然语言处理任务,包括但不限于:

  • 文本分类:利用预训练模型进行文本分类,如情感分析、主题分类等。
  • 命名实体识别:识别文本中的具有特定意义的实体,如人名、地点、组织等。
  • 问答系统:构建能够理解自然语言问题并提供答案的智能系统。
  • 文本生成:生成自然语言文本,应用于机器翻译、内容创作等领域。

3、CPU版本

假设使用conda已安装paddlepaddle==3.0.0b2;使用pip安装paddlenlp==3.0.0b0。

conda install paddlepaddle==3.0.0b2 -c paddle
pip install paddlenlp==3.0.0b0

检查:

(paddle3-cpu) C:\Users\86138>conda list paddle
# packages in environment at D:\App-Data\conda3\envs\paddle3-cpu:
#
# Name                   Version                   Build Channel
paddle2onnx               1.3.1                   pypi_0   pypi
paddlefsl                 1.1.0                   pypi_0   pypi
paddlenlp                 3.0.0b0                 pypi_0   pypi
paddlepaddle             3.0.0b2         py312_cpu_windows   paddle

4、GPU版本

安装paddlenlp==3.0.0b0

基于CUDA12.3:

基于CUDA12.3为例,使用conda安装paddlepaddle-gpu==3.0.0b2;使用pip安装 paddlenlp==3.0.0b0:

conda install paddlepaddle-gpu==3.0.0b2 paddlepaddle-cuda=12.3 -c paddle -c nvidia
pip install --upgrade paddlenlp==3.0.0b0

验证:

python -c "import paddlenlp;print(paddlenlp.__version__)"

输出:3.0.0b0

基于CUDA11.8:

conda install paddlepaddle-gpu==3.0.0b1 paddlepaddle-cuda=11.8 -c paddle -c nvidia
pip install --upgrade paddlenlp==3.0.0b0

若出现缺失的 CUDA 依赖错误:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cublas-cu11==11.11.3.6, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cuda-runtime-cu11==11.8.89, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cudnn-cu11==8.9.4.19, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cufft-cu11==10.9.0.58, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-curand-cu11==10.3.0.86, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cusolver-cu11==11.4.1.48, which is not installed.
paddlepaddle-gpu 3.0.0b1 requires nvidia-cusparse-cu11==11.7.5.86, which is not installed.

手动安装缺失的 CUDA 依赖:

pip install nvidia-cublas-cu11==11.11.3.6 \
          nvidia-cuda-runtime-cu11==11.8.89 \
          nvidia-cudnn-cu11==8.9.4.19 \
          nvidia-cufft-cu11==10.9.0.58 \
          nvidia-curand-cu11==10.3.0.86 \
          nvidia-cusolver-cu11==11.4.1.48 \
          nvidia-cusparse-cu11==11.7.5.86

输出:

Successfully installed nvidia-cublas-cu11-11.11.3.6 nvidia-cuda-nvrtc-cu11-11.8.89 nvidia-cuda-runtime-cu11-11.8.89 nvidia-cudnn-cu11-8.9.4.19 nvidia-cufft-cu11-10.9.0.58 nvidia-curand-cu11-10.3.0.86 nvidia-cusolver-cu11-11.4.1.48 nvidia-cusparse-cu11-11.7.5.86

重新安装paddlenlp==3.0.0b0

pip install --upgrade paddlenlp==3.0.0b0

验证:

python -c "import paddlenlp;print(paddlenlp.__version__)"
2.6.1.post

安装paddlenlp==2.6.1

若安装paddle3.0版本无法通过验证,问题仍然存在,可以尝试安装更稳定的 paddlenlp 版本:

pip uninstall paddlenlp
pip install paddlenlp==2.6.1 # 稳定版本

验证:conda list paddle

conda list paddle
# packages in environment at C:\AppData\Conda-Data\envs\paddle3-p312:
#
# Name                   Version                   Build Channel
paddle2onnx               1.3.1                   pypi_0   pypi
paddlefsl                 1.1.0                   pypi_0   pypi
paddlenlp                 2.6.1                   pypi_0   pypi
paddlepaddle-cuda         11.8                   windows   paddle
paddlepaddle-gpu         3.0.0b1         py312_gpu_cuda11.8_windows   paddle

验证后输出结果如下,表明paddlenlp==2.6.1安装成功:

python -c "import paddlenlp;print(paddlenlp.__version__)"
2.6.1.post

5、参考资料

发表评论