You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ModuleNotFoundError: No module named 'tensorflow.compat'的Keras兼容问题求解

解决ModuleNotFoundError: No module named 'tensorflow.compat'的方案
  • 改用TensorFlow内置的Keras导入方式
    TensorFlow 2.x版本已将Keras深度整合,无需单独使用keras包。将你的导入代码替换为:

    from tensorflow.keras.preprocessing.image import ImageDataGenerator
    

    直接调用TensorFlow适配的Keras模块,从根源避免版本兼容错位问题。

  • 重新安装匹配版本的TensorFlow(自动附带适配Keras)
    单独安装keras包可能导致与TensorFlow的版本适配异常。先卸载现有包,再重新安装指定版本的TensorFlow:

    pip uninstall keras tensorflow -y
    pip install tensorflow==2.12.0
    

    安装TensorFlow时会自动安装对应版本的Keras,确保两者完全兼容。

  • 确认Python环境并定向安装
    若系统存在多Python环境,可能出现包安装路径与运行环境不匹配的情况。先确认当前运行的Python路径:

    where python
    

    然后使用该路径的pip重新安装:

    C:\Python3\python.exe -m pip install tensorflow==2.12.0
    

    保证包安装在当前执行环境的site-packages目录下。

  • 创建目录软链接(Windows环境)
    若坚持使用单独的Keras包,可通过创建软链接让tensorflow.compat指向实际存在的路径。以管理员身份打开命令提示符,执行:

    mklink /D "C:\Python3\Lib\site-packages\tensorflow\compat" "C:\Python3\Lib\site-packages\tensorflow\_api\v2\compat"
    

    此操作无需修改Keras源码,即可让导入语句找到对应模块。

内容的提问来源于stack exchange,提问作者Peter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 21:10:00