关于challenge:Linux和Windows系统下AnacondaPaddlepytorch含GPUCPU版本详细安装过程

48次阅读

共计 5315 个字符,预计需要花费 14 分钟才能阅读完成。

Linux 和 Windows 零碎下装置深度学习框架所需反对:Anaconda、Paddlepaddle、Paddlenlp、pytorch,含 GPU、CPU 版本具体装置过程

1. 下载 Anaconda 的安装包

Anaconda 装置:Anaconda 是一个开源的 Python 发行版本,其蕴含了 conda、Python 等 180 多个迷信包及其依赖项。应用 Anaconda 能够通过创立多个独立的 Python 环境,防止用户的 Python 环境装置太多不同版本依赖导致抵触。

1.1 Linux 下载 Anaconda

首先须要在官网上抉择须要装置的版本。

官网地址:https://repo.anaconda.com/archive/ 如抉择以后最新版本进行装置:

https://repo.anaconda.com/archive/Anaconda3-2023.07-0-Linux-x…

而后下载该安装包。

下载命令
wget  https://repo.anaconda.com/archive/Anaconda3-2023.07-0-Linux-x86_64.sh
  1. 进入安装包所在目录,先对安装包进行赋权,再执行安装程序
# 查看门路
pwd
赋权命令:chmod +x Anaconda3-2023.07-0-Linux-x86_64.sh
装置命令:sh Anaconda3-2023.07-0-Linux-x86_64.sh
  1. 呈现如下画面:
  1. 点击 Enter(回车键),呈现 More,持续按 Enter,最初输出 yes 批准用户许可证就行。

  1. 直至呈现以下画面,就装置胜利了!

1.2 Windows 下载 Anaconda

参考文章:https://blog.csdn.net/sinat_39620217/article/details/115861876

  1. 第一步 下载
  2. 在 Anaconda 官网 抉择下载 Windows Python3.8 64-Bit 版本。
  • 确保曾经装置 Visual C++ Build Tools(能够在开始菜单中找到),如未装置,请点击 下载安装。
  1. 第二步 装置

运行下载的安装包(以.exe 为后辍),依据疏导实现装置, 用户可自行批改装置目录(如下图)

  1. 第三步 应用

点击 Windows 零碎左下角的 Windows 图标,关上:所有程序 ->Anaconda3/2(64-bit)->Anaconda Prompt 在命令行中执行指令即可

后续框架库包装置同 linux

2. 环境变量配置

2.1 linux 环境变量配置

Linux 上胜利装置 anaconda 后 -bash: conda: command not found

如题,呈现这个问题可能是 环境变量配置 有问题。

省流请看这里:执行 cat ~/.bashrc 命令查看 .bashrc 文件内容,若文件中没有 export PATH="XXX/anaconda3/bin:$PATH" 阐明是环境变量未配置,能够持续往下看了;若文件中有此门路,请退出本文,自行校对一下门路。

  1. 关上 .bashrc 文件
vim ~/.bashrc
  1. 在最初一行新增 anaconda 门路
export PATH="XXX/anaconda3/bin:$PATH"
  1. 保留文件(按 esc 后输出 :wq 回车)并使环境变量失效[关上文件后按 i 进入编辑模式,按 Esc 退出编辑模式,shift+ 冒号而后输出 wq 保留文件并退出]

    留神:这里是 anaconda 的装置门路,依据本人的装置门路即可

source ~/.bashrc

执行以上三步后,便可在 linux 上应用 conda 命令了!

2.2 Windows 环境变量配置

其实,以上的环境变量配置,相当于在 window 环境下的环境变量加上环境变量。如在 window 环境下装置 anaconda,装置过程中会提醒是否将环境变量退出到 path 中,如果选上该选项,便可省去很多麻烦,装置完后间接在终端应用 conda 命令;

如果没有选上,是无奈间接应用 conda 命令的,须要在零碎的环境变量中加上装置门路才能够应用 conda 命令。主动增加的装置门路的步骤:此电脑–> 属性–> 高级零碎设置–> 环境变量–> 零碎变量–>Path 增加 anaconda 的装置门路。

3. 用 conda 创立虚拟环境

#1. 创立指定 python 版本的环境
conda create --name paddlenlp python=3.8
#2. 激活环境
conda activate paddlenlp
#3. 退出环境
conda deactivate

4. 装置我的项目依赖包 & 深度学习框架

4.1 装置我的项目依赖包

装置我的项目 requirement.txt 文件依赖:pip install -r requirement.txt
生成 requirement.txt 文件:pip freeze > requirements.txt

4.2 装置 Paddle&Paddlenlp

4.2.1 装置 paddle

官网:https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/linux-pip.html

windows 装置应用 win 下指令即可

  • conda 装置
conda install paddlepaddle-gpu==2.4.2 cudatoolkit=11.2 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge 
  • pip 装置
pip install paddlepaddle-gpu==2.4.2.post112 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html
  • 验证装置

装置实现后您能够应用 python3 进入 python 解释器,输出 import paddle,再输出 paddle.utils.run_check()

import paddle
paddle.utils.run_check()

如果呈现 PaddlePaddle is installed successfully!,阐明您已胜利装置。

  • 报错:ImportError: libcudart.so.11.0: cannot open shared object file: No such file or directory

解决办法

  • 简洁版(省流)
    在激活后执行 export LD_LIBRARY_PATH=”$CONDA_PREFIX/lib” 将包含 libcudart.so.11.0 如果你想让它自动化,将此内容增加到 env-prefix/etc/conda/activate.d/env_vars.sh,这将在 conda activate 上运行脚本并设置 LD_LIBRARY_PATH
cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
touch ./etc/conda/activate.d/env_vars.sh

#写入 并保留
vim ./etc/conda/activate.d/env_vars.sh
export LD_LIBRARY_PATH="$CONDA_PREFIX/lib"
  • 具体版

    1. activate 你的虚拟环境,查看虚拟环境门路

      echo $CONDA_PREFIX
      
    2. 去这个门路下建设这些文件夹和文件。在 activate 的时候,会主动运行 activate.d/env_vars.sh,deactivate 的时候,会主动运行 deactivate.d/env_vars.sh。你能够设置任何你想设置的变量,这里咱们更改 LD_LIBRARY_PATH
    cd $CONDA_PREFIX
    mkdir -p ./etc/conda/activate.d
    mkdir -p ./etc/conda/deactivate.d
    touch ./etc/conda/activate.d/env_vars.sh
    touch ./etc/conda/deactivate.d/env_vars.sh
    
    1. 编辑 activate.d/env_vars.sh,留神换成你的名字,留神 = 前后不能有空格哦

      export OLD_LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
      export LD_LIBRARY_PATH=anaconda3/envs/your_name/lib64
      

      编辑 deactivate.d/env_vars.sh,这样 deactivate 的时候,会复原设置

      export LD_LIBRARY_PATH=${OLD_LD_LIBRARY_PATH}
      unset OLD_LD_LIBRARY_PATH
      
4. deactivate 虚拟环境,再次 activate 你的虚拟环境,再查看

```
echo $CONDA_PREFIX

```
能够看到曾经变成了 anaconda3/envs/your_name/lib64。如果这个门路下的 gcc 曾经含有了 GLIBCXX_3.4.20,那么就不再会报错了。

4.2.2 装置 paddlenlp

  • 环境依赖

    • python >= 3.7
    • paddlepaddle >= 2.3
  • pip 装置
# 创立名为 my_paddlenlp 的环境,指定 Python 版本为 3.8
conda create -n my_paddlenlp python=3.8
#进入 my_paddlenlp 环境
conda activate my_paddlenlp

#装置 PaddleNLP

pip install --upgrade paddlenlp>=2.0.0rc -i https://pypi.org/simple

pip install --upgrade paddlenlp>=2.0.0rc -i https://pypi.tuna.tsinghua.edu.cn/simple

github 代码会追随开发进度不断更新:或者可通过以下命令装置最新 develop 分支代码:

pip install --pre --upgrade paddlenlp -f https://www.paddlepaddle.org.cn/whl/paddlenlp.html

按如上形式配置后,即可在环境中应用 PaddleNLP 了,命令行输出 python 回车后,import paddlenlp 试试吧,之后再次应用都能够通过关上 ’ 所有程序 ->Anaconda3/2(64-bit)->Anaconda Prompt’,再执行 conda activate my_paddlenlp 进入环境后,即可再次应用 PaddleNLP。

  • 相干 pip 问题默认镜像问题(trusted-host 问题),装置设定清华源即可

进入虚拟环境,查看 pip 装置门路

whereis pip


pip: /usr/bin/pip3.8 /etc/pip.conf /root/anaconda3/envs/paddlenlp/bin/pip
# 查看 pip.conf,批改成清华源,:wq 保留即可
vim /etc/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
  • 代码装置
git clone https://github.com/PaddlePaddle/PaddleNLP.git
cd PaddleNLP
git checkout develop

如果遇到:github 报错 Failed to connect to github.com port 443:connection timed out、个别起因:电脑里开启了代理, 例如开启了翻墙软件等, 就会造成这个起因

勾销全局代理:git config --global --unset http.proxy
 
git config --global --unset https.proxy

4.3 装置 pytorch

4.3.1 GPU 版本装置

装置 pytorch 须要留神 torch 与 torchvision 的版本对应,参照以下网址对照:

https://github.com/pytorch/vision

windows 装置应用 win 下指令即可

从官网上找到适宜本人版本的装置 pytorch 的指令 https://pytorch.org/get-started/locally/

  1. 创立虚拟环境,参考 3. 用 conda 创立虚拟环境
  2. 装置 pytorch
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia

4.3.2 CPU 版本装置

参考:https://blog.csdn.net/sinat_39620217/article/details/115483807

pip install torch torchvision torchaudio

更多优质内容请关注公号 & 知乎:汀丶人工智能;会提供一些相干的资源和优质文章,收费获取浏览。

本文参加了 SegmentFault 思否写作挑战「摸索编码世界之旅 – 记我的第一份编程工作」,欢送正在浏览的你也退出。

正文完
 0