配置Pytorch环境(Win系统)
/ 12 min read
Table of Contents
1. 确保事项
本文档仅针对Windows 10/11操作系统。
1.1. VSCode
首先要确保你已经安装好了VSCode这个代码编辑器,并且简略地知道如何使用它。
> 若未装`VSCode`可自行搜索如何安装,这里就不赘述。 > > 在最开始的文字里,我想说句题外话,我认为,我们是一群生活在数字信息化时代的现代人,当你遇到暂时解决不了的问题时,要优先思考该如何靠自己解决,你可以借助众多的数字工具,或Google,或chatGPT。只有当你探索未果后,才应该向他人求助。本文中使用cmd的操作均可以在VSCode终端的cmd中使用,在VSCode中默认打开终端的快捷键是ctrl键和~键的组合键。注意cmd并非PowerShell。
VSCode也可以用Pycharm代替。
1.2. Conda
其次要确保你已经安装好了Conda这个环境管理工具,并且简略地知道该如何使用它。
若未装
Conda我建议安装Miniconda,其相比Anaconda更节省存储空间,并且它完全没有可视化界面的特点能帮助你提升programing的水平。
当你在cmd中输入conda info时,得到报错输出时,你需要重点检查是否已经将conda添加到系统环境变量中。如下图:
当你在cmd中输入conda info时,得到非报错输出时,就可以了,例如:
个人建议1,如果你的C盘存储空间有限,我建议把默认cache和envs文件夹放到C盘之外的地方。
个人建议2,可以配置tsinghua镜像源,可以尽量避免出现一些下载连接超时的问题。
1.3. 硬件计算设备(GPU或CPU)
前面提到的VSCode和Conda都是软件工具。不过要搞AI,最不可或缺的东西是硬件设备,毕竟“巧妇难为无米之炊”。
然后要确保你的机器(比如笔记本电脑)上有能够用于deep learning的硬件计算设备,最好是一张NVIDIA的显卡(GPU)。无GPU的情况下就只能使用CPU,但CPU仅适合轻量级任务。
> 如果你已经决定在AI领域一展拳脚了,难道不应该给自己准备一个有力的设备吗?若你有NVIDIA的显卡(简称N卡),请继续顺着看下去;若你无N卡,请你重新考虑你是否真的需要在你的本地机器上做deep learning(DL),这种情况我更推荐借助云平台来做DL,但如果你真的希望在本地做DL的话,请跳到4. 虚拟环境配置这一章。
2. NVIDIA显卡驱动
在你已经确保了前面事项中提到的几点内容的情况下,你还需要确保要有N卡的驱动程序,如果你的笔记本电脑是带N卡的游戏本,那么大概率在笔记本出厂时已经为你安装好GeForce驱动程序了。接下来,你可以在cmd中输入nvidia-smi来查看包括显卡型号、驱动版本、运行进程、显存占用、功耗等在内的信息。如下图:
图中各字段信息解读:(重点可只看我图中红圈里的关键字段,如果找不到表头和数据的对应关系,可以根据下面表格中数据结合图中数据定位表头字段)
(1)头部信息
| 字段 | 数据 | 说明 |
|---|---|---|
| NVIDIA-SMI Version | 576.52 | NVIDIA 系统管理工具版本 |
| Driver Version | 576.52 | 显卡驱动版本(需与CUDA版本匹配) |
| CUDA Version | 12.9 | 驱动支持的最高CUDA版本(非实际安装版本) |
(2)GPU状态表格
| 字段 | 数据 | 说明 |
|---|---|---|
| GPU | 0 | 第一块显卡(编号0) |
| Name | NVIDIA GeForce RTX 5080 | 显卡型号 |
| Driver-Model | WDDM | Windows显示驱动模式(非计算优化模式) |
| Bus-Id | 00000000:01:00.0 | GPU硬件总线地址(用于多卡定位) |
| Disp.A | On | 显卡当前连接显示器 |
| Fan | 0% | 风扇停转(低负载时常见) |
| Temp | 41°C | 核心温度 |
| Perf | P5 | 性能状态(P0=最高性能,P12=最低) |
| Pwr:Usage /Cap | 19W / 360W | 当前功耗19W,最大功耗360W |
| Memory-Usage | 4107MiB / 16303MiB | 显存占用4.1GB,总量16GB |
| GPU-Util | 1% | GPU计算核心利用率(低负载) |
| Compute M. | Default | 计算模式(Default为默认) |
| MIG M. | N/A | 多实例GPU未启用 |
(3)进程列表
| 字段 | 数据 | 说明 |
|---|---|---|
| GPU | 0 | 占用GPU编号 |
| PID | 假设有3216 | 进程ID |
| Type | 假设有C+G | 进程类型(C=计算,G=图形) |
| Process name | 假设有ShellExperienceHost.exe | 进程名称 |
| GPU Memory Usage | N/A | 显存占用未显示(通常因图形渲染占用) |
若你没有N卡驱动程序,请自行根据自己机器的情况安装驱动程序。
3. CUDA Toolkit及cuDNN
3.1. CUDA Toolkit
笔者在这里踩过坑,第一次是使用了CUDA 12.1和相应的cuDNN及pytorch,但在最后发现RTX 50系的显卡在这上面并不支持,所以换成了CUDA 12.9。
可以下载的CUDA Toolkit版本应该小于等于前文中显卡信息字段中的CUDA Version,官网链接:CUDA Toolkit 12.9 Update 1 Downloads(这里给的链接是CUDA 12.9,需要根据自己机器的情况来选择版本)
下载好后双击安装,这里的路径随意,只是一个临时的文件夹,待安装完成CUDA Toolkit后,该路径下的文件夹会自行删掉的。顺带提一下,安装的CUDA并不是这个路径,安装CUDA的路径是系统默认的装在C盘中的,应该是改不了的。
安装CUDA的过程很简单,一直点同意并继续或下一步就可以了。唯一一个要选择的地方选精简安装即可。(下图为笔者安装CUDA 12.1时的截图,CUDA 12.9与之类似)
在安装好CUDA后,可以在cmd中输入nvcc -V进行验证,如下图:
3.2. cuDNN
在安装好CUDA后,还需要安装cuDNN,注意cuDNN版本必须和CUDA匹配。官网链接:cuDNN 9.10.2 Downloads
下载好之后会得到一个.zip格式的压缩包,解压后会有三个文件夹(分别是bin、include、lib这三个文件夹)和一个LICENSE文件,然后需要把这三个文件夹复制粘贴到如下路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.9(如果你下载的CUDA不是12.9版本,请根据自己的版本号调整路径,这应该很简单吧?)
粘贴过去后,这一部分就大功告成了。
4. 虚拟环境配置
我们可以使用conda或pip来安装pytorch。
但是需要注意的是,
pytorch 2.5版本是pytorch官方最后一个发布在conda上的版本,从2.6版本开始官方将不再通过conda提供预编译包。官方统计数据中使用pip安装方式(Wheel)的用户居多,且远高于conda(以2.0版本为例,两者占比约为96.3:3 .7)。
4.1. 创建并激活conda环境
我这里的conda环境命名为lucidcrucible,且安装python3.9(截至笔者写此文时,由于pytorch 2.7.1版本的要求,python版本不可以低于3.9)。环境名仅作为参考。
conda create -n lucidcrucible python=3.9conda activate lucidcrucible4.2. 通过pip安装pytorch
然后通过pytorch官网给出的下载命令下载,链接:Start Locally
基于前文中的配置以及GPU可用的情况,我们则可以直接使用下面的命令,但是在开始前请十分注意,当你在运行该命令时,务必确保你当前处于你希望安装pytorch的虚拟环境中,如下图中红圈所示,否则你会在你系统默认的python环境中安装pytorch,这可能会导致一系列麻烦的问题,这也是我们使用conda管理python的原因之一。
在你确定好当前环境正确后,就可以通过命令下载安装了:(截至本文写时,由于pytorch支持的最新计算平台还只是CUDA12.8,所以这里下载的是cu128,只要你本地安装的CUDA版本高于pytorch要求的CUDA版本即可,本文中安装的CUDA12.9很明显高于CUDA12.8。多嘴一句,这里的12.9并非nvidia-smi显卡信息字段中的CUDA Version,而是CUDA Toolkit处的12.9)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128请注意,如果你没有可用的GPU,那么你需要使用下面的命令,下载CPU版本的pytorch,而非GPU版本的pytorch:
Terminal window pip3 install torch torchvision torchaudio
下载过程需要一定时间,请耐心一些。
当下载完成后,说明我们马上就要大功告成了!
最后,需要在你的虚拟环境中检查一下torch的安装情况、torch的版本以、CUDA(GPU加速)是否可用以及当前pytorch正在使用的GPU设备号。
在你的虚拟环境中输入:
pythonimport torchtorch.__version__torch.cuda.is_available()torch.cuda.current_device()
检查完成后,可以输入exit()退出python。
至此,大功告成!🤗🤗🤗
5. 总结
在Windows 10/11系统上配置pytorch环境,需要注意的关键点在几个点:
- 硬件计算设备,如GPU或CPU。
- CUDA及cuDNN。
- conda虚拟环境。(conda并非唯一选项)
- pip安装pytorch。(pytorch自2.6版本及2.6版本之后不再支持conda安装)