如何安装TensorFlow 1.15作为tensorpack的依赖项?
问题说明
tensorpack 要求依赖的tensorflow版本 >= 1.5 且 < 2,通过pip执行安装时触发找不到对应版本的错误:
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com ERROR: Could not find a version that satisfies the requirement tensorflow==1.15.5 (from versions: 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.6.0rc0, 2.6.0rc1, 2.6.0rc2, 2.6.0, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.7.0rc0, 2.7.0rc1, 2.7.0, 2.7.1, 2.7.2, 2.7.3, 2.8.0rc0, 2.8.0rc1, 2.8.0, 2.8.1, 2.8.2, 2.9.0rc0, 2.9.0rc1, 2.9.0rc2, 2.9.0, 2.9.1) ERROR: No matching distribution found for tensorflow==1.15.5
报错原因
当前运行环境的Python版本与TensorFlow 1.x官方预编译包的适配范围不匹配。官方发布的TensorFlow 1.15.x系列预编译包最高仅支持Python 3.7版本,若当前环境Python版本为3.8及以上,pip会自动过滤所有不兼容的1.x版本,仅展示适配高版本Python的2.5.0及以上版本TensorFlow,最终触发无匹配发行版的报错。
解决方案
- 方案1:使用Python 3.7虚拟环境安装
新建Python 3.7版本的虚拟环境,激活环境后再依次安装TensorFlow 1.15.5和tensorpack即可,以conda虚拟环境为例,执行命令如下:conda create -n tf1x python=3.7 conda activate tf1x pip install tensorflow==1.15.5 pip install tensorpack - 方案2:安装适配高版本Python的TensorFlow 1.x构建包
若不想降低Python版本,可选择适配高版本Python的TensorFlow 1.15.x构建包,注意提前匹配本地CUDA、cuDNN版本,避免GPU调用异常。 - 方案3:使用TensorFlow 2.x兼容模式运行
新版本tensorpack已支持TensorFlow 2.x环境,无需强制安装TensorFlow 1.x版本,直接在现有TF2环境安装tensorpack后,在代码开头开启v1兼容模式即可正常调用大部分接口:import tensorflow.compat.v1 as tf tf.disable_v2_behavior()
内容的提问来源于stack exchange,提问作者Joysn
相关产品推荐
相关产品推荐

