Python 开发环境管理
本文主要记录了 Python 开发环境管理的方法,包括 Miniconda 管理 Python 开发环境、Pyenv 和 Pipenv 管理 Python 开发环境等。
Python 开发环境管理分为两部分,一个是 Python 版本管理,一个是虚拟环境管理。
虚拟环境管理存在两种方式,第一种是虚拟环境存放于项目文件夹,第二种情况是虚拟环境存放于系统指定文件夹,这时候不同的项目之间可以复用同一个虚拟环境。
Virtual Environments and Packages
使用 Miniconda 管理 Python 开发环境
Miniconda 配置 Tensorflow 的开发环境不需要安装 CUDA 和 cuDNN,只需要安装好驱动就可以了!
1 | conda create -n environment_name python=X.X # 用 conda 创建 Python 虚拟环境 |
Miniconda 安装 Tensorflow GPU
安装 Miniconda,配置虚拟环境
安装 TensorFlow
1
2Current stable release for CPU and GPU
pip install tensorflow验证是否安装成功
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18import tensorflow as tf
print(tf.__version__)
GPU_list = tf.config.list_physical_devices('GPU')
print("Num GPUs Available: ", len(GPU_list))
sys_details = tf.sysconfig.get_build_info()
cuda_version = sys_details["cuda_version"]
print("CUDA version: ", cuda_version)
cudnn_version = sys_details["cudnn_version"]
print("cuDNN version: ", cudnn_version)
cpu_compiler = sys_details["cpu_compiler"]
print("CPU Compiler: ", cpu_compiler)
cuda_compute_capabilities = sys_details["cuda_compute_capabilities"]
print("CUDA Compute Capabilities: ", cuda_compute_capabilities)
Miniconda 安装 PyTorch GPU
安装 Miniconda,配置虚拟环境
安装 Pytorch:在官网复制命令,pip 安装即可。
1
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116
验证是否安装成功
1
2
3
4
5
6
7
8
9import torch
print("PyTorch version: ", torch.__version__)
cuda_avai = torch.cuda.is_available()
print("Is CUDA available: ", cuda_avai)
if cuda_avai:
print ("CUDA version: ", torch.version.cuda)
print ("cuDNN version: ", torch.backends.cudnn.version ())
使用 Pyenv 和 Pipenv 管理 Python 开发环境
CUDA 和 cuDNN 安装
查看显卡支持的 CUDA 最高版本
- Powershell 查看
1
nvidia-smi # 即可以得到显卡支持的 CUDA 的最高版本
- NVIDIA 控制面板查看
1
帮助(H)-系统信息(I)-组件-NVCUDA64.DLL产品名称即可看到最高支持版本
安装 CUDA
CUDA(Compute Unified Device Architecture) 下载
Contents - cuda-installation-guide-microsoft-windows 12.0 documentation
直接安装即可,安装完会自动添加两个系统变量和两个环境变量
1
2
3
4
5CUDA_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4
CUDA_PATH_V11_4 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\libnvvp安装 cuDNN 并配置环境变量
cuDNN(CUDA Deep Neural Network library) 下载
Installation Guide :: NVIDIA Deep Learning cuDNN Documentation
1
2
3
4
5# 配置如下环境变量
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\extras\CUPTI\lib64;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4\include;
C:\cudnn\bin对于 cuDNN 8.7 须下载
zlibwapi.dll
使用 Pyenv 管理 Python 版本
-
1
Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"
重启电脑,安装管理 Python
1
2
3
4
5
6
7
8pyenv --version # 查看 Pyenv 版本
pyenv install -l
pyenv install 3.9.13
pyenv install 3.11.1
pyenv versions # 查看系统已安装 Python 版本
pyenv global 3.11.1 # 设置 全局 Python
pyenv version # 查看系统默认 Python 版本
python -c "import sys; print(sys.executable)"设置了 global Python 之后,添加环境变量,使
pipenv.exe
可以运行。1
2
3C:\Users\xxxxx\AppData\Roaming\Python\Python311\Scripts
# 否则在使用 Pipenv 时会报如下错误:
# pipenv : 无法将“pipenv”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
使用 Pipenv 管理虚拟环境
安装 Pipenv
1
在 Ubuntu 系统中,需要将 pipenv 的路径加入 path `/home/latex/.local/bin`。
使用 Pipenv 创建虚拟环境
1
2
3
4
5
6
7
8
9
10cd project_dir # 进入项目文件夹
pipenv install # 创建虚拟环境
pipenv install --python 'C:\Users\xxxxx\.pyenv\pyenv-win\versions\3.9.13\python39.exe' # 创建虚拟环境时指定 Python 版本
pipenv shell # 启用虚拟环境
pipenv install package # 安装
pipenv uninstall package # 卸载
pipenv graph # 查看按照包的依赖关系
pipenv --venv # 查看虚拟环境执行文件路径
exit # 离开虚拟环境
pipenv --rm # 删除虚拟环境
Pipenv 安装 Pytorch
在原来的命令前,添加 pipenv run 即可。
1 | pipenv run pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116 |
Pipenv 安装 Tensorflow-cpu
1 | pipenv install tensorflow |
Pipenv 安装 Tensorflow-gpu
1 | pipenv install tensorflow-gpu==2.9.0 |
在终端使用 Pipenv 创建的虚拟环境
Windows
1
2
3
4
5
6
7
8# 激活虚拟环境
cd C:\Users\xxxxx\.virtualenvs\py39_tf29-pMiOFEDH\Scripts\
cd ~\.virtualenvs\py39_tf29-pMiOFEDH\Scripts\
activate
activate.bat
# 退出虚拟环境
exitUbuntu
1
2
3
4
5
6
7
8
9
10# 激活虚拟环境
source /home/xxxxx/.local/share/virtualenvs/py39_torch113-4OsuBQPz/bin/activate
source ~/.local/share/virtualenvs/py39_torch113-4OsuBQPz/bin/activate
# 在 .bashrc 里定义了 export pvenvs=/home/xxxxx/.local/share/virtualenvs/
$pvenvs
cd py39_XX
source ./bin/activate
# 退出虚拟环境
deactivate
Python 开发环境管理