pip install tensorflow 一直卡在 downloading 阶段怎么办
直接换源是最有效的解法,官方 PyPI 默认走国外 CDN,国内用户大概率超时或中断。清华、中科大、豆瓣这些镜像站响应快且同步及时,不用改全局配置也能临时生效。
- 临时用清华源安装:pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple/
- 如果提示证书问题(尤其 Windows 或公司内网),加 --trusted-host pypi.tuna.tsinghua.edu.cn
- TensorFlow 安装包很大(CPU 版约 200MB,GPU 版超 500MB),Wi-Fi 不稳时建议插有线网络,避免中途断连导致 pip 缓存损坏
- 若反复失败,先清空 pip 缓存:pip cache purge,再重试
安装时出现 ReadTimeoutError 或 ConnectionResetError
这类错误本质是 pip 在下载 whl 文件时连接被主动切断,不是 TensorFlow 本身的问题,而是网络链路不稳定或防火墙拦截了大文件流。
- 不要用 pip install --upgrade pip 后立刻装 TensorFlow——新版 pip 对超时更敏感,可降级到 pip==23.3.1 再试
- 公司网络常限制非标准端口或长连接,尝试加 --retries 10 --timeout 100 提高容错:pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple/ --retries 10 --timeout 100
- 某些杀毒软件(如 360、腾讯电脑管家)会劫持 pip 的 HTTPS 请求,临时关闭再试
离线环境下怎么装 TensorFlow
提前在能联网的机器上把 whl 包和依赖全拉下来,再拷进目标机器,避免现场下载。
- 查当前环境匹配的 whl 名:运行 python -c "import platform; print(platform.machine(), platform.architecture()[0], platform.python_version())",比如输出 AMD64 64bit 3.9.16
- 去 PyPI TensorFlow 页面 手动下载对应 tensorflow?*.whl(注意 CPU/GPU 版本、Python 版本、系统平台三者必须一致)
- 同时下载其依赖项(absl-py、astunparse、gast 等),可用 pip download tensorflow --no-deps -d ./wheels + pip download --no-cache-dir --find-links ./wheels --no-index --deps wheel ./wheels/tensorflow-*.whl
- 离线安装:pip install --find-links ./wheels --no-index ./wheels/tensorflow-*.whl
conda install tensorflow 比 pip 更稳吗
不一定更稳,但路径不同:conda 走的是 anaconda.org 的默认 channel(defaults),国内访问也慢;换成 conda-forge 或清华 conda 镜像后成功率明显提升。
- 启用清华 conda 镜像:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/,再 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- 优先指定 channel 安装:conda install tensorflow -c conda-forge(conda-forge 更新更及时,支持更多平台)
- 注意:conda 安装的 TensorFlow 默认不带 GPU 支持,需额外装 cudatoolkit 和 cudnn,版本必须严格匹配,比 pip 更容易因版本错位失败
TensorFlow 的 wheel 包体积大、依赖多,网络问题背后往往混着缓存损坏、SSL 验证失败、代理残留等隐性干扰,别只盯着“换源”这一步——先确认 pip 是否干净、Python 环境是否纯净、有没有残留的 .pip/pip.conf 或系统代理设置,这些比换源更容易被忽略。
|