如何实现仅下载一次Python包(以PyTorch为例)并在多Miniconda环境中本地安装
如何实现仅下载一次Python包(以PyTorch为例)并在多Miniconda环境中本地安装
没问题,我来帮你解决这个重复下载大体积PyTorch包的麻烦!其实很简单,分几个步骤就能搞定:
1. 先手动下载所需的PyTorch相关whl包
首先你需要把PyTorch、torchvision、torchaudio的whl文件一次性下载到本地固定文件夹,比如C:\tmp\pytorch_packages。打开命令行(无需激活任何conda环境),运行以下命令:
pip download torch>=2.1.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
这个命令会自动下载对应cu118版本、匹配你当前Python版本的所有依赖whl包到当前目录,之后你可以把这些文件移动到C:\tmp\pytorch_packages文件夹里统一存放。
2. 在新Miniconda环境中本地安装
当你新建好一个conda环境并激活它之后,直接用本地的whl包安装,不用再去远程下载:
pip install --no-index --find-links=C:\tmp\pytorch_packages torch torchvision torchaudio
--no-index:告诉pip不要去远程PyPI索引找包--find-links:指定本地存放whl包的文件夹路径
3. 结合requirements文件批量安装
如果你习惯用requirements文件管理环境依赖,也可以把本地源配置写在requirements.txt里,内容如下:
--no-index --find-links=C:\tmp\pytorch_packages torch>=2.1.0 torchvision torchaudio
然后在激活的conda环境里运行:
pip install -r requirements.txt
这样就能自动从本地文件夹安装指定的包了。
额外小提示:利用pip自带缓存
其实pip默认会缓存已经下载过的包,默认缓存路径:
- Windows:
%LOCALAPPDATA%\pip\Cache - Linux/macOS:
~/.cache/pip
如果你之前已经在某个环境安装过PyTorch,新建环境再安装时pip会自动用缓存,不用重复下载。但如果担心缓存被清理,或者想手动管理包文件,前面的手动下载方法会更稳妥。
最后要注意:确保你下载的whl包版本和新环境的Python版本、系统架构匹配(比如whl文件名里的cp311对应Python3.11,win_amd64对应64位Windows),不然会安装失败哦!
备注:内容来源于stack exchange,提问作者Reality Check




