Amazon SageMaker Sagemaker Optimization Job API

The Sagemaker Optimization Job API from Amazon SageMaker — 5 operation(s) for sagemaker optimization job.

Business capability
Artificial Intelligence Management BC-610.60

Operations 5

POST /#CreateOptimizationJob Create Optimization Job #
POST /#DeleteOptimizationJob Delete Optimization Job #
POST /#DescribeOptimizationJob Describe Optimization Job #
POST /#ListOptimizationJobs List Optimization Jobs #
POST /#StopOptimizationJob Stop Optimization Job #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-sagemaker:amazon-sagemaker-optimization-job-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-sagemaker-optimization-job-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon SageMaker Service Optimization Job API
  version: '2017-07-24'
  description: Generated from AWS's published Smithy model for Amazon SageMaker Service. 5 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://api.sagemaker.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#CreateOptimizationJob:
    post:
      operationId: CreateOptimizationJob
      summary: Create Optimization Job
      description: Creates a job that optimizes a model for inference performance. To create the job, you provide the location
        of a source model, and you provide the settings for the optimization techniques that you want the job to apply. When
        the job completes successfully, SageMaker uploads the new optimized model to the output destination that you specify.
        For more information about how to use this action, and about the supported optimization techniques, see Optimize model
        inference with Amazon SageMaker.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateOptimizationJobResponse'
        '400':
          description: ResourceInUse; ResourceLimitExceeded
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceInUse'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.CreateOptimizationJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateOptimizationJobRequest'
      tags:
      - Optimization Job
  /#DeleteOptimizationJob:
    post:
      operationId: DeleteOptimizationJob
      summary: Delete Optimization Job
      description: Deletes an optimization job.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                type: string
        '400':
          description: ResourceNotFound
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFound'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.DeleteOptimizationJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DeleteOptimizationJobRequest'
      tags:
      - Optimization Job
  /#DescribeOptimizationJob:
    post:
      operationId: DescribeOptimizationJob
      summary: Describe Optimization Job
      description: Provides the properties of the specified optimization job.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DescribeOptimizationJobResponse'
        '400':
          description: ResourceNotFound
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFound'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.DescribeOptimizationJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DescribeOptimizationJobRequest'
      tags:
      - Optimization Job
  /#ListOptimizationJobs:
    post:
      operationId: ListOptimizationJobs
      summary: List Optimization Jobs
      description: Lists the optimization jobs in your account and their properties.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ListOptimizationJobsResponse'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.ListOptimizationJobs
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ListOptimizationJobsRequest'
      tags:
      - Optimization Job
  /#StopOptimizationJob:
    post:
      operationId: StopOptimizationJob
      summary: Stop Optimization Job
      description: Ends a running inference optimization job.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                type: string
        '400':
          description: ResourceNotFound
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFound'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.StopOptimizationJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/StopOptimizationJobRequest'
      tags:
      - Optimization Job
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: sagemaker
  schemas:
    CreateOptimizationJobRequest:
      type: object
      properties:
        OptimizationJobName:
          type: string
          description: A custom name for the new optimization job.
        RoleArn:
          type: string
          description: 'The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker AI to perform tasks on
            your behalf. During model optimization, Amazon SageMaker AI needs your permission to: Read input data from an
            S3 bucket Write model artifacts to an S3 bucket Write logs to Amazon CloudWatch Logs Publish metrics to Amazon
            CloudWatch You grant permissions for all of these tasks to an IAM role. To pass this role to Amazon SageMaker
            AI, the caller of this API must have the iam:PassRole permission. For more information, see Amazon SageMaker AI
            Roles.'
        ModelSource:
          $ref: '#/components/schemas/OptimizationJobModelSource'
        DeploymentInstanceType:
          type: string
          enum:
          - ml.p4d.24xlarge
          - ml.p4de.24xlarge
          - ml.p5.48xlarge
          - ml.p5e.48xlarge
          - ml.p5en.48xlarge
          - ml.g4dn.xlarge
          - ml.g4dn.2xlarge
          - ml.g4dn.4xlarge
          - ml.g4dn.8xlarge
          - ml.g4dn.12xlarge
          - ml.g4dn.16xlarge
          - ml.g5.xlarge
          - ml.g5.2xlarge
          - ml.g5.4xlarge
          - ml.g5.8xlarge
          - ml.g5.12xlarge
          - ml.g5.16xlarge
          - ml.g5.24xlarge
          - ml.g5.48xlarge
          - ml.g6.xlarge
          - ml.g6.2xlarge
          - ml.g6.4xlarge
          - ml.g6.8xlarge
          - ml.g6.12xlarge
          - ml.g6.16xlarge
          - ml.g6.24xlarge
          - ml.g6.48xlarge
          - ml.g6e.xlarge
          - ml.g6e.2xlarge
          - ml.g6e.4xlarge
          - ml.g6e.8xlarge
          - ml.g6e.12xlarge
          - ml.g6e.16xlarge
          - ml.g6e.24xlarge
          - ml.g6e.48xlarge
          - ml.inf2.xlarge
          - ml.inf2.8xlarge
          - ml.inf2.24xlarge
          - ml.inf2.48xlarge
          - ml.trn1.2xlarge
          - ml.trn1.32xlarge
          - ml.trn1n.32xlarge
          - ml.p6-b200.48xlarge
          - ml.g7e.2xlarge
          - ml.g7e.4xlarge
          - ml.g7e.8xlarge
          - ml.g7e.12xlarge
          - ml.g7e.24xlarge
          - ml.g7e.48xlarge
          - ml.g7.2xlarge
          - ml.g7.4xlarge
          - ml.g7.8xlarge
          - ml.g7.12xlarge
          - ml.g7.24xlarge
          - ml.g7.48xlarge
          description: The type of instance that hosts the optimized model that you create with the optimization job.
        MaxInstanceCount:
          type: integer
          description: The maximum number of instances to use for the optimization job.
        OptimizationEnvironment:
          type: object
          additionalProperties:
            type: string
          description: The environment variables to set in the model container.
        OptimizationConfigs:
          type: array
          items:
            $ref: '#/components/schemas/OptimizationConfig'
          description: Settings for each of the optimization techniques that the job applies.
        OutputConfig:
          $ref: '#/components/schemas/OptimizationJobOutputConfig'
        StoppingCondition:
          $ref: '#/components/schemas/StoppingCondition'
        Tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: A list of key-value pairs associated with the optimization job. For more information, see Tagging Amazon
            Web Services resources in the Amazon Web Services General Reference Guide.
        VpcConfig:
          $ref: '#/components/schemas/OptimizationVpcConfig'
        TrainingPlanArns:
          type: array
          items:
            type: string
          description: The Amazon Resource Name (ARN) of the training plan to use for this optimization job. When you use
            reserved capacity from a training plan, the optimization job runs on that reserved capacity instead of on-demand
            capacity. If you omit this field, the job uses on-demand capacity. You can specify at most one training plan.
            For more information about how to reserve GPU capacity for your optimization jobs using Amazon SageMaker Training
            Plans, see Reserve capacity with training plans.
      required:
      - OptimizationJobName
      - RoleArn
      - ModelSource
      - DeploymentInstanceType
      - OptimizationConfigs
      - OutputConfig
      - StoppingCondition
    CreateOptimizationJobResponse:
      type: object
      properties:
        OptimizationJobArn:
          type: string
          description: The Amazon Resource Name (ARN) of the optimization job.
      required:
      - OptimizationJobArn
    DeleteOptimizationJobRequest:
      type: object
      properties:
        OptimizationJobName:
          type: string
          description: The name that you assigned to the optimization job.
      required:
      - OptimizationJobName
    DescribeOptimizationJobRequest:
      type: object
      properties:
        OptimizationJobName:
          type: string
          description: The name that you assigned to the optimization job.
      required:
      - OptimizationJobName
    DescribeOptimizationJobResponse:
      type: object
      properties:
        OptimizationJobArn:
          type: string
          description: The Amazon Resource Name (ARN) of the optimization job.
        OptimizationJobStatus:
          type: string
          enum:
          - INPROGRESS
          - COMPLETED
          - FAILED
          - STARTING
          - STOPPING
          - STOPPED
          description: The current status of the optimization job.
        OptimizationStartTime:
          type: string
          format: date-time
          description: The time when the optimization job started.
        OptimizationEndTime:
          type: string
          format: date-time
          description: The time when the optimization job finished processing.
        CreationTime:
          type: string
          format: date-time
          description: The time when you created the optimization job.
        LastModifiedTime:
          type: string
          format: date-time
          description: The time when the optimization job was last updated.
        FailureReason:
          type: string
          description: If the optimization job status is FAILED, the reason for the failure.
        OptimizationJobName:
          type: string
          description: The name that you assigned to the optimization job.
        ModelSource:
          $ref: '#/components/schemas/OptimizationJobModelSource'
        OptimizationEnvironment:
          type: object
          additionalProperties:
            type: string
          description: The environment variables to set in the model container.
        DeploymentInstanceType:
          type: string
          enum:
          - ml.p4d.24xlarge
          - ml.p4de.24xlarge
          - ml.p5.48xlarge
          - ml.p5e.48xlarge
          - ml.p5en.48xlarge
          - ml.g4dn.xlarge
          - ml.g4dn.2xlarge
          - ml.g4dn.4xlarge
          - ml.g4dn.8xlarge
          - ml.g4dn.12xlarge
          - ml.g4dn.16xlarge
          - ml.g5.xlarge
          - ml.g5.2xlarge
          - ml.g5.4xlarge
          - ml.g5.8xlarge
          - ml.g5.12xlarge
          - ml.g5.16xlarge
          - ml.g5.24xlarge
          - ml.g5.48xlarge
          - ml.g6.xlarge
          - ml.g6.2xlarge
          - ml.g6.4xlarge
          - ml.g6.8xlarge
          - ml.g6.12xlarge
          - ml.g6.16xlarge
          - ml.g6.24xlarge
          - ml.g6.48xlarge
          - ml.g6e.xlarge
          - ml.g6e.2xlarge
          - ml.g6e.4xlarge
          - ml.g6e.8xlarge
          - ml.g6e.12xlarge
          - ml.g6e.16xlarge
          - ml.g6e.24xlarge
          - ml.g6e.48xlarge
          - ml.inf2.xlarge
          - ml.inf2.8xlarge
          - ml.inf2.24xlarge
          - ml.inf2.48xlarge
          - ml.trn1.2xlarge
          - ml.trn1.32xlarge
          - ml.trn1n.32xlarge
          - ml.p6-b200.48xlarge
          - ml.g7e.2xlarge
          - ml.g7e.4xlarge
          - ml.g7e.8xlarge
          - ml.g7e.12xlarge
          - ml.g7e.24xlarge
          - ml.g7e.48xlarge
          - ml.g7.2xlarge
          - ml.g7.4xlarge
          - ml.g7.8xlarge
          - ml.g7.12xlarge
          - ml.g7.24xlarge
          - ml.g7.48xlarge
          description: The type of instance that hosts the optimized model that you create with the optimization job.
        MaxInstanceCount:
          type: integer
          description: The maximum number of instances to use for the optimization job.
        OptimizationConfigs:
          type: array
          items:
            $ref: '#/components/schemas/OptimizationConfig'
          description: Settings for each of the optimization techniques that the job applies.
        OutputConfig:
          $ref: '#/components/schemas/OptimizationJobOutputConfig'
        OptimizationOutput:
          $ref: '#/components/schemas/OptimizationOutput'
        RoleArn:
          type: string
          description: The ARN of the IAM role that you assigned to the optimization job.
        StoppingCondition:
          $ref: '#/components/schemas/StoppingCondition'
        VpcConfig:
          $ref: '#/components/schemas/OptimizationVpcConfig'
        TrainingPlanArns:
          type: array
          items:
            type: string
          description: The Amazon Resource Name (ARN) of the training plan associated with this optimization job. This field
            appears only when you specified a training plan when you created the job. Optimization jobs that use on-demand
            capacity don't return this field.
      required:
      - OptimizationJobArn
      - OptimizationJobStatus
      - CreationTime
      - LastModifiedTime
      - OptimizationJobName
      - ModelSource
      - DeploymentInstanceType
      - OptimizationConfigs
      - OutputConfig
      - RoleArn
      - StoppingCondition
    ListOptimizationJobsRequest:
      type: object
      properties:
        NextToken:
          type: string
          description: A token that you use to get the next set of results following a truncated response. If the response
            to the previous request was truncated, that response provides the value for this token.
        MaxResults:
          type: integer
          description: The maximum number of optimization jobs to return in the response. The default is 50.
        CreationTimeAfter:
          type: string
          format: date-time
          description: Filters the results to only those optimization jobs that were created after the specified time.
        CreationTimeBefore:
          type: string
          format: date-time
          description: Filters the results to only those optimization jobs that were created before the specified time.
        LastModifiedTimeAfter:
          type: string
          format: date-time
          description: Filters the results to only those optimization jobs that were updated after the specified time.
        LastModifiedTimeBefore:
          type: string
          format: date-time
          description: Filters the results to only those optimization jobs that were updated before the specified time.
        OptimizationContains:
          type: string
          description: Filters the results to only those optimization jobs that apply the specified optimization techniques.
            You can specify either Quantization or Compilation.
        NameContains:
          type: string
          description: Filters the results to only those optimization jobs with a name that contains the specified string.
        StatusEquals:
          type: string
          enum:
          - INPROGRESS
          - COMPLETED
          - FAILED
          - STARTING
          - STOPPING
          - STOPPED
          description: Filters the results to only those optimization jobs with the specified status.
        SortBy:
          type: string
          enum:
          - Name
          - CreationTime
          - Status
          description: The field by which to sort the optimization jobs in the response. The default is CreationTime
        SortOrder:
          type: string
          enum:
          - Ascending
          - Descending
          description: The sort order for results. The default is Ascending
    ListOptimizationJobsResponse:
      type: object
      properties:
        OptimizationJobSummaries:
          type: array
          items:
            $ref: '#/components/schemas/OptimizationJobSummary'
          description: A list of optimization jobs and their properties that matches any of the filters you specified in the
            request.
        NextToken:
          type: string
          description: The token to use in a subsequent request to get the next set of results following a truncated response.
      required:
      - OptimizationJobSummaries
    ModelCompilationConfig:
      type: object
      properties:
        Image:
          type: string
          description: The URI of an LMI DLC in Amazon ECR. SageMaker uses this image to run the optimization.
        OverrideEnvironment:
          type: object
          additionalProperties:
            type: string
          description: Environment variables that override the default ones in the model container.
    ModelQuantizationConfig:
      type: object
      properties:
        Image:
          type: string
          description: The URI of an LMI DLC in Amazon ECR. SageMaker uses this image to run the optimization.
        OverrideEnvironment:
          type: object
          additionalProperties:
            type: string
          description: Environment variables that override the default ones in the model container.
    ModelShardingConfig:
      type: object
      properties:
        Image:
          type: string
          description: The URI of an LMI DLC in Amazon ECR. SageMaker uses this image to run the optimization.
        OverrideEnvironment:
          type: object
          additionalProperties:
            type: string
          description: Environment variables that override the default ones in the model container.
    ModelSpeculativeDecodingConfig:
      type: object
      properties:
        Technique:
          type: string
          enum:
          - EAGLE
          description: The speculative decoding technique to apply during model optimization.
        TrainingDataSource:
          $ref: '#/components/schemas/ModelSpeculativeDecodingTrainingDataSource'
      required:
      - Technique
    ModelSpeculativeDecodingTrainingDataSource:
      type: object
      properties:
        S3Uri:
          type: string
          description: The Amazon S3 URI that points to the training data for speculative decoding.
        S3DataType:
          type: string
          enum:
          - S3Prefix
          - ManifestFile
          description: The type of data stored in the Amazon S3 location. Valid values are S3Prefix or ManifestFile.
      required:
      - S3Uri
      - S3DataType
    OptimizationConfig:
      type: object
      properties:
        ModelQuantizationConfig:
          $ref: '#/components/schemas/ModelQuantizationConfig'
        ModelCompilationConfig:
          $ref: '#/components/schemas/ModelCompilationConfig'
        ModelShardingConfig:
          $ref: '#/components/schemas/ModelShardingConfig'
        ModelSpeculativeDecodingConfig:
          $ref: '#/components/schemas/ModelSpeculativeDecodingConfig'
      description: Exactly one member is set.
    OptimizationJobModelSource:
      type: object
      properties:
        S3:
          $ref: '#/components/schemas/OptimizationJobModelSourceS3'
        SageMakerModel:
          $ref: '#/components/schemas/OptimizationSageMakerModel'
    OptimizationJobModelSourceS3:
      type: object
      properties:
        S3Uri:
          type: string
          description: An Amazon S3 URI that locates a source model to optimize with an optimization job.
        ModelAccessConfig:
          $ref: '#/components/schemas/OptimizationModelAccessConfig'
    OptimizationJobOutputConfig:
      type: object
      properties:
        KmsKeyId:
          type: string
          description: The Amazon Resource Name (ARN) of a key in Amazon Web Services KMS. SageMaker uses they key to encrypt
            the artifacts of the optimized model when SageMaker uploads the model to Amazon S3.
        S3OutputLocation:
          type: string
          description: The Amazon S3 URI for where to store the optimized model that you create with an optimization job.
        SageMakerModel:
          $ref: '#/components/schemas/OptimizationSageMakerModel'
      required:
      - S3OutputLocation
    OptimizationJobSummary:
      type: object
      properties:
        OptimizationJobName:
          type: string
          description: The name that you assigned to the optimization job.
        OptimizationJobArn:
          type: string
          description: The Amazon Resource Name (ARN) of the optimization job.
        CreationTime:
          type: string
          format: date-time
          description: The time when you created the optimization job.
        OptimizationJobStatus:
          type: string
          enum:
          - INPROGRESS
          - COMPLETED
          - FAILED
          - STARTING
          - STOPPING
          - STOPPED
          description: The current status of the optimization job.
        OptimizationStartTime:
          type: string
          format: date-time
          description: The time when the optimization job started.
        OptimizationEndTime:
          type: string
          format: date-time
          description: The time when the optimization job finished processing.
        LastModifiedTime:
          type: string
          format: date-time
          description: The time when the optimization job was last updated.
        DeploymentInstanceType:
          type: string
          enum:
          - ml.p4d.24xlarge
          - ml.p4de.24xlarge
          - ml.p5.48xlarge
          - ml.p5e.48xlarge
          - ml.p5en.48xlarge
          - ml.g4dn.xlarge
          - ml.g4dn.2xlarge
          - ml.g4dn.4xlarge
          - ml.g4dn.8xlarge
          - ml.g4dn.12xlarge
          - ml.g4dn.16xlarge
          - ml.g5.xlarge
          - ml.g5.2xlarge
          - ml.g5.4xlarge
          - ml.g5.8xlarge
          - ml.g5.12xlarge
          - ml.g5.16xlarge
          - ml.g5.24xlarge
          - ml.g5.48xlarge
          - ml.g6.xlarge
          - ml.g6.2xlarge
          - ml.g6.4xlarge
          - ml.g6.8xlarge
          - ml.g6.12xlarge
          - ml.g6.16xlarge
          - ml.g6.24xlarge
          - ml.g6.48xlarge
          - ml.g6e.xlarge
          - ml.g6e.2xlarge
          - ml.g6e.4xlarge
          - ml.g6e.8xlarge
          - ml.g6e.12xlarge
          - ml.g6e.16xlarge
          - ml.g6e.24xlarge
          - ml.g6e.48xlarge
          - ml.inf2.xlarge
          - ml.inf2.8xlarge
          - ml.inf2.24xlarge
          - ml.inf2.48xlarge
          - ml.trn1.2xlarge
          - ml.trn1.32xlarge
          - ml.trn1n.32xlarge
          - ml.p6-b200.48xlarge
          - ml.g7e.2xlarge
          - ml.g7e.4xlarge
          - ml.g7e.8xlarge
          - ml.g7e.12xlarge
          - ml.g7e.24xlarge
          - ml.g7e.48xlarge
          - ml.g7.2xlarge
          - ml.g7.4xlarge
          - ml.g7.8xlarge
          - ml.g7.12xlarge
          - ml.g7.24xlarge
          - ml.g7.48xlarge
          description: The type of instance that hosts the optimized model that you create with the optimization job.
        MaxInstanceCount:
          type: integer
          description: The maximum number of instances to use for the optimization job.
        OptimizationTypes:
          type: array
          items:
            type: string
          description: The optimization techniques that are applied by the optimization job.
      required:
      - OptimizationJobName
      - OptimizationJobArn
      - CreationTime
      - OptimizationJobStatus
      - DeploymentInstanceType
      - OptimizationTypes
    OptimizationModelAccessConfig:
      type: object
      properties:
        AcceptEula:
          type: boolean
          description: Specifies agreement to the model end-user license agreement (EULA). The AcceptEula value must be explicitly
            defined as True in order to accept the EULA that this model requires. You are responsible for reviewing and complying
            with any applicable license terms and making sure they are acceptable for your use case before downloading or
            using a model.
      required:
      - AcceptEula
    OptimizationOutput:
      type: object
      properties:
        RecommendedInferenceImage:
          type: string
          description: The image that SageMaker recommends that you use to host the optimized model that you created with
            an optimization job.
    OptimizationSageMakerModel:
      type: object
      properties:
        ModelName:
          type: string
          description: The name of a SageMaker model.
    OptimizationVpcConfig:
      type: object
      properties:
        SecurityGroupIds:
          type: array
          items:
            type: string
          description: The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security groups for the VPC that is
            specified in the Subnets field.
        Subnets:
          type: array
          items:
            type: string
          description: The ID of the subnets in the VPC to which you want to connect your optimized model.
      required:
      - SecurityGroupIds
      - Subnets
    ResourceInUse:
      type: object
      properties:
        Message:
          type: string
    ResourceNotFound:
      type: object
      properties:
        Message:
          type: string
    StopOptimizationJobRequest:
      type: object
      properties:
        OptimizationJobName:
          type: string
          description: The name that you assigned to the optimization job.
      required:
      - OptimizationJobName
    StoppingCondition:
      type: object
      properties:
        MaxRuntimeInSeconds:
          type: integer
          description: The maximum length of time, in seconds, that a training or compilation job can run before it is stopped.
            For compilation jobs, if the job does not complete during this time, a TimeOut error is generated. We recommend
            starting with 900 seconds and increasing as necessary based on your model. For all other jobs, if the job does
            not complete during this time, SageMaker ends the job. When RetryStrategy is specified in the job request, MaxRuntimeInSeconds
            specifies the maximum time for all of the attempts in total, not each individual attempt. The default value is
            1 day. The maximum value is 28 day
        MaxWaitTimeInSeconds:
          type: integer
          description: The maximum length of time, in seconds, that a managed Spot training job has to complete. It is the
            amount of time spent waiting for Spot capacity plus the amount of time the job can run. It must be equal to or
            greater than MaxRuntimeInSeconds. If the job does not complete during this time, SageMaker ends the job. When
            RetryStrategy is specified in the job request, MaxWaitTimeInSeconds specifies the maximum time for all of the
            attempts in total, not each individual attempt.
        MaxPendingTimeInSeconds:
          type: integer
          description: 'The maximum length of time, in seconds, that a training or compilation job can be pending before it
            is stopped. When working with training jobs that use capacity from training plans, not all Pending job states
            count against the MaxPendingTimeInSeconds limit. The following scenarios do not increment the MaxPendingTimeInSeconds
            counter: The plan is in a Scheduled state: Jobs queued (in Pending status) before a plan''s start date (waiting
            for scheduled start time) Between capacity reservations: Jobs temporarily back to Pending status between two capacity
            reservation periods MaxPendingTimeInSeconds'
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: The tag key. Tag keys must be unique per resource.
        Value:
          type: string
          description: The tag value.
      required:
      - Key
      - Value
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/sagemaker/service/2017-07-24/sagemaker-2017-07-24.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)