

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 搜索训练计划产品
<a name="search-training-plan-offerings-api-cli-sdk"></a>

要创建训练计划，首先要调用 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_SearchTrainingPlanOfferings.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_SearchTrainingPlanOfferings.html) API 操作，并将您的计划要求（例如实例类型、计数和所需时段）作为输入参数传递。训练计划需与其目标资源相对应。请务必指定计划将用于哪个目标资源（`training-job` 或 `hyperpod-cluster`）。API 会返回符合您要求的可用产品的列表。如果找不到合适的产品，您可能需要调整要求并重新搜索。

此 API 调用会检索最符合您容量需求的训练计划产品。响应中返回的每个 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TrainingPlanOffering.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TrainingPlanOffering.html) 均由一个唯一产品 ID 标识。列表中的第一个产品最符合您的要求。如果指定日期内没有合适的训练计划，则该列表为空。请调整您的搜索条件，然后查找一组新的产品。
+ 预留持续时间以 1 天为增量单位，可选范围为 1 天至 182 天。
+ 预留实例数量选项包括 1、2、4、8、16、32 或 64 个实例。

要了解 SageMaker 训练计划支持的可用实例列表，请参阅[支持的实例类型 AWS 区域和定价](reserve-capacity-with-training-plans.md#training-plans-supported-instances-and-regions)。

以下示例使用 AWS CLI 命令请求包含指定实例类型、计数和时间信息的训练计划产品。

```
# List training plan offerings with instance type, instance count, duration in hours, start time after, and end time before.
aws sagemaker search-training-plan-offerings \
--target-resources "training-job" \
--instance-type "ml.p4d.24xlarge" \
--instance-count 1 \
--duration-hours 15 \
--start-time-after "1737484800"
--end-time-before "1737657600"
```

此 JSON 文档是来自 SageMaker 训练计划 API 的示例响应。此响应提供了有关符合指定容量要求的多种可用训练计划产品的信息。它包括三种不同的产品，它们的持续时间、预付费用和 start/end 时间各不相同，它们都使用相同的实例类型并针对培训作业。

```
{
    "TrainingPlanOfferings": [
        {
            "TrainingPlanOfferingId": "tpo-SHA-256-hash-value",
            "TargetResources": [
                "training-job"
            ],
            "RequestedStartTimeAfter": "2025-01-21T11:08:27.704000-08:00",
            "DurationHours": 15,
            "DurationMinutes": 51,
            "UpfrontFee": "xxxx.xx",
            "CurrencyCode": "USD",
            "ReservedCapacityOfferings": [
                {
                    "InstanceType": "ml.p4d.24xlarge",
                    "InstanceCount": 1,
                    "AvailabilityZone": "us-west-2a",
                    "DurationHours": 15,
                    "DurationMinutes": 51,
                    "StartTime": "2025-01-21T11:39:00-08:00",
                    "EndTime": "2025-01-22T03:30:00-08:00"
                }
            ]
        },
        {
            "TrainingPlanOfferingId": "tpo-SHA-256-hash-value",
            "TargetResources": [
                "training-job"
            ],
            "RequestedStartTimeAfter": "2025-01-21T11:08:27.704000-08:00",
            "DurationHours": 39,
            "DurationMinutes": 51,
            "UpfrontFee": "xxxx.xx",
            "CurrencyCode": "USD",
            "ReservedCapacityOfferings": [
                {
                    "InstanceType": "ml.p4d.24xlarge",
                    "InstanceCount": 1,
                    "AvailabilityZone": "us-west-2a",
                    "DurationHours": 39,
                    "DurationMinutes": 51,
                    "StartTime": "2025-01-21T11:39:00-08:00",
                    "EndTime": "2025-01-23T03:30:00-08:00"
                }
            ]
        },
        {
            "TrainingPlanOfferingId": "tpo-SHA-256-hash-value",
            "TargetResources": [
                "training-job"
            ],
            "RequestedStartTimeAfter": "2025-01-21T11:08:27.704000-08:00",
            "DurationHours": 24,
            "DurationMinutes": 0,
            "UpfrontFee": "xxxx.xx",
            "CurrencyCode": "USD",
            "ReservedCapacityOfferings": [
                {
                    "InstanceType": "ml.p4d.24xlarge",
                    "InstanceCount": 1,
                    "AvailabilityZone": "us-west-2a",
                    "DurationHours": 24,
                    "DurationMinutes": 0,
                    "StartTime": "2025-01-22T03:30:00-08:00",
                    "EndTime": "2025-01-23T03:30:00-08:00"
                }
            ]
        }
    ]
}
```

以下是如何使用搜索包含的培训计划选项的示例命令 UltraServers。 AWS CLI 

```
aws sagemaker search-training-plan-offerings \
--ultra-server-type ml.c6i-32xlargesc \
--ultra-server-count 1 \
--duration-hours 24 \
--target-resources hyperpod-cluster
--start-time-after "1737484800" \
--end-time-before "1737657600"
```

```
{
    "TrainingPlanOfferings": [
        {
            "TrainingPlanOfferingId": "tpo-SHA-256-hash-value",
            "TargetResources": [
                "training-job"
            ],
            "RequestedStartTimeAfter": "2025-07-21T16:59:25.760000+00:00",
            "DurationHours": 24,
            "DurationMinutes": 0,
            "UpfrontFee": "0.24",
            "CurrencyCode": "USD",
            "ReservedCapacityOfferings": [
                {
                    "ReservedCapacityType": "UltraServer",
                    "UltraServerType": "ml.u-p6e-gb200x72",
                    "UltraServerCount": 1,
                    "InstanceType": "ml.p6e-gb200.36xlarge",
                    "InstanceCount": 18,
                    "AvailabilityZone": "us-east-2a",
                    "DurationHours": 24,
                    "DurationMinutes": 0,
                    "StartTime": "2025-07-22T11:30:00+00:00",
                    "EndTime": "2025-07-23T11:30:00+00:00"
                }
            ]
        }
    ]
}
```

以下各部分定义了 `SearchTrainingPlanOfferings` API 操作的必需和可选输入请求参数。

## 必填参数
<a name="search-training-plan-options-required-params"></a>

在调用 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_SearchTrainingPlanOfferings.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_SearchTrainingPlanOfferings.html) API 以列出符合您要求的训练计划产品时，您必须提供以下值：
+ `TargetResources`：计划将用于的目标资源（`training-job` 或 `hyperpod-cluster`）。默认值为 `training-job`。训练计划需与其目标资源相对应。
  + 专为训练作业设计的 SageMaker 训练计划只能用于安排和运行训练作业。
  +  HyperPod 集群训练计划只能用于为集群的实例组提供计算资源。
+ `InstanceType`：要预调配的实例类型。`InstanceType` 必须是受支持的类型。

  要了解 SageMaker 训练计划支持的可用实例列表，请参阅[支持的实例类型 AWS 区域和定价](reserve-capacity-with-training-plans.md#training-plans-supported-instances-and-regions)。
+ `InstanceCount`：要预调配的实例数。如果实例数大于 1，则此值需为 2 的幂。
+ `DurationHour`：您请求的计划的总持续时间（以小时为单位）。`DurationHour` 向上取整至最接近的 24 的倍数。

## 可选参数
<a name="search-training-plan-options-optional-params"></a>

以下各部分提供了有关可传递给 `SearchTrainingPlanOfferings` API 请求的一些可选参数的信息。
+ `StartTimeAfter`：指定计划的请求开始时间。`StartTimeAfter` 应是将来的 `timestamp` 或 `ISO 8601 date/time` 值。
+ `EndTimeBefore`：以 `timestamp` 或 `ISO 8601 date/time` 格式指定计划的请求结束时间。`EndTimeBefore` 应至少比开始时间晚 24 小时。
+ `UltraServerType`：指定 UltraServer 要搜索的类型。有关的更多信息 UltraServers，请参阅[UltraServers 在 SageMaker 人工智能中](reserve-capacity-with-training-plans.md#training-plans-ultraservers)。
+ `UltraServerCount`：指定 UltraServers 要搜索的数量。