Mac安装TensorFlow后Jupyter Notebook导入报Protobuf KeyError求助
解决TensorFlow导入时的protobuf KeyError问题
我之前也碰到过一模一样的报错!虽然你说已经把TensorFlow、Python和protobuf更到最新,但大概率是依赖包版本冲突——有些其他库可能悄悄拉取了旧版本的protobuf,导致和TensorFlow的兼容性出问题。试试下面这几个步骤:
- 先彻底卸载所有protobuf相关包,避免版本混杂:
pip uninstall -y protobuf - 安装TensorFlow官方兼容的protobuf版本(不用追最新,匹配才是关键)。比如TensorFlow 2.x系列通常和
protobuf==3.20.3适配性很好,执行:pip install protobuf==3.20.3 - 完全重启Jupyter Notebook(不是只重启内核),然后再次尝试导入TensorFlow:
import tensorflow as tf - 如果还是报错,检查Jupyter使用的Python环境是否和你安装TensorFlow的环境一致:
在Jupyter单元格里运行这段代码:
拿到输出的Python路径后,用对应路径的pip重新安装依赖,比如输出是import sys print(sys.executable)/Users/xxx/miniconda3/bin/python,就执行:/Users/xxx/miniconda3/bin/pip install protobuf==3.20.3 tensorflow
这个报错的本质是:最新版protobuf的字段结构做了调整,但TensorFlow的代码还没适配这个改动,所以强制安装指定的兼容版本就能解决问题。
内容的提问来源于stack exchange,提问作者Dario
相关产品推荐
相关产品推荐

