经过两天的折腾,终于!!!终于有了上图的结果!!!太鸡儿不容易了!!!
事情的起因:
我本要做个transformer的工程,那个工程需要导入torchtext的包,我当时并不知道torchtext包还自带一个CPU的torch包,结果下完包后它的CPUtorch包直接把我的GPU的torch包给抵消了。瞬间让我火冒三丈。火冒三丈之余头脑中又闪现出了“版本不匹配会导致各种问题发生”这一系列连锁反应。。。这些连锁反应瞬间让我觉得大事不妙,后背发凉。
事实也是没有让我失望,果真出现了一系列的问题:下图是我的部分绝望证明
最蛋疼的就是没法用GPU去跑程序了!那留着3060干毛用?于是昨天下午我就致力于把torch版本改成原来的版本。我并没想到那么难改,起初我就是把CPU的torch包uninstall,然后想pip原版的torch,但是错误百出,反正就是说解决一个问题后就又会出现另一个问题(要么是版本问题,要么是很多稀奇古怪的问题),使我晚上觉都没睡好,早上早起都没动力。后来我一气之下就把pycharm、anaconda全部重新下载了,我想着既然中间的步骤扣不明白(事实证明从中间扣是真不好扣!!!不一定就又会出现版本问题!),那我就重头开始扣。
我并没有卸载cuda,cudnn之类的东西,因为根本没必要,甚至卸载anaconda都没必要,但是我还是卸载了anaconda。。那么重头开始的话就是从anaconda开始,一定要先看好自己电脑cuda的版本再下对应的anaconda。anaconda自带Python,所以不用再下载Python。然后就下pycharm,pycharm若是下载专业版的话得破解,网上也有破解视频,如果需求不多的话社区版即可。两个东西都下完之后就要进行一系列的配置了。整体的流程这个视频讲的挺好的:
第一节-PyTorch安装与环境配置教程_哔哩哔哩_bilibili
配置完毕后就是把久违的GPU torch包以及其他包下回来,这个也挺费劲的:(下面各图是我剩下大部分的绝望证明)
其实没有版本问题的话,只是从零开始安装的话都好说,就是因为版本的参差不齐,导致一步错步步错,所以小伙伴们要好好斟酌版本问题。工具包的配置与下载,我推崇上述视频的方法,就是自己把官方的工具包下下来,然后通过anaconda终端去安装,俗称手动下载,虽然费事点,但是这样操作的话每一步都尽收自己眼下,可以保证下载的东西是自己想要的东西。
官方发工具包网站是:https://download.pytorch.org/whl/torch_stable.html
下载的时候你一定要看好自己的Python版本,和cuda版本,然后再选择合适的包版本,所以,一切都离不开版本。具体看版本的方法网上都有。比如:Windows下安装pytorch教程(下载.whl的方式)_torch whl文件_zihan_2024的博客-CSDN博客
但是如果你就是喜欢自动下载的话也行,网址在这里,也是看好版本啊:Previous PyTorch Versions | PyTorch
继续说手动下载的事,把想要的包从官网下下来之后,就是手动安装了,首先你得在anaconda prompt弄一个pytorch的虚拟环境,然后在虚拟环境中,分别pip install 那三个包就如第一张图片我圈中的那样。
在手动下载的过程中,我还碰到了一些问题:
1:我在anaconda prompt进行pip install "torch-1.12.1+cu116-cp310-cp310-win_amd64.whl"的时候出现:ERROR: torch-1.12.1+cu116-cp310-cp310-win_amd64.whl is not a supported wheel on this platform.这个错误。
解决方法:使用pip debug --verbose语句看一下自己的pip都能下载什么版本的包,比如我这边只能下载下图我圈中的那些版本的包,因此我把原来的cp310的包换成了cp39的包。
最后下载成功。
2、第二个问题:
这个问题我没有解决,这个问题的背景是我想在pycharm终端上进入创建好的pytorch虚拟端,但是死活进不去。但是后来我在anaconda prompt上面就可以进入pytorch虚拟端:
这就很玄学很玄学。。。。有知道的大佬可以告诉我一声这是为什么,感谢!
3、第三个问题的背景以及解决方法在我上一篇博客里,是创建虚拟环境时报的错。链接:conda创建虚拟环境时报错:InvalidArchiveError(“Error with archive C:\\Users\\..\\.conda\\pkgs\\wheel-0.38.4...._光·宇的博客-CSDN博客
最后装完了之后别忘了敲这些代码来验证是否安装成功:
还有一些关于anaconda prompt的干货:
Anaconda prompt常用语句以及常见错误集合啦!_anaconda prompt例子_无穷小乘以有界量的博客-CSDN博客
anaconda prompt 常用命令_anaconda prompt常用命令_AcceptedMaybe的博客-CSDN博客
其实还有很多遇到过的问题,但是没有进行记录,就把这几个小问题进行记录一下吧。希望对大家有用,也欢迎大佬能对我进行批评指正。
祝好运!