news 2026/9/29 1:21:42

深度学习环境搭建指南:Anaconda、PyTorch与PyCharm三件套从零配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
深度学习环境搭建指南:Anaconda、PyTorch与PyCharm三件套从零配置

刚接触深度学习或者准备开始跑 PyTorch 的同学,十有八九都卡在了第一步:装环境。明明照着教程一步步点,结果 Anaconda 装完不知道干嘛,PyTorch 装完 import 报错,PyCharm 里解释器一片红,最后心态直接爆炸。

这篇文章就把 Anaconda、PyTorch、PyCharm 这三件套从头到尾串起来讲清楚。不光是给你命令让你复制粘贴,还把每一步“为什么这么干”说透,你跟着走完一遍,之后自己换电脑、换项目、搭新环境都不会再慌。适合刚入门 Python、准备做深度学习/机器学习方向的同学参考,也适合被各种环境问题折腾到怀疑人生的朋友重新理一遍思路。

1. 三件套的分工与安装顺序,先盘清楚再动手

很多人装环境失败,不是因为哪一步点错了,而是压根没弄明白这三个软件各管什么、谁先谁后。磨刀不误砍柴工,先把思路理顺。

1.1 三个软件各自的角色定位

把 Anaconda、PyTorch、PyCharm 这三者放到一起,用生活里的例子类比就很好理解。Anaconda 是水电煤这类基础设施,它自带 Python 解释器,还附带了一整套科学计算常用的包,更关键的是它能帮你创建相互隔离的“小房间”,也就是虚拟环境,每个项目独占一套包版本,互不打架。PyTorch 是煤气灶本身,它是在 Python 基础上的一个深度学习计算库,负责张量运算、自动求导、构建神经网络这些实际干活的事。PyCharm 则是厨房的管理系统,一个集成开发环境,帮你写代码、自动补全、断点调试、管理文件。

没有 Anaconda,Python 和包管理会变成一场噩梦;没有 PyTorch,深度学习的一切都无从谈起;没有 PyCharm,你就只能在命令行和记事本之间来回折腾,效率极低。

1.2 为什么必须按这个顺序装

安装顺序是有讲究的。Anaconda 自带了 Python 解释器和 conda 包管理器,所以它必须第一个装,先有基础设施,才能在上面盖房子。PyTorch 的运行依赖于 Python 环境,它安装时会识别当前激活的环境并往里面写文件,所以必须等你 Python 环境存在且干净的情况下再装。PyCharm 是最后登场的管理工具,它本身不包含 Python,而是通过配置的方式“认领”系统里已有的解释器。

我见过不少同学反着来,先把 PyCharm 装好,再用它去“新建”项目,这时如果系统里没有可用的 Python 解释器,PyCharm 要么让你指定一个不存在的路径,要么自动下载一个与 Anaconda 毫无关联的干净 Python,之后装 PyTorch 时常常出现各种版本错位。按正确顺序走,能避开这条弯路。

2. Anaconda 的下载与安装细节

Anaconda 的下载安装本身不难,一顿下一步操作就行,但有几个细节决定你后面省不省心。

2.1 下载版本与 Python 版本的关系

打开 Anaconda 官网,或者国内镜像站,你会看到两个选择:图形化界面的安装包和命令行版的 Miniconda。新手建议直接上 Anaconda 完整版,因为它预装了几百个数据科学常用包,省去不少单独安装的麻烦。如果你硬盘空间紧张,或者你很清楚自己用不到 Jupyter、Spyder、Pandas 这些预装内容,再考虑体积小得多的 Miniconda。

Anaconda 新版默认捆绑的 Python 已经比较新,比如当前版本往往自带 Python 3.11 或更高。对于 PyTorch 来说,大多数稳定版本都能支持这些 Python 版本,但如果你之后要跑较老的开源项目,可能会遇到 “requires-python>=3.8,<3.10” 之类的限制。这时候 Anaconda 的优势就体现出来了——它允许你在同一个电脑上创建多个 Python 版本完全不同的环境,各玩各的,不受系统级 Python 版本约束。

2.2 Windows 安装时的关键勾选项

在 Windows 上安装 Anaconda 时,有两个选项需要认真对待。一个是是否把 conda 加入 PATH 环境变量,有人建议不勾选,因为怕跟系统里已有的 Python 冲突。但如果你的电脑是比较干净的状态,没有预装过乱七八糟的 Python,建议还是勾上,这样之后在任意终端里都能直接用 conda 命令,操作直观很多。如果你不确定,选择不勾选也问题不大,用 Anaconda Prompt 终端也能干所有事,只是我嫌它每次都要专门打开麻烦。

另一个选项是是否将 Anaconda 注册为默认 Python,建议勾上。这样很多依赖 Python 的软件(比如某些编辑器插件)会自动找到 Anaconda 的 Python 解释器,省去手动指定路径的环节。

安装完成后,按Win+R输入cmd打开命令行,执行:

conda --version python --version

如果两个都有输出,说明安装成功。如果提示“不是内部或外部命令”,基本是 PATH 没配上,需要到系统环境变量里手动把 Anaconda 的安装目录以及其下的Scripts子目录加进去。

2.3 国内镜像源配置,别让下载卡在小水管

Anaconda 默认软件源在国外,速度经常感人。装完第一件事就是切换成国内镜像。国内可用的镜像源有不少,我用的是清华大学开源软件镜像站,稳定性一直不错。

在命令行里依次执行下面的命令,就把 conda 默认源换成清华源:

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

加完后可以用conda config --show channels查看当前源列表,确认生效。这里有一个值得留意的细节:第三行是 PyTorch 的专属频道,很多教程里没有它,导致之后用 conda 安装 PyTorch 时找不到对应包,或者只能用到旧版本。加上这个频道后,conda 版的 PyTorch 安装基本能畅通无阻。

2.4 创建虚拟环境:给你的每个项目一个独立房间

Anaconda 最大的价值就在虚拟环境。为什么所有深度学习教程都强调这一步?因为不同项目经常对包版本有不同要求:老项目要 TensorFlow 1.x,新项目要 PyTorch 2.x,如果全装在一个环境里,依赖冲突能把人逼疯。虚拟环境就是一个个小盒子,各装各的,互不干扰。

创建环境的方式很简单,在命令行里执行:

conda create -n pytorch python=3.11

这行命令的意思是创建一个名为pytorch的虚拟环境,里面安装 Python 3.11。激活它:

conda activate pytorch

后面所有关于 PyTorch 的安装都在这环境下进行。我习惯于每个大项目单独建一个环境,名字起得有意义一点,比如目标是图像分类的,就叫cv_classify,目标是 NLP 的,就叫nlp,这样环境一多也不乱套。

注意:不要养成“什么包都往 base 环境里装”的习惯。base 是 Anaconda 的老家,一旦装坏了,整个 Anaconda 都很容易崩,重装的成本比重新建一个环境高得多。

3. PyTorch 的安装与验证

PyTorch 是这台戏的主角。安装它的核心逻辑就四个字:版本匹配。下载慢、装不上、跑不起来,多半都是版本匹配的问题。

3.1 先想清楚:CPU 版还是 GPU 版

这是安装前第一个必须做决定的事,而且很多人没搞清楚就装,后面才发现自己白白装了个 CPU 版,训练速度慢得像蜗牛。

想用 GPU 训练,你需要同时满足三个条件:有块 NVIDIA 的显卡,装了对应的显卡驱动,以及 PyTorch 版本和驱动支持的 CUDA 版本匹配。如果满足,果断选 GPU 版,尤其是跑卷积神经网络或 Transformer 这类模型,CPU 和 GPU 的速度差距是几十倍起步的。如果你用的是苹果 M 系列芯片的 Mac,或者电脑是集显的轻薄本,那就老老实实装 CPU 版,也能跑实验,只是别指望它能训练大模型。

下表是快速选型参考:

硬件条件建议安装的 PyTorch 版本备注
NVIDIA 显卡 + 已装驱动对应 CUDA 版本的 GPU 版训练速度最快,推荐
无 NVIDIA 显卡 / 苹果 M 系列芯片CPU 版仅适合跑小规模代码,跑大模型基本没戏
云端 GPU 服务器按服务器驱动选定 GPU 版一般用云厂商提供的实例镜像,驱动已装好

3.2 GPU 版的关键:确认你的 CUDA 版本

选 GPU 版时,最让人头疼的就是 CUDA。很多人搞混一个概念,NVIDIA 驱动自带的 CUDA 和 PyTorch 运行所需的 CUDA Toolkit 并不是一回事。PyTorch 组件内部集成了需要的 CUDA 运行库,你只需要保证显卡驱动支持的 CUDA 版本不低于 PyTorch 编译时的版本即可。

实际操作中怎么看?打开命令行,执行:

nvidia-smi

输出内容的右上角有一行CUDA Version,比如 12.6。这个表示当前驱动最高能兼容到 CUDA 12.6。那你就去 PyTorch 官网挑一个 CUDA 版本不大于 12.6 的安装命令。比如官网有cu118、cu121、cu124等,挑cu121或cu124都行,只要不超过驱动支持的上限。

这里有个很常见的误区:看到nvidia-smi显示 12.6,就以为必须装 PyTorch 的 cu126 版本,其实没这回事。PyTorch 的 cuXXX 表示它自己捆绑的 CUDA 工具包版本,只要它要求的版本不比你驱动支持的最高版本高,就能正常跑。换句话说,驱动是“上限”,PyTorch 是“下限要求”,下限小于等于上限就兼容。

注意:如果没有安装 NVIDIA 驱动,哪怕显卡再好,nvidia-smi也会提示找不到命令,这时先去 NVIDIA 官网下载并安装对应显卡驱动,再回来做这一步。

3.3 用 conda 还是 pip 安装,我的选择标准

这是一个老生常谈的问题,两边各有拥趸。我的建议是:PyTorch 官网首页给的 pip 命令优先。

原因很简单,这几年 PyTorch 官方对 pip 版的支持和更新最及时,用pip install torch出来的版本往往是最新的稳定版。而 conda 虽然依赖解析做得好,但 PyTorch 相关的包经常要从 conda 的 pytorch 频道拉取,某些地区源更新会滞后,加上 conda 解析依赖时特别慢,装一次等十分钟很常见。

官网首页的安装命令长这样(根据你选择的配置自动生成):

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

这里面有三个包:torch是主库,torchvision是图像处理和数据集的辅助库,torchaudio是音频处理库。如果只是入门,至少装前两个;涉及语音或音频再装torchaudio。

在国内网络环境下,直接执行官网命令有可能还是偏慢,因为默认要从 download.pytorch.org 拉取。更稳的方案是把--index-url换成国内 PyPI 镜像,比如阿里云镜像:

pip3 install torch torchvision torchaudio -i https://mirrors.aliyun.com/pypi/simple/

但这样装到的可能是 CPU-only 版本,脚本无法判断你要 GPU 版。所以更靠谱的方式是先用官网命令装完,再运行验证代码。如果发现是 CPU 版且你需要 GPU,那就直接上国内镜像里的指定版本。我的习惯是先用官网命令试一次,如果实在太慢或老是超时,再改用下面的命令从阿里云拉取指定的 GPU 版本:

pip3 install torch torchvision torchaudio -i https://mirrors.aliyun.com/pypi/simple/

安装完了,运行这一段验证:

python -c "import torch; print('torch version:', torch.__version__); print('cuda available:', torch.cuda.is_available()); print('cuda version:', torch.version.cuda)"

如果cuda available输出True,恭喜你,GPU 版装好了。如果输出False,但机器明明有 NVIDIA 显卡,那基本是版本匹配问题,按上面的流程再排查一遍。

3.4 conda 方式安装的一个补充

如果你所在网络环境 pip 实在不顺畅,或者你更习惯一套 conda 命令全搞定,也可以走 conda 路线:

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

成功的关键在于-c nvidia这个频道,它包含了 CUDA 相关的运行库,不加它经常装出来一个半残的环境。另外,如果已经在 2.3 节配置了清华镜像的 pytorch 频道,conda 安装速度还可以接受,不至于等得人想放弃。

4. PyCharm 的安装与项目环境配置

PyTorch 装好了,最后一个环节是把开发环境理顺。PyCharm 在这里扮演的角色是提高写代码效率的“操作台”。

4.1 社区版还是专业版,怎么选

PyCharm 有两个大版本:社区版(Community)和专业版(Professional)。社区版免费开源,对纯 Python 开发来说完全够用;专业版多了 Web 开发框架支持、数据库管理、远程部署等高级功能,面向全栈开发场景。

很多教程喜欢教大家“激活”专业版,但这里明确劝一句:有条件就支持正版,JetBrains 对学生和教师提供免费的教育授权,官网申请就行。如果只是自己学习 Python 和深度学习,社区版足够带着你跑完绝大部分实验,完全没必要折腾各种破解手段,安全性也更放心。

4.2 新建项目时如何正确指定解释器

打开 PyCharm,新建项目时有一个关键操作:选择解释器。这一步很多人会忽略,默认用 PyCharm 自己创建的 venv 虚拟环境,结果你辛辛苦苦在 conda 里装的 PyTorch 根本不会被这个项目读到,import torch直接红字报错。

正确的做法是,新建项目时选择“Previously configured interpreter”,然后点 Add Interpreter,选 Conda Environment,Use existing,路径选择你之前建的pytorch环境里的python.exe。在 Windows 上这个路径通常在:

C:\Users\你的用户名\anaconda3\envs\pytorch\python.exe

选好后,PyCharm 会自动帮你识别环境名,并列出环境里已有的包。在项目里写一行import torch测试一下,如果没有红色波浪线,说明联动成功了。

4.3 配置完成后的开发习惯

环境配置好了,之后怎么用才是关键。在 PyCharm 底部有个Terminal标签页,它默认激活的项目解释器可能不是 conda 环境。要养成每次先在终端里手动执行conda activate pytorch的习惯,然后再跑pip install之类的命令,确保装的包进的是 conda 环境,而不是默认的某个 Python 环境。

遇到新包时,我建议多在终端里用pip install 包名来装,而不是在 PyCharm 的设置界面里点击加号。原因?终端里能看到安装日志和报错信息,出了问题好排查。GUI 安装时如果因为网络超时报错,或者依赖冲突报错,提示往往很简略,新手根本无从下手。

4.4 微软 VC++ 14.0 报错的解决思路

Windows 下装 PyTorch,或者装很多编译型 Python 包时,经常看到一条报错,大意是要求安装 Microsoft Visual C++ 14.0 以上版本,否则某些包的安装无法继续。这不是 Python 的问题,而是很多包依赖了 C++ 编译环境。

解决方式不复杂,去微软官网下载“Microsoft C++ Build Tools”,安装时勾选“使用 C++ 的桌面开发”组件,安装完重启电脑(或者至少重新打开终端),再回头装 PyTorch 或其它报错包,基本就通畅了。很多教程忽略了这个前置依赖,导致新手卡在第一步莫名其妙。建议在装三件套之前就先把这个装好,免得后面反复踩坑。

5. 常见问题排查与实用技巧

环境装好后,日常使用中还是会遇到各种小毛病。这里把最高频的几个坑汇总一下,对照着排查能省很多时间。

5.1 高频问题速查表

现象可能原因解决办法
conda命令找不到PATH 环境变量未配置手动添加 Anaconda 安装目录及 Scripts 目录到系统 PATH,重开终端
pip install下载速度极慢未走镜像源执行pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
import torch报错DLL load failedPyTorch 运行时依赖缺失,或版本与驱动匹配问题重装 PyTorch,确认cu版本与驱动兼容;升级 VC++ 运行库
torch.cuda.is_available()返回 False显卡驱动缺失、版本不匹配,或装了 CPU 版用nvidia-smi确认驱动;按官网匹配规则重选版本安装
PyCharm 中import torch依然红名项目解释器选错,没有指向 conda 环境项目设置里重新配置 Conda Environment,选择 existing 环境
创建虚拟环境时网络超时conda 源为默认海外源用conda config --add channels添加清华/阿里镜像后重试
安装 PyTorch 提示包版本冲突conda 源缺少需要的频道添加https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/频道

这张表我建议你截图存一份,之后遇到的问题大概率就在里面。

5.2 换电脑或迁移环境时,怎么把配置一口气带走

环境搭好后再换电脑,不要傻兮兮地把每个包重新装一遍。conda 提供了环境导出功能,在旧机器的命令行里执行:

conda activate pytorch conda env export > environment.yml

把生成的environment.yml文件带到新电脑上,执行:

conda env create -f environment.yml

新环境会自动还原出来。不过我提醒一句,conda env export会记录包的原生构建信息,换到不同操作系统上,比如从 Windows 迁移到 Linux,个别包可能对不上,这时可以把导出命令改成conda env export --from-history,只保留你用命令手动安装过的包,其余让 conda 自动解析,跨平台成功率更高。

5.3 环境管理的几条个人经验

用久了你会发现,环境折腾的尽头往往是简单。我自己现在固定遵守三条纪律,基本没再被环境问题坑过。

第一,每个项目一个独立环境,名字用项目名,不要图省事全塞在 base 里。第二,装包前先激活环境,用conda activate确认终端前缀已经变成环境名,再执行安装命令。第三,不要轻易更新环境里的大版本,尤其是 PyTorch 这种重依赖框架,一旦跨大版本升级,一堆代码可能面临 API 变化,与其升级不如新建一个环境测完再说。

另外有一点经验觉得特别值得分享:在 Windows 上安装 Anaconda 时,如果安装过程中杀毒软件弹窗拦截,最好选择“允许”,否则某些关键配置文件可能被静默隔离,导致安装后 conda 一直报异常。再有就是 Anaconda 安装目录尽量不要放在带空格或中文字符的路径下,比如D:\Anaconda就好,路径太花哨容易让一些老旧的包解析时出幺蛾子。

6. 最后再聊聊我从实践中悟到的一点东西

这几年的安装配置经验告诉我,环境搭建这件事,90% 的问题不是代码问题,而是“版本匹配”问题。显卡驱动的 CUDA 版本、PyTorch 的 cu 版本、Python 版本、操作系统位数,每一项都必须对得上,少一个环节都可能跑不起来。

所以装环境时,别急着一路下一步。每装完一个组件,就回头验证一下:Anaconda 装完验证 conda 和 python,PyTorch 装完验证 torch 版本和 CUDA,PyCharm 配置完验证解释器和包导入。每一步踩实了再走下一步,整个过程反而比慌慌张张按完要快得多。

按照这套流程走下来,你的电脑上应该已经有了一个能正常跑 PyTorch 的基础环境。接下来就可以拿着官方教程,跑一个简单的张量操作或训练一个小型网络试试水,环境没问题了,才算是真正踏进了深度学习的大门。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 1:21:25

本地AI选片工具VisionCull:跑焦闭眼检测与XMP星级标注实战

简介&#xff1a;一款专为摄影师设计的本地AI选片工具&#xff0c;基于VisionCull Pro源码与部署文档打包&#xff0c;面向需要快速筛除跑焦、闭眼等废片的摄影从业者。工具完全在本地完成视觉计算&#xff0c;无需联网或上传照片&#xff0c;保护商业摄影隐私&#xff1b;内置…

作者头像 李华
网站建设 2026/9/29 1:20:29

C盘满了怎么清理?从空间分析到开发者工具链迁移的完整方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/29 1:19:24

多智能体系统生产环境通信风暴与死锁治理实战

多智能体系统听起来很美好&#xff1a;一个编排者把任务拆给几个专职Agent&#xff0c;大家各司其职、协同作战。但真把这套东西从Demo搬到生产环境&#xff0c;你会发现一个很残酷的事实——Agent之间的消息流不是一个优雅的编舞&#xff0c;而是一场随时可能失控的路口车流。…

作者头像 李华
网站建设 2026/9/29 1:19:16

i茅台自动预约Docker一键部署:定时任务与避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/29 1:18:42

本地部署大模型工具链全景解析:从Ollama到vLLM的29个工具选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华