在 Python 中使用 Tensorflow 时出错:google.protobuf

问题

我尝试使用 Python 3.8.20 和 Tensorflow 2.10 在 Windows 上的 Anaconda 环境中运行 Python 脚本。出现以下错误:

回溯(最近一次调用最后一次):文件

"D:\models\research\object_detection\builders\model_builder_test.py",第 20 行,来自 object_detection.builders 导入 model_builder 文件"D:\models\research\object_detection\builders\model_builder.py",第 23 行,来自 object_detection.builders 导入 anchor_generator_builder 文件"D:\models\research\object_detection\builders\anchor_generator_builder.py",第 26 行,来自 object_detection.protos 导入 anchor_generator_pb2 文件"D:\models\research\object_detection\protos\anchor_generator_pb2.py",第 9 行,来自 google.protobuf 导入 Runtime_version 作为Runtime_version ImportError:无法从'google.protobuf'导入名称'runtime_version' (C:\Users\pcmsi\anaconda3\envs\tf_env\lib\site-packages\google\protobuf_ init.py) **

解决方案

这是一个兼容性问题。使用以下方法检查 protobuf 版本

java 复制代码
pip show protobuf

如果您的 protobuf 版本为 4.x 或更高版本,则可能与 TensorFlow 2.10 不兼容。TensorFlow 2.10 通常与 protobuf 3.x 配合使用效果最佳。

如果版本确实不兼容,请使用以下方法升级 TF:

java 复制代码
pip install --upgrade tensorflow

或者使用以下方式降级 protobuf

java 复制代码
pip install protobuf==3.20.3
相关推荐
搬砖ing换来金砖3 小时前
Python入门-Task02
开发语言·python
雨中散步撒哈拉3 小时前
17、做中学 | 初三下期 Golang文件操作
开发语言·后端·golang
倚肆3 小时前
Spring Boot CORS 配置详解:CorsConfigurationSource 全面指南
java·spring boot·后端
databook3 小时前
告别盲人摸象,数据分析的抽样方法总结
后端·python·数据分析
q***72193 小时前
Spring Boot(快速上手)
java·spring boot·后端
CoderYanger4 小时前
C.滑动窗口——1423. 可获得的最大点数
java·开发语言·算法·leetcode·1024程序员节
Token_w4 小时前
openGauss:全密态数据库的金融级安全实践
数据库·安全·金融
全栈陈序员4 小时前
【Python】基础语法入门(九)—— 代码规范、调试技巧与性能初探
开发语言·python·代码规范
Swift社区4 小时前
StackOverflowError 栈溢出的原因与实战解决方案
java·spring boot·spring
合作小小程序员小小店4 小时前
图书管理系统,基于winform+sql sever,开发语言c#,数据库mysql
开发语言·数据库·sql·microsoft·c#