赶时间直接看分割线以下部分
遇到错误:
NVIDIA GeForce RTX 3090 with CUDA capability sm-86 is not compatible with the current PyTorch installation.
The current PyTorch install supports CUDA capabilities sm_37 sm_50 sm_60 sm_61 sm_70 sm_75 compute_37.
If you want to use the NVIDIA GeForce RTX 3090 6PU with Pytorch, please check the instructions at https://pytorch.ong/get

一开始以为是cuda版本和pytorch版本对应问题,这时候用的cuda是10.2的,根据以下表格卸载重装了几个版本的pytorch。
error仍然没法解决。开始问chatgpt,卸载换了几个版本,还是没法解决。
---------------------------------------------我是可爱的分割线------------------------------------------------------------
然后想到像这种有error,就是这个error的描述很详细的话,可以去csdn上搜一下。查找后发现应该是cuda版本的与pytorch不匹配问题,于是我运行了下列代码:
import torch
print(torch.cuda.get_arch_list())

①这证明要cuda版本超过11.几
②就开始在pytorch上找cuda超过11.几的版本,有11.0,11.3,11.7,11.8的。因为服务器cuda是11.7。
所以结合①和②,选择了11.3版本的cuda。(反正都是尝试,一个个版本试)
这时候我又看回这个对应的表格去选pytorch版本。

根据上图先选了1.8.1版本。(发现其实这些版本下载的很慢了,还会失败。。。)
好不容易成功了,出现新的问题:
好,很神奇,怎么available函数都False了
因为这个错误的中文是torch的版本不匹配嘛,而我们的cuda版本11.3肯定是没有错的,所以就换pytorch版本。
试1.9.0还是同样的错误。哎
就去问chatgpt,看他的回答很烂,就是很笼统,和之前发生的错误的回答差不多,我感觉没有用。于是去csdn上搜这个问题(一定要加上3090显卡,因为这个卡很有辨识性,算力强),csdn上对于这个问题的解释是说下成了cpu版本,我就去查看,用pip list指令可以查看下载的包,我发现我们下载的是gpu版本啊。
接着继续看csdn还是没有什么合适的答案。
最后就是感觉会不会pytorch版本太低了,太旧了。
所以再尝试了1.11.0的版本。
conda install pytorch==1.11.0 torchvision==0.12.0 torchaudio==0.11.0 cudatoolkit=11.3 -c pytorch


就没有出现3090这种显卡啊,cuda之类的错误了,debug成功!