TensorFlow2.7.0运行报错h5py.h5.H5PYConfig无__reduce_cython__属性求解
报错原因
这个错误是TensorFlow 2.7.0版本与h5py 3.x版本存在兼容性冲突导致的,TensorFlow 2.7.0官方适配的h5py版本范围为2.10.0及以下的2.x系列,3.x版本的部分底层接口变更后没有被TensorFlow 2.7.0兼容。
排查解决步骤
- 第一步完全卸载现有h5py版本,避免残留文件干扰:
pip uninstall -y h5py # 若使用conda管理环境,同步执行: conda remove -y h5py
- 第二步安装TensorFlow 2.7.0适配的h5py版本:
pip install h5py==2.10.0 # 国内用户可添加清华源加速安装: pip install h5py==2.10.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
- 第三步验证版本匹配:
import tensorflow as tf import h5py print(tf.__version__) print(h5py.__version__)
输出结果为2.7.0和2.10.0即为适配成功,重新运行原有代码即可正常执行。
注意事项
- 若使用虚拟环境,确保操作的是对应项目的虚拟环境,不要安装到全局Python环境
- 若安装h5py==2.10.0时出现编译报错,可下载对应Python版本的预编译wheel包安装
- 后续如果升级TensorFlow到2.8及以上版本,再对应升级h5py到3.x系列即可
内容的提问来源于stack exchange,提问作者TensorflowTryhard
相关产品推荐
相关产品推荐

