部署Cloud Run时导入vertexai遇ImportError:无法导入interval_pb2
解决Cloud Run部署后导入vertexai模块的ImportError问题
问题根源
你遇到的ImportError: cannot import name 'interval_pb2' from 'google.type'错误,核心原因是**googleapis-common-protos版本过低**:你当前固定的1.52.0版本不包含google.type.interval_pb2组件,而google-cloud-aiplatform>=1.20依赖该组件。同时,你固定的旧版本google-api-core、google-cloud-core会限制googleapis-common-protos的升级,引发依赖冲突。
解决方案
1. 更新依赖版本
修改requirements.txt,移除低版本固定限制,替换为兼容的版本范围:
google-api-core>=2.0.0 google-api-core[grpc] google-cloud-aiplatform>=1.20 google-cloud-bigquery google-cloud-core>=2.0.0 google-cloud-logging>=3.0.0 googleapis-common-protos>=1.56.0 grpcio>=1.40.0 protobuf>=3.19.0
2. 重新部署服务
- 用更新后的
requirements.txt重新构建Cloud Run镜像 - 重新部署服务并触发测试
说明
googleapis-common-protos>=1.56.0是包含interval_pb2的最低版本- 升级
google-api-core、google-cloud-core等组件是为了避免与高版本googleapis-common-protos产生依赖冲突 - 移除固定版本限制后,pip会自动安装满足所有依赖要求的兼容版本
内容的提问来源于stack exchange,提问作者Ankit Seth
相关产品推荐
相关产品推荐

