Jupyter Notebook导入TensorFlow时出现ImportError问题求助
解决TensorFlow导入错误:无法导入'experimental_functions_run_eagerly'
问题分析
这个错误核心是版本不兼容:experimental_functions_run_eagerly在TensorFlow 2.10及以后版本中已被移除/迁移,加上Python 3.11对早期TensorFlow版本支持不完善,再加上环境中可能存在新旧依赖混合的情况,共同导致了这个问题。
具体解决步骤
1. 彻底清理现有TensorFlow环境
先卸载所有相关包,避免残留冲突:
pip uninstall -y tensorflow tensorflow-gpu keras tf-estimator-nightly
如果用Conda,直接清理整个环境:
conda remove --all -n your_tensorflow_env
2. 安装适配Python 3.11的TensorFlow版本
Python 3.11从TensorFlow 2.13开始正式支持,推荐安装长期支持(LTS)版:
pip install tensorflow==2.15.0
用Conda的话,先创建干净环境再安装:
conda create -n tf_env python=3.11 conda activate tf_env pip install tensorflow==2.15.0
3. 验证Jupyter环境一致性
在Notebook中先检查TensorFlow版本,确认调用的是目标环境的包:
import tensorflow as tf print(tf.__version__)
如果版本不对,需要修改Jupyter的内核,切换到刚创建的Conda环境或虚拟环境。
4. 适配Intel显卡的优化配置
Intel显卡需安装专属优化包,提升运行效率:
pip install intel-extension-for-tensorflow[cpu]
5. 统一API导入方式(消除迁移警告)
把代码中分散的Keras导入改为tf.keras统一路径,比如将:
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv2D, MaxPooling2D
改为:
from tf.keras.models import Sequential from tf.keras.layers import Conv2D, MaxPooling2D
或者直接使用tf.keras.Sequential这类完整路径,减少模块导入冲突。
内容的提问来源于stack exchange,提问作者Sailaja Rao
相关产品推荐
相关产品推荐

