在 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
相关推荐
众智商学院官方中心1 分钟前
2026年8月采购供应链考证全景测评:SCMP和CPPM哪个更适合你?
职业发展·供应链管理·采购认证·能力体系·岗位适配
clorinda1 分钟前
SQL 快速入门:题目单知识点精炼总结
java·数据库·sql
jimy16 分钟前
拷贝构造时,不用引用的话,按值传参会无限递归调用拷贝构造函数
开发语言
LccKyI9 分钟前
# C# 基础编程 面试题汇总(一)
开发语言·c#
AI人工智能+电脑小能手11 分钟前
大白话说Java设计模式-40-备忘录模式(业务实战篇)
java·设计模式·事务回滚·备忘录模式·状态保存·spring transactional·购物车快照
SimonKing12 分钟前
白嫖国产多模态大模型:商汤 SenseNova 接入指南
java·后端·程序员
小江的记录本12 分钟前
【ORM框架】MyBatis核心原理、ORM思想、MyBatis vs JPA
java·数据库·后端·spring·spring cloud·oracle·mybatis
CODER030412 分钟前
win11系统编译安装cuda版llama-cpp-python(踩完所有的坑)
开发语言·python·llama
神仙别闹17 分钟前
基于C语言+SQLite 实现(控制台+图形界面)图书管理系统
c语言·开发语言·sqlite
zgl_2005377917 分钟前
源代码:跨数据库通用“字段级”数据血缘解析与图形化(2/3:标注信息的拆解、检验、保存)
大数据·数据库·数据仓库·sql·数据挖掘·etl·嵌入式实时数据库