我正试图使用以下代码行从stable_baselines
导入A2C
:
from stable_baselines import A2C
但我得到以下错误:
ModuleNotFoundError: No module named 'tensorflow.contrib'
我尝试使用以下命令安装旧版本的Tensorflow:
pip install tensorflow==1.15.0
但我得到以下错误:
Defaulting to user installation because normal site-packages is not writeable
ERROR: Could not find a version that satisfies the requirement tensorflow==1.15.0 (from versions: 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.3.0, 2.3.1, 2.3.2, 2.3.3, 2.3.4, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 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.0
我尝试使用.whl文件安装Tensorflow 1.15.0:
pip install tensorflow-1.15.0-cp37-cp37m-manylinux2010_x86_64.whl
但我也遇到了一个错误:
Defaulting to user installation because normal site-packages is not writeable
ERROR: tensorflow-1.15.0-cp37-cp37m-manylinux2010_x86_64.whl is not a supported wheel on this platform.
我试着升级pip并卸载Tensorflow,但仍然出现了同样的错误。
我该如何处理这个问题?
在tensorflow 2.x中不再支持和不推荐使用"sensorflow.contrib",并且Stable Baselines也仅支持tensorflow 1.x版本。
为了避免此错误ModuleNotFoundError:没有名为"tensorflow.contrib"的模块,如果您的系统中安装了python 3.5到3.7,则需要使用以下代码安装tensorflow 1.x。
!pip install tensorflow==1.15
!pip install stable_baselines
from stable_baselines import A2C
或者,您可以尝试在执行stable_baselines代码之前将运行时转换为Tensorflow 1.x:
%tensorflow_version 1.x
然而,Tensorflow 1已被弃用,支持将于2022年8月1日删除。因此,建议使用stable_baselines3来代替Tensorflow 2.x中的stable_base。
!pip install stable_baselines3
from stable_baselines3 import A2C