删除流水线运行作业

如果您的项目包含失败或已取消的流水线运行,您可以将其删除。 在批量删除操作中,您最多可以删除 32 个流水线运行。

当您发起流水线运行删除时,流水线运行的状态会更改为正在删除。如果流水线运行在此状态下停留 1 小时,Vertex AI Pipelines 会将其排入永久删除队列。随后,系统会通过每日预定操作永久移除所有已加入永久删除队列的流水线运行。

删除流水线运行

如需删除流水线运行,请使用 Google Cloud 控制台、REST API 或 Vertex AI SDK for Python。

控制台

按照以下说明从 Google Cloud 控制台中删除正在进行的流水线运行:

  1. 在 Vertex AI 部分中,前往流水线页面上的运行标签页。

    前往“运行”

  2. 选中要删除的已取消或失败的流水线运行旁边的复选框。
  3. 点击删除。只有当流水线运行处于失败已取消状态时,此选项才可用。

点击删除后,流水线运行的状态会变为正在删除,然后才会永久删除。

REST

如需删除正在进行或预定的流水线运行,请使用 pipelineJobs.delete 方法发送 DELETE 请求。

在使用任何请求数据之前,请先进行以下替换:

  • LOCATION:流水线运行所在的区域。如需详细了解支持 Vertex AI Pipelines 的区域,请参阅 Vertex AI 位置指南
  • PROJECT_ID:包含流水线运行的 Google Cloud 项目。
  • PIPELINE_RUN_ID:要删除的流水线运行的唯一 ID。流水线运行 ID 显示在 Google Cloud 控制台流水线页面上的运行标签页中。

HTTP 方法和网址:

DELETE https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID

如需发送请求,请选择以下方式之一:

curl

执行以下命令:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID"

PowerShell

执行以下命令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID" | Select-Object -Expand Content

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_NUMBER/locations/us-central1/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeleteOperationMetadata",
    "genericMetadata": {
      "createTime": "2025-07-25T16:23:47.201943Z",
      "updateTime": "2025-07-25T16:23:47.201943Z"
    }
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}

Python

使用以下示例通过 PipelineJob.delete 方法删除失败或已取消的流水线运行:

from google.cloud import aiplatform
aiplatform.init(project="PROJECT_ID", location="LOCATION")
pipeline_job = aiplatform.PipelineJob.get(resource_name="PIPELINE_RUN_ID")
pipeline_job.delete()

替换以下内容:

  • PROJECT_ID:包含流水线运行的 Google Cloud 项目。
  • LOCATION:流水线运行所在的区域。如需详细了解支持 Vertex AI Pipelines 的区域,请参阅 Vertex AI 位置指南
  • PIPELINE_RUN_ID 替换为您要删除的流水线运行的唯一 ID。该 ID 显示在Google Cloud 控制台流水线页面上的运行标签页中。

删除多个流水线运行

如需同时删除多个失败或已取消的流水线运行,请使用Google Cloud 控制台、REST API 或 Vertex AI SDK for Python。您可以批量删除同一项目和区域中的流水线运行。

控制台

按照以下说明,从 Google Cloud 控制台删除多个正在进行的流水线运行:

  1. 在 Vertex AI 部分中,前往流水线页面上的运行标签页。

    前往“运行”

  2. 选中要删除的已取消或失败的流水线运行旁边的复选框。
  3. 点击删除。只有当所有选定的流水线运行都处于失败已取消状态时,此选项才可用。

点击删除后,选定流水线运行的状态会变为正在删除,然后这些运行会永久删除。

REST

如需批量删除多个正在进行或预定的流水线运行,请使用 pipelineJobs.batchDelete 方法发送 POST 请求。

在使用任何请求数据之前,请先进行以下替换:

  • LOCATION:流水线运行所在的区域。如需详细了解支持 Vertex AI Pipelines 的区域,请参阅 Vertex AI 位置指南
  • PROJECT_ID:包含流水线运行的 Google Cloud 项目。
  • PIPELINE_RUN_ID_1PIPELINE_RUN_ID_2:要删除的流水线作业的 ID。您可以在 Google Cloud 控制台的流水线页面上的运行标签页中找到此作业 ID。

HTTP 方法和网址:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs:batchDelete

请求 JSON 正文:

{
  "names": [
    "projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID_1",
    "projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID_2"
  ]
}

如需发送请求,请选择以下方式之一:

curl

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs:batchDelete"

PowerShell

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs:batchDelete" | Select-Object -Expand Content

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeleteOperationMetadata",
    "genericMetadata": {
      "createTime": "2025-05-31T16:07:12.233655Z",
      "updateTime": "2025-05-31T16:07:12.233655Z"
    }
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.BatchDeletePipelineJobsResponse",
    "pipelineJobs": [
      {
        "name": "projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID_1"
      },
      {
        "name": "projects/PROJECT_ID/locations/LOCATION/pipelineJobs/PIPELINE_RUN_ID_2"
      }
    ]
  }
}

Python

使用以下示例,通过 PipelineJob.batch_delete 方法删除多个正在进行或已预定的流水线运行:

from google.cloud import aiplatform_v1
from google.api_core.client_options import ClientOptions
pipeline_run_ids_to_delete = ["PIPELINE_RUN_ID_1",
  "PIPELINE_RUN_ID_2",
]
client_options = ClientOptions(api_endpoint=f"LOCATION-aiplatform.googleapis.com")
pipeline_job_client = aiplatform_v1.PipelineServiceClient(client_options=client_options) pipeline_resource_names_to_delete = [] for run_id in pipeline_run_ids_to_delete: full_resource_name = f"projects/PROJECT_NUMBER/locations/LOCATION/pipelineJobs/{run_id}" pipeline_resource_names_to_delete.append(full_resource_name) parent = f"projects/PROJECT_ID/locations/LOCATION"
pipeline_job_client.batch_delete_pipeline_jobs( parent=parent, names=pipeline_resource_names_to_delete )

请替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • PROJECT_ID:包含流水线运行的 Google Cloud 项目。
  • PROJECT_NUMBER:您的项目的项目编号。您可以在 Google Cloud 控制台中找到此项目编号。如需了解详情,请参阅查找项目名称、编号和 ID
  • PIPELINE_RUN_ID_1PIPELINE_RUN_ID_2:要删除的流水线作业的 ID。流水线运行 ID 显示在 Google Cloud 控制台的流水线页面上的运行标签页中。