
升级 pip 至 24.0+ 可解决 --index-url 下 PyTorch 不缓存的问题,使后续虚拟环境安装复用已下载的 wheel 文件,避免重复下载 2.5GB 安装包。
升级 pip 至 24.0+ 可解决 `--index-url` 下 pytorch 不缓存的问题,使后续虚拟环境安装复用已下载的 wheel 文件,避免重复下载 2.5gb 安装包。
在使用 pip 安装 CUDA 版 PyTorch(如 torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121)时,许多开发者会遇到一个高频痛点:每次新建虚拟环境都触发完整下载(约 2.5 GB),即使 pip 默认启用缓存机制,该包却始终未被缓存——执行 pip cache info 或 pip cache list 均不可见。
根本原因在于:pip ≤ 23.x 版本对带 --index-url 参数的安装命令存在缓存兼容性缺陷。尽管 pip 文档明确说明缓存默认启用(路径通常为 ~/.cache/pip),但旧版 pip 在解析自定义索引 URL 时未能正确校验并复用已缓存的 wheel 文件,导致强制重新下载。
✅ 正确解决方案非常简洁:
python -m pip install --upgrade pip>=24.0
升级后,再次执行原命令即可自动缓存:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
验证缓存是否生效:
pip cache info # 查看缓存路径与大小 pip cache info | grep "Cache directory" # 确认路径存在 pip cache list | grep torch # 应可见类似 torch-2.3.0+cu121-py310... 的条目
? 补充建议:
- 无需设置 PIP_DOWNLOAD_CACHE 或 PIP_FIND_LINKS:这些是旧版 pip 的弃用环境变量(pip ≥ 20.1 已移除支持),设置无效且可能干扰行为;
- 缓存复用条件:确保后续安装使用完全相同的命令(包括 Python 版本、CUDA 版本、平台标签如 cp310-cp310-manylinux_2_17_x86_64),pip 会基于 wheel 文件名哈希精确匹配;
- 清理与维护:若缓存异常膨胀,可用 pip cache purge 清理(谨慎操作);日常可定期 pip cache info 监控使用量。
升级 pip 是最轻量、最可靠的修复方式。自 pip 24.0 起,官方重构了依赖解析与缓存逻辑,全面支持 --index-url 场景下的 wheel 复用——从此告别重复下载,提升多环境部署效率。











