Vertex AI Pipeline自定义作业报‘Internal error occurred’错误求助
Vertex AI自定义作业「Internal error occurred」问题排查方案
核心差异定位
由于Vertex Workbench中使用相同机器规格可正常训练,但自定义作业及训练Pipeline触发内部错误,优先聚焦两者的环境差异:
- 权限配置:检查自定义作业所用服务账号,是否具备Workbench会话默认服务账号的全部权限(如GCS存储读写、Vertex AI API调用、容器镜像拉取权限)。Workbench通常使用用户身份或默认服务账号,若自定义作业采用受限账号,易触发内部错误。
- 网络配置:确认自定义作业是否启用VPC网络,是否与Workbench处于同一VPC,是否存在防火墙规则阻止作业访问Google必要服务(如Artifact Registry、元数据服务器)。Workbench多使用默认网络,若自定义作业配置私有网络但缺失必要路由/防火墙,会导致内部通信失败。
日志细节深挖
针对「Internal error occurred」这类通用错误,从以下日志维度排查:
- 系统级日志:在Cloud Logging中筛选
resource.type="aiplatform_job",查看作业启动阶段的容器拉取、实例初始化日志,排查是否存在镜像拉取超时、磁盘挂载失败等底层问题。 - Pipeline组件日志:若为Pipeline运行报错,检查各组件执行日志,确认是特定组件触发错误,还是Pipeline控制平面异常(如组件镜像路径错误、参数传递格式不符)。
作业配置校验
- 机器规格一致性:确认自定义作业的CPU/GPU型号、内存等参数与Workbench完全匹配,避免GPU型号不兼容、内存配额不足(部分内部错误是资源配额不足的隐性表现)。
- 容器镜像校验:自定义作业使用的镜像需与Workbench中运行的完全一致,若为本地构建后上传的镜像,检查是否存在上传不完整、镜像标签错误的情况。
- 环境变量对比:对比Workbench与自定义作业的环境变量,确认是否缺少必要的认证变量(如
GOOGLE_APPLICATION_CREDENTIALS)、代理配置变量等。
临时验证方案
- 尝试使用Workbench所用的服务账号运行自定义作业,验证是否因权限问题导致错误。
- 将自定义作业的网络配置改为与Workbench一致的默认网络,排查是否为网络隔离引发的异常。
内容的提问来源于stack exchange,提问作者Lea
相关产品推荐
相关产品推荐

