从stable_baselines导入A2C时没有名为"tensorflow.contrib"的模块



我正试图使用以下代码行从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

相关内容

  • 没有找到相关文章

最新更新