重装pytorch历程-问题-解决

文章讲述了在尝试安装和更新PyTorch及其相关包torchvision、torchaudio时遇到的版本不匹配和HTTP错误。作者尝试了通过conda和pip命令的不同方式安装,包括更改镜像源、调整环境变量、卸载并重新安装特定版本,最终通过pip在指定镜像源下成功安装了匹配的PyTorch版本。此外,文章还讨论了conda和pip的区别以及环境管理的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用conda install时报错:An HTTP error occurred when trying to retrieve this URL. HTTP errors are often intermittent…

我要做的事:
想使用torchinfo包,但是这个包可能是比较新,我的pytorch版本比较旧,所以引包的时候会报错,所以需要更新pytorch嘛,结果网上随意下载包时,更新换代了一些pytorch本应固定版本的包,包的版本对应不上,结果导致pytorch不能用了,有很多错误,而我具体改了哪些都是电脑自动更新的,我也不知道,为此我想着直接卸了重装。

我一开始装pytorch的时候是参考炮哥的教程,就是装好anconda后设置好环境再,直接pytorch官网(https://pytorch.org/)选择好对应版本然后直接下载。

此时出现问题了:第一次安装是2022年6月当时是11.3版本,复制命令是:conda install pytorch torchvision torchaudio cudatoolkit=11.3,现在更新到11.7了,复制命令是:conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia,(当然11.7后面的就不要复制了,因为咱们用的是国内的源)

我之后再安装的时候,直接复制了11.7的,和原版本有差别,所以直接报错!具体报错原因:在用pytorch官网命令下载的时候,不仅装了pytorch还有对应的torchvision、cudatoolkit,torchaudio这些额外的包和原版本的pytoch的版本必须是对应的才行,而且这个cudatoolkit在2023年1月(通过看11.7的命令)官方改成了cuda。包都换了。

所以,这时候必须把torchaudio、cudatoolkit、torchvision都换了才行,然后就直接pip uninstall +包名全卸载了,到时候直接安装。

以下是之后的问题即解决过程:

问题分析与解决方法:

1.一开始,参考https://blog.youkuaiyun.com/gyyu32g/article/details/104611322这些文章,意思是就是下载来源的问题,要解决的话,就是从镜像源下手。

2.但是我个人解决的时候,更改了镜像源。同时针对还出现的‘Solving environment: failed with initial frozen solve. Retrying with flexible solve.’这个问题(就是镜像源太多,没有设置好优先级的原因)(参考:https://blog.youkuaiyun.com/Sakura_Logic/article/details/108312146),可以通过代码直接修改优先级,另外修改镜像源可以直接修改对应位置的文件( C盘/用户/(你的用户名xx)/.condarc)。

3.以上都试了以后,还是有问题,我换了镜像源,命令用的是conda install pytorch torchvision torchaudio pytorch-cuda=11.7,还是有报错,说是这些源当中没找到对应资源,就是题目的这个问题,于是之后我换了更低的版本,还是说没找到对应的资源,之后看网上说需要每个包都指定对应版本,命令换成:conda install pytorch1.13.0 torchvision0.14.0 torchaudio==0.13.0 cudatoolkit=11.7。结果还是报错。

4.以上的都报错,我就觉得问题只有一个了,我因为我用的是conda install,我头一次用这个命令还装的上,不知道为啥后面就不行了。也不管为啥了,我直接打开pycharm终端,直接pip install,命令换成:pip3 install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple。

然后解决了,并且电脑装的是Successfully installed torch-1.13.1 torchaudio-0.13.1 torchvision-0.14.1。我原本的是1.7.1:
Attempting uninstall: torch
Found existing installation: torch 1.7.1+cu101
Uninstalling torch-1.7.1+cu101:
Successfully uninstalled torch-1.7.1+cu101
这里他直接给我卸载了,重新装了个低版本的。(版本对应网站:https://pytorch-geometric.com/whl/)
反正能用了,后续可能还有错误,但是目前能用了,后面再有错我再改版本,反正不要用conda install了直接用pip install。
另外,我不知道torchinfo需要对应的pytorch版本到底是啥,反正我现在这个1.13.1版本的torch能用这个torchinfo这个包!
5.参考:https://blog.youkuaiyun.com/qq_46037444/article/details/125991109。
再更新一下,步骤4当中下载的pytorch有问题,是cpu版本的,故又得重装。至于为啥是cpu版本的。原因:我没有指定cpu还是cuda的,所以就自动找了一个cpu版本的。这里值得注意的是,我的cuda是11.7.101的,所以我可以安装的pytorch11.7版本及以下的包。因为它一般是向下兼容的,保险起见,我最后选择的是11.6版本的,此时进入官网https://pytorch.org/get-started/locally/
在这里插入图片描述
如上进行选择,复制其中的 pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116 -i https://opsx.alibaba.com/mirror。后面再加上镜像源,这里我在下载的时候清华源不够稳定,会中断,但是用阿里源下载上了。

镜像源:
-i https://opsx.alibaba.com/mirror
-i https://pypi.tuna.tsinghua.edu.cn/simple

最后重装成功,
import torch
a=torch.cuda.is_available()
print(a)

输出:True

另外torch 11.6的也能用torchinfo

二.anconda和pip的区别
参考:https://blog.youkuaiyun.com/qq_44886213/article/details/123171762
1.pip的库比anconda多很多很多,可能是这个原因导致我conda install的时候它找不到对应的包,然后就直接提示我让我换源试试,当然换了它没有还是没有所以一直报错。
2.anconda可以设置多个环境,在不同的环境中我可以指定对应的python的版本,要知道很多包的使用需要对应上对应的python版本的,就比如(https://blog.youkuaiyun.com/qq_46037444/article/details/125991109)当中说的。所以可以设置多个环境并且设置多个python就可以隔离开这些环境,我用到那个,就用那个环境。

但是,我有个问题就是,我之前是用anconda装好了一个环境命名为pytorch然后对应的python版本为3.8,在pycharm设定好是这个环境后
就红线标的这里都设置好后,我直接在终端用pip下载的包就算是直接下载到这个环境下的包列表了嘛?那这样的话和conda install有啥区别呢?

目前也不知道为啥,反正(https://blog.youkuaiyun.com/qq_46037444/article/details/125991109)当中的建议很好,就是能conda install 尽量conda install 不能再用pip install

总结:
1.cuda和torch版本对应查阅https://download.pytorch.org/whl/torch_stable.html
参考:https://blog.youkuaiyun.com/qq_46037444/article/details/125991109

ok,总结完毕,其中的问题,如果有大佬知道,希望大佬能评论区指点一下,感激不尽!

<think>嗯,用户想了解如何正确卸载并重新安装PyTorch,特别是在不同操作系统上。首先,我得回忆下自己之前处理过类似问题的经验,或者看看有没有相关的引用资料。根据用户提供的引用,特别是引用[3]提到重装CUDA时只需勾选“CUDA”,可能涉及到CUDA的安装步骤,但用户的问题主要围绕PyTorch的卸载和重装。 首先,我需要确定不同操作系统的卸载步骤。对于Windows,通常使用pip或conda来管理包。卸载PyTorch的话,可能需要用pip uninstall或者conda remove。但有时候残留文件可能需要手动删除,比如用户目录下的.conda或.pip缓存。不过用户可能不知道这些,所以得详细说明。 然后是Linux和macOS,步骤类似,但路径可能不同。比如在Linux下,可能需要清理~/.cache/pip或~/.local/lib中的文件。macOS的话,使用conda的话,可能也是用conda remove,但要注意是否使用虚拟环境。 接下来是重新安装的部分。用户可能已经安装了CUDA,所以需要根据CUDA版本选择合适的PyTorch安装命令。例如,引用[2]中的命令是conda install pytorch torchvision torchaudio cpuonly -c pytorch,但这是CPU版本。如果用户有GPU,应该指定cudatoolkit的版本。例如,使用pip安装时,官网提供的命令会根据CUDA版本不同而变化。 另外,用户提到引用[1]中的验证步骤,安装完成后用python -c "import torch; print(torch.cuda.is_available())"来检查CUDA是否可用。这点很重要,安装后需要验证是否正确安装,尤其是GPU支持。 可能需要注意的陷阱是,用户可能之前混合使用pip和conda安装,导致冲突。所以卸载时要确认最初是通过哪种方式安装的。比如,如果最初用conda安装,卸载时也应该用conda,否则可能有残留。 还有,用户可能没有使用虚拟环境,导致系统范围内的包混乱。建议在安装时使用虚拟环境,比如conda create -n pytorch_env,然后激活环境再安装,这样卸载时直接删除环境即可,更干净。 需要分步骤写清楚每个操作系统的卸载和安装步骤,确保用户能一步步执行。同时,生成相关问题可能包括如何解决安装后的验证问题,如何选择CUDA版本,或者如何处理依赖冲突等。 现在需要组织这些思路,按照用户的要求,结构清晰,分步骤说明,确保每个操作系统的步骤准确无误。同时,引用相关引用内容,比如引用[3]提到的CUDA安装部分,可能在重新安装PyTorch时需要考虑CUDA的版本兼容性。</think>### 分步指南:卸载并重新安装PyTorch #### **一、完全卸载PyTorch** **1. Windows系统** - **通过pip卸载**: ```bash pip uninstall torch torchvision torchaudio # 若使用GPU版本,还需卸载cudatoolkit相关包 pip uninstall cudatoolkit ``` - **通过conda卸载**: ```bash conda remove pytorch torchvision torchaudio cudatoolkit ``` - **清理残留文件**: 删除用户目录下的缓存文件夹(如`C:\Users\<用户名>\AppData\Local\pip\Cache`和`C:\Users\<用户名>\.conda`)[^3]。 **2. Linux/macOS系统** - **通过pip卸载**: ```bash pip uninstall torch torchvision torchaudio ``` - **通过conda卸载**: ```bash conda remove pytorch torchvision torchaudio ``` - **清理残留文件**: ```bash rm -rf ~/.cache/pip # 清理pip缓存 rm -rf ~/.local/lib/python*/site-packages/torch* # 删除本地安装残留 ``` --- #### **二、重新安装PyTorch** **1. 选择安装方式** - **官方推荐命令生成器**:访问[PyTorch官网](https://pytorch.org/),根据系统、CUDA版本等生成安装命令。 - **示例命令(GPU版本)**: ```bash # 使用conda安装(CUDA 11.8) conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia # 使用pip安装(CUDA 12.1) pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 ``` - **CPU版本**: ```bash conda install pytorch torchvision torchaudio cpuonly -c pytorch # 引用[2] ``` **2. 验证安装** ```python import torch print(torch.__version__) # 输出版本号 print(torch.cuda.is_available()) # 输出True表示GPU可用[^1] ``` --- #### **三、注意事项** 1. **CUDA兼容性**:重装CUDA时需勾选“自定义安装”并仅保留核心组件,避免冲突。 2. **虚拟环境**:建议使用`conda create -n pytorch_env`创建独立环境,避免污染全局包。 3. **混合安装问题**:若之前混用pip和conda,建议彻底卸载后选择单一工具安装。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值