ModuleNotFoundError: No module named 'keras.api' error

ModuleNotFoundError: No module named 'keras.api' error

我正在尝试 运行 windows 10 上的“.py”文件,tensorflow 版本 2.8.0 和 keras 版本 2.3.4,我在其中调用库如下

from tensorflow import keras 
from keras.models import load_model

但是,我收到一条错误消息“ModuleNotFoundError:没有名为 'keras.api' 的模块” 如下面的错误日志所示。

DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
  from distutils.log import debug
Using TensorFlow backend.
Traceback (most recent call last):
  File "C:\Users\saniy\OneDrive\Derma-Project\app1.py", line 5, in <module>
    from keras.models import load_model
  File "C:\Python310\lib\site-packages\keras\__init__.py", line 3, in <module>
    from . import utils
  File "C:\Python310\lib\site-packages\keras\utils\__init__.py", line 26, in <module>
    from .vis_utils import model_to_dot
  File "C:\Python310\lib\site-packages\keras\utils\vis_utils.py", line 7, in <module>
    from ..models import Model
  File "C:\Python310\lib\site-packages\keras\models.py", line 12, in <module>
    from .engine.training import Model
  File "C:\Python310\lib\site-packages\keras\engine\__init__.py", line 8, in <module>
    from .training import Model
  File "C:\Python310\lib\site-packages\keras\engine\training.py", line 14, in <module>
    from . import training_utils
  File "C:\Python310\lib\site-packages\keras\engine\training_utils.py", line 17, in <module>
    from .. import metrics as metrics_module
  File "C:\Python310\lib\site-packages\keras\metrics.py", line 1850, in <module>
    BaseMeanIoU = tf.keras.metrics.MeanIoU
  File "C:\Python310\lib\site-packages\tensorflow\python\util\lazy_loader.py", line 58, in __getattr__
    module = self._load()
  File "C:\Python310\lib\site-packages\tensorflow\python\util\lazy_loader.py", line 41, in _load
    module = importlib.import_module(self.__name__)
  File "C:\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named 'keras.api'

我想知道你是否可以在这方面提供帮助。

我不确定 keras 2.3.4 是如何安装的,但 tf 2.8 的 keras 最低版本是 2.8;只需升级您的 keras 版本

pip install keras==2.8

自 Tensorflow (TF) 版本 2 起,Keras 包随附安装。这意味着如果你制作 pip install tensorflow,将安装最新的 TF 版本 (2.8) 和 Keras 2.8。正如另一个答案所暗示的那样,我猜你的计算机上安装了一些旧的 Keras 版本。

我的建议是创建一个全新的虚拟环境,

python3 -m venv ENV_DIR

然后从头开始全新安装您的 .py 文件所需的所有要求。这有望解决您的问题,最好不要在整个项目中混淆不同的 Python 包版本。