anaconda安装pytorch,OSError [WinError 123] 文件名、目录名或卷标语法不正确

不解释原因了,其实也没原因

选第一个,(open Terminal),然后直接执行下载命令就没问题了

哈哈哈哈哈天杀的我终于装好pytorch了

最后检测安装成功否:(来自检测Pytorch是否安装成功(代码) - 知乎)

import torch    # 如正常则静默
a = torch.Tensor([1.])    # 如正常则静默
a.cuda()    # 如正常则返回"tensor([ 1.], device='cuda:0')"
from torch.backends import cudnn # 如正常则静默
cudnn.is_acceptable(a.cuda())    # 如正常则返回 "True"

有些同学可能发现在装好了之后虽然在 anaconda 的环境下验证cuda()为True,但是python里跑就是跑CPU

可能的原因
  1. 你在装好pytorch之后才安装的Cuda,或者说你根本没装Cuda,就是下面这个东西,选一个与你显卡相匹配的版本,win11选11,10选10
  2. 你的python环境里以前用过pip install torch,它默认是torch+cup。这一点你可以使用pip show torch  来查看
    # 这是我的版本
    # pip show torch                                                                                        
    > Name: torch
    > Version: 2.1.2+cu121
    > Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration
    
咋解决呢 

解决原因1,删除anaconda中你建的虚拟环境,先安装cuda,直到你的命令行输入nvcc -V有以下反应

确保你的主环境(base)也没有torch的包,[我也不知道这一步有没有影响,没试过,要不你试试]

重新开始在anaconda中新建虚拟环境,然后用安装命令安装pytorch。

解决原因2,pip uninstall torch ,然后重新安装

终极解决方案

仍然确保你安装了cuda,输入nvcc -V有回应

pip 换回默认源,如果没配置过忽略这一步,网上说pip问题多的多半是这个问题。

(可是torch两个G,没有换源要下到猴年马月呀 。去官网下载试试,cp38指的是python3.8,39指的是python3.9,你懂的,下载好以后,使用pip install 直接安装它。后续步骤正常做,pip会忽略你装过的包)

 https://download.pytorch.org/whl/cu121/torch/icon-default.png?t=N7T8https://download.pytorch.org/whl/cu121/torch/

再执行pip自己选配安装命令 

 执行pytorch命令,看到xxx...Python-3.10.5 torch-2.1.2+cu121 CUDA:0...xxx

恭喜你,你的显卡终于开始有活干了