管理数据集版本

Vertex AI 允许您为数据集创建版本。此功能对于可再现性、可追溯性和数据集沿袭管理非常有用。

您可以为图片和文本数据集创建版本。创建数据集版本时,如果不存在 BigQuery 数据集,Vertex AI 会创建一个数据集。BigQuery 数据集存储关联的 Vertex AI 数据集的所有版本。

恢复版本时,您需要替换关联的数据集。数据集在恢复操作结束之前暂时不适用于其他请求。

创建数据集版本

您可以使用 Vertex AI API 创建数据集版本。请按照相应标签页中的步骤操作:

REST

获取数据集的 ID

如需创建版本,您必须知道数据集的数字 ID。如果您知道数据集的显示名,但不知道 ID,请展开以下部分,了解如何使用 API 获取 ID:

从数据集的显示名称获取 Dataset ID

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

  • LOCATIONDataset 的存储位置。例如 us-central1

  • PROJECT_ID:您的项目 ID

  • DATASET_DISPLAY_NAMEDataset 的显示名。

HTTP 方法和网址:

GET http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME

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

curl

执行以下命令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME" | Select-Object -Expand Content

以下示例响应已使用 ... 截断,以强调您可以在何处找到 Dataset 的 ID,即取代 DATASET_ID 的编号。

{
  "datasets": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID",
      "displayName": "DATASET_DISPLAY_NAME",
      ...
    }
  ]
}

或者,您也可以通过 Google Cloud 控制台获取数据集的 ID:转到 Vertex AI 数据集页面,然后在 ID 列中找到该编号。

打开“数据集”页面

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

  • LOCATION:存储数据集版本的区域。例如 us-central

  • PROJECT_ID:您的项目 ID

  • DATASET_ID:数据集的数字 ID。

HTTP 方法和网址:

POST http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions

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

curl

执行以下命令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions" | Select-Object -Expand Content

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

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetVersionOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-02-17T00:54:58.827429Z",
      "updateTime": "2021-02-17T00:54:58.827429Z"
    },
  }
}

某些请求会启动需要一些时间才能完成的长时间运行的操作。这些请求会返回操作名称,您可以使用该名称查看操作状态或取消操作。Vertex AI 提供辅助方法来调用长时间运行的操作。如需了解详情,请参阅使用长时间运行的操作

恢复数据集版本

您可以使用 Vertex AI API 恢复数据集版本。请按照相应标签页中的步骤操作:

REST

获取数据集版本的 ID

如需恢复版本,您必须知道版本的数字 ID。您可以使用 API 列出所有数据集版本:

列出 DatasetDatasetVersion

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

  • LOCATION:存储数据集版本的区域。例如 us-central

  • PROJECT_ID:您的项目 ID

  • DATASET_ID:数据集的数字 ID。

HTTP 方法和网址:

GET http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions

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

curl

执行以下命令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions" | Select-Object -Expand Content

以下示例响应已使用 ... 截断,以强调您可以在何处找到数据集版本的 ID,即取代 DATASET_VERSION_ID 的编号。

{
  "datasetVersions": [
    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID",
      ...
    }
  ]
}

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

  • LOCATION:存储数据集版本的区域。例如 us-central

  • PROJECT_ID:您的项目 ID

  • DATASET_ID:数据集的数字 ID。

  • DATASET_VERSION_ID:数据集版本的数字 ID。

HTTP 方法和网址:

GET http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore

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

curl

执行以下命令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore"

PowerShell

执行以下命令:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/datasetVersions/DATASET_VERSION_ID:restore" | Select-Object -Expand Content

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

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.RestoreDatasetVersionOperationMetadata",
    "genericMetadata": {
      "createTime": "2021-02-17T00:54:58.827429Z",
      "updateTime": "2021-02-17T00:54:58.827429Z"
    },
  }
}

某些请求会启动需要一些时间才能完成的长时间运行的操作。这些请求会返回操作名称,您可以使用该名称查看操作状态或取消操作。Vertex AI 提供辅助方法来调用长时间运行的操作。如需了解详情,请参阅使用长时间运行的操作

后续步骤

详细了解在 Vertex AI 中使用数据集