如何让conda/mamba使用与当前系统不同的跨平台子通道?
解决mamba跨平台指定Windows子通道安装PyTorch的问题
要在macOS上通过mamba为Windows环境指定pytorch/win-64和conda-forge/win-64子通道,核心是强制mamba使用Windows平台的包索引——通道的系统子目录是由平台参数自动匹配的,不需要手动指定子目录路径,具体方法如下:
一、临时指定平台创建Windows环境
创建环境时直接通过--platform win-64参数强制指定目标平台,搭配通道参数即可:
- 创建Windows平台的空环境:
mamba create --name win-torch-env --platform win-64
- 激活环境后安装带CUDA的PyTorch(避免默认安装CPU版):
mamba activate win-torch-env mamba install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia -c conda-forge --platform win-64
注:也可以直接在创建环境时整合安装命令:
mamba create --name win-torch-env pytorch torchvision torchaudio pytorch-cuda=11.8 --platform win-64 -c pytorch -c nvidia -c conda-forge
二、永久配置默认平台(适合频繁创建Windows环境)
如果需要经常为Windows构建环境,可修改conda/mamba的配置文件.condarc(macOS下路径为~/.condarc,无则新建),添加平台优先级:
platforms: - win-64 - osx-arm64
配置后mamba会优先从win-64子通道拉取包,之后再回退到当前系统的osx-arm64。
补充:Windows端直接修复建议
如果你的朋友是在自己的Windows机器上安装时只能得到CPU版PyTorch,大概率是未指定CUDA相关通道或包,直接在Windows终端执行以下命令即可安装带CUDA的版本:
mamba install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia -c conda-forge
内容的提问来源于stack exchange,提问作者Cornelius Roemer
相关产品推荐
相关产品推荐

