调试Shiny应用遇报错:哪个TensorFlow版本含tensorflow.keras.__version__?
问题解决:TensorFlow版本与
tf.keras.__version__的兼容性 核心结论
在TensorFlow 2.10及更早版本中,tensorflow.keras模块具备__version__属性。从TensorFlow 2.11开始,Keras被重构为独立的顶级Python包,tf.keras作为兼容层不再直接暴露__version__属性,导致你的旧代码报错。
验证说明
- 对于TensorFlow 2.0~2.10版本,
tf.keras.__version__会返回与TensorFlow绑定的Keras版本(比如TF 2.10对应tf.keras.__version__为'2.10.0')。 - 你当前使用的TensorFlow 2.13属于拆分后的版本,
tf.keras实际指向独立的Keras包,因此只能通过keras.__version__获取版本号,无法再通过tf.keras.__version__访问。
修复建议
如果你需要保留旧代码中对tf.keras.__version__的调用,建议降级安装TensorFlow 2.10.1(Python 3.8.10兼容的稳定版本),同时无需单独安装Keras(TF 2.10及更早版本内置Keras,单独安装可能引发版本冲突):
pip uninstall tensorflow keras -y pip install tensorflow==2.10.1 h5py
内容的提问来源于stack exchange,提问作者user15988226
相关产品推荐
相关产品推荐

