理解这一堆东西都是什么 版本之间有什么制约

┌───────────────────────────────┐
│    Miniconda/Conda            │
│  - 管理虚拟环境                │
│  - 安装不同 Python 版本        │
└──────────────┬────────────────┘
               │ create
               ▼
     ┌─────────────────────┐
     │   虚拟环境 (env)     │
     │  - Python 版本      │
     │  - PyTorch / CUDA   │
     └─────────┬───────────┘
               │
               ▼
┌───────────────────────────────┐
│          Python               │
│  - 决定可用 PyTorch 版本       │
│  - 运行你的代码                │
└──────────────┬────────────────┘
               │
               ▼
┌───────────────────────────────┐
│          PyTorch              │
│  - 深度学习框架                │
│  - 利用 CUDA 进行 GPU 加速     │
│  - 版本受 Python 和 CUDA 限制 │
└──────────────┬────────────────┘
               │
               ▼
┌───────────────────────────────┐
│          CUDA                 │
│  - GPU 并行计算平台             │
│  - 提供 GPU 加速                │
│  - 版本受 GPU 驱动 & 硬件限制 │
└──────────────┬────────────────┘
               │
               ▼
┌───────────────────────────────┐
│         GPU 驱动               │
│  - 系统全局                     │
│  - 决定可用最高 CUDA             │
│  - 支持 GPU 硬件                │
└──────────────┬────────────────┘
               │
               ▼
┌───────────────────────────────┐
│          GPU (显卡)           │
│  - 决定支持 CUDA 的最大版本     │
│  - 提供计算能力 (Compute Cap.) │
└───────────────────────────────┘

┌───────────────────────────────┐
│          PyCharm IDE           │
│  - 绑定虚拟环境运行 Python      │
│  - 不影响 CUDA/驱动            │
│  - 提供开发工具                 │
└───────────────────────────────┘

总结一下,pytorch版本是决定你dl使用工具的上限,例如1.x的版本就支持不了transform那些工具,所以一般是版本越高越好。而决定你能用什么版本的一切源头是你的硬件GPU,GPU过老会导致可能不被最新的驱动支持,这就导致可能只能使用较低版本的cuda,cuda和pytorch的版本是深度绑定的,导致你可能使用不了太高版本的pytorch从而局限了工具的使用。


所以简单来说,(假设你暂时不花钱升级GPU),首先你需要去NVIDIA官网的驱动下载页查询显卡目前最高支持的驱动并升级到最新驱动。
在这里插入图片描述
下载了最新驱动之后你就可以在cmd终端使用这条命令查看你当前显卡驱动最高支持的cuda版本。

nvidia-smi

输出的表格左上角表明当前显卡驱动最高支持的cuda版本为13.0(也就是目前最新的),可以支持其及以下的所有cuda toolkit。
在这里插入图片描述

这是cuda发布说明中提到每个cuda版本最低要求的驱动版本
在这里插入图片描述
接着就可以知道你能够使用哪些版本的pytorch了,这会在pytorch官网的下载指令页直接提出,后文在下载过程中也会遇到:最新的版本以往的所有版本
这一步你可以选择点开官网看一下自己cuda可以支持哪些pytorch,(也可以不管)。
在这里插入图片描述
比如在这里,pytorch2.5.0版本里面,只支持cuda11.8 12.1 12.4. 另外cpu only的选项就是不安装cuda,提供给只用cpu训练的用户使用。
需要注意的一点是,cuda和pytorch的对应版本并不是连续的,有可能会出现cuda版本的跳跃,你只需要选择小于等于自己显卡驱动支持的最高cuda版本即可。

接下来你要根据你需要使用的pytorch版本来决定python版本,一般较新的pytorch会取消对较老版本的python的支持,较旧的pytorch也不支持较新的python。

PyTorch 版本 支持 Python 版本 官方支持 CUDA 版本 备注
1.12.0 3.7 / 3.8 / 3.9 10.2 / 11.3 较老版本,低显存 GPU 可用
1.13.1 3.8 / 3.9 / 3.10 11.6 / 11.7 支持更多新特性
2.0.0 3.8 / 3.9 / 3.10 / 3.11 11.7 / 11.8 / 12.0 首个 2.x 稳定版本
2.1.0 3.9 / 3.10 / 3.11 11.8 / 12.1 向下兼容 2.0.x API
2.6.x 3.10 / 3.11 12.0 / 12.1 / 12.3 新增部分性能优化
2.7.0 3.10 / 3.11 12.6 / 12.8 最新稳定版本,适合 Pascal 架构 GPU

最权威的是这个pytorch发布文档了,里面写清楚了每一个版本的pytorch支持的cuda和python版本,但我相信没有人会看的。

至此你就知道了你需要安装的python+pytorch+cuda版本。

下载全流程

miniconda

下载miniconda

清华镜像站
在这里插入图片描述
点击右边栏的蓝色获取下载链接,选择应用软件-conda
在这里插入图片描述
选择你对应的版本,一般是win64位

Miniconda3-latest (Windows/x86_64, exe)

建议不要下在c盘。

系统变量

搜索系统环境变量,点右下角环境变量。

在这里插入图片描述

找到path选项后双击打开
在这里插入图片描述
点击新建并依次增加三条内容
格式为

miniconda安装路径
miniconda安装路径\Scripts
miniconda安装路径\Library\bin

形如
在这里插入图片描述
之后保存即可。

然后调出cmd命令窗口,输入conda回车,如果跳出一堆配置说明系统环境变量配好了
在这里插入图片描述

换源

还是打开刚才的清华镜像站,在右边栏的相关链接点击使用帮助
在这里插入图片描述
点击anaconda,这就是anaconda的使用帮助

在这里插入图片描述

根据使用帮助,我们先在cmd命令行执行

conda config --set show_channel_urls yes

这样就会在当前目录下(一般就是user文件夹)生成.condarc文件,用记事本打开并使用以下这段覆盖原文:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

可以在命令行执行

conda config --show

来查看是否成功换源

在这里插入图片描述

建议关掉 base 自动激活

conda config --set auto_activate false

这样就不用每次打开cmd或者powershell之后就有个(base)在前面,很蠢。之后需要用哪个环境再 conda activate xxx

在miniconda创建虚拟环境并下载python

(在cmd运行 miniconda没有专门的界面)
首次启用先初始化,之后创建别的环境就不用了

conda init

创建一个虚拟环境,环境名称随便取,x.xx写你希望该环境使用的python版本,如果本地没有该版本会自动下载,很方便

conda create -n 环境名称 python=x.xx

如果你没有对应版本的python,在下载过程中会弹出 [y/N]? ,需要键入 y 回车即可。

激活环境并在该环境下载pytorch+cuda

激活环境

conda activate 环境名称

执行后会出现类似于
已进入sr环境
说明你已经进入名为sr的虚拟环境

(另外如果你要退出当前环境到base环境的话,可以执行:

conda deactivate

或者直接切换环境

conda activate srL

就切换到了名为srL的环境)

之后在该环境下通过pip指令下载pytorch+cuda
这个指令可以在官网找:
最新的版本
点进去是这样。
在这里插入图片描述
run this command 这里直接就是下载指令

如果要查看以往的所有版本的话,可以直接点击在刚刚的界面点击红字install previous versions of PyTorch,点进去就是这样:
在这里插入图片描述
一般就是找你对应的v x.x.x下的 LINUX AND WINDOWS 找你想要的版本就可以了。
将pip安装指令复制过来,记住在你当前的这个虚拟环境下执行!也就是你用户名前面必须要有(name)的,形如这样:

(srL)C:\Users\lenovo>pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu128

好了,至此你就拥有了一个配置好的虚拟环境了,记住它的名字。

下载pycharm

pycharm中文官网 默认下载最新版本就行了,一直download,一路安装就可以了,不赘述。
另外专业版是收费的,不用管,免费版够用了。

接着看新建项目。
要新建python项目的话就点纯python
在这里插入图片描述

解释器一定要选择自定义环境,环境选择现有,conda的路径为 miniconda安装路径\Scripts\conda.exe,环境就选择刚才创建的虚拟环境的名字。这十分重要。
在这里插入图片描述

之后点击创建,当你能在右下角看到环境名字的时候,就说明创建成功了。
在这里插入图片描述

至此,可以开始项目了。


补充:在cursor的使用

下载部分就不赘述了,直接跳到配环境。

cursor有个神奇的地方就是,虽然它的工作界面和设置与vscode别无二致,但是当你希望在cursor下载拓展插件的时候发现,有的时候扩展商店会神秘卡死,那么这个时候就需要一些小妙招。就是直接将你vscode的设置原封不动地同步过来,包括你vscode中下载的插件。

首先确保你所需要的插件在你的vscode里面都有(最关键的是PythonDugger),没有的话就在vscode里下载!

然后打开cursor的文件 > 首选项 > Cursor Settings
在这里插入图片描述
Preference 处找到 Import Settings from VS Code,点 import,等待一会儿就好了。

在这里插入图片描述

这个时候打开你的工程文件,会发现右下角会自动选择一个解释器。(当然如果没有的话,可以点运行,然后会让你选择解释器的,一般来讲他会自动检测你创建的虚拟环境,选择你想要的一个就行。)
在这里插入图片描述
可以看到这里用的默认的conda的base环境。点击一下切换你想要的环境。

在这里插入图片描述

如果没有的话还可以自己输入解释器的路径咯。一般就是在 ~\miniconda3\envs\你的虚拟环境名字\python.exe


命令指南

如果之后你要创建新的环境,并在新的环境开始新的项目,只需要重复:

conda create 新的环境名 python=x.x.x
conda activate 环境名 # 进入新的环境
pip install cuda+torch # 安装新环境的cuda和torch
在pycharm新建工程项目并选择刚刚建的虚拟环境

其他命令

conda env list
conda activate 环境名
conda deactivate
conda remove -n 环境名 --all
conda create --name 新环境名 --clone 旧环境名 # 克隆环境 用于重命名
# 查看PyTorch版本及CUDA支持
python -c "import torch; print('PyTorch版本:', torch.__version__)"   # 其实这条语句会输出类似于“PyTorch版本: 2.7.1+cu128” 后面这个cu128就是cuda版本了
python -c "import torch; print('CUDA是否可用:', torch.cuda.is_available())"
python -c "import torch; print('CUDA版本:', torch.version.cuda)"  # 如果CUDA可用
# 查看python版本
python --version

pip

pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple # pip临时换源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # pip永久换源
pip config list # 查看当前源
pip install -r requirements.txt # 按照 requirements.txt 的文件内容下载依赖

如果 requirements.txt 中的部分依赖在和安装新环境的cuda和torch时一并下载的依赖有冲突,(比如说numpy 在下torch时会自动下载),不用担心,会覆盖掉上一次下载的版本的。直接pip就好。

小tips:
一些 ide 的终端默认用的是powershell(比如说cursor),如果powershell的自启动conda脚本(profile.ps1 一般在用户文件夹下的\documents\WindowsPowerShell里面)没有正常执行(或者被删掉了),这会导致conda的一些命令无法使用,这个时候只需要运行

cmd.exe

就可以直接把当前终端从PS变成cmd!其余的照常即可!

当然如果你希望可以在ps里面正常使用conda,可以看这篇文章


如果之后直接打开某个项目文件夹,但是还未设置解释器,需要设置一个本地由conda管理的虚拟环境,则:

File -> Settings
在这里插入图片描述
Python -> Interpreter -> Add Interpreter
在这里插入图片描述
-> Add Local Interpreter
在这里插入图片描述

Select existing -> Conda -> miniconda安装路径\Scripts\conda.exe -> 环境名称

在这里插入图片描述


补充:jupyter

相比于pycharm,jupyter 更适用于初学者学习,后期的工程项目用 pycharm 更好。

jupyter 的安装也非常方便,这里推荐直接在 conda 环境里使用 conda install ,需要注意的是如果用 pip 安装的话可能会 陷入依赖版本回溯(dependency backtracking)的循环中。这是因为 Jupyter 的依赖关系较为复杂,pip 会在尝试找到所有包都能兼容的版本组合时卡住。

首先进入环境:(当然你可以直接在 base 环境中安装,不过可能会导致版本依赖出错,毕竟都使用环境管理工具了,一般还是在你的工程环境安装)

conda activate sr

在该环境下安装 jupyter:(之后每次打开 jupyter 也要进入相应的环境,额当然这是一句废话)

conda install jupyter

一般打开命令行默认的对话地址是C盘下的当前 user,如果你的工程文件在别的盘的话,需要先切换。比如说你需要在 D 盘下的 Mine 文件夹中打开 jupyter:

cd /d D:\Mine     # /d表示可改变盘符

打开 jupyter:

# 启动 Jupyter Notebook(传统界面)
jupyter notebook

# 或者启动 Jupyter Lab(更现代的界面)
jupyter lab

会自动跳转到浏览器的 jupyter 界面。值得一提的是,Jupyter 的核心操作界面都是在浏览器中进行的,你看到的浏览器界面是 Jupyter 的客户端(前端),而实际的计算工作是在后台的服务器(后端) 中完成的。使用 jupyter 不需要安装额外的软件,非常方便简洁。

在这里插入图片描述
jupyter 的代码有命令模式和编辑模式,这来源于一个史诗级难学但是学会了非常好用的编辑器 vim。

  • 可以通过 esc 键,从编辑模式转换到命令模式;enter 键,从命令模式回退到编辑模式。
  • 在命令模式下,
    • M 切换至 markdown 格式,按 Y 切换 code 格式,或者 R 切换至 Raw 格式(Raw是一种不会被执行或渲染的纯净格式);
    • B (below)在下方添加代码块,按 D 删除,X 剪切,V 粘贴, Z 撤销;
    • shift + L 给所有代码块标行
  • 在编辑模式下,按 ctrl + enter 可以快速执行或渲染当前单元块, shift + enter 执行+跳转至下一个单元块, alt + enter 执行+在下方添加一个代码块。

markdown 模块内部还支持 latex,跟 csdn 的 md 格式一样,用 $ 包裹。非常好用。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐