1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package sagemaker
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opAddTags = "AddTags"
17
18// AddTagsRequest generates a "aws/request.Request" representing the
19// client's request for the AddTags operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AddTags for more information on using the AddTags
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AddTagsRequest method.
34//    req, resp := client.AddTagsRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AddTags
42func (c *SageMaker) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) {
43	op := &request.Operation{
44		Name:       opAddTags,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AddTagsInput{}
51	}
52
53	output = &AddTagsOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// AddTags API operation for Amazon SageMaker Service.
59//
60// Adds or overwrites one or more tags for the specified Amazon SageMaker resource.
61// You can add tags to notebook instances, training jobs, hyperparameter tuning
62// jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations,
63// and endpoints.
64//
65// Each tag consists of a key and an optional value. Tag keys must be unique
66// per resource. For more information about tags, see For more information,
67// see AWS Tagging Strategies (https://aws.amazon.com/answers/account-management/aws-tagging-strategies/).
68//
69// Tags that you add to a hyperparameter tuning job by calling this API are
70// also added to any training jobs that the hyperparameter tuning job launches
71// after you call this API, but not to training jobs that the hyperparameter
72// tuning job launched before you called this API. To make sure that the tags
73// associated with a hyperparameter tuning job are also added to all training
74// jobs that the hyperparameter tuning job launches, add the tags when you first
75// create the tuning job by specifying them in the Tags parameter of CreateHyperParameterTuningJob
76//
77// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
78// with awserr.Error's Code and Message methods to get detailed information about
79// the error.
80//
81// See the AWS API reference guide for Amazon SageMaker Service's
82// API operation AddTags for usage and error information.
83// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AddTags
84func (c *SageMaker) AddTags(input *AddTagsInput) (*AddTagsOutput, error) {
85	req, out := c.AddTagsRequest(input)
86	return out, req.Send()
87}
88
89// AddTagsWithContext is the same as AddTags with the addition of
90// the ability to pass a context and additional request options.
91//
92// See AddTags for details on how to use this API operation.
93//
94// The context must be non-nil and will be used for request cancellation. If
95// the context is nil a panic will occur. In the future the SDK may create
96// sub-contexts for http.Requests. See https://golang.org/pkg/context/
97// for more information on using Contexts.
98func (c *SageMaker) AddTagsWithContext(ctx aws.Context, input *AddTagsInput, opts ...request.Option) (*AddTagsOutput, error) {
99	req, out := c.AddTagsRequest(input)
100	req.SetContext(ctx)
101	req.ApplyOptions(opts...)
102	return out, req.Send()
103}
104
105const opCreateAlgorithm = "CreateAlgorithm"
106
107// CreateAlgorithmRequest generates a "aws/request.Request" representing the
108// client's request for the CreateAlgorithm operation. The "output" return
109// value will be populated with the request's response once the request completes
110// successfully.
111//
112// Use "Send" method on the returned Request to send the API call to the service.
113// the "output" return value is not valid until after Send returns without error.
114//
115// See CreateAlgorithm for more information on using the CreateAlgorithm
116// API call, and error handling.
117//
118// This method is useful when you want to inject custom logic or configuration
119// into the SDK's request lifecycle. Such as custom headers, or retry logic.
120//
121//
122//    // Example sending a request using the CreateAlgorithmRequest method.
123//    req, resp := client.CreateAlgorithmRequest(params)
124//
125//    err := req.Send()
126//    if err == nil { // resp is now filled
127//        fmt.Println(resp)
128//    }
129//
130// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAlgorithm
131func (c *SageMaker) CreateAlgorithmRequest(input *CreateAlgorithmInput) (req *request.Request, output *CreateAlgorithmOutput) {
132	op := &request.Operation{
133		Name:       opCreateAlgorithm,
134		HTTPMethod: "POST",
135		HTTPPath:   "/",
136	}
137
138	if input == nil {
139		input = &CreateAlgorithmInput{}
140	}
141
142	output = &CreateAlgorithmOutput{}
143	req = c.newRequest(op, input, output)
144	return
145}
146
147// CreateAlgorithm API operation for Amazon SageMaker Service.
148//
149// Create a machine learning algorithm that you can use in Amazon SageMaker
150// and list in the AWS Marketplace.
151//
152// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
153// with awserr.Error's Code and Message methods to get detailed information about
154// the error.
155//
156// See the AWS API reference guide for Amazon SageMaker Service's
157// API operation CreateAlgorithm for usage and error information.
158// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAlgorithm
159func (c *SageMaker) CreateAlgorithm(input *CreateAlgorithmInput) (*CreateAlgorithmOutput, error) {
160	req, out := c.CreateAlgorithmRequest(input)
161	return out, req.Send()
162}
163
164// CreateAlgorithmWithContext is the same as CreateAlgorithm with the addition of
165// the ability to pass a context and additional request options.
166//
167// See CreateAlgorithm for details on how to use this API operation.
168//
169// The context must be non-nil and will be used for request cancellation. If
170// the context is nil a panic will occur. In the future the SDK may create
171// sub-contexts for http.Requests. See https://golang.org/pkg/context/
172// for more information on using Contexts.
173func (c *SageMaker) CreateAlgorithmWithContext(ctx aws.Context, input *CreateAlgorithmInput, opts ...request.Option) (*CreateAlgorithmOutput, error) {
174	req, out := c.CreateAlgorithmRequest(input)
175	req.SetContext(ctx)
176	req.ApplyOptions(opts...)
177	return out, req.Send()
178}
179
180const opCreateCodeRepository = "CreateCodeRepository"
181
182// CreateCodeRepositoryRequest generates a "aws/request.Request" representing the
183// client's request for the CreateCodeRepository operation. The "output" return
184// value will be populated with the request's response once the request completes
185// successfully.
186//
187// Use "Send" method on the returned Request to send the API call to the service.
188// the "output" return value is not valid until after Send returns without error.
189//
190// See CreateCodeRepository for more information on using the CreateCodeRepository
191// API call, and error handling.
192//
193// This method is useful when you want to inject custom logic or configuration
194// into the SDK's request lifecycle. Such as custom headers, or retry logic.
195//
196//
197//    // Example sending a request using the CreateCodeRepositoryRequest method.
198//    req, resp := client.CreateCodeRepositoryRequest(params)
199//
200//    err := req.Send()
201//    if err == nil { // resp is now filled
202//        fmt.Println(resp)
203//    }
204//
205// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCodeRepository
206func (c *SageMaker) CreateCodeRepositoryRequest(input *CreateCodeRepositoryInput) (req *request.Request, output *CreateCodeRepositoryOutput) {
207	op := &request.Operation{
208		Name:       opCreateCodeRepository,
209		HTTPMethod: "POST",
210		HTTPPath:   "/",
211	}
212
213	if input == nil {
214		input = &CreateCodeRepositoryInput{}
215	}
216
217	output = &CreateCodeRepositoryOutput{}
218	req = c.newRequest(op, input, output)
219	return
220}
221
222// CreateCodeRepository API operation for Amazon SageMaker Service.
223//
224// Creates a Git repository as a resource in your Amazon SageMaker account.
225// You can associate the repository with notebook instances so that you can
226// use Git source control for the notebooks you create. The Git repository is
227// a resource in your Amazon SageMaker account, so it can be associated with
228// more than one notebook instance, and it persists independently from the lifecycle
229// of any notebook instances it is associated with.
230//
231// The repository can be hosted either in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
232// or in any other Git repository.
233//
234// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
235// with awserr.Error's Code and Message methods to get detailed information about
236// the error.
237//
238// See the AWS API reference guide for Amazon SageMaker Service's
239// API operation CreateCodeRepository for usage and error information.
240// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCodeRepository
241func (c *SageMaker) CreateCodeRepository(input *CreateCodeRepositoryInput) (*CreateCodeRepositoryOutput, error) {
242	req, out := c.CreateCodeRepositoryRequest(input)
243	return out, req.Send()
244}
245
246// CreateCodeRepositoryWithContext is the same as CreateCodeRepository with the addition of
247// the ability to pass a context and additional request options.
248//
249// See CreateCodeRepository for details on how to use this API operation.
250//
251// The context must be non-nil and will be used for request cancellation. If
252// the context is nil a panic will occur. In the future the SDK may create
253// sub-contexts for http.Requests. See https://golang.org/pkg/context/
254// for more information on using Contexts.
255func (c *SageMaker) CreateCodeRepositoryWithContext(ctx aws.Context, input *CreateCodeRepositoryInput, opts ...request.Option) (*CreateCodeRepositoryOutput, error) {
256	req, out := c.CreateCodeRepositoryRequest(input)
257	req.SetContext(ctx)
258	req.ApplyOptions(opts...)
259	return out, req.Send()
260}
261
262const opCreateCompilationJob = "CreateCompilationJob"
263
264// CreateCompilationJobRequest generates a "aws/request.Request" representing the
265// client's request for the CreateCompilationJob operation. The "output" return
266// value will be populated with the request's response once the request completes
267// successfully.
268//
269// Use "Send" method on the returned Request to send the API call to the service.
270// the "output" return value is not valid until after Send returns without error.
271//
272// See CreateCompilationJob for more information on using the CreateCompilationJob
273// API call, and error handling.
274//
275// This method is useful when you want to inject custom logic or configuration
276// into the SDK's request lifecycle. Such as custom headers, or retry logic.
277//
278//
279//    // Example sending a request using the CreateCompilationJobRequest method.
280//    req, resp := client.CreateCompilationJobRequest(params)
281//
282//    err := req.Send()
283//    if err == nil { // resp is now filled
284//        fmt.Println(resp)
285//    }
286//
287// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCompilationJob
288func (c *SageMaker) CreateCompilationJobRequest(input *CreateCompilationJobInput) (req *request.Request, output *CreateCompilationJobOutput) {
289	op := &request.Operation{
290		Name:       opCreateCompilationJob,
291		HTTPMethod: "POST",
292		HTTPPath:   "/",
293	}
294
295	if input == nil {
296		input = &CreateCompilationJobInput{}
297	}
298
299	output = &CreateCompilationJobOutput{}
300	req = c.newRequest(op, input, output)
301	return
302}
303
304// CreateCompilationJob API operation for Amazon SageMaker Service.
305//
306// Starts a model compilation job. After the model has been compiled, Amazon
307// SageMaker saves the resulting model artifacts to an Amazon Simple Storage
308// Service (Amazon S3) bucket that you specify.
309//
310// If you choose to host your model using Amazon SageMaker hosting services,
311// you can use the resulting model artifacts as part of the model. You can also
312// use the artifacts with AWS IoT Greengrass. In that case, deploy them as an
313// ML resource.
314//
315// In the request body, you provide the following:
316//
317//    * A name for the compilation job
318//
319//    * Information about the input model artifacts
320//
321//    * The output location for the compiled model and the device (target) that
322//    the model runs on
323//
324//    * The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker
325//    assumes to perform the model compilation job
326//
327// You can also provide a Tag to track the model compilation job's resource
328// use and costs. The response body contains the CompilationJobArn for the compiled
329// job.
330//
331// To stop a model compilation job, use StopCompilationJob. To get information
332// about a particular model compilation job, use DescribeCompilationJob. To
333// get information about multiple model compilation jobs, use ListCompilationJobs.
334//
335// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
336// with awserr.Error's Code and Message methods to get detailed information about
337// the error.
338//
339// See the AWS API reference guide for Amazon SageMaker Service's
340// API operation CreateCompilationJob for usage and error information.
341//
342// Returned Error Codes:
343//   * ErrCodeResourceInUse "ResourceInUse"
344//   Resource being accessed is in use.
345//
346//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
347//   You have exceeded an Amazon SageMaker resource limit. For example, you might
348//   have too many training jobs created.
349//
350// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateCompilationJob
351func (c *SageMaker) CreateCompilationJob(input *CreateCompilationJobInput) (*CreateCompilationJobOutput, error) {
352	req, out := c.CreateCompilationJobRequest(input)
353	return out, req.Send()
354}
355
356// CreateCompilationJobWithContext is the same as CreateCompilationJob with the addition of
357// the ability to pass a context and additional request options.
358//
359// See CreateCompilationJob for details on how to use this API operation.
360//
361// The context must be non-nil and will be used for request cancellation. If
362// the context is nil a panic will occur. In the future the SDK may create
363// sub-contexts for http.Requests. See https://golang.org/pkg/context/
364// for more information on using Contexts.
365func (c *SageMaker) CreateCompilationJobWithContext(ctx aws.Context, input *CreateCompilationJobInput, opts ...request.Option) (*CreateCompilationJobOutput, error) {
366	req, out := c.CreateCompilationJobRequest(input)
367	req.SetContext(ctx)
368	req.ApplyOptions(opts...)
369	return out, req.Send()
370}
371
372const opCreateEndpoint = "CreateEndpoint"
373
374// CreateEndpointRequest generates a "aws/request.Request" representing the
375// client's request for the CreateEndpoint operation. The "output" return
376// value will be populated with the request's response once the request completes
377// successfully.
378//
379// Use "Send" method on the returned Request to send the API call to the service.
380// the "output" return value is not valid until after Send returns without error.
381//
382// See CreateEndpoint for more information on using the CreateEndpoint
383// API call, and error handling.
384//
385// This method is useful when you want to inject custom logic or configuration
386// into the SDK's request lifecycle. Such as custom headers, or retry logic.
387//
388//
389//    // Example sending a request using the CreateEndpointRequest method.
390//    req, resp := client.CreateEndpointRequest(params)
391//
392//    err := req.Send()
393//    if err == nil { // resp is now filled
394//        fmt.Println(resp)
395//    }
396//
397// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateEndpoint
398func (c *SageMaker) CreateEndpointRequest(input *CreateEndpointInput) (req *request.Request, output *CreateEndpointOutput) {
399	op := &request.Operation{
400		Name:       opCreateEndpoint,
401		HTTPMethod: "POST",
402		HTTPPath:   "/",
403	}
404
405	if input == nil {
406		input = &CreateEndpointInput{}
407	}
408
409	output = &CreateEndpointOutput{}
410	req = c.newRequest(op, input, output)
411	return
412}
413
414// CreateEndpoint API operation for Amazon SageMaker Service.
415//
416// Creates an endpoint using the endpoint configuration specified in the request.
417// Amazon SageMaker uses the endpoint to provision resources and deploy models.
418// You create the endpoint configuration with the CreateEndpointConfig (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpointConfig.html)
419// API.
420//
421// Use this API only for hosting models using Amazon SageMaker hosting services.
422//
423// You must not delete an EndpointConfig in use by an endpoint that is live
424// or while the UpdateEndpoint or CreateEndpoint operations are being performed
425// on the endpoint. To update an endpoint, you must create a new EndpointConfig.
426//
427// The endpoint name must be unique within an AWS Region in your AWS account.
428//
429// When it receives the request, Amazon SageMaker creates the endpoint, launches
430// the resources (ML compute instances), and deploys the model(s) on them.
431//
432// When Amazon SageMaker receives the request, it sets the endpoint status to
433// Creating. After it creates the endpoint, it sets the status to InService.
434// Amazon SageMaker can then process incoming requests for inferences. To check
435// the status of an endpoint, use the DescribeEndpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeEndpoint.html)
436// API.
437//
438// For an example, see Exercise 1: Using the K-Means Algorithm Provided by Amazon
439// SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/ex1.html).
440//
441// If any of the models hosted at this endpoint get model data from an Amazon
442// S3 location, Amazon SageMaker uses AWS Security Token Service to download
443// model artifacts from the S3 path you provided. AWS STS is activated in your
444// IAM user account by default. If you previously deactivated AWS STS for a
445// region, you need to reactivate AWS STS for that region. For more information,
446// see Activating and Deactivating AWS STS i an AWS Region (IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)
447// in the AWS Identity and Access Management User Guide.
448//
449// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
450// with awserr.Error's Code and Message methods to get detailed information about
451// the error.
452//
453// See the AWS API reference guide for Amazon SageMaker Service's
454// API operation CreateEndpoint for usage and error information.
455//
456// Returned Error Codes:
457//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
458//   You have exceeded an Amazon SageMaker resource limit. For example, you might
459//   have too many training jobs created.
460//
461// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateEndpoint
462func (c *SageMaker) CreateEndpoint(input *CreateEndpointInput) (*CreateEndpointOutput, error) {
463	req, out := c.CreateEndpointRequest(input)
464	return out, req.Send()
465}
466
467// CreateEndpointWithContext is the same as CreateEndpoint with the addition of
468// the ability to pass a context and additional request options.
469//
470// See CreateEndpoint for details on how to use this API operation.
471//
472// The context must be non-nil and will be used for request cancellation. If
473// the context is nil a panic will occur. In the future the SDK may create
474// sub-contexts for http.Requests. See https://golang.org/pkg/context/
475// for more information on using Contexts.
476func (c *SageMaker) CreateEndpointWithContext(ctx aws.Context, input *CreateEndpointInput, opts ...request.Option) (*CreateEndpointOutput, error) {
477	req, out := c.CreateEndpointRequest(input)
478	req.SetContext(ctx)
479	req.ApplyOptions(opts...)
480	return out, req.Send()
481}
482
483const opCreateEndpointConfig = "CreateEndpointConfig"
484
485// CreateEndpointConfigRequest generates a "aws/request.Request" representing the
486// client's request for the CreateEndpointConfig operation. The "output" return
487// value will be populated with the request's response once the request completes
488// successfully.
489//
490// Use "Send" method on the returned Request to send the API call to the service.
491// the "output" return value is not valid until after Send returns without error.
492//
493// See CreateEndpointConfig for more information on using the CreateEndpointConfig
494// API call, and error handling.
495//
496// This method is useful when you want to inject custom logic or configuration
497// into the SDK's request lifecycle. Such as custom headers, or retry logic.
498//
499//
500//    // Example sending a request using the CreateEndpointConfigRequest method.
501//    req, resp := client.CreateEndpointConfigRequest(params)
502//
503//    err := req.Send()
504//    if err == nil { // resp is now filled
505//        fmt.Println(resp)
506//    }
507//
508// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateEndpointConfig
509func (c *SageMaker) CreateEndpointConfigRequest(input *CreateEndpointConfigInput) (req *request.Request, output *CreateEndpointConfigOutput) {
510	op := &request.Operation{
511		Name:       opCreateEndpointConfig,
512		HTTPMethod: "POST",
513		HTTPPath:   "/",
514	}
515
516	if input == nil {
517		input = &CreateEndpointConfigInput{}
518	}
519
520	output = &CreateEndpointConfigOutput{}
521	req = c.newRequest(op, input, output)
522	return
523}
524
525// CreateEndpointConfig API operation for Amazon SageMaker Service.
526//
527// Creates an endpoint configuration that Amazon SageMaker hosting services
528// uses to deploy models. In the configuration, you identify one or more models,
529// created using the CreateModel API, to deploy and the resources that you want
530// Amazon SageMaker to provision. Then you call the CreateEndpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpoint.html)
531// API.
532//
533// Use this API only if you want to use Amazon SageMaker hosting services to
534// deploy models into production.
535//
536// In the request, you define one or more ProductionVariants, each of which
537// identifies a model. Each ProductionVariant parameter also describes the resources
538// that you want Amazon SageMaker to provision. This includes the number and
539// type of ML compute instances to deploy.
540//
541// If you are hosting multiple models, you also assign a VariantWeight to specify
542// how much traffic you want to allocate to each model. For example, suppose
543// that you want to host two models, A and B, and you assign traffic weight
544// 2 for model A and 1 for model B. Amazon SageMaker distributes two-thirds
545// of the traffic to Model A, and one-third to model B.
546//
547// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
548// with awserr.Error's Code and Message methods to get detailed information about
549// the error.
550//
551// See the AWS API reference guide for Amazon SageMaker Service's
552// API operation CreateEndpointConfig for usage and error information.
553//
554// Returned Error Codes:
555//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
556//   You have exceeded an Amazon SageMaker resource limit. For example, you might
557//   have too many training jobs created.
558//
559// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateEndpointConfig
560func (c *SageMaker) CreateEndpointConfig(input *CreateEndpointConfigInput) (*CreateEndpointConfigOutput, error) {
561	req, out := c.CreateEndpointConfigRequest(input)
562	return out, req.Send()
563}
564
565// CreateEndpointConfigWithContext is the same as CreateEndpointConfig with the addition of
566// the ability to pass a context and additional request options.
567//
568// See CreateEndpointConfig for details on how to use this API operation.
569//
570// The context must be non-nil and will be used for request cancellation. If
571// the context is nil a panic will occur. In the future the SDK may create
572// sub-contexts for http.Requests. See https://golang.org/pkg/context/
573// for more information on using Contexts.
574func (c *SageMaker) CreateEndpointConfigWithContext(ctx aws.Context, input *CreateEndpointConfigInput, opts ...request.Option) (*CreateEndpointConfigOutput, error) {
575	req, out := c.CreateEndpointConfigRequest(input)
576	req.SetContext(ctx)
577	req.ApplyOptions(opts...)
578	return out, req.Send()
579}
580
581const opCreateHyperParameterTuningJob = "CreateHyperParameterTuningJob"
582
583// CreateHyperParameterTuningJobRequest generates a "aws/request.Request" representing the
584// client's request for the CreateHyperParameterTuningJob operation. The "output" return
585// value will be populated with the request's response once the request completes
586// successfully.
587//
588// Use "Send" method on the returned Request to send the API call to the service.
589// the "output" return value is not valid until after Send returns without error.
590//
591// See CreateHyperParameterTuningJob for more information on using the CreateHyperParameterTuningJob
592// API call, and error handling.
593//
594// This method is useful when you want to inject custom logic or configuration
595// into the SDK's request lifecycle. Such as custom headers, or retry logic.
596//
597//
598//    // Example sending a request using the CreateHyperParameterTuningJobRequest method.
599//    req, resp := client.CreateHyperParameterTuningJobRequest(params)
600//
601//    err := req.Send()
602//    if err == nil { // resp is now filled
603//        fmt.Println(resp)
604//    }
605//
606// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateHyperParameterTuningJob
607func (c *SageMaker) CreateHyperParameterTuningJobRequest(input *CreateHyperParameterTuningJobInput) (req *request.Request, output *CreateHyperParameterTuningJobOutput) {
608	op := &request.Operation{
609		Name:       opCreateHyperParameterTuningJob,
610		HTTPMethod: "POST",
611		HTTPPath:   "/",
612	}
613
614	if input == nil {
615		input = &CreateHyperParameterTuningJobInput{}
616	}
617
618	output = &CreateHyperParameterTuningJobOutput{}
619	req = c.newRequest(op, input, output)
620	return
621}
622
623// CreateHyperParameterTuningJob API operation for Amazon SageMaker Service.
624//
625// Starts a hyperparameter tuning job. A hyperparameter tuning job finds the
626// best version of a model by running many training jobs on your dataset using
627// the algorithm you choose and values for hyperparameters within ranges that
628// you specify. It then chooses the hyperparameter values that result in a model
629// that performs the best, as measured by an objective metric that you choose.
630//
631// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
632// with awserr.Error's Code and Message methods to get detailed information about
633// the error.
634//
635// See the AWS API reference guide for Amazon SageMaker Service's
636// API operation CreateHyperParameterTuningJob for usage and error information.
637//
638// Returned Error Codes:
639//   * ErrCodeResourceInUse "ResourceInUse"
640//   Resource being accessed is in use.
641//
642//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
643//   You have exceeded an Amazon SageMaker resource limit. For example, you might
644//   have too many training jobs created.
645//
646// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateHyperParameterTuningJob
647func (c *SageMaker) CreateHyperParameterTuningJob(input *CreateHyperParameterTuningJobInput) (*CreateHyperParameterTuningJobOutput, error) {
648	req, out := c.CreateHyperParameterTuningJobRequest(input)
649	return out, req.Send()
650}
651
652// CreateHyperParameterTuningJobWithContext is the same as CreateHyperParameterTuningJob with the addition of
653// the ability to pass a context and additional request options.
654//
655// See CreateHyperParameterTuningJob for details on how to use this API operation.
656//
657// The context must be non-nil and will be used for request cancellation. If
658// the context is nil a panic will occur. In the future the SDK may create
659// sub-contexts for http.Requests. See https://golang.org/pkg/context/
660// for more information on using Contexts.
661func (c *SageMaker) CreateHyperParameterTuningJobWithContext(ctx aws.Context, input *CreateHyperParameterTuningJobInput, opts ...request.Option) (*CreateHyperParameterTuningJobOutput, error) {
662	req, out := c.CreateHyperParameterTuningJobRequest(input)
663	req.SetContext(ctx)
664	req.ApplyOptions(opts...)
665	return out, req.Send()
666}
667
668const opCreateLabelingJob = "CreateLabelingJob"
669
670// CreateLabelingJobRequest generates a "aws/request.Request" representing the
671// client's request for the CreateLabelingJob operation. The "output" return
672// value will be populated with the request's response once the request completes
673// successfully.
674//
675// Use "Send" method on the returned Request to send the API call to the service.
676// the "output" return value is not valid until after Send returns without error.
677//
678// See CreateLabelingJob for more information on using the CreateLabelingJob
679// API call, and error handling.
680//
681// This method is useful when you want to inject custom logic or configuration
682// into the SDK's request lifecycle. Such as custom headers, or retry logic.
683//
684//
685//    // Example sending a request using the CreateLabelingJobRequest method.
686//    req, resp := client.CreateLabelingJobRequest(params)
687//
688//    err := req.Send()
689//    if err == nil { // resp is now filled
690//        fmt.Println(resp)
691//    }
692//
693// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateLabelingJob
694func (c *SageMaker) CreateLabelingJobRequest(input *CreateLabelingJobInput) (req *request.Request, output *CreateLabelingJobOutput) {
695	op := &request.Operation{
696		Name:       opCreateLabelingJob,
697		HTTPMethod: "POST",
698		HTTPPath:   "/",
699	}
700
701	if input == nil {
702		input = &CreateLabelingJobInput{}
703	}
704
705	output = &CreateLabelingJobOutput{}
706	req = c.newRequest(op, input, output)
707	return
708}
709
710// CreateLabelingJob API operation for Amazon SageMaker Service.
711//
712// Creates a job that uses workers to label the data objects in your input dataset.
713// You can use the labeled data to train machine learning models.
714//
715// You can select your workforce from one of three providers:
716//
717//    * A private workforce that you create. It can include employees, contractors,
718//    and outside experts. Use a private workforce when want the data to stay
719//    within your organization or when a specific set of skills is required.
720//
721//    * One or more vendors that you select from the AWS Marketplace. Vendors
722//    provide expertise in specific areas.
723//
724//    * The Amazon Mechanical Turk workforce. This is the largest workforce,
725//    but it should only be used for public data or data that has been stripped
726//    of any personally identifiable information.
727//
728// You can also use automated data labeling to reduce the number of data objects
729// that need to be labeled by a human. Automated data labeling uses active learning
730// to determine if a data object can be labeled by machine or if it needs to
731// be sent to a human worker. For more information, see Using Automated Data
732// Labeling (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html).
733//
734// The data objects to be labeled are contained in an Amazon S3 bucket. You
735// create a manifest file that describes the location of each object. For more
736// information, see Using Input and Output Data (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-data.html).
737//
738// The output can be used as the manifest file for another labeling job or as
739// training data for your machine learning models.
740//
741// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
742// with awserr.Error's Code and Message methods to get detailed information about
743// the error.
744//
745// See the AWS API reference guide for Amazon SageMaker Service's
746// API operation CreateLabelingJob for usage and error information.
747//
748// Returned Error Codes:
749//   * ErrCodeResourceInUse "ResourceInUse"
750//   Resource being accessed is in use.
751//
752//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
753//   You have exceeded an Amazon SageMaker resource limit. For example, you might
754//   have too many training jobs created.
755//
756// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateLabelingJob
757func (c *SageMaker) CreateLabelingJob(input *CreateLabelingJobInput) (*CreateLabelingJobOutput, error) {
758	req, out := c.CreateLabelingJobRequest(input)
759	return out, req.Send()
760}
761
762// CreateLabelingJobWithContext is the same as CreateLabelingJob with the addition of
763// the ability to pass a context and additional request options.
764//
765// See CreateLabelingJob for details on how to use this API operation.
766//
767// The context must be non-nil and will be used for request cancellation. If
768// the context is nil a panic will occur. In the future the SDK may create
769// sub-contexts for http.Requests. See https://golang.org/pkg/context/
770// for more information on using Contexts.
771func (c *SageMaker) CreateLabelingJobWithContext(ctx aws.Context, input *CreateLabelingJobInput, opts ...request.Option) (*CreateLabelingJobOutput, error) {
772	req, out := c.CreateLabelingJobRequest(input)
773	req.SetContext(ctx)
774	req.ApplyOptions(opts...)
775	return out, req.Send()
776}
777
778const opCreateModel = "CreateModel"
779
780// CreateModelRequest generates a "aws/request.Request" representing the
781// client's request for the CreateModel operation. The "output" return
782// value will be populated with the request's response once the request completes
783// successfully.
784//
785// Use "Send" method on the returned Request to send the API call to the service.
786// the "output" return value is not valid until after Send returns without error.
787//
788// See CreateModel for more information on using the CreateModel
789// API call, and error handling.
790//
791// This method is useful when you want to inject custom logic or configuration
792// into the SDK's request lifecycle. Such as custom headers, or retry logic.
793//
794//
795//    // Example sending a request using the CreateModelRequest method.
796//    req, resp := client.CreateModelRequest(params)
797//
798//    err := req.Send()
799//    if err == nil { // resp is now filled
800//        fmt.Println(resp)
801//    }
802//
803// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateModel
804func (c *SageMaker) CreateModelRequest(input *CreateModelInput) (req *request.Request, output *CreateModelOutput) {
805	op := &request.Operation{
806		Name:       opCreateModel,
807		HTTPMethod: "POST",
808		HTTPPath:   "/",
809	}
810
811	if input == nil {
812		input = &CreateModelInput{}
813	}
814
815	output = &CreateModelOutput{}
816	req = c.newRequest(op, input, output)
817	return
818}
819
820// CreateModel API operation for Amazon SageMaker Service.
821//
822// Creates a model in Amazon SageMaker. In the request, you name the model and
823// describe a primary container. For the primary container, you specify the
824// docker image containing inference code, artifacts (from prior training),
825// and custom environment map that the inference code uses when you deploy the
826// model for predictions.
827//
828// Use this API to create a model if you want to use Amazon SageMaker hosting
829// services or run a batch transform job.
830//
831// To host your model, you create an endpoint configuration with the CreateEndpointConfig
832// API, and then create an endpoint with the CreateEndpoint API. Amazon SageMaker
833// then deploys all of the containers that you defined for the model in the
834// hosting environment.
835//
836// To run a batch transform using your model, you start a job with the CreateTransformJob
837// API. Amazon SageMaker uses your model and your dataset to get inferences
838// which are then saved to a specified S3 location.
839//
840// In the CreateModel request, you must define a container with the PrimaryContainer
841// parameter.
842//
843// In the request, you also provide an IAM role that Amazon SageMaker can assume
844// to access model artifacts and docker image for deployment on ML compute hosting
845// instances or for batch transform jobs. In addition, you also use the IAM
846// role to manage permissions the inference code needs. For example, if the
847// inference code access any other AWS resources, you grant necessary permissions
848// via this role.
849//
850// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
851// with awserr.Error's Code and Message methods to get detailed information about
852// the error.
853//
854// See the AWS API reference guide for Amazon SageMaker Service's
855// API operation CreateModel for usage and error information.
856//
857// Returned Error Codes:
858//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
859//   You have exceeded an Amazon SageMaker resource limit. For example, you might
860//   have too many training jobs created.
861//
862// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateModel
863func (c *SageMaker) CreateModel(input *CreateModelInput) (*CreateModelOutput, error) {
864	req, out := c.CreateModelRequest(input)
865	return out, req.Send()
866}
867
868// CreateModelWithContext is the same as CreateModel with the addition of
869// the ability to pass a context and additional request options.
870//
871// See CreateModel for details on how to use this API operation.
872//
873// The context must be non-nil and will be used for request cancellation. If
874// the context is nil a panic will occur. In the future the SDK may create
875// sub-contexts for http.Requests. See https://golang.org/pkg/context/
876// for more information on using Contexts.
877func (c *SageMaker) CreateModelWithContext(ctx aws.Context, input *CreateModelInput, opts ...request.Option) (*CreateModelOutput, error) {
878	req, out := c.CreateModelRequest(input)
879	req.SetContext(ctx)
880	req.ApplyOptions(opts...)
881	return out, req.Send()
882}
883
884const opCreateModelPackage = "CreateModelPackage"
885
886// CreateModelPackageRequest generates a "aws/request.Request" representing the
887// client's request for the CreateModelPackage operation. The "output" return
888// value will be populated with the request's response once the request completes
889// successfully.
890//
891// Use "Send" method on the returned Request to send the API call to the service.
892// the "output" return value is not valid until after Send returns without error.
893//
894// See CreateModelPackage for more information on using the CreateModelPackage
895// API call, and error handling.
896//
897// This method is useful when you want to inject custom logic or configuration
898// into the SDK's request lifecycle. Such as custom headers, or retry logic.
899//
900//
901//    // Example sending a request using the CreateModelPackageRequest method.
902//    req, resp := client.CreateModelPackageRequest(params)
903//
904//    err := req.Send()
905//    if err == nil { // resp is now filled
906//        fmt.Println(resp)
907//    }
908//
909// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateModelPackage
910func (c *SageMaker) CreateModelPackageRequest(input *CreateModelPackageInput) (req *request.Request, output *CreateModelPackageOutput) {
911	op := &request.Operation{
912		Name:       opCreateModelPackage,
913		HTTPMethod: "POST",
914		HTTPPath:   "/",
915	}
916
917	if input == nil {
918		input = &CreateModelPackageInput{}
919	}
920
921	output = &CreateModelPackageOutput{}
922	req = c.newRequest(op, input, output)
923	return
924}
925
926// CreateModelPackage API operation for Amazon SageMaker Service.
927//
928// Creates a model package that you can use to create Amazon SageMaker models
929// or list on AWS Marketplace. Buyers can subscribe to model packages listed
930// on AWS Marketplace to create models in Amazon SageMaker.
931//
932// To create a model package by specifying a Docker container that contains
933// your inference code and the Amazon S3 location of your model artifacts, provide
934// values for InferenceSpecification. To create a model from an algorithm resource
935// that you created or subscribed to in AWS Marketplace, provide a value for
936// SourceAlgorithmSpecification.
937//
938// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
939// with awserr.Error's Code and Message methods to get detailed information about
940// the error.
941//
942// See the AWS API reference guide for Amazon SageMaker Service's
943// API operation CreateModelPackage for usage and error information.
944// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateModelPackage
945func (c *SageMaker) CreateModelPackage(input *CreateModelPackageInput) (*CreateModelPackageOutput, error) {
946	req, out := c.CreateModelPackageRequest(input)
947	return out, req.Send()
948}
949
950// CreateModelPackageWithContext is the same as CreateModelPackage with the addition of
951// the ability to pass a context and additional request options.
952//
953// See CreateModelPackage for details on how to use this API operation.
954//
955// The context must be non-nil and will be used for request cancellation. If
956// the context is nil a panic will occur. In the future the SDK may create
957// sub-contexts for http.Requests. See https://golang.org/pkg/context/
958// for more information on using Contexts.
959func (c *SageMaker) CreateModelPackageWithContext(ctx aws.Context, input *CreateModelPackageInput, opts ...request.Option) (*CreateModelPackageOutput, error) {
960	req, out := c.CreateModelPackageRequest(input)
961	req.SetContext(ctx)
962	req.ApplyOptions(opts...)
963	return out, req.Send()
964}
965
966const opCreateNotebookInstance = "CreateNotebookInstance"
967
968// CreateNotebookInstanceRequest generates a "aws/request.Request" representing the
969// client's request for the CreateNotebookInstance operation. The "output" return
970// value will be populated with the request's response once the request completes
971// successfully.
972//
973// Use "Send" method on the returned Request to send the API call to the service.
974// the "output" return value is not valid until after Send returns without error.
975//
976// See CreateNotebookInstance for more information on using the CreateNotebookInstance
977// API call, and error handling.
978//
979// This method is useful when you want to inject custom logic or configuration
980// into the SDK's request lifecycle. Such as custom headers, or retry logic.
981//
982//
983//    // Example sending a request using the CreateNotebookInstanceRequest method.
984//    req, resp := client.CreateNotebookInstanceRequest(params)
985//
986//    err := req.Send()
987//    if err == nil { // resp is now filled
988//        fmt.Println(resp)
989//    }
990//
991// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateNotebookInstance
992func (c *SageMaker) CreateNotebookInstanceRequest(input *CreateNotebookInstanceInput) (req *request.Request, output *CreateNotebookInstanceOutput) {
993	op := &request.Operation{
994		Name:       opCreateNotebookInstance,
995		HTTPMethod: "POST",
996		HTTPPath:   "/",
997	}
998
999	if input == nil {
1000		input = &CreateNotebookInstanceInput{}
1001	}
1002
1003	output = &CreateNotebookInstanceOutput{}
1004	req = c.newRequest(op, input, output)
1005	return
1006}
1007
1008// CreateNotebookInstance API operation for Amazon SageMaker Service.
1009//
1010// Creates an Amazon SageMaker notebook instance. A notebook instance is a machine
1011// learning (ML) compute instance running on a Jupyter notebook.
1012//
1013// In a CreateNotebookInstance request, specify the type of ML compute instance
1014// that you want to run. Amazon SageMaker launches the instance, installs common
1015// libraries that you can use to explore datasets for model training, and attaches
1016// an ML storage volume to the notebook instance.
1017//
1018// Amazon SageMaker also provides a set of example notebooks. Each notebook
1019// demonstrates how to use Amazon SageMaker with a specific algorithm or with
1020// a machine learning framework.
1021//
1022// After receiving the request, Amazon SageMaker does the following:
1023//
1024// Creates a network interface in the Amazon SageMaker VPC.
1025//
1026// (Option) If you specified SubnetId, Amazon SageMaker creates a network interface
1027// in your own VPC, which is inferred from the subnet ID that you provide in
1028// the input. When creating this network interface, Amazon SageMaker attaches
1029// the security group that you specified in the request to the network interface
1030// that it creates in your VPC.
1031//
1032// Launches an EC2 instance of the type specified in the request in the Amazon
1033// SageMaker VPC. If you specified SubnetId of your VPC, Amazon SageMaker specifies
1034// both network interfaces when launching this instance. This enables inbound
1035// traffic from your own VPC to the notebook instance, assuming that the security
1036// groups allow it.
1037//
1038// After creating the notebook instance, Amazon SageMaker returns its Amazon
1039// Resource Name (ARN). You can't change the name of a notebook instance after
1040// you create it.
1041//
1042// After Amazon SageMaker creates the notebook instance, you can connect to
1043// the Jupyter server and work in Jupyter notebooks. For example, you can write
1044// code to explore a dataset that you can use for model training, train a model,
1045// host models by creating Amazon SageMaker endpoints, and validate hosted models.
1046//
1047// For more information, see How It Works (https://docs.aws.amazon.com/sagemaker/latest/dg/how-it-works.html).
1048//
1049// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1050// with awserr.Error's Code and Message methods to get detailed information about
1051// the error.
1052//
1053// See the AWS API reference guide for Amazon SageMaker Service's
1054// API operation CreateNotebookInstance for usage and error information.
1055//
1056// Returned Error Codes:
1057//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
1058//   You have exceeded an Amazon SageMaker resource limit. For example, you might
1059//   have too many training jobs created.
1060//
1061// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateNotebookInstance
1062func (c *SageMaker) CreateNotebookInstance(input *CreateNotebookInstanceInput) (*CreateNotebookInstanceOutput, error) {
1063	req, out := c.CreateNotebookInstanceRequest(input)
1064	return out, req.Send()
1065}
1066
1067// CreateNotebookInstanceWithContext is the same as CreateNotebookInstance with the addition of
1068// the ability to pass a context and additional request options.
1069//
1070// See CreateNotebookInstance for details on how to use this API operation.
1071//
1072// The context must be non-nil and will be used for request cancellation. If
1073// the context is nil a panic will occur. In the future the SDK may create
1074// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1075// for more information on using Contexts.
1076func (c *SageMaker) CreateNotebookInstanceWithContext(ctx aws.Context, input *CreateNotebookInstanceInput, opts ...request.Option) (*CreateNotebookInstanceOutput, error) {
1077	req, out := c.CreateNotebookInstanceRequest(input)
1078	req.SetContext(ctx)
1079	req.ApplyOptions(opts...)
1080	return out, req.Send()
1081}
1082
1083const opCreateNotebookInstanceLifecycleConfig = "CreateNotebookInstanceLifecycleConfig"
1084
1085// CreateNotebookInstanceLifecycleConfigRequest generates a "aws/request.Request" representing the
1086// client's request for the CreateNotebookInstanceLifecycleConfig operation. The "output" return
1087// value will be populated with the request's response once the request completes
1088// successfully.
1089//
1090// Use "Send" method on the returned Request to send the API call to the service.
1091// the "output" return value is not valid until after Send returns without error.
1092//
1093// See CreateNotebookInstanceLifecycleConfig for more information on using the CreateNotebookInstanceLifecycleConfig
1094// API call, and error handling.
1095//
1096// This method is useful when you want to inject custom logic or configuration
1097// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1098//
1099//
1100//    // Example sending a request using the CreateNotebookInstanceLifecycleConfigRequest method.
1101//    req, resp := client.CreateNotebookInstanceLifecycleConfigRequest(params)
1102//
1103//    err := req.Send()
1104//    if err == nil { // resp is now filled
1105//        fmt.Println(resp)
1106//    }
1107//
1108// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateNotebookInstanceLifecycleConfig
1109func (c *SageMaker) CreateNotebookInstanceLifecycleConfigRequest(input *CreateNotebookInstanceLifecycleConfigInput) (req *request.Request, output *CreateNotebookInstanceLifecycleConfigOutput) {
1110	op := &request.Operation{
1111		Name:       opCreateNotebookInstanceLifecycleConfig,
1112		HTTPMethod: "POST",
1113		HTTPPath:   "/",
1114	}
1115
1116	if input == nil {
1117		input = &CreateNotebookInstanceLifecycleConfigInput{}
1118	}
1119
1120	output = &CreateNotebookInstanceLifecycleConfigOutput{}
1121	req = c.newRequest(op, input, output)
1122	return
1123}
1124
1125// CreateNotebookInstanceLifecycleConfig API operation for Amazon SageMaker Service.
1126//
1127// Creates a lifecycle configuration that you can associate with a notebook
1128// instance. A lifecycle configuration is a collection of shell scripts that
1129// run when you create or start a notebook instance.
1130//
1131// Each lifecycle configuration script has a limit of 16384 characters.
1132//
1133// The value of the $PATH environment variable that is available to both scripts
1134// is /sbin:bin:/usr/sbin:/usr/bin.
1135//
1136// View CloudWatch Logs for notebook instance lifecycle configurations in log
1137// group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook].
1138//
1139// Lifecycle configuration scripts cannot run for longer than 5 minutes. If
1140// a script runs for longer than 5 minutes, it fails and the notebook instance
1141// is not created or started.
1142//
1143// For information about notebook instance lifestyle configurations, see Step
1144// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
1145//
1146// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1147// with awserr.Error's Code and Message methods to get detailed information about
1148// the error.
1149//
1150// See the AWS API reference guide for Amazon SageMaker Service's
1151// API operation CreateNotebookInstanceLifecycleConfig for usage and error information.
1152//
1153// Returned Error Codes:
1154//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
1155//   You have exceeded an Amazon SageMaker resource limit. For example, you might
1156//   have too many training jobs created.
1157//
1158// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateNotebookInstanceLifecycleConfig
1159func (c *SageMaker) CreateNotebookInstanceLifecycleConfig(input *CreateNotebookInstanceLifecycleConfigInput) (*CreateNotebookInstanceLifecycleConfigOutput, error) {
1160	req, out := c.CreateNotebookInstanceLifecycleConfigRequest(input)
1161	return out, req.Send()
1162}
1163
1164// CreateNotebookInstanceLifecycleConfigWithContext is the same as CreateNotebookInstanceLifecycleConfig with the addition of
1165// the ability to pass a context and additional request options.
1166//
1167// See CreateNotebookInstanceLifecycleConfig for details on how to use this API operation.
1168//
1169// The context must be non-nil and will be used for request cancellation. If
1170// the context is nil a panic will occur. In the future the SDK may create
1171// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1172// for more information on using Contexts.
1173func (c *SageMaker) CreateNotebookInstanceLifecycleConfigWithContext(ctx aws.Context, input *CreateNotebookInstanceLifecycleConfigInput, opts ...request.Option) (*CreateNotebookInstanceLifecycleConfigOutput, error) {
1174	req, out := c.CreateNotebookInstanceLifecycleConfigRequest(input)
1175	req.SetContext(ctx)
1176	req.ApplyOptions(opts...)
1177	return out, req.Send()
1178}
1179
1180const opCreatePresignedNotebookInstanceUrl = "CreatePresignedNotebookInstanceUrl"
1181
1182// CreatePresignedNotebookInstanceUrlRequest generates a "aws/request.Request" representing the
1183// client's request for the CreatePresignedNotebookInstanceUrl operation. The "output" return
1184// value will be populated with the request's response once the request completes
1185// successfully.
1186//
1187// Use "Send" method on the returned Request to send the API call to the service.
1188// the "output" return value is not valid until after Send returns without error.
1189//
1190// See CreatePresignedNotebookInstanceUrl for more information on using the CreatePresignedNotebookInstanceUrl
1191// API call, and error handling.
1192//
1193// This method is useful when you want to inject custom logic or configuration
1194// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1195//
1196//
1197//    // Example sending a request using the CreatePresignedNotebookInstanceUrlRequest method.
1198//    req, resp := client.CreatePresignedNotebookInstanceUrlRequest(params)
1199//
1200//    err := req.Send()
1201//    if err == nil { // resp is now filled
1202//        fmt.Println(resp)
1203//    }
1204//
1205// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreatePresignedNotebookInstanceUrl
1206func (c *SageMaker) CreatePresignedNotebookInstanceUrlRequest(input *CreatePresignedNotebookInstanceUrlInput) (req *request.Request, output *CreatePresignedNotebookInstanceUrlOutput) {
1207	op := &request.Operation{
1208		Name:       opCreatePresignedNotebookInstanceUrl,
1209		HTTPMethod: "POST",
1210		HTTPPath:   "/",
1211	}
1212
1213	if input == nil {
1214		input = &CreatePresignedNotebookInstanceUrlInput{}
1215	}
1216
1217	output = &CreatePresignedNotebookInstanceUrlOutput{}
1218	req = c.newRequest(op, input, output)
1219	return
1220}
1221
1222// CreatePresignedNotebookInstanceUrl API operation for Amazon SageMaker Service.
1223//
1224// Returns a URL that you can use to connect to the Jupyter server from a notebook
1225// instance. In the Amazon SageMaker console, when you choose Open next to a
1226// notebook instance, Amazon SageMaker opens a new tab showing the Jupyter server
1227// home page from the notebook instance. The console uses this API to get the
1228// URL and show the page.
1229//
1230// IAM authorization policies for this API are also enforced for every HTTP
1231// request and WebSocket frame that attempts to connect to the notebook instance.For
1232// example, you can restrict access to this API and to the URL that it returns
1233// to a list of IP addresses that you specify. Use the NotIpAddress condition
1234// operator and the aws:SourceIP condition context key to specify the list of
1235// IP addresses that you want to have access to the notebook instance. For more
1236// information, see Limit Access to a Notebook Instance by IP Address (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-ip-filter.html).
1237//
1238// The URL that you get from a call to is valid only for 5 minutes. If you try
1239// to use the URL after the 5-minute limit expires, you are directed to the
1240// AWS console sign-in page.
1241//
1242// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1243// with awserr.Error's Code and Message methods to get detailed information about
1244// the error.
1245//
1246// See the AWS API reference guide for Amazon SageMaker Service's
1247// API operation CreatePresignedNotebookInstanceUrl for usage and error information.
1248// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreatePresignedNotebookInstanceUrl
1249func (c *SageMaker) CreatePresignedNotebookInstanceUrl(input *CreatePresignedNotebookInstanceUrlInput) (*CreatePresignedNotebookInstanceUrlOutput, error) {
1250	req, out := c.CreatePresignedNotebookInstanceUrlRequest(input)
1251	return out, req.Send()
1252}
1253
1254// CreatePresignedNotebookInstanceUrlWithContext is the same as CreatePresignedNotebookInstanceUrl with the addition of
1255// the ability to pass a context and additional request options.
1256//
1257// See CreatePresignedNotebookInstanceUrl for details on how to use this API operation.
1258//
1259// The context must be non-nil and will be used for request cancellation. If
1260// the context is nil a panic will occur. In the future the SDK may create
1261// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1262// for more information on using Contexts.
1263func (c *SageMaker) CreatePresignedNotebookInstanceUrlWithContext(ctx aws.Context, input *CreatePresignedNotebookInstanceUrlInput, opts ...request.Option) (*CreatePresignedNotebookInstanceUrlOutput, error) {
1264	req, out := c.CreatePresignedNotebookInstanceUrlRequest(input)
1265	req.SetContext(ctx)
1266	req.ApplyOptions(opts...)
1267	return out, req.Send()
1268}
1269
1270const opCreateTrainingJob = "CreateTrainingJob"
1271
1272// CreateTrainingJobRequest generates a "aws/request.Request" representing the
1273// client's request for the CreateTrainingJob operation. The "output" return
1274// value will be populated with the request's response once the request completes
1275// successfully.
1276//
1277// Use "Send" method on the returned Request to send the API call to the service.
1278// the "output" return value is not valid until after Send returns without error.
1279//
1280// See CreateTrainingJob for more information on using the CreateTrainingJob
1281// API call, and error handling.
1282//
1283// This method is useful when you want to inject custom logic or configuration
1284// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1285//
1286//
1287//    // Example sending a request using the CreateTrainingJobRequest method.
1288//    req, resp := client.CreateTrainingJobRequest(params)
1289//
1290//    err := req.Send()
1291//    if err == nil { // resp is now filled
1292//        fmt.Println(resp)
1293//    }
1294//
1295// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateTrainingJob
1296func (c *SageMaker) CreateTrainingJobRequest(input *CreateTrainingJobInput) (req *request.Request, output *CreateTrainingJobOutput) {
1297	op := &request.Operation{
1298		Name:       opCreateTrainingJob,
1299		HTTPMethod: "POST",
1300		HTTPPath:   "/",
1301	}
1302
1303	if input == nil {
1304		input = &CreateTrainingJobInput{}
1305	}
1306
1307	output = &CreateTrainingJobOutput{}
1308	req = c.newRequest(op, input, output)
1309	return
1310}
1311
1312// CreateTrainingJob API operation for Amazon SageMaker Service.
1313//
1314// Starts a model training job. After training completes, Amazon SageMaker saves
1315// the resulting model artifacts to an Amazon S3 location that you specify.
1316//
1317// If you choose to host your model using Amazon SageMaker hosting services,
1318// you can use the resulting model artifacts as part of the model. You can also
1319// use the artifacts in a machine learning service other than Amazon SageMaker,
1320// provided that you know how to use them for inferences.
1321//
1322// In the request body, you provide the following:
1323//
1324//    * AlgorithmSpecification - Identifies the training algorithm to use.
1325//
1326//    * HyperParameters - Specify these algorithm-specific parameters to enable
1327//    the estimation of model parameters during training. Hyperparameters can
1328//    be tuned to optimize this learning process. For a list of hyperparameters
1329//    for each training algorithm provided by Amazon SageMaker, see Algorithms
1330//    (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
1331//
1332//    * InputDataConfig - Describes the training dataset and the Amazon S3,
1333//    EFS, or FSx location where it is stored.
1334//
1335//    * OutputDataConfig - Identifies the Amazon S3 bucket where you want Amazon
1336//    SageMaker to save the results of model training.
1337//
1338//    * ResourceConfig - Identifies the resources, ML compute instances, and
1339//    ML storage volumes to deploy for model training. In distributed training,
1340//    you specify more than one instance.
1341//
1342//    * EnableManagedSpotTraining - Optimize the cost of training machine learning
1343//    models by up to 80% by using Amazon EC2 Spot instances. For more information,
1344//    see Managed Spot Training (https://docs.aws.amazon.com/sagemaker/latest/dg/model-managed-spot-training.html).
1345//
1346//    * RoleARN - The Amazon Resource Number (ARN) that Amazon SageMaker assumes
1347//    to perform tasks on your behalf during model training. You must grant
1348//    this role the necessary permissions so that Amazon SageMaker can successfully
1349//    complete model training.
1350//
1351//    * StoppingCondition - To help cap training costs, use MaxRuntimeInSeconds
1352//    to set a time limit for training. Use MaxWaitTimeInSeconds to specify
1353//    how long you are willing to to wait for a managed spot training job to
1354//    complete.
1355//
1356// For more information about Amazon SageMaker, see How It Works (https://docs.aws.amazon.com/sagemaker/latest/dg/how-it-works.html).
1357//
1358// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1359// with awserr.Error's Code and Message methods to get detailed information about
1360// the error.
1361//
1362// See the AWS API reference guide for Amazon SageMaker Service's
1363// API operation CreateTrainingJob for usage and error information.
1364//
1365// Returned Error Codes:
1366//   * ErrCodeResourceInUse "ResourceInUse"
1367//   Resource being accessed is in use.
1368//
1369//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
1370//   You have exceeded an Amazon SageMaker resource limit. For example, you might
1371//   have too many training jobs created.
1372//
1373// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateTrainingJob
1374func (c *SageMaker) CreateTrainingJob(input *CreateTrainingJobInput) (*CreateTrainingJobOutput, error) {
1375	req, out := c.CreateTrainingJobRequest(input)
1376	return out, req.Send()
1377}
1378
1379// CreateTrainingJobWithContext is the same as CreateTrainingJob with the addition of
1380// the ability to pass a context and additional request options.
1381//
1382// See CreateTrainingJob for details on how to use this API operation.
1383//
1384// The context must be non-nil and will be used for request cancellation. If
1385// the context is nil a panic will occur. In the future the SDK may create
1386// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1387// for more information on using Contexts.
1388func (c *SageMaker) CreateTrainingJobWithContext(ctx aws.Context, input *CreateTrainingJobInput, opts ...request.Option) (*CreateTrainingJobOutput, error) {
1389	req, out := c.CreateTrainingJobRequest(input)
1390	req.SetContext(ctx)
1391	req.ApplyOptions(opts...)
1392	return out, req.Send()
1393}
1394
1395const opCreateTransformJob = "CreateTransformJob"
1396
1397// CreateTransformJobRequest generates a "aws/request.Request" representing the
1398// client's request for the CreateTransformJob operation. The "output" return
1399// value will be populated with the request's response once the request completes
1400// successfully.
1401//
1402// Use "Send" method on the returned Request to send the API call to the service.
1403// the "output" return value is not valid until after Send returns without error.
1404//
1405// See CreateTransformJob for more information on using the CreateTransformJob
1406// API call, and error handling.
1407//
1408// This method is useful when you want to inject custom logic or configuration
1409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1410//
1411//
1412//    // Example sending a request using the CreateTransformJobRequest method.
1413//    req, resp := client.CreateTransformJobRequest(params)
1414//
1415//    err := req.Send()
1416//    if err == nil { // resp is now filled
1417//        fmt.Println(resp)
1418//    }
1419//
1420// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateTransformJob
1421func (c *SageMaker) CreateTransformJobRequest(input *CreateTransformJobInput) (req *request.Request, output *CreateTransformJobOutput) {
1422	op := &request.Operation{
1423		Name:       opCreateTransformJob,
1424		HTTPMethod: "POST",
1425		HTTPPath:   "/",
1426	}
1427
1428	if input == nil {
1429		input = &CreateTransformJobInput{}
1430	}
1431
1432	output = &CreateTransformJobOutput{}
1433	req = c.newRequest(op, input, output)
1434	return
1435}
1436
1437// CreateTransformJob API operation for Amazon SageMaker Service.
1438//
1439// Starts a transform job. A transform job uses a trained model to get inferences
1440// on a dataset and saves these results to an Amazon S3 location that you specify.
1441//
1442// To perform batch transformations, you create a transform job and use the
1443// data that you have readily available.
1444//
1445// In the request body, you provide the following:
1446//
1447//    * TransformJobName - Identifies the transform job. The name must be unique
1448//    within an AWS Region in an AWS account.
1449//
1450//    * ModelName - Identifies the model to use. ModelName must be the name
1451//    of an existing Amazon SageMaker model in the same AWS Region and AWS account.
1452//    For information on creating a model, see CreateModel.
1453//
1454//    * TransformInput - Describes the dataset to be transformed and the Amazon
1455//    S3 location where it is stored.
1456//
1457//    * TransformOutput - Identifies the Amazon S3 location where you want Amazon
1458//    SageMaker to save the results from the transform job.
1459//
1460//    * TransformResources - Identifies the ML compute instances for the transform
1461//    job.
1462//
1463// For more information about how batch transformation works Amazon SageMaker,
1464// see How It Works (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html).
1465//
1466// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1467// with awserr.Error's Code and Message methods to get detailed information about
1468// the error.
1469//
1470// See the AWS API reference guide for Amazon SageMaker Service's
1471// API operation CreateTransformJob for usage and error information.
1472//
1473// Returned Error Codes:
1474//   * ErrCodeResourceInUse "ResourceInUse"
1475//   Resource being accessed is in use.
1476//
1477//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
1478//   You have exceeded an Amazon SageMaker resource limit. For example, you might
1479//   have too many training jobs created.
1480//
1481// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateTransformJob
1482func (c *SageMaker) CreateTransformJob(input *CreateTransformJobInput) (*CreateTransformJobOutput, error) {
1483	req, out := c.CreateTransformJobRequest(input)
1484	return out, req.Send()
1485}
1486
1487// CreateTransformJobWithContext is the same as CreateTransformJob with the addition of
1488// the ability to pass a context and additional request options.
1489//
1490// See CreateTransformJob for details on how to use this API operation.
1491//
1492// The context must be non-nil and will be used for request cancellation. If
1493// the context is nil a panic will occur. In the future the SDK may create
1494// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1495// for more information on using Contexts.
1496func (c *SageMaker) CreateTransformJobWithContext(ctx aws.Context, input *CreateTransformJobInput, opts ...request.Option) (*CreateTransformJobOutput, error) {
1497	req, out := c.CreateTransformJobRequest(input)
1498	req.SetContext(ctx)
1499	req.ApplyOptions(opts...)
1500	return out, req.Send()
1501}
1502
1503const opCreateWorkteam = "CreateWorkteam"
1504
1505// CreateWorkteamRequest generates a "aws/request.Request" representing the
1506// client's request for the CreateWorkteam operation. The "output" return
1507// value will be populated with the request's response once the request completes
1508// successfully.
1509//
1510// Use "Send" method on the returned Request to send the API call to the service.
1511// the "output" return value is not valid until after Send returns without error.
1512//
1513// See CreateWorkteam for more information on using the CreateWorkteam
1514// API call, and error handling.
1515//
1516// This method is useful when you want to inject custom logic or configuration
1517// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1518//
1519//
1520//    // Example sending a request using the CreateWorkteamRequest method.
1521//    req, resp := client.CreateWorkteamRequest(params)
1522//
1523//    err := req.Send()
1524//    if err == nil { // resp is now filled
1525//        fmt.Println(resp)
1526//    }
1527//
1528// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateWorkteam
1529func (c *SageMaker) CreateWorkteamRequest(input *CreateWorkteamInput) (req *request.Request, output *CreateWorkteamOutput) {
1530	op := &request.Operation{
1531		Name:       opCreateWorkteam,
1532		HTTPMethod: "POST",
1533		HTTPPath:   "/",
1534	}
1535
1536	if input == nil {
1537		input = &CreateWorkteamInput{}
1538	}
1539
1540	output = &CreateWorkteamOutput{}
1541	req = c.newRequest(op, input, output)
1542	return
1543}
1544
1545// CreateWorkteam API operation for Amazon SageMaker Service.
1546//
1547// Creates a new work team for labeling your data. A work team is defined by
1548// one or more Amazon Cognito user pools. You must first create the user pools
1549// before you can create a work team.
1550//
1551// You cannot create more than 25 work teams in an account and region.
1552//
1553// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1554// with awserr.Error's Code and Message methods to get detailed information about
1555// the error.
1556//
1557// See the AWS API reference guide for Amazon SageMaker Service's
1558// API operation CreateWorkteam for usage and error information.
1559//
1560// Returned Error Codes:
1561//   * ErrCodeResourceInUse "ResourceInUse"
1562//   Resource being accessed is in use.
1563//
1564//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
1565//   You have exceeded an Amazon SageMaker resource limit. For example, you might
1566//   have too many training jobs created.
1567//
1568// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateWorkteam
1569func (c *SageMaker) CreateWorkteam(input *CreateWorkteamInput) (*CreateWorkteamOutput, error) {
1570	req, out := c.CreateWorkteamRequest(input)
1571	return out, req.Send()
1572}
1573
1574// CreateWorkteamWithContext is the same as CreateWorkteam with the addition of
1575// the ability to pass a context and additional request options.
1576//
1577// See CreateWorkteam for details on how to use this API operation.
1578//
1579// The context must be non-nil and will be used for request cancellation. If
1580// the context is nil a panic will occur. In the future the SDK may create
1581// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1582// for more information on using Contexts.
1583func (c *SageMaker) CreateWorkteamWithContext(ctx aws.Context, input *CreateWorkteamInput, opts ...request.Option) (*CreateWorkteamOutput, error) {
1584	req, out := c.CreateWorkteamRequest(input)
1585	req.SetContext(ctx)
1586	req.ApplyOptions(opts...)
1587	return out, req.Send()
1588}
1589
1590const opDeleteAlgorithm = "DeleteAlgorithm"
1591
1592// DeleteAlgorithmRequest generates a "aws/request.Request" representing the
1593// client's request for the DeleteAlgorithm operation. The "output" return
1594// value will be populated with the request's response once the request completes
1595// successfully.
1596//
1597// Use "Send" method on the returned Request to send the API call to the service.
1598// the "output" return value is not valid until after Send returns without error.
1599//
1600// See DeleteAlgorithm for more information on using the DeleteAlgorithm
1601// API call, and error handling.
1602//
1603// This method is useful when you want to inject custom logic or configuration
1604// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1605//
1606//
1607//    // Example sending a request using the DeleteAlgorithmRequest method.
1608//    req, resp := client.DeleteAlgorithmRequest(params)
1609//
1610//    err := req.Send()
1611//    if err == nil { // resp is now filled
1612//        fmt.Println(resp)
1613//    }
1614//
1615// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAlgorithm
1616func (c *SageMaker) DeleteAlgorithmRequest(input *DeleteAlgorithmInput) (req *request.Request, output *DeleteAlgorithmOutput) {
1617	op := &request.Operation{
1618		Name:       opDeleteAlgorithm,
1619		HTTPMethod: "POST",
1620		HTTPPath:   "/",
1621	}
1622
1623	if input == nil {
1624		input = &DeleteAlgorithmInput{}
1625	}
1626
1627	output = &DeleteAlgorithmOutput{}
1628	req = c.newRequest(op, input, output)
1629	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1630	return
1631}
1632
1633// DeleteAlgorithm API operation for Amazon SageMaker Service.
1634//
1635// Removes the specified algorithm from your account.
1636//
1637// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1638// with awserr.Error's Code and Message methods to get detailed information about
1639// the error.
1640//
1641// See the AWS API reference guide for Amazon SageMaker Service's
1642// API operation DeleteAlgorithm for usage and error information.
1643// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAlgorithm
1644func (c *SageMaker) DeleteAlgorithm(input *DeleteAlgorithmInput) (*DeleteAlgorithmOutput, error) {
1645	req, out := c.DeleteAlgorithmRequest(input)
1646	return out, req.Send()
1647}
1648
1649// DeleteAlgorithmWithContext is the same as DeleteAlgorithm with the addition of
1650// the ability to pass a context and additional request options.
1651//
1652// See DeleteAlgorithm for details on how to use this API operation.
1653//
1654// The context must be non-nil and will be used for request cancellation. If
1655// the context is nil a panic will occur. In the future the SDK may create
1656// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1657// for more information on using Contexts.
1658func (c *SageMaker) DeleteAlgorithmWithContext(ctx aws.Context, input *DeleteAlgorithmInput, opts ...request.Option) (*DeleteAlgorithmOutput, error) {
1659	req, out := c.DeleteAlgorithmRequest(input)
1660	req.SetContext(ctx)
1661	req.ApplyOptions(opts...)
1662	return out, req.Send()
1663}
1664
1665const opDeleteCodeRepository = "DeleteCodeRepository"
1666
1667// DeleteCodeRepositoryRequest generates a "aws/request.Request" representing the
1668// client's request for the DeleteCodeRepository operation. The "output" return
1669// value will be populated with the request's response once the request completes
1670// successfully.
1671//
1672// Use "Send" method on the returned Request to send the API call to the service.
1673// the "output" return value is not valid until after Send returns without error.
1674//
1675// See DeleteCodeRepository for more information on using the DeleteCodeRepository
1676// API call, and error handling.
1677//
1678// This method is useful when you want to inject custom logic or configuration
1679// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1680//
1681//
1682//    // Example sending a request using the DeleteCodeRepositoryRequest method.
1683//    req, resp := client.DeleteCodeRepositoryRequest(params)
1684//
1685//    err := req.Send()
1686//    if err == nil { // resp is now filled
1687//        fmt.Println(resp)
1688//    }
1689//
1690// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteCodeRepository
1691func (c *SageMaker) DeleteCodeRepositoryRequest(input *DeleteCodeRepositoryInput) (req *request.Request, output *DeleteCodeRepositoryOutput) {
1692	op := &request.Operation{
1693		Name:       opDeleteCodeRepository,
1694		HTTPMethod: "POST",
1695		HTTPPath:   "/",
1696	}
1697
1698	if input == nil {
1699		input = &DeleteCodeRepositoryInput{}
1700	}
1701
1702	output = &DeleteCodeRepositoryOutput{}
1703	req = c.newRequest(op, input, output)
1704	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1705	return
1706}
1707
1708// DeleteCodeRepository API operation for Amazon SageMaker Service.
1709//
1710// Deletes the specified Git repository from your account.
1711//
1712// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1713// with awserr.Error's Code and Message methods to get detailed information about
1714// the error.
1715//
1716// See the AWS API reference guide for Amazon SageMaker Service's
1717// API operation DeleteCodeRepository for usage and error information.
1718// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteCodeRepository
1719func (c *SageMaker) DeleteCodeRepository(input *DeleteCodeRepositoryInput) (*DeleteCodeRepositoryOutput, error) {
1720	req, out := c.DeleteCodeRepositoryRequest(input)
1721	return out, req.Send()
1722}
1723
1724// DeleteCodeRepositoryWithContext is the same as DeleteCodeRepository with the addition of
1725// the ability to pass a context and additional request options.
1726//
1727// See DeleteCodeRepository for details on how to use this API operation.
1728//
1729// The context must be non-nil and will be used for request cancellation. If
1730// the context is nil a panic will occur. In the future the SDK may create
1731// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1732// for more information on using Contexts.
1733func (c *SageMaker) DeleteCodeRepositoryWithContext(ctx aws.Context, input *DeleteCodeRepositoryInput, opts ...request.Option) (*DeleteCodeRepositoryOutput, error) {
1734	req, out := c.DeleteCodeRepositoryRequest(input)
1735	req.SetContext(ctx)
1736	req.ApplyOptions(opts...)
1737	return out, req.Send()
1738}
1739
1740const opDeleteEndpoint = "DeleteEndpoint"
1741
1742// DeleteEndpointRequest generates a "aws/request.Request" representing the
1743// client's request for the DeleteEndpoint operation. The "output" return
1744// value will be populated with the request's response once the request completes
1745// successfully.
1746//
1747// Use "Send" method on the returned Request to send the API call to the service.
1748// the "output" return value is not valid until after Send returns without error.
1749//
1750// See DeleteEndpoint for more information on using the DeleteEndpoint
1751// API call, and error handling.
1752//
1753// This method is useful when you want to inject custom logic or configuration
1754// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1755//
1756//
1757//    // Example sending a request using the DeleteEndpointRequest method.
1758//    req, resp := client.DeleteEndpointRequest(params)
1759//
1760//    err := req.Send()
1761//    if err == nil { // resp is now filled
1762//        fmt.Println(resp)
1763//    }
1764//
1765// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteEndpoint
1766func (c *SageMaker) DeleteEndpointRequest(input *DeleteEndpointInput) (req *request.Request, output *DeleteEndpointOutput) {
1767	op := &request.Operation{
1768		Name:       opDeleteEndpoint,
1769		HTTPMethod: "POST",
1770		HTTPPath:   "/",
1771	}
1772
1773	if input == nil {
1774		input = &DeleteEndpointInput{}
1775	}
1776
1777	output = &DeleteEndpointOutput{}
1778	req = c.newRequest(op, input, output)
1779	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1780	return
1781}
1782
1783// DeleteEndpoint API operation for Amazon SageMaker Service.
1784//
1785// Deletes an endpoint. Amazon SageMaker frees up all of the resources that
1786// were deployed when the endpoint was created.
1787//
1788// Amazon SageMaker retires any custom KMS key grants associated with the endpoint,
1789// meaning you don't need to use the RevokeGrant (http://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html)
1790// API call.
1791//
1792// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1793// with awserr.Error's Code and Message methods to get detailed information about
1794// the error.
1795//
1796// See the AWS API reference guide for Amazon SageMaker Service's
1797// API operation DeleteEndpoint for usage and error information.
1798// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteEndpoint
1799func (c *SageMaker) DeleteEndpoint(input *DeleteEndpointInput) (*DeleteEndpointOutput, error) {
1800	req, out := c.DeleteEndpointRequest(input)
1801	return out, req.Send()
1802}
1803
1804// DeleteEndpointWithContext is the same as DeleteEndpoint with the addition of
1805// the ability to pass a context and additional request options.
1806//
1807// See DeleteEndpoint for details on how to use this API operation.
1808//
1809// The context must be non-nil and will be used for request cancellation. If
1810// the context is nil a panic will occur. In the future the SDK may create
1811// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1812// for more information on using Contexts.
1813func (c *SageMaker) DeleteEndpointWithContext(ctx aws.Context, input *DeleteEndpointInput, opts ...request.Option) (*DeleteEndpointOutput, error) {
1814	req, out := c.DeleteEndpointRequest(input)
1815	req.SetContext(ctx)
1816	req.ApplyOptions(opts...)
1817	return out, req.Send()
1818}
1819
1820const opDeleteEndpointConfig = "DeleteEndpointConfig"
1821
1822// DeleteEndpointConfigRequest generates a "aws/request.Request" representing the
1823// client's request for the DeleteEndpointConfig operation. The "output" return
1824// value will be populated with the request's response once the request completes
1825// successfully.
1826//
1827// Use "Send" method on the returned Request to send the API call to the service.
1828// the "output" return value is not valid until after Send returns without error.
1829//
1830// See DeleteEndpointConfig for more information on using the DeleteEndpointConfig
1831// API call, and error handling.
1832//
1833// This method is useful when you want to inject custom logic or configuration
1834// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1835//
1836//
1837//    // Example sending a request using the DeleteEndpointConfigRequest method.
1838//    req, resp := client.DeleteEndpointConfigRequest(params)
1839//
1840//    err := req.Send()
1841//    if err == nil { // resp is now filled
1842//        fmt.Println(resp)
1843//    }
1844//
1845// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteEndpointConfig
1846func (c *SageMaker) DeleteEndpointConfigRequest(input *DeleteEndpointConfigInput) (req *request.Request, output *DeleteEndpointConfigOutput) {
1847	op := &request.Operation{
1848		Name:       opDeleteEndpointConfig,
1849		HTTPMethod: "POST",
1850		HTTPPath:   "/",
1851	}
1852
1853	if input == nil {
1854		input = &DeleteEndpointConfigInput{}
1855	}
1856
1857	output = &DeleteEndpointConfigOutput{}
1858	req = c.newRequest(op, input, output)
1859	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1860	return
1861}
1862
1863// DeleteEndpointConfig API operation for Amazon SageMaker Service.
1864//
1865// Deletes an endpoint configuration. The DeleteEndpointConfig API deletes only
1866// the specified configuration. It does not delete endpoints created using the
1867// configuration.
1868//
1869// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1870// with awserr.Error's Code and Message methods to get detailed information about
1871// the error.
1872//
1873// See the AWS API reference guide for Amazon SageMaker Service's
1874// API operation DeleteEndpointConfig for usage and error information.
1875// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteEndpointConfig
1876func (c *SageMaker) DeleteEndpointConfig(input *DeleteEndpointConfigInput) (*DeleteEndpointConfigOutput, error) {
1877	req, out := c.DeleteEndpointConfigRequest(input)
1878	return out, req.Send()
1879}
1880
1881// DeleteEndpointConfigWithContext is the same as DeleteEndpointConfig with the addition of
1882// the ability to pass a context and additional request options.
1883//
1884// See DeleteEndpointConfig for details on how to use this API operation.
1885//
1886// The context must be non-nil and will be used for request cancellation. If
1887// the context is nil a panic will occur. In the future the SDK may create
1888// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1889// for more information on using Contexts.
1890func (c *SageMaker) DeleteEndpointConfigWithContext(ctx aws.Context, input *DeleteEndpointConfigInput, opts ...request.Option) (*DeleteEndpointConfigOutput, error) {
1891	req, out := c.DeleteEndpointConfigRequest(input)
1892	req.SetContext(ctx)
1893	req.ApplyOptions(opts...)
1894	return out, req.Send()
1895}
1896
1897const opDeleteModel = "DeleteModel"
1898
1899// DeleteModelRequest generates a "aws/request.Request" representing the
1900// client's request for the DeleteModel operation. The "output" return
1901// value will be populated with the request's response once the request completes
1902// successfully.
1903//
1904// Use "Send" method on the returned Request to send the API call to the service.
1905// the "output" return value is not valid until after Send returns without error.
1906//
1907// See DeleteModel for more information on using the DeleteModel
1908// API call, and error handling.
1909//
1910// This method is useful when you want to inject custom logic or configuration
1911// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1912//
1913//
1914//    // Example sending a request using the DeleteModelRequest method.
1915//    req, resp := client.DeleteModelRequest(params)
1916//
1917//    err := req.Send()
1918//    if err == nil { // resp is now filled
1919//        fmt.Println(resp)
1920//    }
1921//
1922// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteModel
1923func (c *SageMaker) DeleteModelRequest(input *DeleteModelInput) (req *request.Request, output *DeleteModelOutput) {
1924	op := &request.Operation{
1925		Name:       opDeleteModel,
1926		HTTPMethod: "POST",
1927		HTTPPath:   "/",
1928	}
1929
1930	if input == nil {
1931		input = &DeleteModelInput{}
1932	}
1933
1934	output = &DeleteModelOutput{}
1935	req = c.newRequest(op, input, output)
1936	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1937	return
1938}
1939
1940// DeleteModel API operation for Amazon SageMaker Service.
1941//
1942// Deletes a model. The DeleteModel API deletes only the model entry that was
1943// created in Amazon SageMaker when you called the CreateModel (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateModel.html)
1944// API. It does not delete model artifacts, inference code, or the IAM role
1945// that you specified when creating the model.
1946//
1947// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1948// with awserr.Error's Code and Message methods to get detailed information about
1949// the error.
1950//
1951// See the AWS API reference guide for Amazon SageMaker Service's
1952// API operation DeleteModel for usage and error information.
1953// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteModel
1954func (c *SageMaker) DeleteModel(input *DeleteModelInput) (*DeleteModelOutput, error) {
1955	req, out := c.DeleteModelRequest(input)
1956	return out, req.Send()
1957}
1958
1959// DeleteModelWithContext is the same as DeleteModel with the addition of
1960// the ability to pass a context and additional request options.
1961//
1962// See DeleteModel for details on how to use this API operation.
1963//
1964// The context must be non-nil and will be used for request cancellation. If
1965// the context is nil a panic will occur. In the future the SDK may create
1966// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1967// for more information on using Contexts.
1968func (c *SageMaker) DeleteModelWithContext(ctx aws.Context, input *DeleteModelInput, opts ...request.Option) (*DeleteModelOutput, error) {
1969	req, out := c.DeleteModelRequest(input)
1970	req.SetContext(ctx)
1971	req.ApplyOptions(opts...)
1972	return out, req.Send()
1973}
1974
1975const opDeleteModelPackage = "DeleteModelPackage"
1976
1977// DeleteModelPackageRequest generates a "aws/request.Request" representing the
1978// client's request for the DeleteModelPackage operation. The "output" return
1979// value will be populated with the request's response once the request completes
1980// successfully.
1981//
1982// Use "Send" method on the returned Request to send the API call to the service.
1983// the "output" return value is not valid until after Send returns without error.
1984//
1985// See DeleteModelPackage for more information on using the DeleteModelPackage
1986// API call, and error handling.
1987//
1988// This method is useful when you want to inject custom logic or configuration
1989// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1990//
1991//
1992//    // Example sending a request using the DeleteModelPackageRequest method.
1993//    req, resp := client.DeleteModelPackageRequest(params)
1994//
1995//    err := req.Send()
1996//    if err == nil { // resp is now filled
1997//        fmt.Println(resp)
1998//    }
1999//
2000// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteModelPackage
2001func (c *SageMaker) DeleteModelPackageRequest(input *DeleteModelPackageInput) (req *request.Request, output *DeleteModelPackageOutput) {
2002	op := &request.Operation{
2003		Name:       opDeleteModelPackage,
2004		HTTPMethod: "POST",
2005		HTTPPath:   "/",
2006	}
2007
2008	if input == nil {
2009		input = &DeleteModelPackageInput{}
2010	}
2011
2012	output = &DeleteModelPackageOutput{}
2013	req = c.newRequest(op, input, output)
2014	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2015	return
2016}
2017
2018// DeleteModelPackage API operation for Amazon SageMaker Service.
2019//
2020// Deletes a model package.
2021//
2022// A model package is used to create Amazon SageMaker models or list on AWS
2023// Marketplace. Buyers can subscribe to model packages listed on AWS Marketplace
2024// to create models in Amazon SageMaker.
2025//
2026// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2027// with awserr.Error's Code and Message methods to get detailed information about
2028// the error.
2029//
2030// See the AWS API reference guide for Amazon SageMaker Service's
2031// API operation DeleteModelPackage for usage and error information.
2032// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteModelPackage
2033func (c *SageMaker) DeleteModelPackage(input *DeleteModelPackageInput) (*DeleteModelPackageOutput, error) {
2034	req, out := c.DeleteModelPackageRequest(input)
2035	return out, req.Send()
2036}
2037
2038// DeleteModelPackageWithContext is the same as DeleteModelPackage with the addition of
2039// the ability to pass a context and additional request options.
2040//
2041// See DeleteModelPackage for details on how to use this API operation.
2042//
2043// The context must be non-nil and will be used for request cancellation. If
2044// the context is nil a panic will occur. In the future the SDK may create
2045// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2046// for more information on using Contexts.
2047func (c *SageMaker) DeleteModelPackageWithContext(ctx aws.Context, input *DeleteModelPackageInput, opts ...request.Option) (*DeleteModelPackageOutput, error) {
2048	req, out := c.DeleteModelPackageRequest(input)
2049	req.SetContext(ctx)
2050	req.ApplyOptions(opts...)
2051	return out, req.Send()
2052}
2053
2054const opDeleteNotebookInstance = "DeleteNotebookInstance"
2055
2056// DeleteNotebookInstanceRequest generates a "aws/request.Request" representing the
2057// client's request for the DeleteNotebookInstance operation. The "output" return
2058// value will be populated with the request's response once the request completes
2059// successfully.
2060//
2061// Use "Send" method on the returned Request to send the API call to the service.
2062// the "output" return value is not valid until after Send returns without error.
2063//
2064// See DeleteNotebookInstance for more information on using the DeleteNotebookInstance
2065// API call, and error handling.
2066//
2067// This method is useful when you want to inject custom logic or configuration
2068// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2069//
2070//
2071//    // Example sending a request using the DeleteNotebookInstanceRequest method.
2072//    req, resp := client.DeleteNotebookInstanceRequest(params)
2073//
2074//    err := req.Send()
2075//    if err == nil { // resp is now filled
2076//        fmt.Println(resp)
2077//    }
2078//
2079// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteNotebookInstance
2080func (c *SageMaker) DeleteNotebookInstanceRequest(input *DeleteNotebookInstanceInput) (req *request.Request, output *DeleteNotebookInstanceOutput) {
2081	op := &request.Operation{
2082		Name:       opDeleteNotebookInstance,
2083		HTTPMethod: "POST",
2084		HTTPPath:   "/",
2085	}
2086
2087	if input == nil {
2088		input = &DeleteNotebookInstanceInput{}
2089	}
2090
2091	output = &DeleteNotebookInstanceOutput{}
2092	req = c.newRequest(op, input, output)
2093	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2094	return
2095}
2096
2097// DeleteNotebookInstance API operation for Amazon SageMaker Service.
2098//
2099// Deletes an Amazon SageMaker notebook instance. Before you can delete a notebook
2100// instance, you must call the StopNotebookInstance API.
2101//
2102// When you delete a notebook instance, you lose all of your data. Amazon SageMaker
2103// removes the ML compute instance, and deletes the ML storage volume and the
2104// network interface associated with the notebook instance.
2105//
2106// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2107// with awserr.Error's Code and Message methods to get detailed information about
2108// the error.
2109//
2110// See the AWS API reference guide for Amazon SageMaker Service's
2111// API operation DeleteNotebookInstance for usage and error information.
2112// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteNotebookInstance
2113func (c *SageMaker) DeleteNotebookInstance(input *DeleteNotebookInstanceInput) (*DeleteNotebookInstanceOutput, error) {
2114	req, out := c.DeleteNotebookInstanceRequest(input)
2115	return out, req.Send()
2116}
2117
2118// DeleteNotebookInstanceWithContext is the same as DeleteNotebookInstance with the addition of
2119// the ability to pass a context and additional request options.
2120//
2121// See DeleteNotebookInstance for details on how to use this API operation.
2122//
2123// The context must be non-nil and will be used for request cancellation. If
2124// the context is nil a panic will occur. In the future the SDK may create
2125// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2126// for more information on using Contexts.
2127func (c *SageMaker) DeleteNotebookInstanceWithContext(ctx aws.Context, input *DeleteNotebookInstanceInput, opts ...request.Option) (*DeleteNotebookInstanceOutput, error) {
2128	req, out := c.DeleteNotebookInstanceRequest(input)
2129	req.SetContext(ctx)
2130	req.ApplyOptions(opts...)
2131	return out, req.Send()
2132}
2133
2134const opDeleteNotebookInstanceLifecycleConfig = "DeleteNotebookInstanceLifecycleConfig"
2135
2136// DeleteNotebookInstanceLifecycleConfigRequest generates a "aws/request.Request" representing the
2137// client's request for the DeleteNotebookInstanceLifecycleConfig operation. The "output" return
2138// value will be populated with the request's response once the request completes
2139// successfully.
2140//
2141// Use "Send" method on the returned Request to send the API call to the service.
2142// the "output" return value is not valid until after Send returns without error.
2143//
2144// See DeleteNotebookInstanceLifecycleConfig for more information on using the DeleteNotebookInstanceLifecycleConfig
2145// API call, and error handling.
2146//
2147// This method is useful when you want to inject custom logic or configuration
2148// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2149//
2150//
2151//    // Example sending a request using the DeleteNotebookInstanceLifecycleConfigRequest method.
2152//    req, resp := client.DeleteNotebookInstanceLifecycleConfigRequest(params)
2153//
2154//    err := req.Send()
2155//    if err == nil { // resp is now filled
2156//        fmt.Println(resp)
2157//    }
2158//
2159// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteNotebookInstanceLifecycleConfig
2160func (c *SageMaker) DeleteNotebookInstanceLifecycleConfigRequest(input *DeleteNotebookInstanceLifecycleConfigInput) (req *request.Request, output *DeleteNotebookInstanceLifecycleConfigOutput) {
2161	op := &request.Operation{
2162		Name:       opDeleteNotebookInstanceLifecycleConfig,
2163		HTTPMethod: "POST",
2164		HTTPPath:   "/",
2165	}
2166
2167	if input == nil {
2168		input = &DeleteNotebookInstanceLifecycleConfigInput{}
2169	}
2170
2171	output = &DeleteNotebookInstanceLifecycleConfigOutput{}
2172	req = c.newRequest(op, input, output)
2173	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2174	return
2175}
2176
2177// DeleteNotebookInstanceLifecycleConfig API operation for Amazon SageMaker Service.
2178//
2179// Deletes a notebook instance lifecycle configuration.
2180//
2181// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2182// with awserr.Error's Code and Message methods to get detailed information about
2183// the error.
2184//
2185// See the AWS API reference guide for Amazon SageMaker Service's
2186// API operation DeleteNotebookInstanceLifecycleConfig for usage and error information.
2187// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteNotebookInstanceLifecycleConfig
2188func (c *SageMaker) DeleteNotebookInstanceLifecycleConfig(input *DeleteNotebookInstanceLifecycleConfigInput) (*DeleteNotebookInstanceLifecycleConfigOutput, error) {
2189	req, out := c.DeleteNotebookInstanceLifecycleConfigRequest(input)
2190	return out, req.Send()
2191}
2192
2193// DeleteNotebookInstanceLifecycleConfigWithContext is the same as DeleteNotebookInstanceLifecycleConfig with the addition of
2194// the ability to pass a context and additional request options.
2195//
2196// See DeleteNotebookInstanceLifecycleConfig for details on how to use this API operation.
2197//
2198// The context must be non-nil and will be used for request cancellation. If
2199// the context is nil a panic will occur. In the future the SDK may create
2200// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2201// for more information on using Contexts.
2202func (c *SageMaker) DeleteNotebookInstanceLifecycleConfigWithContext(ctx aws.Context, input *DeleteNotebookInstanceLifecycleConfigInput, opts ...request.Option) (*DeleteNotebookInstanceLifecycleConfigOutput, error) {
2203	req, out := c.DeleteNotebookInstanceLifecycleConfigRequest(input)
2204	req.SetContext(ctx)
2205	req.ApplyOptions(opts...)
2206	return out, req.Send()
2207}
2208
2209const opDeleteTags = "DeleteTags"
2210
2211// DeleteTagsRequest generates a "aws/request.Request" representing the
2212// client's request for the DeleteTags operation. The "output" return
2213// value will be populated with the request's response once the request completes
2214// successfully.
2215//
2216// Use "Send" method on the returned Request to send the API call to the service.
2217// the "output" return value is not valid until after Send returns without error.
2218//
2219// See DeleteTags for more information on using the DeleteTags
2220// API call, and error handling.
2221//
2222// This method is useful when you want to inject custom logic or configuration
2223// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2224//
2225//
2226//    // Example sending a request using the DeleteTagsRequest method.
2227//    req, resp := client.DeleteTagsRequest(params)
2228//
2229//    err := req.Send()
2230//    if err == nil { // resp is now filled
2231//        fmt.Println(resp)
2232//    }
2233//
2234// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteTags
2235func (c *SageMaker) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) {
2236	op := &request.Operation{
2237		Name:       opDeleteTags,
2238		HTTPMethod: "POST",
2239		HTTPPath:   "/",
2240	}
2241
2242	if input == nil {
2243		input = &DeleteTagsInput{}
2244	}
2245
2246	output = &DeleteTagsOutput{}
2247	req = c.newRequest(op, input, output)
2248	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2249	return
2250}
2251
2252// DeleteTags API operation for Amazon SageMaker Service.
2253//
2254// Deletes the specified tags from an Amazon SageMaker resource.
2255//
2256// To list a resource's tags, use the ListTags API.
2257//
2258// When you call this API to delete tags from a hyperparameter tuning job, the
2259// deleted tags are not removed from training jobs that the hyperparameter tuning
2260// job launched before you called this API.
2261//
2262// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2263// with awserr.Error's Code and Message methods to get detailed information about
2264// the error.
2265//
2266// See the AWS API reference guide for Amazon SageMaker Service's
2267// API operation DeleteTags for usage and error information.
2268// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteTags
2269func (c *SageMaker) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) {
2270	req, out := c.DeleteTagsRequest(input)
2271	return out, req.Send()
2272}
2273
2274// DeleteTagsWithContext is the same as DeleteTags with the addition of
2275// the ability to pass a context and additional request options.
2276//
2277// See DeleteTags for details on how to use this API operation.
2278//
2279// The context must be non-nil and will be used for request cancellation. If
2280// the context is nil a panic will occur. In the future the SDK may create
2281// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2282// for more information on using Contexts.
2283func (c *SageMaker) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error) {
2284	req, out := c.DeleteTagsRequest(input)
2285	req.SetContext(ctx)
2286	req.ApplyOptions(opts...)
2287	return out, req.Send()
2288}
2289
2290const opDeleteWorkteam = "DeleteWorkteam"
2291
2292// DeleteWorkteamRequest generates a "aws/request.Request" representing the
2293// client's request for the DeleteWorkteam operation. The "output" return
2294// value will be populated with the request's response once the request completes
2295// successfully.
2296//
2297// Use "Send" method on the returned Request to send the API call to the service.
2298// the "output" return value is not valid until after Send returns without error.
2299//
2300// See DeleteWorkteam for more information on using the DeleteWorkteam
2301// API call, and error handling.
2302//
2303// This method is useful when you want to inject custom logic or configuration
2304// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2305//
2306//
2307//    // Example sending a request using the DeleteWorkteamRequest method.
2308//    req, resp := client.DeleteWorkteamRequest(params)
2309//
2310//    err := req.Send()
2311//    if err == nil { // resp is now filled
2312//        fmt.Println(resp)
2313//    }
2314//
2315// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteWorkteam
2316func (c *SageMaker) DeleteWorkteamRequest(input *DeleteWorkteamInput) (req *request.Request, output *DeleteWorkteamOutput) {
2317	op := &request.Operation{
2318		Name:       opDeleteWorkteam,
2319		HTTPMethod: "POST",
2320		HTTPPath:   "/",
2321	}
2322
2323	if input == nil {
2324		input = &DeleteWorkteamInput{}
2325	}
2326
2327	output = &DeleteWorkteamOutput{}
2328	req = c.newRequest(op, input, output)
2329	return
2330}
2331
2332// DeleteWorkteam API operation for Amazon SageMaker Service.
2333//
2334// Deletes an existing work team. This operation can't be undone.
2335//
2336// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2337// with awserr.Error's Code and Message methods to get detailed information about
2338// the error.
2339//
2340// See the AWS API reference guide for Amazon SageMaker Service's
2341// API operation DeleteWorkteam for usage and error information.
2342//
2343// Returned Error Codes:
2344//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
2345//   You have exceeded an Amazon SageMaker resource limit. For example, you might
2346//   have too many training jobs created.
2347//
2348// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteWorkteam
2349func (c *SageMaker) DeleteWorkteam(input *DeleteWorkteamInput) (*DeleteWorkteamOutput, error) {
2350	req, out := c.DeleteWorkteamRequest(input)
2351	return out, req.Send()
2352}
2353
2354// DeleteWorkteamWithContext is the same as DeleteWorkteam with the addition of
2355// the ability to pass a context and additional request options.
2356//
2357// See DeleteWorkteam for details on how to use this API operation.
2358//
2359// The context must be non-nil and will be used for request cancellation. If
2360// the context is nil a panic will occur. In the future the SDK may create
2361// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2362// for more information on using Contexts.
2363func (c *SageMaker) DeleteWorkteamWithContext(ctx aws.Context, input *DeleteWorkteamInput, opts ...request.Option) (*DeleteWorkteamOutput, error) {
2364	req, out := c.DeleteWorkteamRequest(input)
2365	req.SetContext(ctx)
2366	req.ApplyOptions(opts...)
2367	return out, req.Send()
2368}
2369
2370const opDescribeAlgorithm = "DescribeAlgorithm"
2371
2372// DescribeAlgorithmRequest generates a "aws/request.Request" representing the
2373// client's request for the DescribeAlgorithm operation. The "output" return
2374// value will be populated with the request's response once the request completes
2375// successfully.
2376//
2377// Use "Send" method on the returned Request to send the API call to the service.
2378// the "output" return value is not valid until after Send returns without error.
2379//
2380// See DescribeAlgorithm for more information on using the DescribeAlgorithm
2381// API call, and error handling.
2382//
2383// This method is useful when you want to inject custom logic or configuration
2384// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2385//
2386//
2387//    // Example sending a request using the DescribeAlgorithmRequest method.
2388//    req, resp := client.DescribeAlgorithmRequest(params)
2389//
2390//    err := req.Send()
2391//    if err == nil { // resp is now filled
2392//        fmt.Println(resp)
2393//    }
2394//
2395// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAlgorithm
2396func (c *SageMaker) DescribeAlgorithmRequest(input *DescribeAlgorithmInput) (req *request.Request, output *DescribeAlgorithmOutput) {
2397	op := &request.Operation{
2398		Name:       opDescribeAlgorithm,
2399		HTTPMethod: "POST",
2400		HTTPPath:   "/",
2401	}
2402
2403	if input == nil {
2404		input = &DescribeAlgorithmInput{}
2405	}
2406
2407	output = &DescribeAlgorithmOutput{}
2408	req = c.newRequest(op, input, output)
2409	return
2410}
2411
2412// DescribeAlgorithm API operation for Amazon SageMaker Service.
2413//
2414// Returns a description of the specified algorithm that is in your account.
2415//
2416// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2417// with awserr.Error's Code and Message methods to get detailed information about
2418// the error.
2419//
2420// See the AWS API reference guide for Amazon SageMaker Service's
2421// API operation DescribeAlgorithm for usage and error information.
2422// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAlgorithm
2423func (c *SageMaker) DescribeAlgorithm(input *DescribeAlgorithmInput) (*DescribeAlgorithmOutput, error) {
2424	req, out := c.DescribeAlgorithmRequest(input)
2425	return out, req.Send()
2426}
2427
2428// DescribeAlgorithmWithContext is the same as DescribeAlgorithm with the addition of
2429// the ability to pass a context and additional request options.
2430//
2431// See DescribeAlgorithm for details on how to use this API operation.
2432//
2433// The context must be non-nil and will be used for request cancellation. If
2434// the context is nil a panic will occur. In the future the SDK may create
2435// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2436// for more information on using Contexts.
2437func (c *SageMaker) DescribeAlgorithmWithContext(ctx aws.Context, input *DescribeAlgorithmInput, opts ...request.Option) (*DescribeAlgorithmOutput, error) {
2438	req, out := c.DescribeAlgorithmRequest(input)
2439	req.SetContext(ctx)
2440	req.ApplyOptions(opts...)
2441	return out, req.Send()
2442}
2443
2444const opDescribeCodeRepository = "DescribeCodeRepository"
2445
2446// DescribeCodeRepositoryRequest generates a "aws/request.Request" representing the
2447// client's request for the DescribeCodeRepository operation. The "output" return
2448// value will be populated with the request's response once the request completes
2449// successfully.
2450//
2451// Use "Send" method on the returned Request to send the API call to the service.
2452// the "output" return value is not valid until after Send returns without error.
2453//
2454// See DescribeCodeRepository for more information on using the DescribeCodeRepository
2455// API call, and error handling.
2456//
2457// This method is useful when you want to inject custom logic or configuration
2458// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2459//
2460//
2461//    // Example sending a request using the DescribeCodeRepositoryRequest method.
2462//    req, resp := client.DescribeCodeRepositoryRequest(params)
2463//
2464//    err := req.Send()
2465//    if err == nil { // resp is now filled
2466//        fmt.Println(resp)
2467//    }
2468//
2469// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCodeRepository
2470func (c *SageMaker) DescribeCodeRepositoryRequest(input *DescribeCodeRepositoryInput) (req *request.Request, output *DescribeCodeRepositoryOutput) {
2471	op := &request.Operation{
2472		Name:       opDescribeCodeRepository,
2473		HTTPMethod: "POST",
2474		HTTPPath:   "/",
2475	}
2476
2477	if input == nil {
2478		input = &DescribeCodeRepositoryInput{}
2479	}
2480
2481	output = &DescribeCodeRepositoryOutput{}
2482	req = c.newRequest(op, input, output)
2483	return
2484}
2485
2486// DescribeCodeRepository API operation for Amazon SageMaker Service.
2487//
2488// Gets details about the specified Git repository.
2489//
2490// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2491// with awserr.Error's Code and Message methods to get detailed information about
2492// the error.
2493//
2494// See the AWS API reference guide for Amazon SageMaker Service's
2495// API operation DescribeCodeRepository for usage and error information.
2496// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCodeRepository
2497func (c *SageMaker) DescribeCodeRepository(input *DescribeCodeRepositoryInput) (*DescribeCodeRepositoryOutput, error) {
2498	req, out := c.DescribeCodeRepositoryRequest(input)
2499	return out, req.Send()
2500}
2501
2502// DescribeCodeRepositoryWithContext is the same as DescribeCodeRepository with the addition of
2503// the ability to pass a context and additional request options.
2504//
2505// See DescribeCodeRepository for details on how to use this API operation.
2506//
2507// The context must be non-nil and will be used for request cancellation. If
2508// the context is nil a panic will occur. In the future the SDK may create
2509// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2510// for more information on using Contexts.
2511func (c *SageMaker) DescribeCodeRepositoryWithContext(ctx aws.Context, input *DescribeCodeRepositoryInput, opts ...request.Option) (*DescribeCodeRepositoryOutput, error) {
2512	req, out := c.DescribeCodeRepositoryRequest(input)
2513	req.SetContext(ctx)
2514	req.ApplyOptions(opts...)
2515	return out, req.Send()
2516}
2517
2518const opDescribeCompilationJob = "DescribeCompilationJob"
2519
2520// DescribeCompilationJobRequest generates a "aws/request.Request" representing the
2521// client's request for the DescribeCompilationJob operation. The "output" return
2522// value will be populated with the request's response once the request completes
2523// successfully.
2524//
2525// Use "Send" method on the returned Request to send the API call to the service.
2526// the "output" return value is not valid until after Send returns without error.
2527//
2528// See DescribeCompilationJob for more information on using the DescribeCompilationJob
2529// API call, and error handling.
2530//
2531// This method is useful when you want to inject custom logic or configuration
2532// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2533//
2534//
2535//    // Example sending a request using the DescribeCompilationJobRequest method.
2536//    req, resp := client.DescribeCompilationJobRequest(params)
2537//
2538//    err := req.Send()
2539//    if err == nil { // resp is now filled
2540//        fmt.Println(resp)
2541//    }
2542//
2543// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCompilationJob
2544func (c *SageMaker) DescribeCompilationJobRequest(input *DescribeCompilationJobInput) (req *request.Request, output *DescribeCompilationJobOutput) {
2545	op := &request.Operation{
2546		Name:       opDescribeCompilationJob,
2547		HTTPMethod: "POST",
2548		HTTPPath:   "/",
2549	}
2550
2551	if input == nil {
2552		input = &DescribeCompilationJobInput{}
2553	}
2554
2555	output = &DescribeCompilationJobOutput{}
2556	req = c.newRequest(op, input, output)
2557	return
2558}
2559
2560// DescribeCompilationJob API operation for Amazon SageMaker Service.
2561//
2562// Returns information about a model compilation job.
2563//
2564// To create a model compilation job, use CreateCompilationJob. To get information
2565// about multiple model compilation jobs, use ListCompilationJobs.
2566//
2567// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2568// with awserr.Error's Code and Message methods to get detailed information about
2569// the error.
2570//
2571// See the AWS API reference guide for Amazon SageMaker Service's
2572// API operation DescribeCompilationJob for usage and error information.
2573//
2574// Returned Error Codes:
2575//   * ErrCodeResourceNotFound "ResourceNotFound"
2576//   Resource being access is not found.
2577//
2578// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeCompilationJob
2579func (c *SageMaker) DescribeCompilationJob(input *DescribeCompilationJobInput) (*DescribeCompilationJobOutput, error) {
2580	req, out := c.DescribeCompilationJobRequest(input)
2581	return out, req.Send()
2582}
2583
2584// DescribeCompilationJobWithContext is the same as DescribeCompilationJob with the addition of
2585// the ability to pass a context and additional request options.
2586//
2587// See DescribeCompilationJob for details on how to use this API operation.
2588//
2589// The context must be non-nil and will be used for request cancellation. If
2590// the context is nil a panic will occur. In the future the SDK may create
2591// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2592// for more information on using Contexts.
2593func (c *SageMaker) DescribeCompilationJobWithContext(ctx aws.Context, input *DescribeCompilationJobInput, opts ...request.Option) (*DescribeCompilationJobOutput, error) {
2594	req, out := c.DescribeCompilationJobRequest(input)
2595	req.SetContext(ctx)
2596	req.ApplyOptions(opts...)
2597	return out, req.Send()
2598}
2599
2600const opDescribeEndpoint = "DescribeEndpoint"
2601
2602// DescribeEndpointRequest generates a "aws/request.Request" representing the
2603// client's request for the DescribeEndpoint operation. The "output" return
2604// value will be populated with the request's response once the request completes
2605// successfully.
2606//
2607// Use "Send" method on the returned Request to send the API call to the service.
2608// the "output" return value is not valid until after Send returns without error.
2609//
2610// See DescribeEndpoint for more information on using the DescribeEndpoint
2611// API call, and error handling.
2612//
2613// This method is useful when you want to inject custom logic or configuration
2614// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2615//
2616//
2617//    // Example sending a request using the DescribeEndpointRequest method.
2618//    req, resp := client.DescribeEndpointRequest(params)
2619//
2620//    err := req.Send()
2621//    if err == nil { // resp is now filled
2622//        fmt.Println(resp)
2623//    }
2624//
2625// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeEndpoint
2626func (c *SageMaker) DescribeEndpointRequest(input *DescribeEndpointInput) (req *request.Request, output *DescribeEndpointOutput) {
2627	op := &request.Operation{
2628		Name:       opDescribeEndpoint,
2629		HTTPMethod: "POST",
2630		HTTPPath:   "/",
2631	}
2632
2633	if input == nil {
2634		input = &DescribeEndpointInput{}
2635	}
2636
2637	output = &DescribeEndpointOutput{}
2638	req = c.newRequest(op, input, output)
2639	return
2640}
2641
2642// DescribeEndpoint API operation for Amazon SageMaker Service.
2643//
2644// Returns the description of an endpoint.
2645//
2646// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2647// with awserr.Error's Code and Message methods to get detailed information about
2648// the error.
2649//
2650// See the AWS API reference guide for Amazon SageMaker Service's
2651// API operation DescribeEndpoint for usage and error information.
2652// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeEndpoint
2653func (c *SageMaker) DescribeEndpoint(input *DescribeEndpointInput) (*DescribeEndpointOutput, error) {
2654	req, out := c.DescribeEndpointRequest(input)
2655	return out, req.Send()
2656}
2657
2658// DescribeEndpointWithContext is the same as DescribeEndpoint with the addition of
2659// the ability to pass a context and additional request options.
2660//
2661// See DescribeEndpoint for details on how to use this API operation.
2662//
2663// The context must be non-nil and will be used for request cancellation. If
2664// the context is nil a panic will occur. In the future the SDK may create
2665// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2666// for more information on using Contexts.
2667func (c *SageMaker) DescribeEndpointWithContext(ctx aws.Context, input *DescribeEndpointInput, opts ...request.Option) (*DescribeEndpointOutput, error) {
2668	req, out := c.DescribeEndpointRequest(input)
2669	req.SetContext(ctx)
2670	req.ApplyOptions(opts...)
2671	return out, req.Send()
2672}
2673
2674const opDescribeEndpointConfig = "DescribeEndpointConfig"
2675
2676// DescribeEndpointConfigRequest generates a "aws/request.Request" representing the
2677// client's request for the DescribeEndpointConfig operation. The "output" return
2678// value will be populated with the request's response once the request completes
2679// successfully.
2680//
2681// Use "Send" method on the returned Request to send the API call to the service.
2682// the "output" return value is not valid until after Send returns without error.
2683//
2684// See DescribeEndpointConfig for more information on using the DescribeEndpointConfig
2685// API call, and error handling.
2686//
2687// This method is useful when you want to inject custom logic or configuration
2688// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2689//
2690//
2691//    // Example sending a request using the DescribeEndpointConfigRequest method.
2692//    req, resp := client.DescribeEndpointConfigRequest(params)
2693//
2694//    err := req.Send()
2695//    if err == nil { // resp is now filled
2696//        fmt.Println(resp)
2697//    }
2698//
2699// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeEndpointConfig
2700func (c *SageMaker) DescribeEndpointConfigRequest(input *DescribeEndpointConfigInput) (req *request.Request, output *DescribeEndpointConfigOutput) {
2701	op := &request.Operation{
2702		Name:       opDescribeEndpointConfig,
2703		HTTPMethod: "POST",
2704		HTTPPath:   "/",
2705	}
2706
2707	if input == nil {
2708		input = &DescribeEndpointConfigInput{}
2709	}
2710
2711	output = &DescribeEndpointConfigOutput{}
2712	req = c.newRequest(op, input, output)
2713	return
2714}
2715
2716// DescribeEndpointConfig API operation for Amazon SageMaker Service.
2717//
2718// Returns the description of an endpoint configuration created using the CreateEndpointConfig
2719// API.
2720//
2721// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2722// with awserr.Error's Code and Message methods to get detailed information about
2723// the error.
2724//
2725// See the AWS API reference guide for Amazon SageMaker Service's
2726// API operation DescribeEndpointConfig for usage and error information.
2727// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeEndpointConfig
2728func (c *SageMaker) DescribeEndpointConfig(input *DescribeEndpointConfigInput) (*DescribeEndpointConfigOutput, error) {
2729	req, out := c.DescribeEndpointConfigRequest(input)
2730	return out, req.Send()
2731}
2732
2733// DescribeEndpointConfigWithContext is the same as DescribeEndpointConfig with the addition of
2734// the ability to pass a context and additional request options.
2735//
2736// See DescribeEndpointConfig for details on how to use this API operation.
2737//
2738// The context must be non-nil and will be used for request cancellation. If
2739// the context is nil a panic will occur. In the future the SDK may create
2740// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2741// for more information on using Contexts.
2742func (c *SageMaker) DescribeEndpointConfigWithContext(ctx aws.Context, input *DescribeEndpointConfigInput, opts ...request.Option) (*DescribeEndpointConfigOutput, error) {
2743	req, out := c.DescribeEndpointConfigRequest(input)
2744	req.SetContext(ctx)
2745	req.ApplyOptions(opts...)
2746	return out, req.Send()
2747}
2748
2749const opDescribeHyperParameterTuningJob = "DescribeHyperParameterTuningJob"
2750
2751// DescribeHyperParameterTuningJobRequest generates a "aws/request.Request" representing the
2752// client's request for the DescribeHyperParameterTuningJob operation. The "output" return
2753// value will be populated with the request's response once the request completes
2754// successfully.
2755//
2756// Use "Send" method on the returned Request to send the API call to the service.
2757// the "output" return value is not valid until after Send returns without error.
2758//
2759// See DescribeHyperParameterTuningJob for more information on using the DescribeHyperParameterTuningJob
2760// API call, and error handling.
2761//
2762// This method is useful when you want to inject custom logic or configuration
2763// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2764//
2765//
2766//    // Example sending a request using the DescribeHyperParameterTuningJobRequest method.
2767//    req, resp := client.DescribeHyperParameterTuningJobRequest(params)
2768//
2769//    err := req.Send()
2770//    if err == nil { // resp is now filled
2771//        fmt.Println(resp)
2772//    }
2773//
2774// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeHyperParameterTuningJob
2775func (c *SageMaker) DescribeHyperParameterTuningJobRequest(input *DescribeHyperParameterTuningJobInput) (req *request.Request, output *DescribeHyperParameterTuningJobOutput) {
2776	op := &request.Operation{
2777		Name:       opDescribeHyperParameterTuningJob,
2778		HTTPMethod: "POST",
2779		HTTPPath:   "/",
2780	}
2781
2782	if input == nil {
2783		input = &DescribeHyperParameterTuningJobInput{}
2784	}
2785
2786	output = &DescribeHyperParameterTuningJobOutput{}
2787	req = c.newRequest(op, input, output)
2788	return
2789}
2790
2791// DescribeHyperParameterTuningJob API operation for Amazon SageMaker Service.
2792//
2793// Gets a description of a hyperparameter tuning job.
2794//
2795// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2796// with awserr.Error's Code and Message methods to get detailed information about
2797// the error.
2798//
2799// See the AWS API reference guide for Amazon SageMaker Service's
2800// API operation DescribeHyperParameterTuningJob for usage and error information.
2801//
2802// Returned Error Codes:
2803//   * ErrCodeResourceNotFound "ResourceNotFound"
2804//   Resource being access is not found.
2805//
2806// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeHyperParameterTuningJob
2807func (c *SageMaker) DescribeHyperParameterTuningJob(input *DescribeHyperParameterTuningJobInput) (*DescribeHyperParameterTuningJobOutput, error) {
2808	req, out := c.DescribeHyperParameterTuningJobRequest(input)
2809	return out, req.Send()
2810}
2811
2812// DescribeHyperParameterTuningJobWithContext is the same as DescribeHyperParameterTuningJob with the addition of
2813// the ability to pass a context and additional request options.
2814//
2815// See DescribeHyperParameterTuningJob for details on how to use this API operation.
2816//
2817// The context must be non-nil and will be used for request cancellation. If
2818// the context is nil a panic will occur. In the future the SDK may create
2819// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2820// for more information on using Contexts.
2821func (c *SageMaker) DescribeHyperParameterTuningJobWithContext(ctx aws.Context, input *DescribeHyperParameterTuningJobInput, opts ...request.Option) (*DescribeHyperParameterTuningJobOutput, error) {
2822	req, out := c.DescribeHyperParameterTuningJobRequest(input)
2823	req.SetContext(ctx)
2824	req.ApplyOptions(opts...)
2825	return out, req.Send()
2826}
2827
2828const opDescribeLabelingJob = "DescribeLabelingJob"
2829
2830// DescribeLabelingJobRequest generates a "aws/request.Request" representing the
2831// client's request for the DescribeLabelingJob operation. The "output" return
2832// value will be populated with the request's response once the request completes
2833// successfully.
2834//
2835// Use "Send" method on the returned Request to send the API call to the service.
2836// the "output" return value is not valid until after Send returns without error.
2837//
2838// See DescribeLabelingJob for more information on using the DescribeLabelingJob
2839// API call, and error handling.
2840//
2841// This method is useful when you want to inject custom logic or configuration
2842// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2843//
2844//
2845//    // Example sending a request using the DescribeLabelingJobRequest method.
2846//    req, resp := client.DescribeLabelingJobRequest(params)
2847//
2848//    err := req.Send()
2849//    if err == nil { // resp is now filled
2850//        fmt.Println(resp)
2851//    }
2852//
2853// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeLabelingJob
2854func (c *SageMaker) DescribeLabelingJobRequest(input *DescribeLabelingJobInput) (req *request.Request, output *DescribeLabelingJobOutput) {
2855	op := &request.Operation{
2856		Name:       opDescribeLabelingJob,
2857		HTTPMethod: "POST",
2858		HTTPPath:   "/",
2859	}
2860
2861	if input == nil {
2862		input = &DescribeLabelingJobInput{}
2863	}
2864
2865	output = &DescribeLabelingJobOutput{}
2866	req = c.newRequest(op, input, output)
2867	return
2868}
2869
2870// DescribeLabelingJob API operation for Amazon SageMaker Service.
2871//
2872// Gets information about a labeling job.
2873//
2874// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2875// with awserr.Error's Code and Message methods to get detailed information about
2876// the error.
2877//
2878// See the AWS API reference guide for Amazon SageMaker Service's
2879// API operation DescribeLabelingJob for usage and error information.
2880//
2881// Returned Error Codes:
2882//   * ErrCodeResourceNotFound "ResourceNotFound"
2883//   Resource being access is not found.
2884//
2885// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeLabelingJob
2886func (c *SageMaker) DescribeLabelingJob(input *DescribeLabelingJobInput) (*DescribeLabelingJobOutput, error) {
2887	req, out := c.DescribeLabelingJobRequest(input)
2888	return out, req.Send()
2889}
2890
2891// DescribeLabelingJobWithContext is the same as DescribeLabelingJob with the addition of
2892// the ability to pass a context and additional request options.
2893//
2894// See DescribeLabelingJob for details on how to use this API operation.
2895//
2896// The context must be non-nil and will be used for request cancellation. If
2897// the context is nil a panic will occur. In the future the SDK may create
2898// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2899// for more information on using Contexts.
2900func (c *SageMaker) DescribeLabelingJobWithContext(ctx aws.Context, input *DescribeLabelingJobInput, opts ...request.Option) (*DescribeLabelingJobOutput, error) {
2901	req, out := c.DescribeLabelingJobRequest(input)
2902	req.SetContext(ctx)
2903	req.ApplyOptions(opts...)
2904	return out, req.Send()
2905}
2906
2907const opDescribeModel = "DescribeModel"
2908
2909// DescribeModelRequest generates a "aws/request.Request" representing the
2910// client's request for the DescribeModel operation. The "output" return
2911// value will be populated with the request's response once the request completes
2912// successfully.
2913//
2914// Use "Send" method on the returned Request to send the API call to the service.
2915// the "output" return value is not valid until after Send returns without error.
2916//
2917// See DescribeModel for more information on using the DescribeModel
2918// API call, and error handling.
2919//
2920// This method is useful when you want to inject custom logic or configuration
2921// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2922//
2923//
2924//    // Example sending a request using the DescribeModelRequest method.
2925//    req, resp := client.DescribeModelRequest(params)
2926//
2927//    err := req.Send()
2928//    if err == nil { // resp is now filled
2929//        fmt.Println(resp)
2930//    }
2931//
2932// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeModel
2933func (c *SageMaker) DescribeModelRequest(input *DescribeModelInput) (req *request.Request, output *DescribeModelOutput) {
2934	op := &request.Operation{
2935		Name:       opDescribeModel,
2936		HTTPMethod: "POST",
2937		HTTPPath:   "/",
2938	}
2939
2940	if input == nil {
2941		input = &DescribeModelInput{}
2942	}
2943
2944	output = &DescribeModelOutput{}
2945	req = c.newRequest(op, input, output)
2946	return
2947}
2948
2949// DescribeModel API operation for Amazon SageMaker Service.
2950//
2951// Describes a model that you created using the CreateModel API.
2952//
2953// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2954// with awserr.Error's Code and Message methods to get detailed information about
2955// the error.
2956//
2957// See the AWS API reference guide for Amazon SageMaker Service's
2958// API operation DescribeModel for usage and error information.
2959// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeModel
2960func (c *SageMaker) DescribeModel(input *DescribeModelInput) (*DescribeModelOutput, error) {
2961	req, out := c.DescribeModelRequest(input)
2962	return out, req.Send()
2963}
2964
2965// DescribeModelWithContext is the same as DescribeModel with the addition of
2966// the ability to pass a context and additional request options.
2967//
2968// See DescribeModel for details on how to use this API operation.
2969//
2970// The context must be non-nil and will be used for request cancellation. If
2971// the context is nil a panic will occur. In the future the SDK may create
2972// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2973// for more information on using Contexts.
2974func (c *SageMaker) DescribeModelWithContext(ctx aws.Context, input *DescribeModelInput, opts ...request.Option) (*DescribeModelOutput, error) {
2975	req, out := c.DescribeModelRequest(input)
2976	req.SetContext(ctx)
2977	req.ApplyOptions(opts...)
2978	return out, req.Send()
2979}
2980
2981const opDescribeModelPackage = "DescribeModelPackage"
2982
2983// DescribeModelPackageRequest generates a "aws/request.Request" representing the
2984// client's request for the DescribeModelPackage operation. The "output" return
2985// value will be populated with the request's response once the request completes
2986// successfully.
2987//
2988// Use "Send" method on the returned Request to send the API call to the service.
2989// the "output" return value is not valid until after Send returns without error.
2990//
2991// See DescribeModelPackage for more information on using the DescribeModelPackage
2992// API call, and error handling.
2993//
2994// This method is useful when you want to inject custom logic or configuration
2995// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2996//
2997//
2998//    // Example sending a request using the DescribeModelPackageRequest method.
2999//    req, resp := client.DescribeModelPackageRequest(params)
3000//
3001//    err := req.Send()
3002//    if err == nil { // resp is now filled
3003//        fmt.Println(resp)
3004//    }
3005//
3006// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeModelPackage
3007func (c *SageMaker) DescribeModelPackageRequest(input *DescribeModelPackageInput) (req *request.Request, output *DescribeModelPackageOutput) {
3008	op := &request.Operation{
3009		Name:       opDescribeModelPackage,
3010		HTTPMethod: "POST",
3011		HTTPPath:   "/",
3012	}
3013
3014	if input == nil {
3015		input = &DescribeModelPackageInput{}
3016	}
3017
3018	output = &DescribeModelPackageOutput{}
3019	req = c.newRequest(op, input, output)
3020	return
3021}
3022
3023// DescribeModelPackage API operation for Amazon SageMaker Service.
3024//
3025// Returns a description of the specified model package, which is used to create
3026// Amazon SageMaker models or list them on AWS Marketplace.
3027//
3028// To create models in Amazon SageMaker, buyers can subscribe to model packages
3029// listed on AWS Marketplace.
3030//
3031// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3032// with awserr.Error's Code and Message methods to get detailed information about
3033// the error.
3034//
3035// See the AWS API reference guide for Amazon SageMaker Service's
3036// API operation DescribeModelPackage for usage and error information.
3037// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeModelPackage
3038func (c *SageMaker) DescribeModelPackage(input *DescribeModelPackageInput) (*DescribeModelPackageOutput, error) {
3039	req, out := c.DescribeModelPackageRequest(input)
3040	return out, req.Send()
3041}
3042
3043// DescribeModelPackageWithContext is the same as DescribeModelPackage with the addition of
3044// the ability to pass a context and additional request options.
3045//
3046// See DescribeModelPackage for details on how to use this API operation.
3047//
3048// The context must be non-nil and will be used for request cancellation. If
3049// the context is nil a panic will occur. In the future the SDK may create
3050// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3051// for more information on using Contexts.
3052func (c *SageMaker) DescribeModelPackageWithContext(ctx aws.Context, input *DescribeModelPackageInput, opts ...request.Option) (*DescribeModelPackageOutput, error) {
3053	req, out := c.DescribeModelPackageRequest(input)
3054	req.SetContext(ctx)
3055	req.ApplyOptions(opts...)
3056	return out, req.Send()
3057}
3058
3059const opDescribeNotebookInstance = "DescribeNotebookInstance"
3060
3061// DescribeNotebookInstanceRequest generates a "aws/request.Request" representing the
3062// client's request for the DescribeNotebookInstance operation. The "output" return
3063// value will be populated with the request's response once the request completes
3064// successfully.
3065//
3066// Use "Send" method on the returned Request to send the API call to the service.
3067// the "output" return value is not valid until after Send returns without error.
3068//
3069// See DescribeNotebookInstance for more information on using the DescribeNotebookInstance
3070// API call, and error handling.
3071//
3072// This method is useful when you want to inject custom logic or configuration
3073// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3074//
3075//
3076//    // Example sending a request using the DescribeNotebookInstanceRequest method.
3077//    req, resp := client.DescribeNotebookInstanceRequest(params)
3078//
3079//    err := req.Send()
3080//    if err == nil { // resp is now filled
3081//        fmt.Println(resp)
3082//    }
3083//
3084// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeNotebookInstance
3085func (c *SageMaker) DescribeNotebookInstanceRequest(input *DescribeNotebookInstanceInput) (req *request.Request, output *DescribeNotebookInstanceOutput) {
3086	op := &request.Operation{
3087		Name:       opDescribeNotebookInstance,
3088		HTTPMethod: "POST",
3089		HTTPPath:   "/",
3090	}
3091
3092	if input == nil {
3093		input = &DescribeNotebookInstanceInput{}
3094	}
3095
3096	output = &DescribeNotebookInstanceOutput{}
3097	req = c.newRequest(op, input, output)
3098	return
3099}
3100
3101// DescribeNotebookInstance API operation for Amazon SageMaker Service.
3102//
3103// Returns information about a notebook instance.
3104//
3105// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3106// with awserr.Error's Code and Message methods to get detailed information about
3107// the error.
3108//
3109// See the AWS API reference guide for Amazon SageMaker Service's
3110// API operation DescribeNotebookInstance for usage and error information.
3111// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeNotebookInstance
3112func (c *SageMaker) DescribeNotebookInstance(input *DescribeNotebookInstanceInput) (*DescribeNotebookInstanceOutput, error) {
3113	req, out := c.DescribeNotebookInstanceRequest(input)
3114	return out, req.Send()
3115}
3116
3117// DescribeNotebookInstanceWithContext is the same as DescribeNotebookInstance with the addition of
3118// the ability to pass a context and additional request options.
3119//
3120// See DescribeNotebookInstance for details on how to use this API operation.
3121//
3122// The context must be non-nil and will be used for request cancellation. If
3123// the context is nil a panic will occur. In the future the SDK may create
3124// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3125// for more information on using Contexts.
3126func (c *SageMaker) DescribeNotebookInstanceWithContext(ctx aws.Context, input *DescribeNotebookInstanceInput, opts ...request.Option) (*DescribeNotebookInstanceOutput, error) {
3127	req, out := c.DescribeNotebookInstanceRequest(input)
3128	req.SetContext(ctx)
3129	req.ApplyOptions(opts...)
3130	return out, req.Send()
3131}
3132
3133const opDescribeNotebookInstanceLifecycleConfig = "DescribeNotebookInstanceLifecycleConfig"
3134
3135// DescribeNotebookInstanceLifecycleConfigRequest generates a "aws/request.Request" representing the
3136// client's request for the DescribeNotebookInstanceLifecycleConfig operation. The "output" return
3137// value will be populated with the request's response once the request completes
3138// successfully.
3139//
3140// Use "Send" method on the returned Request to send the API call to the service.
3141// the "output" return value is not valid until after Send returns without error.
3142//
3143// See DescribeNotebookInstanceLifecycleConfig for more information on using the DescribeNotebookInstanceLifecycleConfig
3144// API call, and error handling.
3145//
3146// This method is useful when you want to inject custom logic or configuration
3147// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3148//
3149//
3150//    // Example sending a request using the DescribeNotebookInstanceLifecycleConfigRequest method.
3151//    req, resp := client.DescribeNotebookInstanceLifecycleConfigRequest(params)
3152//
3153//    err := req.Send()
3154//    if err == nil { // resp is now filled
3155//        fmt.Println(resp)
3156//    }
3157//
3158// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeNotebookInstanceLifecycleConfig
3159func (c *SageMaker) DescribeNotebookInstanceLifecycleConfigRequest(input *DescribeNotebookInstanceLifecycleConfigInput) (req *request.Request, output *DescribeNotebookInstanceLifecycleConfigOutput) {
3160	op := &request.Operation{
3161		Name:       opDescribeNotebookInstanceLifecycleConfig,
3162		HTTPMethod: "POST",
3163		HTTPPath:   "/",
3164	}
3165
3166	if input == nil {
3167		input = &DescribeNotebookInstanceLifecycleConfigInput{}
3168	}
3169
3170	output = &DescribeNotebookInstanceLifecycleConfigOutput{}
3171	req = c.newRequest(op, input, output)
3172	return
3173}
3174
3175// DescribeNotebookInstanceLifecycleConfig API operation for Amazon SageMaker Service.
3176//
3177// Returns a description of a notebook instance lifecycle configuration.
3178//
3179// For information about notebook instance lifestyle configurations, see Step
3180// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
3181//
3182// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3183// with awserr.Error's Code and Message methods to get detailed information about
3184// the error.
3185//
3186// See the AWS API reference guide for Amazon SageMaker Service's
3187// API operation DescribeNotebookInstanceLifecycleConfig for usage and error information.
3188// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeNotebookInstanceLifecycleConfig
3189func (c *SageMaker) DescribeNotebookInstanceLifecycleConfig(input *DescribeNotebookInstanceLifecycleConfigInput) (*DescribeNotebookInstanceLifecycleConfigOutput, error) {
3190	req, out := c.DescribeNotebookInstanceLifecycleConfigRequest(input)
3191	return out, req.Send()
3192}
3193
3194// DescribeNotebookInstanceLifecycleConfigWithContext is the same as DescribeNotebookInstanceLifecycleConfig with the addition of
3195// the ability to pass a context and additional request options.
3196//
3197// See DescribeNotebookInstanceLifecycleConfig for details on how to use this API operation.
3198//
3199// The context must be non-nil and will be used for request cancellation. If
3200// the context is nil a panic will occur. In the future the SDK may create
3201// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3202// for more information on using Contexts.
3203func (c *SageMaker) DescribeNotebookInstanceLifecycleConfigWithContext(ctx aws.Context, input *DescribeNotebookInstanceLifecycleConfigInput, opts ...request.Option) (*DescribeNotebookInstanceLifecycleConfigOutput, error) {
3204	req, out := c.DescribeNotebookInstanceLifecycleConfigRequest(input)
3205	req.SetContext(ctx)
3206	req.ApplyOptions(opts...)
3207	return out, req.Send()
3208}
3209
3210const opDescribeSubscribedWorkteam = "DescribeSubscribedWorkteam"
3211
3212// DescribeSubscribedWorkteamRequest generates a "aws/request.Request" representing the
3213// client's request for the DescribeSubscribedWorkteam operation. The "output" return
3214// value will be populated with the request's response once the request completes
3215// successfully.
3216//
3217// Use "Send" method on the returned Request to send the API call to the service.
3218// the "output" return value is not valid until after Send returns without error.
3219//
3220// See DescribeSubscribedWorkteam for more information on using the DescribeSubscribedWorkteam
3221// API call, and error handling.
3222//
3223// This method is useful when you want to inject custom logic or configuration
3224// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3225//
3226//
3227//    // Example sending a request using the DescribeSubscribedWorkteamRequest method.
3228//    req, resp := client.DescribeSubscribedWorkteamRequest(params)
3229//
3230//    err := req.Send()
3231//    if err == nil { // resp is now filled
3232//        fmt.Println(resp)
3233//    }
3234//
3235// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeSubscribedWorkteam
3236func (c *SageMaker) DescribeSubscribedWorkteamRequest(input *DescribeSubscribedWorkteamInput) (req *request.Request, output *DescribeSubscribedWorkteamOutput) {
3237	op := &request.Operation{
3238		Name:       opDescribeSubscribedWorkteam,
3239		HTTPMethod: "POST",
3240		HTTPPath:   "/",
3241	}
3242
3243	if input == nil {
3244		input = &DescribeSubscribedWorkteamInput{}
3245	}
3246
3247	output = &DescribeSubscribedWorkteamOutput{}
3248	req = c.newRequest(op, input, output)
3249	return
3250}
3251
3252// DescribeSubscribedWorkteam API operation for Amazon SageMaker Service.
3253//
3254// Gets information about a work team provided by a vendor. It returns details
3255// about the subscription with a vendor in the AWS Marketplace.
3256//
3257// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3258// with awserr.Error's Code and Message methods to get detailed information about
3259// the error.
3260//
3261// See the AWS API reference guide for Amazon SageMaker Service's
3262// API operation DescribeSubscribedWorkteam for usage and error information.
3263// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeSubscribedWorkteam
3264func (c *SageMaker) DescribeSubscribedWorkteam(input *DescribeSubscribedWorkteamInput) (*DescribeSubscribedWorkteamOutput, error) {
3265	req, out := c.DescribeSubscribedWorkteamRequest(input)
3266	return out, req.Send()
3267}
3268
3269// DescribeSubscribedWorkteamWithContext is the same as DescribeSubscribedWorkteam with the addition of
3270// the ability to pass a context and additional request options.
3271//
3272// See DescribeSubscribedWorkteam for details on how to use this API operation.
3273//
3274// The context must be non-nil and will be used for request cancellation. If
3275// the context is nil a panic will occur. In the future the SDK may create
3276// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3277// for more information on using Contexts.
3278func (c *SageMaker) DescribeSubscribedWorkteamWithContext(ctx aws.Context, input *DescribeSubscribedWorkteamInput, opts ...request.Option) (*DescribeSubscribedWorkteamOutput, error) {
3279	req, out := c.DescribeSubscribedWorkteamRequest(input)
3280	req.SetContext(ctx)
3281	req.ApplyOptions(opts...)
3282	return out, req.Send()
3283}
3284
3285const opDescribeTrainingJob = "DescribeTrainingJob"
3286
3287// DescribeTrainingJobRequest generates a "aws/request.Request" representing the
3288// client's request for the DescribeTrainingJob operation. The "output" return
3289// value will be populated with the request's response once the request completes
3290// successfully.
3291//
3292// Use "Send" method on the returned Request to send the API call to the service.
3293// the "output" return value is not valid until after Send returns without error.
3294//
3295// See DescribeTrainingJob for more information on using the DescribeTrainingJob
3296// API call, and error handling.
3297//
3298// This method is useful when you want to inject custom logic or configuration
3299// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3300//
3301//
3302//    // Example sending a request using the DescribeTrainingJobRequest method.
3303//    req, resp := client.DescribeTrainingJobRequest(params)
3304//
3305//    err := req.Send()
3306//    if err == nil { // resp is now filled
3307//        fmt.Println(resp)
3308//    }
3309//
3310// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeTrainingJob
3311func (c *SageMaker) DescribeTrainingJobRequest(input *DescribeTrainingJobInput) (req *request.Request, output *DescribeTrainingJobOutput) {
3312	op := &request.Operation{
3313		Name:       opDescribeTrainingJob,
3314		HTTPMethod: "POST",
3315		HTTPPath:   "/",
3316	}
3317
3318	if input == nil {
3319		input = &DescribeTrainingJobInput{}
3320	}
3321
3322	output = &DescribeTrainingJobOutput{}
3323	req = c.newRequest(op, input, output)
3324	return
3325}
3326
3327// DescribeTrainingJob API operation for Amazon SageMaker Service.
3328//
3329// Returns information about a training job.
3330//
3331// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3332// with awserr.Error's Code and Message methods to get detailed information about
3333// the error.
3334//
3335// See the AWS API reference guide for Amazon SageMaker Service's
3336// API operation DescribeTrainingJob for usage and error information.
3337//
3338// Returned Error Codes:
3339//   * ErrCodeResourceNotFound "ResourceNotFound"
3340//   Resource being access is not found.
3341//
3342// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeTrainingJob
3343func (c *SageMaker) DescribeTrainingJob(input *DescribeTrainingJobInput) (*DescribeTrainingJobOutput, error) {
3344	req, out := c.DescribeTrainingJobRequest(input)
3345	return out, req.Send()
3346}
3347
3348// DescribeTrainingJobWithContext is the same as DescribeTrainingJob with the addition of
3349// the ability to pass a context and additional request options.
3350//
3351// See DescribeTrainingJob for details on how to use this API operation.
3352//
3353// The context must be non-nil and will be used for request cancellation. If
3354// the context is nil a panic will occur. In the future the SDK may create
3355// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3356// for more information on using Contexts.
3357func (c *SageMaker) DescribeTrainingJobWithContext(ctx aws.Context, input *DescribeTrainingJobInput, opts ...request.Option) (*DescribeTrainingJobOutput, error) {
3358	req, out := c.DescribeTrainingJobRequest(input)
3359	req.SetContext(ctx)
3360	req.ApplyOptions(opts...)
3361	return out, req.Send()
3362}
3363
3364const opDescribeTransformJob = "DescribeTransformJob"
3365
3366// DescribeTransformJobRequest generates a "aws/request.Request" representing the
3367// client's request for the DescribeTransformJob operation. The "output" return
3368// value will be populated with the request's response once the request completes
3369// successfully.
3370//
3371// Use "Send" method on the returned Request to send the API call to the service.
3372// the "output" return value is not valid until after Send returns without error.
3373//
3374// See DescribeTransformJob for more information on using the DescribeTransformJob
3375// API call, and error handling.
3376//
3377// This method is useful when you want to inject custom logic or configuration
3378// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3379//
3380//
3381//    // Example sending a request using the DescribeTransformJobRequest method.
3382//    req, resp := client.DescribeTransformJobRequest(params)
3383//
3384//    err := req.Send()
3385//    if err == nil { // resp is now filled
3386//        fmt.Println(resp)
3387//    }
3388//
3389// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeTransformJob
3390func (c *SageMaker) DescribeTransformJobRequest(input *DescribeTransformJobInput) (req *request.Request, output *DescribeTransformJobOutput) {
3391	op := &request.Operation{
3392		Name:       opDescribeTransformJob,
3393		HTTPMethod: "POST",
3394		HTTPPath:   "/",
3395	}
3396
3397	if input == nil {
3398		input = &DescribeTransformJobInput{}
3399	}
3400
3401	output = &DescribeTransformJobOutput{}
3402	req = c.newRequest(op, input, output)
3403	return
3404}
3405
3406// DescribeTransformJob API operation for Amazon SageMaker Service.
3407//
3408// Returns information about a transform job.
3409//
3410// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3411// with awserr.Error's Code and Message methods to get detailed information about
3412// the error.
3413//
3414// See the AWS API reference guide for Amazon SageMaker Service's
3415// API operation DescribeTransformJob for usage and error information.
3416//
3417// Returned Error Codes:
3418//   * ErrCodeResourceNotFound "ResourceNotFound"
3419//   Resource being access is not found.
3420//
3421// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeTransformJob
3422func (c *SageMaker) DescribeTransformJob(input *DescribeTransformJobInput) (*DescribeTransformJobOutput, error) {
3423	req, out := c.DescribeTransformJobRequest(input)
3424	return out, req.Send()
3425}
3426
3427// DescribeTransformJobWithContext is the same as DescribeTransformJob with the addition of
3428// the ability to pass a context and additional request options.
3429//
3430// See DescribeTransformJob for details on how to use this API operation.
3431//
3432// The context must be non-nil and will be used for request cancellation. If
3433// the context is nil a panic will occur. In the future the SDK may create
3434// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3435// for more information on using Contexts.
3436func (c *SageMaker) DescribeTransformJobWithContext(ctx aws.Context, input *DescribeTransformJobInput, opts ...request.Option) (*DescribeTransformJobOutput, error) {
3437	req, out := c.DescribeTransformJobRequest(input)
3438	req.SetContext(ctx)
3439	req.ApplyOptions(opts...)
3440	return out, req.Send()
3441}
3442
3443const opDescribeWorkteam = "DescribeWorkteam"
3444
3445// DescribeWorkteamRequest generates a "aws/request.Request" representing the
3446// client's request for the DescribeWorkteam operation. The "output" return
3447// value will be populated with the request's response once the request completes
3448// successfully.
3449//
3450// Use "Send" method on the returned Request to send the API call to the service.
3451// the "output" return value is not valid until after Send returns without error.
3452//
3453// See DescribeWorkteam for more information on using the DescribeWorkteam
3454// API call, and error handling.
3455//
3456// This method is useful when you want to inject custom logic or configuration
3457// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3458//
3459//
3460//    // Example sending a request using the DescribeWorkteamRequest method.
3461//    req, resp := client.DescribeWorkteamRequest(params)
3462//
3463//    err := req.Send()
3464//    if err == nil { // resp is now filled
3465//        fmt.Println(resp)
3466//    }
3467//
3468// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeWorkteam
3469func (c *SageMaker) DescribeWorkteamRequest(input *DescribeWorkteamInput) (req *request.Request, output *DescribeWorkteamOutput) {
3470	op := &request.Operation{
3471		Name:       opDescribeWorkteam,
3472		HTTPMethod: "POST",
3473		HTTPPath:   "/",
3474	}
3475
3476	if input == nil {
3477		input = &DescribeWorkteamInput{}
3478	}
3479
3480	output = &DescribeWorkteamOutput{}
3481	req = c.newRequest(op, input, output)
3482	return
3483}
3484
3485// DescribeWorkteam API operation for Amazon SageMaker Service.
3486//
3487// Gets information about a specific work team. You can see information such
3488// as the create date, the last updated date, membership information, and the
3489// work team's Amazon Resource Name (ARN).
3490//
3491// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3492// with awserr.Error's Code and Message methods to get detailed information about
3493// the error.
3494//
3495// See the AWS API reference guide for Amazon SageMaker Service's
3496// API operation DescribeWorkteam for usage and error information.
3497// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeWorkteam
3498func (c *SageMaker) DescribeWorkteam(input *DescribeWorkteamInput) (*DescribeWorkteamOutput, error) {
3499	req, out := c.DescribeWorkteamRequest(input)
3500	return out, req.Send()
3501}
3502
3503// DescribeWorkteamWithContext is the same as DescribeWorkteam with the addition of
3504// the ability to pass a context and additional request options.
3505//
3506// See DescribeWorkteam for details on how to use this API operation.
3507//
3508// The context must be non-nil and will be used for request cancellation. If
3509// the context is nil a panic will occur. In the future the SDK may create
3510// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3511// for more information on using Contexts.
3512func (c *SageMaker) DescribeWorkteamWithContext(ctx aws.Context, input *DescribeWorkteamInput, opts ...request.Option) (*DescribeWorkteamOutput, error) {
3513	req, out := c.DescribeWorkteamRequest(input)
3514	req.SetContext(ctx)
3515	req.ApplyOptions(opts...)
3516	return out, req.Send()
3517}
3518
3519const opGetSearchSuggestions = "GetSearchSuggestions"
3520
3521// GetSearchSuggestionsRequest generates a "aws/request.Request" representing the
3522// client's request for the GetSearchSuggestions operation. The "output" return
3523// value will be populated with the request's response once the request completes
3524// successfully.
3525//
3526// Use "Send" method on the returned Request to send the API call to the service.
3527// the "output" return value is not valid until after Send returns without error.
3528//
3529// See GetSearchSuggestions for more information on using the GetSearchSuggestions
3530// API call, and error handling.
3531//
3532// This method is useful when you want to inject custom logic or configuration
3533// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3534//
3535//
3536//    // Example sending a request using the GetSearchSuggestionsRequest method.
3537//    req, resp := client.GetSearchSuggestionsRequest(params)
3538//
3539//    err := req.Send()
3540//    if err == nil { // resp is now filled
3541//        fmt.Println(resp)
3542//    }
3543//
3544// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/GetSearchSuggestions
3545func (c *SageMaker) GetSearchSuggestionsRequest(input *GetSearchSuggestionsInput) (req *request.Request, output *GetSearchSuggestionsOutput) {
3546	op := &request.Operation{
3547		Name:       opGetSearchSuggestions,
3548		HTTPMethod: "POST",
3549		HTTPPath:   "/",
3550	}
3551
3552	if input == nil {
3553		input = &GetSearchSuggestionsInput{}
3554	}
3555
3556	output = &GetSearchSuggestionsOutput{}
3557	req = c.newRequest(op, input, output)
3558	return
3559}
3560
3561// GetSearchSuggestions API operation for Amazon SageMaker Service.
3562//
3563// An auto-complete API for the search functionality in the Amazon SageMaker
3564// console. It returns suggestions of possible matches for the property name
3565// to use in Search queries. Provides suggestions for HyperParameters, Tags,
3566// and Metrics.
3567//
3568// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3569// with awserr.Error's Code and Message methods to get detailed information about
3570// the error.
3571//
3572// See the AWS API reference guide for Amazon SageMaker Service's
3573// API operation GetSearchSuggestions for usage and error information.
3574// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/GetSearchSuggestions
3575func (c *SageMaker) GetSearchSuggestions(input *GetSearchSuggestionsInput) (*GetSearchSuggestionsOutput, error) {
3576	req, out := c.GetSearchSuggestionsRequest(input)
3577	return out, req.Send()
3578}
3579
3580// GetSearchSuggestionsWithContext is the same as GetSearchSuggestions with the addition of
3581// the ability to pass a context and additional request options.
3582//
3583// See GetSearchSuggestions for details on how to use this API operation.
3584//
3585// The context must be non-nil and will be used for request cancellation. If
3586// the context is nil a panic will occur. In the future the SDK may create
3587// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3588// for more information on using Contexts.
3589func (c *SageMaker) GetSearchSuggestionsWithContext(ctx aws.Context, input *GetSearchSuggestionsInput, opts ...request.Option) (*GetSearchSuggestionsOutput, error) {
3590	req, out := c.GetSearchSuggestionsRequest(input)
3591	req.SetContext(ctx)
3592	req.ApplyOptions(opts...)
3593	return out, req.Send()
3594}
3595
3596const opListAlgorithms = "ListAlgorithms"
3597
3598// ListAlgorithmsRequest generates a "aws/request.Request" representing the
3599// client's request for the ListAlgorithms operation. The "output" return
3600// value will be populated with the request's response once the request completes
3601// successfully.
3602//
3603// Use "Send" method on the returned Request to send the API call to the service.
3604// the "output" return value is not valid until after Send returns without error.
3605//
3606// See ListAlgorithms for more information on using the ListAlgorithms
3607// API call, and error handling.
3608//
3609// This method is useful when you want to inject custom logic or configuration
3610// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3611//
3612//
3613//    // Example sending a request using the ListAlgorithmsRequest method.
3614//    req, resp := client.ListAlgorithmsRequest(params)
3615//
3616//    err := req.Send()
3617//    if err == nil { // resp is now filled
3618//        fmt.Println(resp)
3619//    }
3620//
3621// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAlgorithms
3622func (c *SageMaker) ListAlgorithmsRequest(input *ListAlgorithmsInput) (req *request.Request, output *ListAlgorithmsOutput) {
3623	op := &request.Operation{
3624		Name:       opListAlgorithms,
3625		HTTPMethod: "POST",
3626		HTTPPath:   "/",
3627	}
3628
3629	if input == nil {
3630		input = &ListAlgorithmsInput{}
3631	}
3632
3633	output = &ListAlgorithmsOutput{}
3634	req = c.newRequest(op, input, output)
3635	return
3636}
3637
3638// ListAlgorithms API operation for Amazon SageMaker Service.
3639//
3640// Lists the machine learning algorithms that have been created.
3641//
3642// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3643// with awserr.Error's Code and Message methods to get detailed information about
3644// the error.
3645//
3646// See the AWS API reference guide for Amazon SageMaker Service's
3647// API operation ListAlgorithms for usage and error information.
3648// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAlgorithms
3649func (c *SageMaker) ListAlgorithms(input *ListAlgorithmsInput) (*ListAlgorithmsOutput, error) {
3650	req, out := c.ListAlgorithmsRequest(input)
3651	return out, req.Send()
3652}
3653
3654// ListAlgorithmsWithContext is the same as ListAlgorithms with the addition of
3655// the ability to pass a context and additional request options.
3656//
3657// See ListAlgorithms for details on how to use this API operation.
3658//
3659// The context must be non-nil and will be used for request cancellation. If
3660// the context is nil a panic will occur. In the future the SDK may create
3661// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3662// for more information on using Contexts.
3663func (c *SageMaker) ListAlgorithmsWithContext(ctx aws.Context, input *ListAlgorithmsInput, opts ...request.Option) (*ListAlgorithmsOutput, error) {
3664	req, out := c.ListAlgorithmsRequest(input)
3665	req.SetContext(ctx)
3666	req.ApplyOptions(opts...)
3667	return out, req.Send()
3668}
3669
3670const opListCodeRepositories = "ListCodeRepositories"
3671
3672// ListCodeRepositoriesRequest generates a "aws/request.Request" representing the
3673// client's request for the ListCodeRepositories operation. The "output" return
3674// value will be populated with the request's response once the request completes
3675// successfully.
3676//
3677// Use "Send" method on the returned Request to send the API call to the service.
3678// the "output" return value is not valid until after Send returns without error.
3679//
3680// See ListCodeRepositories for more information on using the ListCodeRepositories
3681// API call, and error handling.
3682//
3683// This method is useful when you want to inject custom logic or configuration
3684// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3685//
3686//
3687//    // Example sending a request using the ListCodeRepositoriesRequest method.
3688//    req, resp := client.ListCodeRepositoriesRequest(params)
3689//
3690//    err := req.Send()
3691//    if err == nil { // resp is now filled
3692//        fmt.Println(resp)
3693//    }
3694//
3695// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListCodeRepositories
3696func (c *SageMaker) ListCodeRepositoriesRequest(input *ListCodeRepositoriesInput) (req *request.Request, output *ListCodeRepositoriesOutput) {
3697	op := &request.Operation{
3698		Name:       opListCodeRepositories,
3699		HTTPMethod: "POST",
3700		HTTPPath:   "/",
3701	}
3702
3703	if input == nil {
3704		input = &ListCodeRepositoriesInput{}
3705	}
3706
3707	output = &ListCodeRepositoriesOutput{}
3708	req = c.newRequest(op, input, output)
3709	return
3710}
3711
3712// ListCodeRepositories API operation for Amazon SageMaker Service.
3713//
3714// Gets a list of the Git repositories in your account.
3715//
3716// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3717// with awserr.Error's Code and Message methods to get detailed information about
3718// the error.
3719//
3720// See the AWS API reference guide for Amazon SageMaker Service's
3721// API operation ListCodeRepositories for usage and error information.
3722// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListCodeRepositories
3723func (c *SageMaker) ListCodeRepositories(input *ListCodeRepositoriesInput) (*ListCodeRepositoriesOutput, error) {
3724	req, out := c.ListCodeRepositoriesRequest(input)
3725	return out, req.Send()
3726}
3727
3728// ListCodeRepositoriesWithContext is the same as ListCodeRepositories with the addition of
3729// the ability to pass a context and additional request options.
3730//
3731// See ListCodeRepositories for details on how to use this API operation.
3732//
3733// The context must be non-nil and will be used for request cancellation. If
3734// the context is nil a panic will occur. In the future the SDK may create
3735// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3736// for more information on using Contexts.
3737func (c *SageMaker) ListCodeRepositoriesWithContext(ctx aws.Context, input *ListCodeRepositoriesInput, opts ...request.Option) (*ListCodeRepositoriesOutput, error) {
3738	req, out := c.ListCodeRepositoriesRequest(input)
3739	req.SetContext(ctx)
3740	req.ApplyOptions(opts...)
3741	return out, req.Send()
3742}
3743
3744const opListCompilationJobs = "ListCompilationJobs"
3745
3746// ListCompilationJobsRequest generates a "aws/request.Request" representing the
3747// client's request for the ListCompilationJobs operation. The "output" return
3748// value will be populated with the request's response once the request completes
3749// successfully.
3750//
3751// Use "Send" method on the returned Request to send the API call to the service.
3752// the "output" return value is not valid until after Send returns without error.
3753//
3754// See ListCompilationJobs for more information on using the ListCompilationJobs
3755// API call, and error handling.
3756//
3757// This method is useful when you want to inject custom logic or configuration
3758// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3759//
3760//
3761//    // Example sending a request using the ListCompilationJobsRequest method.
3762//    req, resp := client.ListCompilationJobsRequest(params)
3763//
3764//    err := req.Send()
3765//    if err == nil { // resp is now filled
3766//        fmt.Println(resp)
3767//    }
3768//
3769// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListCompilationJobs
3770func (c *SageMaker) ListCompilationJobsRequest(input *ListCompilationJobsInput) (req *request.Request, output *ListCompilationJobsOutput) {
3771	op := &request.Operation{
3772		Name:       opListCompilationJobs,
3773		HTTPMethod: "POST",
3774		HTTPPath:   "/",
3775		Paginator: &request.Paginator{
3776			InputTokens:     []string{"NextToken"},
3777			OutputTokens:    []string{"NextToken"},
3778			LimitToken:      "MaxResults",
3779			TruncationToken: "",
3780		},
3781	}
3782
3783	if input == nil {
3784		input = &ListCompilationJobsInput{}
3785	}
3786
3787	output = &ListCompilationJobsOutput{}
3788	req = c.newRequest(op, input, output)
3789	return
3790}
3791
3792// ListCompilationJobs API operation for Amazon SageMaker Service.
3793//
3794// Lists model compilation jobs that satisfy various filters.
3795//
3796// To create a model compilation job, use CreateCompilationJob. To get information
3797// about a particular model compilation job you have created, use DescribeCompilationJob.
3798//
3799// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3800// with awserr.Error's Code and Message methods to get detailed information about
3801// the error.
3802//
3803// See the AWS API reference guide for Amazon SageMaker Service's
3804// API operation ListCompilationJobs for usage and error information.
3805// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListCompilationJobs
3806func (c *SageMaker) ListCompilationJobs(input *ListCompilationJobsInput) (*ListCompilationJobsOutput, error) {
3807	req, out := c.ListCompilationJobsRequest(input)
3808	return out, req.Send()
3809}
3810
3811// ListCompilationJobsWithContext is the same as ListCompilationJobs with the addition of
3812// the ability to pass a context and additional request options.
3813//
3814// See ListCompilationJobs for details on how to use this API operation.
3815//
3816// The context must be non-nil and will be used for request cancellation. If
3817// the context is nil a panic will occur. In the future the SDK may create
3818// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3819// for more information on using Contexts.
3820func (c *SageMaker) ListCompilationJobsWithContext(ctx aws.Context, input *ListCompilationJobsInput, opts ...request.Option) (*ListCompilationJobsOutput, error) {
3821	req, out := c.ListCompilationJobsRequest(input)
3822	req.SetContext(ctx)
3823	req.ApplyOptions(opts...)
3824	return out, req.Send()
3825}
3826
3827// ListCompilationJobsPages iterates over the pages of a ListCompilationJobs operation,
3828// calling the "fn" function with the response data for each page. To stop
3829// iterating, return false from the fn function.
3830//
3831// See ListCompilationJobs method for more information on how to use this operation.
3832//
3833// Note: This operation can generate multiple requests to a service.
3834//
3835//    // Example iterating over at most 3 pages of a ListCompilationJobs operation.
3836//    pageNum := 0
3837//    err := client.ListCompilationJobsPages(params,
3838//        func(page *sagemaker.ListCompilationJobsOutput, lastPage bool) bool {
3839//            pageNum++
3840//            fmt.Println(page)
3841//            return pageNum <= 3
3842//        })
3843//
3844func (c *SageMaker) ListCompilationJobsPages(input *ListCompilationJobsInput, fn func(*ListCompilationJobsOutput, bool) bool) error {
3845	return c.ListCompilationJobsPagesWithContext(aws.BackgroundContext(), input, fn)
3846}
3847
3848// ListCompilationJobsPagesWithContext same as ListCompilationJobsPages except
3849// it takes a Context and allows setting request options on the pages.
3850//
3851// The context must be non-nil and will be used for request cancellation. If
3852// the context is nil a panic will occur. In the future the SDK may create
3853// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3854// for more information on using Contexts.
3855func (c *SageMaker) ListCompilationJobsPagesWithContext(ctx aws.Context, input *ListCompilationJobsInput, fn func(*ListCompilationJobsOutput, bool) bool, opts ...request.Option) error {
3856	p := request.Pagination{
3857		NewRequest: func() (*request.Request, error) {
3858			var inCpy *ListCompilationJobsInput
3859			if input != nil {
3860				tmp := *input
3861				inCpy = &tmp
3862			}
3863			req, _ := c.ListCompilationJobsRequest(inCpy)
3864			req.SetContext(ctx)
3865			req.ApplyOptions(opts...)
3866			return req, nil
3867		},
3868	}
3869
3870	cont := true
3871	for p.Next() && cont {
3872		cont = fn(p.Page().(*ListCompilationJobsOutput), !p.HasNextPage())
3873	}
3874	return p.Err()
3875}
3876
3877const opListEndpointConfigs = "ListEndpointConfigs"
3878
3879// ListEndpointConfigsRequest generates a "aws/request.Request" representing the
3880// client's request for the ListEndpointConfigs operation. The "output" return
3881// value will be populated with the request's response once the request completes
3882// successfully.
3883//
3884// Use "Send" method on the returned Request to send the API call to the service.
3885// the "output" return value is not valid until after Send returns without error.
3886//
3887// See ListEndpointConfigs for more information on using the ListEndpointConfigs
3888// API call, and error handling.
3889//
3890// This method is useful when you want to inject custom logic or configuration
3891// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3892//
3893//
3894//    // Example sending a request using the ListEndpointConfigsRequest method.
3895//    req, resp := client.ListEndpointConfigsRequest(params)
3896//
3897//    err := req.Send()
3898//    if err == nil { // resp is now filled
3899//        fmt.Println(resp)
3900//    }
3901//
3902// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListEndpointConfigs
3903func (c *SageMaker) ListEndpointConfigsRequest(input *ListEndpointConfigsInput) (req *request.Request, output *ListEndpointConfigsOutput) {
3904	op := &request.Operation{
3905		Name:       opListEndpointConfigs,
3906		HTTPMethod: "POST",
3907		HTTPPath:   "/",
3908		Paginator: &request.Paginator{
3909			InputTokens:     []string{"NextToken"},
3910			OutputTokens:    []string{"NextToken"},
3911			LimitToken:      "MaxResults",
3912			TruncationToken: "",
3913		},
3914	}
3915
3916	if input == nil {
3917		input = &ListEndpointConfigsInput{}
3918	}
3919
3920	output = &ListEndpointConfigsOutput{}
3921	req = c.newRequest(op, input, output)
3922	return
3923}
3924
3925// ListEndpointConfigs API operation for Amazon SageMaker Service.
3926//
3927// Lists endpoint configurations.
3928//
3929// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3930// with awserr.Error's Code and Message methods to get detailed information about
3931// the error.
3932//
3933// See the AWS API reference guide for Amazon SageMaker Service's
3934// API operation ListEndpointConfigs for usage and error information.
3935// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListEndpointConfigs
3936func (c *SageMaker) ListEndpointConfigs(input *ListEndpointConfigsInput) (*ListEndpointConfigsOutput, error) {
3937	req, out := c.ListEndpointConfigsRequest(input)
3938	return out, req.Send()
3939}
3940
3941// ListEndpointConfigsWithContext is the same as ListEndpointConfigs with the addition of
3942// the ability to pass a context and additional request options.
3943//
3944// See ListEndpointConfigs for details on how to use this API operation.
3945//
3946// The context must be non-nil and will be used for request cancellation. If
3947// the context is nil a panic will occur. In the future the SDK may create
3948// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3949// for more information on using Contexts.
3950func (c *SageMaker) ListEndpointConfigsWithContext(ctx aws.Context, input *ListEndpointConfigsInput, opts ...request.Option) (*ListEndpointConfigsOutput, error) {
3951	req, out := c.ListEndpointConfigsRequest(input)
3952	req.SetContext(ctx)
3953	req.ApplyOptions(opts...)
3954	return out, req.Send()
3955}
3956
3957// ListEndpointConfigsPages iterates over the pages of a ListEndpointConfigs operation,
3958// calling the "fn" function with the response data for each page. To stop
3959// iterating, return false from the fn function.
3960//
3961// See ListEndpointConfigs method for more information on how to use this operation.
3962//
3963// Note: This operation can generate multiple requests to a service.
3964//
3965//    // Example iterating over at most 3 pages of a ListEndpointConfigs operation.
3966//    pageNum := 0
3967//    err := client.ListEndpointConfigsPages(params,
3968//        func(page *sagemaker.ListEndpointConfigsOutput, lastPage bool) bool {
3969//            pageNum++
3970//            fmt.Println(page)
3971//            return pageNum <= 3
3972//        })
3973//
3974func (c *SageMaker) ListEndpointConfigsPages(input *ListEndpointConfigsInput, fn func(*ListEndpointConfigsOutput, bool) bool) error {
3975	return c.ListEndpointConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
3976}
3977
3978// ListEndpointConfigsPagesWithContext same as ListEndpointConfigsPages except
3979// it takes a Context and allows setting request options on the pages.
3980//
3981// The context must be non-nil and will be used for request cancellation. If
3982// the context is nil a panic will occur. In the future the SDK may create
3983// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3984// for more information on using Contexts.
3985func (c *SageMaker) ListEndpointConfigsPagesWithContext(ctx aws.Context, input *ListEndpointConfigsInput, fn func(*ListEndpointConfigsOutput, bool) bool, opts ...request.Option) error {
3986	p := request.Pagination{
3987		NewRequest: func() (*request.Request, error) {
3988			var inCpy *ListEndpointConfigsInput
3989			if input != nil {
3990				tmp := *input
3991				inCpy = &tmp
3992			}
3993			req, _ := c.ListEndpointConfigsRequest(inCpy)
3994			req.SetContext(ctx)
3995			req.ApplyOptions(opts...)
3996			return req, nil
3997		},
3998	}
3999
4000	cont := true
4001	for p.Next() && cont {
4002		cont = fn(p.Page().(*ListEndpointConfigsOutput), !p.HasNextPage())
4003	}
4004	return p.Err()
4005}
4006
4007const opListEndpoints = "ListEndpoints"
4008
4009// ListEndpointsRequest generates a "aws/request.Request" representing the
4010// client's request for the ListEndpoints operation. The "output" return
4011// value will be populated with the request's response once the request completes
4012// successfully.
4013//
4014// Use "Send" method on the returned Request to send the API call to the service.
4015// the "output" return value is not valid until after Send returns without error.
4016//
4017// See ListEndpoints for more information on using the ListEndpoints
4018// API call, and error handling.
4019//
4020// This method is useful when you want to inject custom logic or configuration
4021// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4022//
4023//
4024//    // Example sending a request using the ListEndpointsRequest method.
4025//    req, resp := client.ListEndpointsRequest(params)
4026//
4027//    err := req.Send()
4028//    if err == nil { // resp is now filled
4029//        fmt.Println(resp)
4030//    }
4031//
4032// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListEndpoints
4033func (c *SageMaker) ListEndpointsRequest(input *ListEndpointsInput) (req *request.Request, output *ListEndpointsOutput) {
4034	op := &request.Operation{
4035		Name:       opListEndpoints,
4036		HTTPMethod: "POST",
4037		HTTPPath:   "/",
4038		Paginator: &request.Paginator{
4039			InputTokens:     []string{"NextToken"},
4040			OutputTokens:    []string{"NextToken"},
4041			LimitToken:      "MaxResults",
4042			TruncationToken: "",
4043		},
4044	}
4045
4046	if input == nil {
4047		input = &ListEndpointsInput{}
4048	}
4049
4050	output = &ListEndpointsOutput{}
4051	req = c.newRequest(op, input, output)
4052	return
4053}
4054
4055// ListEndpoints API operation for Amazon SageMaker Service.
4056//
4057// Lists endpoints.
4058//
4059// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4060// with awserr.Error's Code and Message methods to get detailed information about
4061// the error.
4062//
4063// See the AWS API reference guide for Amazon SageMaker Service's
4064// API operation ListEndpoints for usage and error information.
4065// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListEndpoints
4066func (c *SageMaker) ListEndpoints(input *ListEndpointsInput) (*ListEndpointsOutput, error) {
4067	req, out := c.ListEndpointsRequest(input)
4068	return out, req.Send()
4069}
4070
4071// ListEndpointsWithContext is the same as ListEndpoints with the addition of
4072// the ability to pass a context and additional request options.
4073//
4074// See ListEndpoints for details on how to use this API operation.
4075//
4076// The context must be non-nil and will be used for request cancellation. If
4077// the context is nil a panic will occur. In the future the SDK may create
4078// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4079// for more information on using Contexts.
4080func (c *SageMaker) ListEndpointsWithContext(ctx aws.Context, input *ListEndpointsInput, opts ...request.Option) (*ListEndpointsOutput, error) {
4081	req, out := c.ListEndpointsRequest(input)
4082	req.SetContext(ctx)
4083	req.ApplyOptions(opts...)
4084	return out, req.Send()
4085}
4086
4087// ListEndpointsPages iterates over the pages of a ListEndpoints operation,
4088// calling the "fn" function with the response data for each page. To stop
4089// iterating, return false from the fn function.
4090//
4091// See ListEndpoints method for more information on how to use this operation.
4092//
4093// Note: This operation can generate multiple requests to a service.
4094//
4095//    // Example iterating over at most 3 pages of a ListEndpoints operation.
4096//    pageNum := 0
4097//    err := client.ListEndpointsPages(params,
4098//        func(page *sagemaker.ListEndpointsOutput, lastPage bool) bool {
4099//            pageNum++
4100//            fmt.Println(page)
4101//            return pageNum <= 3
4102//        })
4103//
4104func (c *SageMaker) ListEndpointsPages(input *ListEndpointsInput, fn func(*ListEndpointsOutput, bool) bool) error {
4105	return c.ListEndpointsPagesWithContext(aws.BackgroundContext(), input, fn)
4106}
4107
4108// ListEndpointsPagesWithContext same as ListEndpointsPages except
4109// it takes a Context and allows setting request options on the pages.
4110//
4111// The context must be non-nil and will be used for request cancellation. If
4112// the context is nil a panic will occur. In the future the SDK may create
4113// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4114// for more information on using Contexts.
4115func (c *SageMaker) ListEndpointsPagesWithContext(ctx aws.Context, input *ListEndpointsInput, fn func(*ListEndpointsOutput, bool) bool, opts ...request.Option) error {
4116	p := request.Pagination{
4117		NewRequest: func() (*request.Request, error) {
4118			var inCpy *ListEndpointsInput
4119			if input != nil {
4120				tmp := *input
4121				inCpy = &tmp
4122			}
4123			req, _ := c.ListEndpointsRequest(inCpy)
4124			req.SetContext(ctx)
4125			req.ApplyOptions(opts...)
4126			return req, nil
4127		},
4128	}
4129
4130	cont := true
4131	for p.Next() && cont {
4132		cont = fn(p.Page().(*ListEndpointsOutput), !p.HasNextPage())
4133	}
4134	return p.Err()
4135}
4136
4137const opListHyperParameterTuningJobs = "ListHyperParameterTuningJobs"
4138
4139// ListHyperParameterTuningJobsRequest generates a "aws/request.Request" representing the
4140// client's request for the ListHyperParameterTuningJobs operation. The "output" return
4141// value will be populated with the request's response once the request completes
4142// successfully.
4143//
4144// Use "Send" method on the returned Request to send the API call to the service.
4145// the "output" return value is not valid until after Send returns without error.
4146//
4147// See ListHyperParameterTuningJobs for more information on using the ListHyperParameterTuningJobs
4148// API call, and error handling.
4149//
4150// This method is useful when you want to inject custom logic or configuration
4151// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4152//
4153//
4154//    // Example sending a request using the ListHyperParameterTuningJobsRequest method.
4155//    req, resp := client.ListHyperParameterTuningJobsRequest(params)
4156//
4157//    err := req.Send()
4158//    if err == nil { // resp is now filled
4159//        fmt.Println(resp)
4160//    }
4161//
4162// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListHyperParameterTuningJobs
4163func (c *SageMaker) ListHyperParameterTuningJobsRequest(input *ListHyperParameterTuningJobsInput) (req *request.Request, output *ListHyperParameterTuningJobsOutput) {
4164	op := &request.Operation{
4165		Name:       opListHyperParameterTuningJobs,
4166		HTTPMethod: "POST",
4167		HTTPPath:   "/",
4168		Paginator: &request.Paginator{
4169			InputTokens:     []string{"NextToken"},
4170			OutputTokens:    []string{"NextToken"},
4171			LimitToken:      "MaxResults",
4172			TruncationToken: "",
4173		},
4174	}
4175
4176	if input == nil {
4177		input = &ListHyperParameterTuningJobsInput{}
4178	}
4179
4180	output = &ListHyperParameterTuningJobsOutput{}
4181	req = c.newRequest(op, input, output)
4182	return
4183}
4184
4185// ListHyperParameterTuningJobs API operation for Amazon SageMaker Service.
4186//
4187// Gets a list of HyperParameterTuningJobSummary objects that describe the hyperparameter
4188// tuning jobs launched in your account.
4189//
4190// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4191// with awserr.Error's Code and Message methods to get detailed information about
4192// the error.
4193//
4194// See the AWS API reference guide for Amazon SageMaker Service's
4195// API operation ListHyperParameterTuningJobs for usage and error information.
4196// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListHyperParameterTuningJobs
4197func (c *SageMaker) ListHyperParameterTuningJobs(input *ListHyperParameterTuningJobsInput) (*ListHyperParameterTuningJobsOutput, error) {
4198	req, out := c.ListHyperParameterTuningJobsRequest(input)
4199	return out, req.Send()
4200}
4201
4202// ListHyperParameterTuningJobsWithContext is the same as ListHyperParameterTuningJobs with the addition of
4203// the ability to pass a context and additional request options.
4204//
4205// See ListHyperParameterTuningJobs for details on how to use this API operation.
4206//
4207// The context must be non-nil and will be used for request cancellation. If
4208// the context is nil a panic will occur. In the future the SDK may create
4209// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4210// for more information on using Contexts.
4211func (c *SageMaker) ListHyperParameterTuningJobsWithContext(ctx aws.Context, input *ListHyperParameterTuningJobsInput, opts ...request.Option) (*ListHyperParameterTuningJobsOutput, error) {
4212	req, out := c.ListHyperParameterTuningJobsRequest(input)
4213	req.SetContext(ctx)
4214	req.ApplyOptions(opts...)
4215	return out, req.Send()
4216}
4217
4218// ListHyperParameterTuningJobsPages iterates over the pages of a ListHyperParameterTuningJobs operation,
4219// calling the "fn" function with the response data for each page. To stop
4220// iterating, return false from the fn function.
4221//
4222// See ListHyperParameterTuningJobs method for more information on how to use this operation.
4223//
4224// Note: This operation can generate multiple requests to a service.
4225//
4226//    // Example iterating over at most 3 pages of a ListHyperParameterTuningJobs operation.
4227//    pageNum := 0
4228//    err := client.ListHyperParameterTuningJobsPages(params,
4229//        func(page *sagemaker.ListHyperParameterTuningJobsOutput, lastPage bool) bool {
4230//            pageNum++
4231//            fmt.Println(page)
4232//            return pageNum <= 3
4233//        })
4234//
4235func (c *SageMaker) ListHyperParameterTuningJobsPages(input *ListHyperParameterTuningJobsInput, fn func(*ListHyperParameterTuningJobsOutput, bool) bool) error {
4236	return c.ListHyperParameterTuningJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4237}
4238
4239// ListHyperParameterTuningJobsPagesWithContext same as ListHyperParameterTuningJobsPages except
4240// it takes a Context and allows setting request options on the pages.
4241//
4242// The context must be non-nil and will be used for request cancellation. If
4243// the context is nil a panic will occur. In the future the SDK may create
4244// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4245// for more information on using Contexts.
4246func (c *SageMaker) ListHyperParameterTuningJobsPagesWithContext(ctx aws.Context, input *ListHyperParameterTuningJobsInput, fn func(*ListHyperParameterTuningJobsOutput, bool) bool, opts ...request.Option) error {
4247	p := request.Pagination{
4248		NewRequest: func() (*request.Request, error) {
4249			var inCpy *ListHyperParameterTuningJobsInput
4250			if input != nil {
4251				tmp := *input
4252				inCpy = &tmp
4253			}
4254			req, _ := c.ListHyperParameterTuningJobsRequest(inCpy)
4255			req.SetContext(ctx)
4256			req.ApplyOptions(opts...)
4257			return req, nil
4258		},
4259	}
4260
4261	cont := true
4262	for p.Next() && cont {
4263		cont = fn(p.Page().(*ListHyperParameterTuningJobsOutput), !p.HasNextPage())
4264	}
4265	return p.Err()
4266}
4267
4268const opListLabelingJobs = "ListLabelingJobs"
4269
4270// ListLabelingJobsRequest generates a "aws/request.Request" representing the
4271// client's request for the ListLabelingJobs operation. The "output" return
4272// value will be populated with the request's response once the request completes
4273// successfully.
4274//
4275// Use "Send" method on the returned Request to send the API call to the service.
4276// the "output" return value is not valid until after Send returns without error.
4277//
4278// See ListLabelingJobs for more information on using the ListLabelingJobs
4279// API call, and error handling.
4280//
4281// This method is useful when you want to inject custom logic or configuration
4282// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4283//
4284//
4285//    // Example sending a request using the ListLabelingJobsRequest method.
4286//    req, resp := client.ListLabelingJobsRequest(params)
4287//
4288//    err := req.Send()
4289//    if err == nil { // resp is now filled
4290//        fmt.Println(resp)
4291//    }
4292//
4293// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListLabelingJobs
4294func (c *SageMaker) ListLabelingJobsRequest(input *ListLabelingJobsInput) (req *request.Request, output *ListLabelingJobsOutput) {
4295	op := &request.Operation{
4296		Name:       opListLabelingJobs,
4297		HTTPMethod: "POST",
4298		HTTPPath:   "/",
4299		Paginator: &request.Paginator{
4300			InputTokens:     []string{"NextToken"},
4301			OutputTokens:    []string{"NextToken"},
4302			LimitToken:      "MaxResults",
4303			TruncationToken: "",
4304		},
4305	}
4306
4307	if input == nil {
4308		input = &ListLabelingJobsInput{}
4309	}
4310
4311	output = &ListLabelingJobsOutput{}
4312	req = c.newRequest(op, input, output)
4313	return
4314}
4315
4316// ListLabelingJobs API operation for Amazon SageMaker Service.
4317//
4318// Gets a list of labeling jobs.
4319//
4320// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4321// with awserr.Error's Code and Message methods to get detailed information about
4322// the error.
4323//
4324// See the AWS API reference guide for Amazon SageMaker Service's
4325// API operation ListLabelingJobs for usage and error information.
4326// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListLabelingJobs
4327func (c *SageMaker) ListLabelingJobs(input *ListLabelingJobsInput) (*ListLabelingJobsOutput, error) {
4328	req, out := c.ListLabelingJobsRequest(input)
4329	return out, req.Send()
4330}
4331
4332// ListLabelingJobsWithContext is the same as ListLabelingJobs with the addition of
4333// the ability to pass a context and additional request options.
4334//
4335// See ListLabelingJobs for details on how to use this API operation.
4336//
4337// The context must be non-nil and will be used for request cancellation. If
4338// the context is nil a panic will occur. In the future the SDK may create
4339// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4340// for more information on using Contexts.
4341func (c *SageMaker) ListLabelingJobsWithContext(ctx aws.Context, input *ListLabelingJobsInput, opts ...request.Option) (*ListLabelingJobsOutput, error) {
4342	req, out := c.ListLabelingJobsRequest(input)
4343	req.SetContext(ctx)
4344	req.ApplyOptions(opts...)
4345	return out, req.Send()
4346}
4347
4348// ListLabelingJobsPages iterates over the pages of a ListLabelingJobs operation,
4349// calling the "fn" function with the response data for each page. To stop
4350// iterating, return false from the fn function.
4351//
4352// See ListLabelingJobs method for more information on how to use this operation.
4353//
4354// Note: This operation can generate multiple requests to a service.
4355//
4356//    // Example iterating over at most 3 pages of a ListLabelingJobs operation.
4357//    pageNum := 0
4358//    err := client.ListLabelingJobsPages(params,
4359//        func(page *sagemaker.ListLabelingJobsOutput, lastPage bool) bool {
4360//            pageNum++
4361//            fmt.Println(page)
4362//            return pageNum <= 3
4363//        })
4364//
4365func (c *SageMaker) ListLabelingJobsPages(input *ListLabelingJobsInput, fn func(*ListLabelingJobsOutput, bool) bool) error {
4366	return c.ListLabelingJobsPagesWithContext(aws.BackgroundContext(), input, fn)
4367}
4368
4369// ListLabelingJobsPagesWithContext same as ListLabelingJobsPages except
4370// it takes a Context and allows setting request options on the pages.
4371//
4372// The context must be non-nil and will be used for request cancellation. If
4373// the context is nil a panic will occur. In the future the SDK may create
4374// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4375// for more information on using Contexts.
4376func (c *SageMaker) ListLabelingJobsPagesWithContext(ctx aws.Context, input *ListLabelingJobsInput, fn func(*ListLabelingJobsOutput, bool) bool, opts ...request.Option) error {
4377	p := request.Pagination{
4378		NewRequest: func() (*request.Request, error) {
4379			var inCpy *ListLabelingJobsInput
4380			if input != nil {
4381				tmp := *input
4382				inCpy = &tmp
4383			}
4384			req, _ := c.ListLabelingJobsRequest(inCpy)
4385			req.SetContext(ctx)
4386			req.ApplyOptions(opts...)
4387			return req, nil
4388		},
4389	}
4390
4391	cont := true
4392	for p.Next() && cont {
4393		cont = fn(p.Page().(*ListLabelingJobsOutput), !p.HasNextPage())
4394	}
4395	return p.Err()
4396}
4397
4398const opListLabelingJobsForWorkteam = "ListLabelingJobsForWorkteam"
4399
4400// ListLabelingJobsForWorkteamRequest generates a "aws/request.Request" representing the
4401// client's request for the ListLabelingJobsForWorkteam operation. The "output" return
4402// value will be populated with the request's response once the request completes
4403// successfully.
4404//
4405// Use "Send" method on the returned Request to send the API call to the service.
4406// the "output" return value is not valid until after Send returns without error.
4407//
4408// See ListLabelingJobsForWorkteam for more information on using the ListLabelingJobsForWorkteam
4409// API call, and error handling.
4410//
4411// This method is useful when you want to inject custom logic or configuration
4412// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4413//
4414//
4415//    // Example sending a request using the ListLabelingJobsForWorkteamRequest method.
4416//    req, resp := client.ListLabelingJobsForWorkteamRequest(params)
4417//
4418//    err := req.Send()
4419//    if err == nil { // resp is now filled
4420//        fmt.Println(resp)
4421//    }
4422//
4423// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListLabelingJobsForWorkteam
4424func (c *SageMaker) ListLabelingJobsForWorkteamRequest(input *ListLabelingJobsForWorkteamInput) (req *request.Request, output *ListLabelingJobsForWorkteamOutput) {
4425	op := &request.Operation{
4426		Name:       opListLabelingJobsForWorkteam,
4427		HTTPMethod: "POST",
4428		HTTPPath:   "/",
4429		Paginator: &request.Paginator{
4430			InputTokens:     []string{"NextToken"},
4431			OutputTokens:    []string{"NextToken"},
4432			LimitToken:      "MaxResults",
4433			TruncationToken: "",
4434		},
4435	}
4436
4437	if input == nil {
4438		input = &ListLabelingJobsForWorkteamInput{}
4439	}
4440
4441	output = &ListLabelingJobsForWorkteamOutput{}
4442	req = c.newRequest(op, input, output)
4443	return
4444}
4445
4446// ListLabelingJobsForWorkteam API operation for Amazon SageMaker Service.
4447//
4448// Gets a list of labeling jobs assigned to a specified work team.
4449//
4450// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4451// with awserr.Error's Code and Message methods to get detailed information about
4452// the error.
4453//
4454// See the AWS API reference guide for Amazon SageMaker Service's
4455// API operation ListLabelingJobsForWorkteam for usage and error information.
4456//
4457// Returned Error Codes:
4458//   * ErrCodeResourceNotFound "ResourceNotFound"
4459//   Resource being access is not found.
4460//
4461// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListLabelingJobsForWorkteam
4462func (c *SageMaker) ListLabelingJobsForWorkteam(input *ListLabelingJobsForWorkteamInput) (*ListLabelingJobsForWorkteamOutput, error) {
4463	req, out := c.ListLabelingJobsForWorkteamRequest(input)
4464	return out, req.Send()
4465}
4466
4467// ListLabelingJobsForWorkteamWithContext is the same as ListLabelingJobsForWorkteam with the addition of
4468// the ability to pass a context and additional request options.
4469//
4470// See ListLabelingJobsForWorkteam for details on how to use this API operation.
4471//
4472// The context must be non-nil and will be used for request cancellation. If
4473// the context is nil a panic will occur. In the future the SDK may create
4474// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4475// for more information on using Contexts.
4476func (c *SageMaker) ListLabelingJobsForWorkteamWithContext(ctx aws.Context, input *ListLabelingJobsForWorkteamInput, opts ...request.Option) (*ListLabelingJobsForWorkteamOutput, error) {
4477	req, out := c.ListLabelingJobsForWorkteamRequest(input)
4478	req.SetContext(ctx)
4479	req.ApplyOptions(opts...)
4480	return out, req.Send()
4481}
4482
4483// ListLabelingJobsForWorkteamPages iterates over the pages of a ListLabelingJobsForWorkteam operation,
4484// calling the "fn" function with the response data for each page. To stop
4485// iterating, return false from the fn function.
4486//
4487// See ListLabelingJobsForWorkteam method for more information on how to use this operation.
4488//
4489// Note: This operation can generate multiple requests to a service.
4490//
4491//    // Example iterating over at most 3 pages of a ListLabelingJobsForWorkteam operation.
4492//    pageNum := 0
4493//    err := client.ListLabelingJobsForWorkteamPages(params,
4494//        func(page *sagemaker.ListLabelingJobsForWorkteamOutput, lastPage bool) bool {
4495//            pageNum++
4496//            fmt.Println(page)
4497//            return pageNum <= 3
4498//        })
4499//
4500func (c *SageMaker) ListLabelingJobsForWorkteamPages(input *ListLabelingJobsForWorkteamInput, fn func(*ListLabelingJobsForWorkteamOutput, bool) bool) error {
4501	return c.ListLabelingJobsForWorkteamPagesWithContext(aws.BackgroundContext(), input, fn)
4502}
4503
4504// ListLabelingJobsForWorkteamPagesWithContext same as ListLabelingJobsForWorkteamPages except
4505// it takes a Context and allows setting request options on the pages.
4506//
4507// The context must be non-nil and will be used for request cancellation. If
4508// the context is nil a panic will occur. In the future the SDK may create
4509// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4510// for more information on using Contexts.
4511func (c *SageMaker) ListLabelingJobsForWorkteamPagesWithContext(ctx aws.Context, input *ListLabelingJobsForWorkteamInput, fn func(*ListLabelingJobsForWorkteamOutput, bool) bool, opts ...request.Option) error {
4512	p := request.Pagination{
4513		NewRequest: func() (*request.Request, error) {
4514			var inCpy *ListLabelingJobsForWorkteamInput
4515			if input != nil {
4516				tmp := *input
4517				inCpy = &tmp
4518			}
4519			req, _ := c.ListLabelingJobsForWorkteamRequest(inCpy)
4520			req.SetContext(ctx)
4521			req.ApplyOptions(opts...)
4522			return req, nil
4523		},
4524	}
4525
4526	cont := true
4527	for p.Next() && cont {
4528		cont = fn(p.Page().(*ListLabelingJobsForWorkteamOutput), !p.HasNextPage())
4529	}
4530	return p.Err()
4531}
4532
4533const opListModelPackages = "ListModelPackages"
4534
4535// ListModelPackagesRequest generates a "aws/request.Request" representing the
4536// client's request for the ListModelPackages operation. The "output" return
4537// value will be populated with the request's response once the request completes
4538// successfully.
4539//
4540// Use "Send" method on the returned Request to send the API call to the service.
4541// the "output" return value is not valid until after Send returns without error.
4542//
4543// See ListModelPackages for more information on using the ListModelPackages
4544// API call, and error handling.
4545//
4546// This method is useful when you want to inject custom logic or configuration
4547// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4548//
4549//
4550//    // Example sending a request using the ListModelPackagesRequest method.
4551//    req, resp := client.ListModelPackagesRequest(params)
4552//
4553//    err := req.Send()
4554//    if err == nil { // resp is now filled
4555//        fmt.Println(resp)
4556//    }
4557//
4558// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListModelPackages
4559func (c *SageMaker) ListModelPackagesRequest(input *ListModelPackagesInput) (req *request.Request, output *ListModelPackagesOutput) {
4560	op := &request.Operation{
4561		Name:       opListModelPackages,
4562		HTTPMethod: "POST",
4563		HTTPPath:   "/",
4564	}
4565
4566	if input == nil {
4567		input = &ListModelPackagesInput{}
4568	}
4569
4570	output = &ListModelPackagesOutput{}
4571	req = c.newRequest(op, input, output)
4572	return
4573}
4574
4575// ListModelPackages API operation for Amazon SageMaker Service.
4576//
4577// Lists the model packages that have been created.
4578//
4579// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4580// with awserr.Error's Code and Message methods to get detailed information about
4581// the error.
4582//
4583// See the AWS API reference guide for Amazon SageMaker Service's
4584// API operation ListModelPackages for usage and error information.
4585// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListModelPackages
4586func (c *SageMaker) ListModelPackages(input *ListModelPackagesInput) (*ListModelPackagesOutput, error) {
4587	req, out := c.ListModelPackagesRequest(input)
4588	return out, req.Send()
4589}
4590
4591// ListModelPackagesWithContext is the same as ListModelPackages with the addition of
4592// the ability to pass a context and additional request options.
4593//
4594// See ListModelPackages for details on how to use this API operation.
4595//
4596// The context must be non-nil and will be used for request cancellation. If
4597// the context is nil a panic will occur. In the future the SDK may create
4598// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4599// for more information on using Contexts.
4600func (c *SageMaker) ListModelPackagesWithContext(ctx aws.Context, input *ListModelPackagesInput, opts ...request.Option) (*ListModelPackagesOutput, error) {
4601	req, out := c.ListModelPackagesRequest(input)
4602	req.SetContext(ctx)
4603	req.ApplyOptions(opts...)
4604	return out, req.Send()
4605}
4606
4607const opListModels = "ListModels"
4608
4609// ListModelsRequest generates a "aws/request.Request" representing the
4610// client's request for the ListModels operation. The "output" return
4611// value will be populated with the request's response once the request completes
4612// successfully.
4613//
4614// Use "Send" method on the returned Request to send the API call to the service.
4615// the "output" return value is not valid until after Send returns without error.
4616//
4617// See ListModels for more information on using the ListModels
4618// API call, and error handling.
4619//
4620// This method is useful when you want to inject custom logic or configuration
4621// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4622//
4623//
4624//    // Example sending a request using the ListModelsRequest method.
4625//    req, resp := client.ListModelsRequest(params)
4626//
4627//    err := req.Send()
4628//    if err == nil { // resp is now filled
4629//        fmt.Println(resp)
4630//    }
4631//
4632// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListModels
4633func (c *SageMaker) ListModelsRequest(input *ListModelsInput) (req *request.Request, output *ListModelsOutput) {
4634	op := &request.Operation{
4635		Name:       opListModels,
4636		HTTPMethod: "POST",
4637		HTTPPath:   "/",
4638		Paginator: &request.Paginator{
4639			InputTokens:     []string{"NextToken"},
4640			OutputTokens:    []string{"NextToken"},
4641			LimitToken:      "MaxResults",
4642			TruncationToken: "",
4643		},
4644	}
4645
4646	if input == nil {
4647		input = &ListModelsInput{}
4648	}
4649
4650	output = &ListModelsOutput{}
4651	req = c.newRequest(op, input, output)
4652	return
4653}
4654
4655// ListModels API operation for Amazon SageMaker Service.
4656//
4657// Lists models created with the CreateModel (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateModel.html)
4658// API.
4659//
4660// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4661// with awserr.Error's Code and Message methods to get detailed information about
4662// the error.
4663//
4664// See the AWS API reference guide for Amazon SageMaker Service's
4665// API operation ListModels for usage and error information.
4666// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListModels
4667func (c *SageMaker) ListModels(input *ListModelsInput) (*ListModelsOutput, error) {
4668	req, out := c.ListModelsRequest(input)
4669	return out, req.Send()
4670}
4671
4672// ListModelsWithContext is the same as ListModels with the addition of
4673// the ability to pass a context and additional request options.
4674//
4675// See ListModels for details on how to use this API operation.
4676//
4677// The context must be non-nil and will be used for request cancellation. If
4678// the context is nil a panic will occur. In the future the SDK may create
4679// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4680// for more information on using Contexts.
4681func (c *SageMaker) ListModelsWithContext(ctx aws.Context, input *ListModelsInput, opts ...request.Option) (*ListModelsOutput, error) {
4682	req, out := c.ListModelsRequest(input)
4683	req.SetContext(ctx)
4684	req.ApplyOptions(opts...)
4685	return out, req.Send()
4686}
4687
4688// ListModelsPages iterates over the pages of a ListModels operation,
4689// calling the "fn" function with the response data for each page. To stop
4690// iterating, return false from the fn function.
4691//
4692// See ListModels method for more information on how to use this operation.
4693//
4694// Note: This operation can generate multiple requests to a service.
4695//
4696//    // Example iterating over at most 3 pages of a ListModels operation.
4697//    pageNum := 0
4698//    err := client.ListModelsPages(params,
4699//        func(page *sagemaker.ListModelsOutput, lastPage bool) bool {
4700//            pageNum++
4701//            fmt.Println(page)
4702//            return pageNum <= 3
4703//        })
4704//
4705func (c *SageMaker) ListModelsPages(input *ListModelsInput, fn func(*ListModelsOutput, bool) bool) error {
4706	return c.ListModelsPagesWithContext(aws.BackgroundContext(), input, fn)
4707}
4708
4709// ListModelsPagesWithContext same as ListModelsPages except
4710// it takes a Context and allows setting request options on the pages.
4711//
4712// The context must be non-nil and will be used for request cancellation. If
4713// the context is nil a panic will occur. In the future the SDK may create
4714// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4715// for more information on using Contexts.
4716func (c *SageMaker) ListModelsPagesWithContext(ctx aws.Context, input *ListModelsInput, fn func(*ListModelsOutput, bool) bool, opts ...request.Option) error {
4717	p := request.Pagination{
4718		NewRequest: func() (*request.Request, error) {
4719			var inCpy *ListModelsInput
4720			if input != nil {
4721				tmp := *input
4722				inCpy = &tmp
4723			}
4724			req, _ := c.ListModelsRequest(inCpy)
4725			req.SetContext(ctx)
4726			req.ApplyOptions(opts...)
4727			return req, nil
4728		},
4729	}
4730
4731	cont := true
4732	for p.Next() && cont {
4733		cont = fn(p.Page().(*ListModelsOutput), !p.HasNextPage())
4734	}
4735	return p.Err()
4736}
4737
4738const opListNotebookInstanceLifecycleConfigs = "ListNotebookInstanceLifecycleConfigs"
4739
4740// ListNotebookInstanceLifecycleConfigsRequest generates a "aws/request.Request" representing the
4741// client's request for the ListNotebookInstanceLifecycleConfigs operation. The "output" return
4742// value will be populated with the request's response once the request completes
4743// successfully.
4744//
4745// Use "Send" method on the returned Request to send the API call to the service.
4746// the "output" return value is not valid until after Send returns without error.
4747//
4748// See ListNotebookInstanceLifecycleConfigs for more information on using the ListNotebookInstanceLifecycleConfigs
4749// API call, and error handling.
4750//
4751// This method is useful when you want to inject custom logic or configuration
4752// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4753//
4754//
4755//    // Example sending a request using the ListNotebookInstanceLifecycleConfigsRequest method.
4756//    req, resp := client.ListNotebookInstanceLifecycleConfigsRequest(params)
4757//
4758//    err := req.Send()
4759//    if err == nil { // resp is now filled
4760//        fmt.Println(resp)
4761//    }
4762//
4763// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListNotebookInstanceLifecycleConfigs
4764func (c *SageMaker) ListNotebookInstanceLifecycleConfigsRequest(input *ListNotebookInstanceLifecycleConfigsInput) (req *request.Request, output *ListNotebookInstanceLifecycleConfigsOutput) {
4765	op := &request.Operation{
4766		Name:       opListNotebookInstanceLifecycleConfigs,
4767		HTTPMethod: "POST",
4768		HTTPPath:   "/",
4769		Paginator: &request.Paginator{
4770			InputTokens:     []string{"NextToken"},
4771			OutputTokens:    []string{"NextToken"},
4772			LimitToken:      "MaxResults",
4773			TruncationToken: "",
4774		},
4775	}
4776
4777	if input == nil {
4778		input = &ListNotebookInstanceLifecycleConfigsInput{}
4779	}
4780
4781	output = &ListNotebookInstanceLifecycleConfigsOutput{}
4782	req = c.newRequest(op, input, output)
4783	return
4784}
4785
4786// ListNotebookInstanceLifecycleConfigs API operation for Amazon SageMaker Service.
4787//
4788// Lists notebook instance lifestyle configurations created with the CreateNotebookInstanceLifecycleConfig
4789// API.
4790//
4791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4792// with awserr.Error's Code and Message methods to get detailed information about
4793// the error.
4794//
4795// See the AWS API reference guide for Amazon SageMaker Service's
4796// API operation ListNotebookInstanceLifecycleConfigs for usage and error information.
4797// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListNotebookInstanceLifecycleConfigs
4798func (c *SageMaker) ListNotebookInstanceLifecycleConfigs(input *ListNotebookInstanceLifecycleConfigsInput) (*ListNotebookInstanceLifecycleConfigsOutput, error) {
4799	req, out := c.ListNotebookInstanceLifecycleConfigsRequest(input)
4800	return out, req.Send()
4801}
4802
4803// ListNotebookInstanceLifecycleConfigsWithContext is the same as ListNotebookInstanceLifecycleConfigs with the addition of
4804// the ability to pass a context and additional request options.
4805//
4806// See ListNotebookInstanceLifecycleConfigs for details on how to use this API operation.
4807//
4808// The context must be non-nil and will be used for request cancellation. If
4809// the context is nil a panic will occur. In the future the SDK may create
4810// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4811// for more information on using Contexts.
4812func (c *SageMaker) ListNotebookInstanceLifecycleConfigsWithContext(ctx aws.Context, input *ListNotebookInstanceLifecycleConfigsInput, opts ...request.Option) (*ListNotebookInstanceLifecycleConfigsOutput, error) {
4813	req, out := c.ListNotebookInstanceLifecycleConfigsRequest(input)
4814	req.SetContext(ctx)
4815	req.ApplyOptions(opts...)
4816	return out, req.Send()
4817}
4818
4819// ListNotebookInstanceLifecycleConfigsPages iterates over the pages of a ListNotebookInstanceLifecycleConfigs operation,
4820// calling the "fn" function with the response data for each page. To stop
4821// iterating, return false from the fn function.
4822//
4823// See ListNotebookInstanceLifecycleConfigs method for more information on how to use this operation.
4824//
4825// Note: This operation can generate multiple requests to a service.
4826//
4827//    // Example iterating over at most 3 pages of a ListNotebookInstanceLifecycleConfigs operation.
4828//    pageNum := 0
4829//    err := client.ListNotebookInstanceLifecycleConfigsPages(params,
4830//        func(page *sagemaker.ListNotebookInstanceLifecycleConfigsOutput, lastPage bool) bool {
4831//            pageNum++
4832//            fmt.Println(page)
4833//            return pageNum <= 3
4834//        })
4835//
4836func (c *SageMaker) ListNotebookInstanceLifecycleConfigsPages(input *ListNotebookInstanceLifecycleConfigsInput, fn func(*ListNotebookInstanceLifecycleConfigsOutput, bool) bool) error {
4837	return c.ListNotebookInstanceLifecycleConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
4838}
4839
4840// ListNotebookInstanceLifecycleConfigsPagesWithContext same as ListNotebookInstanceLifecycleConfigsPages except
4841// it takes a Context and allows setting request options on the pages.
4842//
4843// The context must be non-nil and will be used for request cancellation. If
4844// the context is nil a panic will occur. In the future the SDK may create
4845// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4846// for more information on using Contexts.
4847func (c *SageMaker) ListNotebookInstanceLifecycleConfigsPagesWithContext(ctx aws.Context, input *ListNotebookInstanceLifecycleConfigsInput, fn func(*ListNotebookInstanceLifecycleConfigsOutput, bool) bool, opts ...request.Option) error {
4848	p := request.Pagination{
4849		NewRequest: func() (*request.Request, error) {
4850			var inCpy *ListNotebookInstanceLifecycleConfigsInput
4851			if input != nil {
4852				tmp := *input
4853				inCpy = &tmp
4854			}
4855			req, _ := c.ListNotebookInstanceLifecycleConfigsRequest(inCpy)
4856			req.SetContext(ctx)
4857			req.ApplyOptions(opts...)
4858			return req, nil
4859		},
4860	}
4861
4862	cont := true
4863	for p.Next() && cont {
4864		cont = fn(p.Page().(*ListNotebookInstanceLifecycleConfigsOutput), !p.HasNextPage())
4865	}
4866	return p.Err()
4867}
4868
4869const opListNotebookInstances = "ListNotebookInstances"
4870
4871// ListNotebookInstancesRequest generates a "aws/request.Request" representing the
4872// client's request for the ListNotebookInstances operation. The "output" return
4873// value will be populated with the request's response once the request completes
4874// successfully.
4875//
4876// Use "Send" method on the returned Request to send the API call to the service.
4877// the "output" return value is not valid until after Send returns without error.
4878//
4879// See ListNotebookInstances for more information on using the ListNotebookInstances
4880// API call, and error handling.
4881//
4882// This method is useful when you want to inject custom logic or configuration
4883// into the SDK's request lifecycle. Such as custom headers, or retry logic.
4884//
4885//
4886//    // Example sending a request using the ListNotebookInstancesRequest method.
4887//    req, resp := client.ListNotebookInstancesRequest(params)
4888//
4889//    err := req.Send()
4890//    if err == nil { // resp is now filled
4891//        fmt.Println(resp)
4892//    }
4893//
4894// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListNotebookInstances
4895func (c *SageMaker) ListNotebookInstancesRequest(input *ListNotebookInstancesInput) (req *request.Request, output *ListNotebookInstancesOutput) {
4896	op := &request.Operation{
4897		Name:       opListNotebookInstances,
4898		HTTPMethod: "POST",
4899		HTTPPath:   "/",
4900		Paginator: &request.Paginator{
4901			InputTokens:     []string{"NextToken"},
4902			OutputTokens:    []string{"NextToken"},
4903			LimitToken:      "MaxResults",
4904			TruncationToken: "",
4905		},
4906	}
4907
4908	if input == nil {
4909		input = &ListNotebookInstancesInput{}
4910	}
4911
4912	output = &ListNotebookInstancesOutput{}
4913	req = c.newRequest(op, input, output)
4914	return
4915}
4916
4917// ListNotebookInstances API operation for Amazon SageMaker Service.
4918//
4919// Returns a list of the Amazon SageMaker notebook instances in the requester's
4920// account in an AWS Region.
4921//
4922// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
4923// with awserr.Error's Code and Message methods to get detailed information about
4924// the error.
4925//
4926// See the AWS API reference guide for Amazon SageMaker Service's
4927// API operation ListNotebookInstances for usage and error information.
4928// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListNotebookInstances
4929func (c *SageMaker) ListNotebookInstances(input *ListNotebookInstancesInput) (*ListNotebookInstancesOutput, error) {
4930	req, out := c.ListNotebookInstancesRequest(input)
4931	return out, req.Send()
4932}
4933
4934// ListNotebookInstancesWithContext is the same as ListNotebookInstances with the addition of
4935// the ability to pass a context and additional request options.
4936//
4937// See ListNotebookInstances for details on how to use this API operation.
4938//
4939// The context must be non-nil and will be used for request cancellation. If
4940// the context is nil a panic will occur. In the future the SDK may create
4941// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4942// for more information on using Contexts.
4943func (c *SageMaker) ListNotebookInstancesWithContext(ctx aws.Context, input *ListNotebookInstancesInput, opts ...request.Option) (*ListNotebookInstancesOutput, error) {
4944	req, out := c.ListNotebookInstancesRequest(input)
4945	req.SetContext(ctx)
4946	req.ApplyOptions(opts...)
4947	return out, req.Send()
4948}
4949
4950// ListNotebookInstancesPages iterates over the pages of a ListNotebookInstances operation,
4951// calling the "fn" function with the response data for each page. To stop
4952// iterating, return false from the fn function.
4953//
4954// See ListNotebookInstances method for more information on how to use this operation.
4955//
4956// Note: This operation can generate multiple requests to a service.
4957//
4958//    // Example iterating over at most 3 pages of a ListNotebookInstances operation.
4959//    pageNum := 0
4960//    err := client.ListNotebookInstancesPages(params,
4961//        func(page *sagemaker.ListNotebookInstancesOutput, lastPage bool) bool {
4962//            pageNum++
4963//            fmt.Println(page)
4964//            return pageNum <= 3
4965//        })
4966//
4967func (c *SageMaker) ListNotebookInstancesPages(input *ListNotebookInstancesInput, fn func(*ListNotebookInstancesOutput, bool) bool) error {
4968	return c.ListNotebookInstancesPagesWithContext(aws.BackgroundContext(), input, fn)
4969}
4970
4971// ListNotebookInstancesPagesWithContext same as ListNotebookInstancesPages except
4972// it takes a Context and allows setting request options on the pages.
4973//
4974// The context must be non-nil and will be used for request cancellation. If
4975// the context is nil a panic will occur. In the future the SDK may create
4976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
4977// for more information on using Contexts.
4978func (c *SageMaker) ListNotebookInstancesPagesWithContext(ctx aws.Context, input *ListNotebookInstancesInput, fn func(*ListNotebookInstancesOutput, bool) bool, opts ...request.Option) error {
4979	p := request.Pagination{
4980		NewRequest: func() (*request.Request, error) {
4981			var inCpy *ListNotebookInstancesInput
4982			if input != nil {
4983				tmp := *input
4984				inCpy = &tmp
4985			}
4986			req, _ := c.ListNotebookInstancesRequest(inCpy)
4987			req.SetContext(ctx)
4988			req.ApplyOptions(opts...)
4989			return req, nil
4990		},
4991	}
4992
4993	cont := true
4994	for p.Next() && cont {
4995		cont = fn(p.Page().(*ListNotebookInstancesOutput), !p.HasNextPage())
4996	}
4997	return p.Err()
4998}
4999
5000const opListSubscribedWorkteams = "ListSubscribedWorkteams"
5001
5002// ListSubscribedWorkteamsRequest generates a "aws/request.Request" representing the
5003// client's request for the ListSubscribedWorkteams operation. The "output" return
5004// value will be populated with the request's response once the request completes
5005// successfully.
5006//
5007// Use "Send" method on the returned Request to send the API call to the service.
5008// the "output" return value is not valid until after Send returns without error.
5009//
5010// See ListSubscribedWorkteams for more information on using the ListSubscribedWorkteams
5011// API call, and error handling.
5012//
5013// This method is useful when you want to inject custom logic or configuration
5014// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5015//
5016//
5017//    // Example sending a request using the ListSubscribedWorkteamsRequest method.
5018//    req, resp := client.ListSubscribedWorkteamsRequest(params)
5019//
5020//    err := req.Send()
5021//    if err == nil { // resp is now filled
5022//        fmt.Println(resp)
5023//    }
5024//
5025// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListSubscribedWorkteams
5026func (c *SageMaker) ListSubscribedWorkteamsRequest(input *ListSubscribedWorkteamsInput) (req *request.Request, output *ListSubscribedWorkteamsOutput) {
5027	op := &request.Operation{
5028		Name:       opListSubscribedWorkteams,
5029		HTTPMethod: "POST",
5030		HTTPPath:   "/",
5031		Paginator: &request.Paginator{
5032			InputTokens:     []string{"NextToken"},
5033			OutputTokens:    []string{"NextToken"},
5034			LimitToken:      "MaxResults",
5035			TruncationToken: "",
5036		},
5037	}
5038
5039	if input == nil {
5040		input = &ListSubscribedWorkteamsInput{}
5041	}
5042
5043	output = &ListSubscribedWorkteamsOutput{}
5044	req = c.newRequest(op, input, output)
5045	return
5046}
5047
5048// ListSubscribedWorkteams API operation for Amazon SageMaker Service.
5049//
5050// Gets a list of the work teams that you are subscribed to in the AWS Marketplace.
5051// The list may be empty if no work team satisfies the filter specified in the
5052// NameContains parameter.
5053//
5054// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5055// with awserr.Error's Code and Message methods to get detailed information about
5056// the error.
5057//
5058// See the AWS API reference guide for Amazon SageMaker Service's
5059// API operation ListSubscribedWorkteams for usage and error information.
5060// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListSubscribedWorkteams
5061func (c *SageMaker) ListSubscribedWorkteams(input *ListSubscribedWorkteamsInput) (*ListSubscribedWorkteamsOutput, error) {
5062	req, out := c.ListSubscribedWorkteamsRequest(input)
5063	return out, req.Send()
5064}
5065
5066// ListSubscribedWorkteamsWithContext is the same as ListSubscribedWorkteams with the addition of
5067// the ability to pass a context and additional request options.
5068//
5069// See ListSubscribedWorkteams for details on how to use this API operation.
5070//
5071// The context must be non-nil and will be used for request cancellation. If
5072// the context is nil a panic will occur. In the future the SDK may create
5073// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5074// for more information on using Contexts.
5075func (c *SageMaker) ListSubscribedWorkteamsWithContext(ctx aws.Context, input *ListSubscribedWorkteamsInput, opts ...request.Option) (*ListSubscribedWorkteamsOutput, error) {
5076	req, out := c.ListSubscribedWorkteamsRequest(input)
5077	req.SetContext(ctx)
5078	req.ApplyOptions(opts...)
5079	return out, req.Send()
5080}
5081
5082// ListSubscribedWorkteamsPages iterates over the pages of a ListSubscribedWorkteams operation,
5083// calling the "fn" function with the response data for each page. To stop
5084// iterating, return false from the fn function.
5085//
5086// See ListSubscribedWorkteams method for more information on how to use this operation.
5087//
5088// Note: This operation can generate multiple requests to a service.
5089//
5090//    // Example iterating over at most 3 pages of a ListSubscribedWorkteams operation.
5091//    pageNum := 0
5092//    err := client.ListSubscribedWorkteamsPages(params,
5093//        func(page *sagemaker.ListSubscribedWorkteamsOutput, lastPage bool) bool {
5094//            pageNum++
5095//            fmt.Println(page)
5096//            return pageNum <= 3
5097//        })
5098//
5099func (c *SageMaker) ListSubscribedWorkteamsPages(input *ListSubscribedWorkteamsInput, fn func(*ListSubscribedWorkteamsOutput, bool) bool) error {
5100	return c.ListSubscribedWorkteamsPagesWithContext(aws.BackgroundContext(), input, fn)
5101}
5102
5103// ListSubscribedWorkteamsPagesWithContext same as ListSubscribedWorkteamsPages except
5104// it takes a Context and allows setting request options on the pages.
5105//
5106// The context must be non-nil and will be used for request cancellation. If
5107// the context is nil a panic will occur. In the future the SDK may create
5108// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5109// for more information on using Contexts.
5110func (c *SageMaker) ListSubscribedWorkteamsPagesWithContext(ctx aws.Context, input *ListSubscribedWorkteamsInput, fn func(*ListSubscribedWorkteamsOutput, bool) bool, opts ...request.Option) error {
5111	p := request.Pagination{
5112		NewRequest: func() (*request.Request, error) {
5113			var inCpy *ListSubscribedWorkteamsInput
5114			if input != nil {
5115				tmp := *input
5116				inCpy = &tmp
5117			}
5118			req, _ := c.ListSubscribedWorkteamsRequest(inCpy)
5119			req.SetContext(ctx)
5120			req.ApplyOptions(opts...)
5121			return req, nil
5122		},
5123	}
5124
5125	cont := true
5126	for p.Next() && cont {
5127		cont = fn(p.Page().(*ListSubscribedWorkteamsOutput), !p.HasNextPage())
5128	}
5129	return p.Err()
5130}
5131
5132const opListTags = "ListTags"
5133
5134// ListTagsRequest generates a "aws/request.Request" representing the
5135// client's request for the ListTags operation. The "output" return
5136// value will be populated with the request's response once the request completes
5137// successfully.
5138//
5139// Use "Send" method on the returned Request to send the API call to the service.
5140// the "output" return value is not valid until after Send returns without error.
5141//
5142// See ListTags for more information on using the ListTags
5143// API call, and error handling.
5144//
5145// This method is useful when you want to inject custom logic or configuration
5146// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5147//
5148//
5149//    // Example sending a request using the ListTagsRequest method.
5150//    req, resp := client.ListTagsRequest(params)
5151//
5152//    err := req.Send()
5153//    if err == nil { // resp is now filled
5154//        fmt.Println(resp)
5155//    }
5156//
5157// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTags
5158func (c *SageMaker) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) {
5159	op := &request.Operation{
5160		Name:       opListTags,
5161		HTTPMethod: "POST",
5162		HTTPPath:   "/",
5163		Paginator: &request.Paginator{
5164			InputTokens:     []string{"NextToken"},
5165			OutputTokens:    []string{"NextToken"},
5166			LimitToken:      "MaxResults",
5167			TruncationToken: "",
5168		},
5169	}
5170
5171	if input == nil {
5172		input = &ListTagsInput{}
5173	}
5174
5175	output = &ListTagsOutput{}
5176	req = c.newRequest(op, input, output)
5177	return
5178}
5179
5180// ListTags API operation for Amazon SageMaker Service.
5181//
5182// Returns the tags for the specified Amazon SageMaker resource.
5183//
5184// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5185// with awserr.Error's Code and Message methods to get detailed information about
5186// the error.
5187//
5188// See the AWS API reference guide for Amazon SageMaker Service's
5189// API operation ListTags for usage and error information.
5190// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTags
5191func (c *SageMaker) ListTags(input *ListTagsInput) (*ListTagsOutput, error) {
5192	req, out := c.ListTagsRequest(input)
5193	return out, req.Send()
5194}
5195
5196// ListTagsWithContext is the same as ListTags with the addition of
5197// the ability to pass a context and additional request options.
5198//
5199// See ListTags for details on how to use this API operation.
5200//
5201// The context must be non-nil and will be used for request cancellation. If
5202// the context is nil a panic will occur. In the future the SDK may create
5203// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5204// for more information on using Contexts.
5205func (c *SageMaker) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) {
5206	req, out := c.ListTagsRequest(input)
5207	req.SetContext(ctx)
5208	req.ApplyOptions(opts...)
5209	return out, req.Send()
5210}
5211
5212// ListTagsPages iterates over the pages of a ListTags operation,
5213// calling the "fn" function with the response data for each page. To stop
5214// iterating, return false from the fn function.
5215//
5216// See ListTags method for more information on how to use this operation.
5217//
5218// Note: This operation can generate multiple requests to a service.
5219//
5220//    // Example iterating over at most 3 pages of a ListTags operation.
5221//    pageNum := 0
5222//    err := client.ListTagsPages(params,
5223//        func(page *sagemaker.ListTagsOutput, lastPage bool) bool {
5224//            pageNum++
5225//            fmt.Println(page)
5226//            return pageNum <= 3
5227//        })
5228//
5229func (c *SageMaker) ListTagsPages(input *ListTagsInput, fn func(*ListTagsOutput, bool) bool) error {
5230	return c.ListTagsPagesWithContext(aws.BackgroundContext(), input, fn)
5231}
5232
5233// ListTagsPagesWithContext same as ListTagsPages except
5234// it takes a Context and allows setting request options on the pages.
5235//
5236// The context must be non-nil and will be used for request cancellation. If
5237// the context is nil a panic will occur. In the future the SDK may create
5238// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5239// for more information on using Contexts.
5240func (c *SageMaker) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, fn func(*ListTagsOutput, bool) bool, opts ...request.Option) error {
5241	p := request.Pagination{
5242		NewRequest: func() (*request.Request, error) {
5243			var inCpy *ListTagsInput
5244			if input != nil {
5245				tmp := *input
5246				inCpy = &tmp
5247			}
5248			req, _ := c.ListTagsRequest(inCpy)
5249			req.SetContext(ctx)
5250			req.ApplyOptions(opts...)
5251			return req, nil
5252		},
5253	}
5254
5255	cont := true
5256	for p.Next() && cont {
5257		cont = fn(p.Page().(*ListTagsOutput), !p.HasNextPage())
5258	}
5259	return p.Err()
5260}
5261
5262const opListTrainingJobs = "ListTrainingJobs"
5263
5264// ListTrainingJobsRequest generates a "aws/request.Request" representing the
5265// client's request for the ListTrainingJobs operation. The "output" return
5266// value will be populated with the request's response once the request completes
5267// successfully.
5268//
5269// Use "Send" method on the returned Request to send the API call to the service.
5270// the "output" return value is not valid until after Send returns without error.
5271//
5272// See ListTrainingJobs for more information on using the ListTrainingJobs
5273// API call, and error handling.
5274//
5275// This method is useful when you want to inject custom logic or configuration
5276// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5277//
5278//
5279//    // Example sending a request using the ListTrainingJobsRequest method.
5280//    req, resp := client.ListTrainingJobsRequest(params)
5281//
5282//    err := req.Send()
5283//    if err == nil { // resp is now filled
5284//        fmt.Println(resp)
5285//    }
5286//
5287// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTrainingJobs
5288func (c *SageMaker) ListTrainingJobsRequest(input *ListTrainingJobsInput) (req *request.Request, output *ListTrainingJobsOutput) {
5289	op := &request.Operation{
5290		Name:       opListTrainingJobs,
5291		HTTPMethod: "POST",
5292		HTTPPath:   "/",
5293		Paginator: &request.Paginator{
5294			InputTokens:     []string{"NextToken"},
5295			OutputTokens:    []string{"NextToken"},
5296			LimitToken:      "MaxResults",
5297			TruncationToken: "",
5298		},
5299	}
5300
5301	if input == nil {
5302		input = &ListTrainingJobsInput{}
5303	}
5304
5305	output = &ListTrainingJobsOutput{}
5306	req = c.newRequest(op, input, output)
5307	return
5308}
5309
5310// ListTrainingJobs API operation for Amazon SageMaker Service.
5311//
5312// Lists training jobs.
5313//
5314// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5315// with awserr.Error's Code and Message methods to get detailed information about
5316// the error.
5317//
5318// See the AWS API reference guide for Amazon SageMaker Service's
5319// API operation ListTrainingJobs for usage and error information.
5320// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTrainingJobs
5321func (c *SageMaker) ListTrainingJobs(input *ListTrainingJobsInput) (*ListTrainingJobsOutput, error) {
5322	req, out := c.ListTrainingJobsRequest(input)
5323	return out, req.Send()
5324}
5325
5326// ListTrainingJobsWithContext is the same as ListTrainingJobs with the addition of
5327// the ability to pass a context and additional request options.
5328//
5329// See ListTrainingJobs for details on how to use this API operation.
5330//
5331// The context must be non-nil and will be used for request cancellation. If
5332// the context is nil a panic will occur. In the future the SDK may create
5333// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5334// for more information on using Contexts.
5335func (c *SageMaker) ListTrainingJobsWithContext(ctx aws.Context, input *ListTrainingJobsInput, opts ...request.Option) (*ListTrainingJobsOutput, error) {
5336	req, out := c.ListTrainingJobsRequest(input)
5337	req.SetContext(ctx)
5338	req.ApplyOptions(opts...)
5339	return out, req.Send()
5340}
5341
5342// ListTrainingJobsPages iterates over the pages of a ListTrainingJobs operation,
5343// calling the "fn" function with the response data for each page. To stop
5344// iterating, return false from the fn function.
5345//
5346// See ListTrainingJobs method for more information on how to use this operation.
5347//
5348// Note: This operation can generate multiple requests to a service.
5349//
5350//    // Example iterating over at most 3 pages of a ListTrainingJobs operation.
5351//    pageNum := 0
5352//    err := client.ListTrainingJobsPages(params,
5353//        func(page *sagemaker.ListTrainingJobsOutput, lastPage bool) bool {
5354//            pageNum++
5355//            fmt.Println(page)
5356//            return pageNum <= 3
5357//        })
5358//
5359func (c *SageMaker) ListTrainingJobsPages(input *ListTrainingJobsInput, fn func(*ListTrainingJobsOutput, bool) bool) error {
5360	return c.ListTrainingJobsPagesWithContext(aws.BackgroundContext(), input, fn)
5361}
5362
5363// ListTrainingJobsPagesWithContext same as ListTrainingJobsPages except
5364// it takes a Context and allows setting request options on the pages.
5365//
5366// The context must be non-nil and will be used for request cancellation. If
5367// the context is nil a panic will occur. In the future the SDK may create
5368// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5369// for more information on using Contexts.
5370func (c *SageMaker) ListTrainingJobsPagesWithContext(ctx aws.Context, input *ListTrainingJobsInput, fn func(*ListTrainingJobsOutput, bool) bool, opts ...request.Option) error {
5371	p := request.Pagination{
5372		NewRequest: func() (*request.Request, error) {
5373			var inCpy *ListTrainingJobsInput
5374			if input != nil {
5375				tmp := *input
5376				inCpy = &tmp
5377			}
5378			req, _ := c.ListTrainingJobsRequest(inCpy)
5379			req.SetContext(ctx)
5380			req.ApplyOptions(opts...)
5381			return req, nil
5382		},
5383	}
5384
5385	cont := true
5386	for p.Next() && cont {
5387		cont = fn(p.Page().(*ListTrainingJobsOutput), !p.HasNextPage())
5388	}
5389	return p.Err()
5390}
5391
5392const opListTrainingJobsForHyperParameterTuningJob = "ListTrainingJobsForHyperParameterTuningJob"
5393
5394// ListTrainingJobsForHyperParameterTuningJobRequest generates a "aws/request.Request" representing the
5395// client's request for the ListTrainingJobsForHyperParameterTuningJob operation. The "output" return
5396// value will be populated with the request's response once the request completes
5397// successfully.
5398//
5399// Use "Send" method on the returned Request to send the API call to the service.
5400// the "output" return value is not valid until after Send returns without error.
5401//
5402// See ListTrainingJobsForHyperParameterTuningJob for more information on using the ListTrainingJobsForHyperParameterTuningJob
5403// API call, and error handling.
5404//
5405// This method is useful when you want to inject custom logic or configuration
5406// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5407//
5408//
5409//    // Example sending a request using the ListTrainingJobsForHyperParameterTuningJobRequest method.
5410//    req, resp := client.ListTrainingJobsForHyperParameterTuningJobRequest(params)
5411//
5412//    err := req.Send()
5413//    if err == nil { // resp is now filled
5414//        fmt.Println(resp)
5415//    }
5416//
5417// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTrainingJobsForHyperParameterTuningJob
5418func (c *SageMaker) ListTrainingJobsForHyperParameterTuningJobRequest(input *ListTrainingJobsForHyperParameterTuningJobInput) (req *request.Request, output *ListTrainingJobsForHyperParameterTuningJobOutput) {
5419	op := &request.Operation{
5420		Name:       opListTrainingJobsForHyperParameterTuningJob,
5421		HTTPMethod: "POST",
5422		HTTPPath:   "/",
5423		Paginator: &request.Paginator{
5424			InputTokens:     []string{"NextToken"},
5425			OutputTokens:    []string{"NextToken"},
5426			LimitToken:      "MaxResults",
5427			TruncationToken: "",
5428		},
5429	}
5430
5431	if input == nil {
5432		input = &ListTrainingJobsForHyperParameterTuningJobInput{}
5433	}
5434
5435	output = &ListTrainingJobsForHyperParameterTuningJobOutput{}
5436	req = c.newRequest(op, input, output)
5437	return
5438}
5439
5440// ListTrainingJobsForHyperParameterTuningJob API operation for Amazon SageMaker Service.
5441//
5442// Gets a list of TrainingJobSummary objects that describe the training jobs
5443// that a hyperparameter tuning job launched.
5444//
5445// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5446// with awserr.Error's Code and Message methods to get detailed information about
5447// the error.
5448//
5449// See the AWS API reference guide for Amazon SageMaker Service's
5450// API operation ListTrainingJobsForHyperParameterTuningJob for usage and error information.
5451//
5452// Returned Error Codes:
5453//   * ErrCodeResourceNotFound "ResourceNotFound"
5454//   Resource being access is not found.
5455//
5456// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTrainingJobsForHyperParameterTuningJob
5457func (c *SageMaker) ListTrainingJobsForHyperParameterTuningJob(input *ListTrainingJobsForHyperParameterTuningJobInput) (*ListTrainingJobsForHyperParameterTuningJobOutput, error) {
5458	req, out := c.ListTrainingJobsForHyperParameterTuningJobRequest(input)
5459	return out, req.Send()
5460}
5461
5462// ListTrainingJobsForHyperParameterTuningJobWithContext is the same as ListTrainingJobsForHyperParameterTuningJob with the addition of
5463// the ability to pass a context and additional request options.
5464//
5465// See ListTrainingJobsForHyperParameterTuningJob for details on how to use this API operation.
5466//
5467// The context must be non-nil and will be used for request cancellation. If
5468// the context is nil a panic will occur. In the future the SDK may create
5469// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5470// for more information on using Contexts.
5471func (c *SageMaker) ListTrainingJobsForHyperParameterTuningJobWithContext(ctx aws.Context, input *ListTrainingJobsForHyperParameterTuningJobInput, opts ...request.Option) (*ListTrainingJobsForHyperParameterTuningJobOutput, error) {
5472	req, out := c.ListTrainingJobsForHyperParameterTuningJobRequest(input)
5473	req.SetContext(ctx)
5474	req.ApplyOptions(opts...)
5475	return out, req.Send()
5476}
5477
5478// ListTrainingJobsForHyperParameterTuningJobPages iterates over the pages of a ListTrainingJobsForHyperParameterTuningJob operation,
5479// calling the "fn" function with the response data for each page. To stop
5480// iterating, return false from the fn function.
5481//
5482// See ListTrainingJobsForHyperParameterTuningJob method for more information on how to use this operation.
5483//
5484// Note: This operation can generate multiple requests to a service.
5485//
5486//    // Example iterating over at most 3 pages of a ListTrainingJobsForHyperParameterTuningJob operation.
5487//    pageNum := 0
5488//    err := client.ListTrainingJobsForHyperParameterTuningJobPages(params,
5489//        func(page *sagemaker.ListTrainingJobsForHyperParameterTuningJobOutput, lastPage bool) bool {
5490//            pageNum++
5491//            fmt.Println(page)
5492//            return pageNum <= 3
5493//        })
5494//
5495func (c *SageMaker) ListTrainingJobsForHyperParameterTuningJobPages(input *ListTrainingJobsForHyperParameterTuningJobInput, fn func(*ListTrainingJobsForHyperParameterTuningJobOutput, bool) bool) error {
5496	return c.ListTrainingJobsForHyperParameterTuningJobPagesWithContext(aws.BackgroundContext(), input, fn)
5497}
5498
5499// ListTrainingJobsForHyperParameterTuningJobPagesWithContext same as ListTrainingJobsForHyperParameterTuningJobPages except
5500// it takes a Context and allows setting request options on the pages.
5501//
5502// The context must be non-nil and will be used for request cancellation. If
5503// the context is nil a panic will occur. In the future the SDK may create
5504// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5505// for more information on using Contexts.
5506func (c *SageMaker) ListTrainingJobsForHyperParameterTuningJobPagesWithContext(ctx aws.Context, input *ListTrainingJobsForHyperParameterTuningJobInput, fn func(*ListTrainingJobsForHyperParameterTuningJobOutput, bool) bool, opts ...request.Option) error {
5507	p := request.Pagination{
5508		NewRequest: func() (*request.Request, error) {
5509			var inCpy *ListTrainingJobsForHyperParameterTuningJobInput
5510			if input != nil {
5511				tmp := *input
5512				inCpy = &tmp
5513			}
5514			req, _ := c.ListTrainingJobsForHyperParameterTuningJobRequest(inCpy)
5515			req.SetContext(ctx)
5516			req.ApplyOptions(opts...)
5517			return req, nil
5518		},
5519	}
5520
5521	cont := true
5522	for p.Next() && cont {
5523		cont = fn(p.Page().(*ListTrainingJobsForHyperParameterTuningJobOutput), !p.HasNextPage())
5524	}
5525	return p.Err()
5526}
5527
5528const opListTransformJobs = "ListTransformJobs"
5529
5530// ListTransformJobsRequest generates a "aws/request.Request" representing the
5531// client's request for the ListTransformJobs operation. The "output" return
5532// value will be populated with the request's response once the request completes
5533// successfully.
5534//
5535// Use "Send" method on the returned Request to send the API call to the service.
5536// the "output" return value is not valid until after Send returns without error.
5537//
5538// See ListTransformJobs for more information on using the ListTransformJobs
5539// API call, and error handling.
5540//
5541// This method is useful when you want to inject custom logic or configuration
5542// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5543//
5544//
5545//    // Example sending a request using the ListTransformJobsRequest method.
5546//    req, resp := client.ListTransformJobsRequest(params)
5547//
5548//    err := req.Send()
5549//    if err == nil { // resp is now filled
5550//        fmt.Println(resp)
5551//    }
5552//
5553// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTransformJobs
5554func (c *SageMaker) ListTransformJobsRequest(input *ListTransformJobsInput) (req *request.Request, output *ListTransformJobsOutput) {
5555	op := &request.Operation{
5556		Name:       opListTransformJobs,
5557		HTTPMethod: "POST",
5558		HTTPPath:   "/",
5559		Paginator: &request.Paginator{
5560			InputTokens:     []string{"NextToken"},
5561			OutputTokens:    []string{"NextToken"},
5562			LimitToken:      "MaxResults",
5563			TruncationToken: "",
5564		},
5565	}
5566
5567	if input == nil {
5568		input = &ListTransformJobsInput{}
5569	}
5570
5571	output = &ListTransformJobsOutput{}
5572	req = c.newRequest(op, input, output)
5573	return
5574}
5575
5576// ListTransformJobs API operation for Amazon SageMaker Service.
5577//
5578// Lists transform jobs.
5579//
5580// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5581// with awserr.Error's Code and Message methods to get detailed information about
5582// the error.
5583//
5584// See the AWS API reference guide for Amazon SageMaker Service's
5585// API operation ListTransformJobs for usage and error information.
5586// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListTransformJobs
5587func (c *SageMaker) ListTransformJobs(input *ListTransformJobsInput) (*ListTransformJobsOutput, error) {
5588	req, out := c.ListTransformJobsRequest(input)
5589	return out, req.Send()
5590}
5591
5592// ListTransformJobsWithContext is the same as ListTransformJobs with the addition of
5593// the ability to pass a context and additional request options.
5594//
5595// See ListTransformJobs for details on how to use this API operation.
5596//
5597// The context must be non-nil and will be used for request cancellation. If
5598// the context is nil a panic will occur. In the future the SDK may create
5599// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5600// for more information on using Contexts.
5601func (c *SageMaker) ListTransformJobsWithContext(ctx aws.Context, input *ListTransformJobsInput, opts ...request.Option) (*ListTransformJobsOutput, error) {
5602	req, out := c.ListTransformJobsRequest(input)
5603	req.SetContext(ctx)
5604	req.ApplyOptions(opts...)
5605	return out, req.Send()
5606}
5607
5608// ListTransformJobsPages iterates over the pages of a ListTransformJobs operation,
5609// calling the "fn" function with the response data for each page. To stop
5610// iterating, return false from the fn function.
5611//
5612// See ListTransformJobs method for more information on how to use this operation.
5613//
5614// Note: This operation can generate multiple requests to a service.
5615//
5616//    // Example iterating over at most 3 pages of a ListTransformJobs operation.
5617//    pageNum := 0
5618//    err := client.ListTransformJobsPages(params,
5619//        func(page *sagemaker.ListTransformJobsOutput, lastPage bool) bool {
5620//            pageNum++
5621//            fmt.Println(page)
5622//            return pageNum <= 3
5623//        })
5624//
5625func (c *SageMaker) ListTransformJobsPages(input *ListTransformJobsInput, fn func(*ListTransformJobsOutput, bool) bool) error {
5626	return c.ListTransformJobsPagesWithContext(aws.BackgroundContext(), input, fn)
5627}
5628
5629// ListTransformJobsPagesWithContext same as ListTransformJobsPages except
5630// it takes a Context and allows setting request options on the pages.
5631//
5632// The context must be non-nil and will be used for request cancellation. If
5633// the context is nil a panic will occur. In the future the SDK may create
5634// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5635// for more information on using Contexts.
5636func (c *SageMaker) ListTransformJobsPagesWithContext(ctx aws.Context, input *ListTransformJobsInput, fn func(*ListTransformJobsOutput, bool) bool, opts ...request.Option) error {
5637	p := request.Pagination{
5638		NewRequest: func() (*request.Request, error) {
5639			var inCpy *ListTransformJobsInput
5640			if input != nil {
5641				tmp := *input
5642				inCpy = &tmp
5643			}
5644			req, _ := c.ListTransformJobsRequest(inCpy)
5645			req.SetContext(ctx)
5646			req.ApplyOptions(opts...)
5647			return req, nil
5648		},
5649	}
5650
5651	cont := true
5652	for p.Next() && cont {
5653		cont = fn(p.Page().(*ListTransformJobsOutput), !p.HasNextPage())
5654	}
5655	return p.Err()
5656}
5657
5658const opListWorkteams = "ListWorkteams"
5659
5660// ListWorkteamsRequest generates a "aws/request.Request" representing the
5661// client's request for the ListWorkteams operation. The "output" return
5662// value will be populated with the request's response once the request completes
5663// successfully.
5664//
5665// Use "Send" method on the returned Request to send the API call to the service.
5666// the "output" return value is not valid until after Send returns without error.
5667//
5668// See ListWorkteams for more information on using the ListWorkteams
5669// API call, and error handling.
5670//
5671// This method is useful when you want to inject custom logic or configuration
5672// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5673//
5674//
5675//    // Example sending a request using the ListWorkteamsRequest method.
5676//    req, resp := client.ListWorkteamsRequest(params)
5677//
5678//    err := req.Send()
5679//    if err == nil { // resp is now filled
5680//        fmt.Println(resp)
5681//    }
5682//
5683// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListWorkteams
5684func (c *SageMaker) ListWorkteamsRequest(input *ListWorkteamsInput) (req *request.Request, output *ListWorkteamsOutput) {
5685	op := &request.Operation{
5686		Name:       opListWorkteams,
5687		HTTPMethod: "POST",
5688		HTTPPath:   "/",
5689		Paginator: &request.Paginator{
5690			InputTokens:     []string{"NextToken"},
5691			OutputTokens:    []string{"NextToken"},
5692			LimitToken:      "MaxResults",
5693			TruncationToken: "",
5694		},
5695	}
5696
5697	if input == nil {
5698		input = &ListWorkteamsInput{}
5699	}
5700
5701	output = &ListWorkteamsOutput{}
5702	req = c.newRequest(op, input, output)
5703	return
5704}
5705
5706// ListWorkteams API operation for Amazon SageMaker Service.
5707//
5708// Gets a list of work teams that you have defined in a region. The list may
5709// be empty if no work team satisfies the filter specified in the NameContains
5710// parameter.
5711//
5712// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5713// with awserr.Error's Code and Message methods to get detailed information about
5714// the error.
5715//
5716// See the AWS API reference guide for Amazon SageMaker Service's
5717// API operation ListWorkteams for usage and error information.
5718// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListWorkteams
5719func (c *SageMaker) ListWorkteams(input *ListWorkteamsInput) (*ListWorkteamsOutput, error) {
5720	req, out := c.ListWorkteamsRequest(input)
5721	return out, req.Send()
5722}
5723
5724// ListWorkteamsWithContext is the same as ListWorkteams with the addition of
5725// the ability to pass a context and additional request options.
5726//
5727// See ListWorkteams for details on how to use this API operation.
5728//
5729// The context must be non-nil and will be used for request cancellation. If
5730// the context is nil a panic will occur. In the future the SDK may create
5731// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5732// for more information on using Contexts.
5733func (c *SageMaker) ListWorkteamsWithContext(ctx aws.Context, input *ListWorkteamsInput, opts ...request.Option) (*ListWorkteamsOutput, error) {
5734	req, out := c.ListWorkteamsRequest(input)
5735	req.SetContext(ctx)
5736	req.ApplyOptions(opts...)
5737	return out, req.Send()
5738}
5739
5740// ListWorkteamsPages iterates over the pages of a ListWorkteams operation,
5741// calling the "fn" function with the response data for each page. To stop
5742// iterating, return false from the fn function.
5743//
5744// See ListWorkteams method for more information on how to use this operation.
5745//
5746// Note: This operation can generate multiple requests to a service.
5747//
5748//    // Example iterating over at most 3 pages of a ListWorkteams operation.
5749//    pageNum := 0
5750//    err := client.ListWorkteamsPages(params,
5751//        func(page *sagemaker.ListWorkteamsOutput, lastPage bool) bool {
5752//            pageNum++
5753//            fmt.Println(page)
5754//            return pageNum <= 3
5755//        })
5756//
5757func (c *SageMaker) ListWorkteamsPages(input *ListWorkteamsInput, fn func(*ListWorkteamsOutput, bool) bool) error {
5758	return c.ListWorkteamsPagesWithContext(aws.BackgroundContext(), input, fn)
5759}
5760
5761// ListWorkteamsPagesWithContext same as ListWorkteamsPages except
5762// it takes a Context and allows setting request options on the pages.
5763//
5764// The context must be non-nil and will be used for request cancellation. If
5765// the context is nil a panic will occur. In the future the SDK may create
5766// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5767// for more information on using Contexts.
5768func (c *SageMaker) ListWorkteamsPagesWithContext(ctx aws.Context, input *ListWorkteamsInput, fn func(*ListWorkteamsOutput, bool) bool, opts ...request.Option) error {
5769	p := request.Pagination{
5770		NewRequest: func() (*request.Request, error) {
5771			var inCpy *ListWorkteamsInput
5772			if input != nil {
5773				tmp := *input
5774				inCpy = &tmp
5775			}
5776			req, _ := c.ListWorkteamsRequest(inCpy)
5777			req.SetContext(ctx)
5778			req.ApplyOptions(opts...)
5779			return req, nil
5780		},
5781	}
5782
5783	cont := true
5784	for p.Next() && cont {
5785		cont = fn(p.Page().(*ListWorkteamsOutput), !p.HasNextPage())
5786	}
5787	return p.Err()
5788}
5789
5790const opRenderUiTemplate = "RenderUiTemplate"
5791
5792// RenderUiTemplateRequest generates a "aws/request.Request" representing the
5793// client's request for the RenderUiTemplate operation. The "output" return
5794// value will be populated with the request's response once the request completes
5795// successfully.
5796//
5797// Use "Send" method on the returned Request to send the API call to the service.
5798// the "output" return value is not valid until after Send returns without error.
5799//
5800// See RenderUiTemplate for more information on using the RenderUiTemplate
5801// API call, and error handling.
5802//
5803// This method is useful when you want to inject custom logic or configuration
5804// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5805//
5806//
5807//    // Example sending a request using the RenderUiTemplateRequest method.
5808//    req, resp := client.RenderUiTemplateRequest(params)
5809//
5810//    err := req.Send()
5811//    if err == nil { // resp is now filled
5812//        fmt.Println(resp)
5813//    }
5814//
5815// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/RenderUiTemplate
5816func (c *SageMaker) RenderUiTemplateRequest(input *RenderUiTemplateInput) (req *request.Request, output *RenderUiTemplateOutput) {
5817	op := &request.Operation{
5818		Name:       opRenderUiTemplate,
5819		HTTPMethod: "POST",
5820		HTTPPath:   "/",
5821	}
5822
5823	if input == nil {
5824		input = &RenderUiTemplateInput{}
5825	}
5826
5827	output = &RenderUiTemplateOutput{}
5828	req = c.newRequest(op, input, output)
5829	return
5830}
5831
5832// RenderUiTemplate API operation for Amazon SageMaker Service.
5833//
5834// Renders the UI template so that you can preview the worker's experience.
5835//
5836// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5837// with awserr.Error's Code and Message methods to get detailed information about
5838// the error.
5839//
5840// See the AWS API reference guide for Amazon SageMaker Service's
5841// API operation RenderUiTemplate for usage and error information.
5842// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/RenderUiTemplate
5843func (c *SageMaker) RenderUiTemplate(input *RenderUiTemplateInput) (*RenderUiTemplateOutput, error) {
5844	req, out := c.RenderUiTemplateRequest(input)
5845	return out, req.Send()
5846}
5847
5848// RenderUiTemplateWithContext is the same as RenderUiTemplate with the addition of
5849// the ability to pass a context and additional request options.
5850//
5851// See RenderUiTemplate for details on how to use this API operation.
5852//
5853// The context must be non-nil and will be used for request cancellation. If
5854// the context is nil a panic will occur. In the future the SDK may create
5855// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5856// for more information on using Contexts.
5857func (c *SageMaker) RenderUiTemplateWithContext(ctx aws.Context, input *RenderUiTemplateInput, opts ...request.Option) (*RenderUiTemplateOutput, error) {
5858	req, out := c.RenderUiTemplateRequest(input)
5859	req.SetContext(ctx)
5860	req.ApplyOptions(opts...)
5861	return out, req.Send()
5862}
5863
5864const opSearch = "Search"
5865
5866// SearchRequest generates a "aws/request.Request" representing the
5867// client's request for the Search operation. The "output" return
5868// value will be populated with the request's response once the request completes
5869// successfully.
5870//
5871// Use "Send" method on the returned Request to send the API call to the service.
5872// the "output" return value is not valid until after Send returns without error.
5873//
5874// See Search for more information on using the Search
5875// API call, and error handling.
5876//
5877// This method is useful when you want to inject custom logic or configuration
5878// into the SDK's request lifecycle. Such as custom headers, or retry logic.
5879//
5880//
5881//    // Example sending a request using the SearchRequest method.
5882//    req, resp := client.SearchRequest(params)
5883//
5884//    err := req.Send()
5885//    if err == nil { // resp is now filled
5886//        fmt.Println(resp)
5887//    }
5888//
5889// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/Search
5890func (c *SageMaker) SearchRequest(input *SearchInput) (req *request.Request, output *SearchOutput) {
5891	op := &request.Operation{
5892		Name:       opSearch,
5893		HTTPMethod: "POST",
5894		HTTPPath:   "/",
5895		Paginator: &request.Paginator{
5896			InputTokens:     []string{"NextToken"},
5897			OutputTokens:    []string{"NextToken"},
5898			LimitToken:      "MaxResults",
5899			TruncationToken: "",
5900		},
5901	}
5902
5903	if input == nil {
5904		input = &SearchInput{}
5905	}
5906
5907	output = &SearchOutput{}
5908	req = c.newRequest(op, input, output)
5909	return
5910}
5911
5912// Search API operation for Amazon SageMaker Service.
5913//
5914// Finds Amazon SageMaker resources that match a search query. Matching resource
5915// objects are returned as a list of SearchResult objects in the response. You
5916// can sort the search results by any resource property in a ascending or descending
5917// order.
5918//
5919// You can query against the following value types: numerical, text, Booleans,
5920// and timestamps.
5921//
5922// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
5923// with awserr.Error's Code and Message methods to get detailed information about
5924// the error.
5925//
5926// See the AWS API reference guide for Amazon SageMaker Service's
5927// API operation Search for usage and error information.
5928// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/Search
5929func (c *SageMaker) Search(input *SearchInput) (*SearchOutput, error) {
5930	req, out := c.SearchRequest(input)
5931	return out, req.Send()
5932}
5933
5934// SearchWithContext is the same as Search with the addition of
5935// the ability to pass a context and additional request options.
5936//
5937// See Search for details on how to use this API operation.
5938//
5939// The context must be non-nil and will be used for request cancellation. If
5940// the context is nil a panic will occur. In the future the SDK may create
5941// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5942// for more information on using Contexts.
5943func (c *SageMaker) SearchWithContext(ctx aws.Context, input *SearchInput, opts ...request.Option) (*SearchOutput, error) {
5944	req, out := c.SearchRequest(input)
5945	req.SetContext(ctx)
5946	req.ApplyOptions(opts...)
5947	return out, req.Send()
5948}
5949
5950// SearchPages iterates over the pages of a Search operation,
5951// calling the "fn" function with the response data for each page. To stop
5952// iterating, return false from the fn function.
5953//
5954// See Search method for more information on how to use this operation.
5955//
5956// Note: This operation can generate multiple requests to a service.
5957//
5958//    // Example iterating over at most 3 pages of a Search operation.
5959//    pageNum := 0
5960//    err := client.SearchPages(params,
5961//        func(page *sagemaker.SearchOutput, lastPage bool) bool {
5962//            pageNum++
5963//            fmt.Println(page)
5964//            return pageNum <= 3
5965//        })
5966//
5967func (c *SageMaker) SearchPages(input *SearchInput, fn func(*SearchOutput, bool) bool) error {
5968	return c.SearchPagesWithContext(aws.BackgroundContext(), input, fn)
5969}
5970
5971// SearchPagesWithContext same as SearchPages except
5972// it takes a Context and allows setting request options on the pages.
5973//
5974// The context must be non-nil and will be used for request cancellation. If
5975// the context is nil a panic will occur. In the future the SDK may create
5976// sub-contexts for http.Requests. See https://golang.org/pkg/context/
5977// for more information on using Contexts.
5978func (c *SageMaker) SearchPagesWithContext(ctx aws.Context, input *SearchInput, fn func(*SearchOutput, bool) bool, opts ...request.Option) error {
5979	p := request.Pagination{
5980		NewRequest: func() (*request.Request, error) {
5981			var inCpy *SearchInput
5982			if input != nil {
5983				tmp := *input
5984				inCpy = &tmp
5985			}
5986			req, _ := c.SearchRequest(inCpy)
5987			req.SetContext(ctx)
5988			req.ApplyOptions(opts...)
5989			return req, nil
5990		},
5991	}
5992
5993	cont := true
5994	for p.Next() && cont {
5995		cont = fn(p.Page().(*SearchOutput), !p.HasNextPage())
5996	}
5997	return p.Err()
5998}
5999
6000const opStartNotebookInstance = "StartNotebookInstance"
6001
6002// StartNotebookInstanceRequest generates a "aws/request.Request" representing the
6003// client's request for the StartNotebookInstance operation. The "output" return
6004// value will be populated with the request's response once the request completes
6005// successfully.
6006//
6007// Use "Send" method on the returned Request to send the API call to the service.
6008// the "output" return value is not valid until after Send returns without error.
6009//
6010// See StartNotebookInstance for more information on using the StartNotebookInstance
6011// API call, and error handling.
6012//
6013// This method is useful when you want to inject custom logic or configuration
6014// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6015//
6016//
6017//    // Example sending a request using the StartNotebookInstanceRequest method.
6018//    req, resp := client.StartNotebookInstanceRequest(params)
6019//
6020//    err := req.Send()
6021//    if err == nil { // resp is now filled
6022//        fmt.Println(resp)
6023//    }
6024//
6025// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StartNotebookInstance
6026func (c *SageMaker) StartNotebookInstanceRequest(input *StartNotebookInstanceInput) (req *request.Request, output *StartNotebookInstanceOutput) {
6027	op := &request.Operation{
6028		Name:       opStartNotebookInstance,
6029		HTTPMethod: "POST",
6030		HTTPPath:   "/",
6031	}
6032
6033	if input == nil {
6034		input = &StartNotebookInstanceInput{}
6035	}
6036
6037	output = &StartNotebookInstanceOutput{}
6038	req = c.newRequest(op, input, output)
6039	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6040	return
6041}
6042
6043// StartNotebookInstance API operation for Amazon SageMaker Service.
6044//
6045// Launches an ML compute instance with the latest version of the libraries
6046// and attaches your ML storage volume. After configuring the notebook instance,
6047// Amazon SageMaker sets the notebook instance status to InService. A notebook
6048// instance's status must be InService before you can connect to your Jupyter
6049// notebook.
6050//
6051// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6052// with awserr.Error's Code and Message methods to get detailed information about
6053// the error.
6054//
6055// See the AWS API reference guide for Amazon SageMaker Service's
6056// API operation StartNotebookInstance for usage and error information.
6057//
6058// Returned Error Codes:
6059//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
6060//   You have exceeded an Amazon SageMaker resource limit. For example, you might
6061//   have too many training jobs created.
6062//
6063// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StartNotebookInstance
6064func (c *SageMaker) StartNotebookInstance(input *StartNotebookInstanceInput) (*StartNotebookInstanceOutput, error) {
6065	req, out := c.StartNotebookInstanceRequest(input)
6066	return out, req.Send()
6067}
6068
6069// StartNotebookInstanceWithContext is the same as StartNotebookInstance with the addition of
6070// the ability to pass a context and additional request options.
6071//
6072// See StartNotebookInstance for details on how to use this API operation.
6073//
6074// The context must be non-nil and will be used for request cancellation. If
6075// the context is nil a panic will occur. In the future the SDK may create
6076// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6077// for more information on using Contexts.
6078func (c *SageMaker) StartNotebookInstanceWithContext(ctx aws.Context, input *StartNotebookInstanceInput, opts ...request.Option) (*StartNotebookInstanceOutput, error) {
6079	req, out := c.StartNotebookInstanceRequest(input)
6080	req.SetContext(ctx)
6081	req.ApplyOptions(opts...)
6082	return out, req.Send()
6083}
6084
6085const opStopCompilationJob = "StopCompilationJob"
6086
6087// StopCompilationJobRequest generates a "aws/request.Request" representing the
6088// client's request for the StopCompilationJob operation. The "output" return
6089// value will be populated with the request's response once the request completes
6090// successfully.
6091//
6092// Use "Send" method on the returned Request to send the API call to the service.
6093// the "output" return value is not valid until after Send returns without error.
6094//
6095// See StopCompilationJob for more information on using the StopCompilationJob
6096// API call, and error handling.
6097//
6098// This method is useful when you want to inject custom logic or configuration
6099// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6100//
6101//
6102//    // Example sending a request using the StopCompilationJobRequest method.
6103//    req, resp := client.StopCompilationJobRequest(params)
6104//
6105//    err := req.Send()
6106//    if err == nil { // resp is now filled
6107//        fmt.Println(resp)
6108//    }
6109//
6110// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopCompilationJob
6111func (c *SageMaker) StopCompilationJobRequest(input *StopCompilationJobInput) (req *request.Request, output *StopCompilationJobOutput) {
6112	op := &request.Operation{
6113		Name:       opStopCompilationJob,
6114		HTTPMethod: "POST",
6115		HTTPPath:   "/",
6116	}
6117
6118	if input == nil {
6119		input = &StopCompilationJobInput{}
6120	}
6121
6122	output = &StopCompilationJobOutput{}
6123	req = c.newRequest(op, input, output)
6124	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6125	return
6126}
6127
6128// StopCompilationJob API operation for Amazon SageMaker Service.
6129//
6130// Stops a model compilation job.
6131//
6132// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal. This
6133// gracefully shuts the job down. If the job hasn't stopped, it sends the SIGKILL
6134// signal.
6135//
6136// When it receives a StopCompilationJob request, Amazon SageMaker changes the
6137// CompilationJobSummary$CompilationJobStatus of the job to Stopping. After
6138// Amazon SageMaker stops the job, it sets the CompilationJobSummary$CompilationJobStatus
6139// to Stopped.
6140//
6141// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6142// with awserr.Error's Code and Message methods to get detailed information about
6143// the error.
6144//
6145// See the AWS API reference guide for Amazon SageMaker Service's
6146// API operation StopCompilationJob for usage and error information.
6147//
6148// Returned Error Codes:
6149//   * ErrCodeResourceNotFound "ResourceNotFound"
6150//   Resource being access is not found.
6151//
6152// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopCompilationJob
6153func (c *SageMaker) StopCompilationJob(input *StopCompilationJobInput) (*StopCompilationJobOutput, error) {
6154	req, out := c.StopCompilationJobRequest(input)
6155	return out, req.Send()
6156}
6157
6158// StopCompilationJobWithContext is the same as StopCompilationJob with the addition of
6159// the ability to pass a context and additional request options.
6160//
6161// See StopCompilationJob for details on how to use this API operation.
6162//
6163// The context must be non-nil and will be used for request cancellation. If
6164// the context is nil a panic will occur. In the future the SDK may create
6165// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6166// for more information on using Contexts.
6167func (c *SageMaker) StopCompilationJobWithContext(ctx aws.Context, input *StopCompilationJobInput, opts ...request.Option) (*StopCompilationJobOutput, error) {
6168	req, out := c.StopCompilationJobRequest(input)
6169	req.SetContext(ctx)
6170	req.ApplyOptions(opts...)
6171	return out, req.Send()
6172}
6173
6174const opStopHyperParameterTuningJob = "StopHyperParameterTuningJob"
6175
6176// StopHyperParameterTuningJobRequest generates a "aws/request.Request" representing the
6177// client's request for the StopHyperParameterTuningJob operation. The "output" return
6178// value will be populated with the request's response once the request completes
6179// successfully.
6180//
6181// Use "Send" method on the returned Request to send the API call to the service.
6182// the "output" return value is not valid until after Send returns without error.
6183//
6184// See StopHyperParameterTuningJob for more information on using the StopHyperParameterTuningJob
6185// API call, and error handling.
6186//
6187// This method is useful when you want to inject custom logic or configuration
6188// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6189//
6190//
6191//    // Example sending a request using the StopHyperParameterTuningJobRequest method.
6192//    req, resp := client.StopHyperParameterTuningJobRequest(params)
6193//
6194//    err := req.Send()
6195//    if err == nil { // resp is now filled
6196//        fmt.Println(resp)
6197//    }
6198//
6199// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopHyperParameterTuningJob
6200func (c *SageMaker) StopHyperParameterTuningJobRequest(input *StopHyperParameterTuningJobInput) (req *request.Request, output *StopHyperParameterTuningJobOutput) {
6201	op := &request.Operation{
6202		Name:       opStopHyperParameterTuningJob,
6203		HTTPMethod: "POST",
6204		HTTPPath:   "/",
6205	}
6206
6207	if input == nil {
6208		input = &StopHyperParameterTuningJobInput{}
6209	}
6210
6211	output = &StopHyperParameterTuningJobOutput{}
6212	req = c.newRequest(op, input, output)
6213	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6214	return
6215}
6216
6217// StopHyperParameterTuningJob API operation for Amazon SageMaker Service.
6218//
6219// Stops a running hyperparameter tuning job and all running training jobs that
6220// the tuning job launched.
6221//
6222// All model artifacts output from the training jobs are stored in Amazon Simple
6223// Storage Service (Amazon S3). All data that the training jobs write to Amazon
6224// CloudWatch Logs are still available in CloudWatch. After the tuning job moves
6225// to the Stopped state, it releases all reserved resources for the tuning job.
6226//
6227// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6228// with awserr.Error's Code and Message methods to get detailed information about
6229// the error.
6230//
6231// See the AWS API reference guide for Amazon SageMaker Service's
6232// API operation StopHyperParameterTuningJob for usage and error information.
6233//
6234// Returned Error Codes:
6235//   * ErrCodeResourceNotFound "ResourceNotFound"
6236//   Resource being access is not found.
6237//
6238// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopHyperParameterTuningJob
6239func (c *SageMaker) StopHyperParameterTuningJob(input *StopHyperParameterTuningJobInput) (*StopHyperParameterTuningJobOutput, error) {
6240	req, out := c.StopHyperParameterTuningJobRequest(input)
6241	return out, req.Send()
6242}
6243
6244// StopHyperParameterTuningJobWithContext is the same as StopHyperParameterTuningJob with the addition of
6245// the ability to pass a context and additional request options.
6246//
6247// See StopHyperParameterTuningJob for details on how to use this API operation.
6248//
6249// The context must be non-nil and will be used for request cancellation. If
6250// the context is nil a panic will occur. In the future the SDK may create
6251// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6252// for more information on using Contexts.
6253func (c *SageMaker) StopHyperParameterTuningJobWithContext(ctx aws.Context, input *StopHyperParameterTuningJobInput, opts ...request.Option) (*StopHyperParameterTuningJobOutput, error) {
6254	req, out := c.StopHyperParameterTuningJobRequest(input)
6255	req.SetContext(ctx)
6256	req.ApplyOptions(opts...)
6257	return out, req.Send()
6258}
6259
6260const opStopLabelingJob = "StopLabelingJob"
6261
6262// StopLabelingJobRequest generates a "aws/request.Request" representing the
6263// client's request for the StopLabelingJob operation. The "output" return
6264// value will be populated with the request's response once the request completes
6265// successfully.
6266//
6267// Use "Send" method on the returned Request to send the API call to the service.
6268// the "output" return value is not valid until after Send returns without error.
6269//
6270// See StopLabelingJob for more information on using the StopLabelingJob
6271// API call, and error handling.
6272//
6273// This method is useful when you want to inject custom logic or configuration
6274// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6275//
6276//
6277//    // Example sending a request using the StopLabelingJobRequest method.
6278//    req, resp := client.StopLabelingJobRequest(params)
6279//
6280//    err := req.Send()
6281//    if err == nil { // resp is now filled
6282//        fmt.Println(resp)
6283//    }
6284//
6285// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopLabelingJob
6286func (c *SageMaker) StopLabelingJobRequest(input *StopLabelingJobInput) (req *request.Request, output *StopLabelingJobOutput) {
6287	op := &request.Operation{
6288		Name:       opStopLabelingJob,
6289		HTTPMethod: "POST",
6290		HTTPPath:   "/",
6291	}
6292
6293	if input == nil {
6294		input = &StopLabelingJobInput{}
6295	}
6296
6297	output = &StopLabelingJobOutput{}
6298	req = c.newRequest(op, input, output)
6299	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6300	return
6301}
6302
6303// StopLabelingJob API operation for Amazon SageMaker Service.
6304//
6305// Stops a running labeling job. A job that is stopped cannot be restarted.
6306// Any results obtained before the job is stopped are placed in the Amazon S3
6307// output bucket.
6308//
6309// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6310// with awserr.Error's Code and Message methods to get detailed information about
6311// the error.
6312//
6313// See the AWS API reference guide for Amazon SageMaker Service's
6314// API operation StopLabelingJob for usage and error information.
6315//
6316// Returned Error Codes:
6317//   * ErrCodeResourceNotFound "ResourceNotFound"
6318//   Resource being access is not found.
6319//
6320// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopLabelingJob
6321func (c *SageMaker) StopLabelingJob(input *StopLabelingJobInput) (*StopLabelingJobOutput, error) {
6322	req, out := c.StopLabelingJobRequest(input)
6323	return out, req.Send()
6324}
6325
6326// StopLabelingJobWithContext is the same as StopLabelingJob with the addition of
6327// the ability to pass a context and additional request options.
6328//
6329// See StopLabelingJob for details on how to use this API operation.
6330//
6331// The context must be non-nil and will be used for request cancellation. If
6332// the context is nil a panic will occur. In the future the SDK may create
6333// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6334// for more information on using Contexts.
6335func (c *SageMaker) StopLabelingJobWithContext(ctx aws.Context, input *StopLabelingJobInput, opts ...request.Option) (*StopLabelingJobOutput, error) {
6336	req, out := c.StopLabelingJobRequest(input)
6337	req.SetContext(ctx)
6338	req.ApplyOptions(opts...)
6339	return out, req.Send()
6340}
6341
6342const opStopNotebookInstance = "StopNotebookInstance"
6343
6344// StopNotebookInstanceRequest generates a "aws/request.Request" representing the
6345// client's request for the StopNotebookInstance operation. The "output" return
6346// value will be populated with the request's response once the request completes
6347// successfully.
6348//
6349// Use "Send" method on the returned Request to send the API call to the service.
6350// the "output" return value is not valid until after Send returns without error.
6351//
6352// See StopNotebookInstance for more information on using the StopNotebookInstance
6353// API call, and error handling.
6354//
6355// This method is useful when you want to inject custom logic or configuration
6356// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6357//
6358//
6359//    // Example sending a request using the StopNotebookInstanceRequest method.
6360//    req, resp := client.StopNotebookInstanceRequest(params)
6361//
6362//    err := req.Send()
6363//    if err == nil { // resp is now filled
6364//        fmt.Println(resp)
6365//    }
6366//
6367// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopNotebookInstance
6368func (c *SageMaker) StopNotebookInstanceRequest(input *StopNotebookInstanceInput) (req *request.Request, output *StopNotebookInstanceOutput) {
6369	op := &request.Operation{
6370		Name:       opStopNotebookInstance,
6371		HTTPMethod: "POST",
6372		HTTPPath:   "/",
6373	}
6374
6375	if input == nil {
6376		input = &StopNotebookInstanceInput{}
6377	}
6378
6379	output = &StopNotebookInstanceOutput{}
6380	req = c.newRequest(op, input, output)
6381	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6382	return
6383}
6384
6385// StopNotebookInstance API operation for Amazon SageMaker Service.
6386//
6387// Terminates the ML compute instance. Before terminating the instance, Amazon
6388// SageMaker disconnects the ML storage volume from it. Amazon SageMaker preserves
6389// the ML storage volume. Amazon SageMaker stops charging you for the ML compute
6390// instance when you call StopNotebookInstance.
6391//
6392// To access data on the ML storage volume for a notebook instance that has
6393// been terminated, call the StartNotebookInstance API. StartNotebookInstance
6394// launches another ML compute instance, configures it, and attaches the preserved
6395// ML storage volume so you can continue your work.
6396//
6397// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6398// with awserr.Error's Code and Message methods to get detailed information about
6399// the error.
6400//
6401// See the AWS API reference guide for Amazon SageMaker Service's
6402// API operation StopNotebookInstance for usage and error information.
6403// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopNotebookInstance
6404func (c *SageMaker) StopNotebookInstance(input *StopNotebookInstanceInput) (*StopNotebookInstanceOutput, error) {
6405	req, out := c.StopNotebookInstanceRequest(input)
6406	return out, req.Send()
6407}
6408
6409// StopNotebookInstanceWithContext is the same as StopNotebookInstance with the addition of
6410// the ability to pass a context and additional request options.
6411//
6412// See StopNotebookInstance for details on how to use this API operation.
6413//
6414// The context must be non-nil and will be used for request cancellation. If
6415// the context is nil a panic will occur. In the future the SDK may create
6416// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6417// for more information on using Contexts.
6418func (c *SageMaker) StopNotebookInstanceWithContext(ctx aws.Context, input *StopNotebookInstanceInput, opts ...request.Option) (*StopNotebookInstanceOutput, error) {
6419	req, out := c.StopNotebookInstanceRequest(input)
6420	req.SetContext(ctx)
6421	req.ApplyOptions(opts...)
6422	return out, req.Send()
6423}
6424
6425const opStopTrainingJob = "StopTrainingJob"
6426
6427// StopTrainingJobRequest generates a "aws/request.Request" representing the
6428// client's request for the StopTrainingJob operation. The "output" return
6429// value will be populated with the request's response once the request completes
6430// successfully.
6431//
6432// Use "Send" method on the returned Request to send the API call to the service.
6433// the "output" return value is not valid until after Send returns without error.
6434//
6435// See StopTrainingJob for more information on using the StopTrainingJob
6436// API call, and error handling.
6437//
6438// This method is useful when you want to inject custom logic or configuration
6439// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6440//
6441//
6442//    // Example sending a request using the StopTrainingJobRequest method.
6443//    req, resp := client.StopTrainingJobRequest(params)
6444//
6445//    err := req.Send()
6446//    if err == nil { // resp is now filled
6447//        fmt.Println(resp)
6448//    }
6449//
6450// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopTrainingJob
6451func (c *SageMaker) StopTrainingJobRequest(input *StopTrainingJobInput) (req *request.Request, output *StopTrainingJobOutput) {
6452	op := &request.Operation{
6453		Name:       opStopTrainingJob,
6454		HTTPMethod: "POST",
6455		HTTPPath:   "/",
6456	}
6457
6458	if input == nil {
6459		input = &StopTrainingJobInput{}
6460	}
6461
6462	output = &StopTrainingJobOutput{}
6463	req = c.newRequest(op, input, output)
6464	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6465	return
6466}
6467
6468// StopTrainingJob API operation for Amazon SageMaker Service.
6469//
6470// Stops a training job. To stop a job, Amazon SageMaker sends the algorithm
6471// the SIGTERM signal, which delays job termination for 120 seconds. Algorithms
6472// might use this 120-second window to save the model artifacts, so the results
6473// of the training is not lost.
6474//
6475// When it receives a StopTrainingJob request, Amazon SageMaker changes the
6476// status of the job to Stopping. After Amazon SageMaker stops the job, it sets
6477// the status to Stopped.
6478//
6479// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6480// with awserr.Error's Code and Message methods to get detailed information about
6481// the error.
6482//
6483// See the AWS API reference guide for Amazon SageMaker Service's
6484// API operation StopTrainingJob for usage and error information.
6485//
6486// Returned Error Codes:
6487//   * ErrCodeResourceNotFound "ResourceNotFound"
6488//   Resource being access is not found.
6489//
6490// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopTrainingJob
6491func (c *SageMaker) StopTrainingJob(input *StopTrainingJobInput) (*StopTrainingJobOutput, error) {
6492	req, out := c.StopTrainingJobRequest(input)
6493	return out, req.Send()
6494}
6495
6496// StopTrainingJobWithContext is the same as StopTrainingJob with the addition of
6497// the ability to pass a context and additional request options.
6498//
6499// See StopTrainingJob for details on how to use this API operation.
6500//
6501// The context must be non-nil and will be used for request cancellation. If
6502// the context is nil a panic will occur. In the future the SDK may create
6503// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6504// for more information on using Contexts.
6505func (c *SageMaker) StopTrainingJobWithContext(ctx aws.Context, input *StopTrainingJobInput, opts ...request.Option) (*StopTrainingJobOutput, error) {
6506	req, out := c.StopTrainingJobRequest(input)
6507	req.SetContext(ctx)
6508	req.ApplyOptions(opts...)
6509	return out, req.Send()
6510}
6511
6512const opStopTransformJob = "StopTransformJob"
6513
6514// StopTransformJobRequest generates a "aws/request.Request" representing the
6515// client's request for the StopTransformJob operation. The "output" return
6516// value will be populated with the request's response once the request completes
6517// successfully.
6518//
6519// Use "Send" method on the returned Request to send the API call to the service.
6520// the "output" return value is not valid until after Send returns without error.
6521//
6522// See StopTransformJob for more information on using the StopTransformJob
6523// API call, and error handling.
6524//
6525// This method is useful when you want to inject custom logic or configuration
6526// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6527//
6528//
6529//    // Example sending a request using the StopTransformJobRequest method.
6530//    req, resp := client.StopTransformJobRequest(params)
6531//
6532//    err := req.Send()
6533//    if err == nil { // resp is now filled
6534//        fmt.Println(resp)
6535//    }
6536//
6537// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopTransformJob
6538func (c *SageMaker) StopTransformJobRequest(input *StopTransformJobInput) (req *request.Request, output *StopTransformJobOutput) {
6539	op := &request.Operation{
6540		Name:       opStopTransformJob,
6541		HTTPMethod: "POST",
6542		HTTPPath:   "/",
6543	}
6544
6545	if input == nil {
6546		input = &StopTransformJobInput{}
6547	}
6548
6549	output = &StopTransformJobOutput{}
6550	req = c.newRequest(op, input, output)
6551	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6552	return
6553}
6554
6555// StopTransformJob API operation for Amazon SageMaker Service.
6556//
6557// Stops a transform job.
6558//
6559// When Amazon SageMaker receives a StopTransformJob request, the status of
6560// the job changes to Stopping. After Amazon SageMaker stops the job, the status
6561// is set to Stopped. When you stop a transform job before it is completed,
6562// Amazon SageMaker doesn't store the job's output in Amazon S3.
6563//
6564// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6565// with awserr.Error's Code and Message methods to get detailed information about
6566// the error.
6567//
6568// See the AWS API reference guide for Amazon SageMaker Service's
6569// API operation StopTransformJob for usage and error information.
6570//
6571// Returned Error Codes:
6572//   * ErrCodeResourceNotFound "ResourceNotFound"
6573//   Resource being access is not found.
6574//
6575// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopTransformJob
6576func (c *SageMaker) StopTransformJob(input *StopTransformJobInput) (*StopTransformJobOutput, error) {
6577	req, out := c.StopTransformJobRequest(input)
6578	return out, req.Send()
6579}
6580
6581// StopTransformJobWithContext is the same as StopTransformJob with the addition of
6582// the ability to pass a context and additional request options.
6583//
6584// See StopTransformJob for details on how to use this API operation.
6585//
6586// The context must be non-nil and will be used for request cancellation. If
6587// the context is nil a panic will occur. In the future the SDK may create
6588// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6589// for more information on using Contexts.
6590func (c *SageMaker) StopTransformJobWithContext(ctx aws.Context, input *StopTransformJobInput, opts ...request.Option) (*StopTransformJobOutput, error) {
6591	req, out := c.StopTransformJobRequest(input)
6592	req.SetContext(ctx)
6593	req.ApplyOptions(opts...)
6594	return out, req.Send()
6595}
6596
6597const opUpdateCodeRepository = "UpdateCodeRepository"
6598
6599// UpdateCodeRepositoryRequest generates a "aws/request.Request" representing the
6600// client's request for the UpdateCodeRepository operation. The "output" return
6601// value will be populated with the request's response once the request completes
6602// successfully.
6603//
6604// Use "Send" method on the returned Request to send the API call to the service.
6605// the "output" return value is not valid until after Send returns without error.
6606//
6607// See UpdateCodeRepository for more information on using the UpdateCodeRepository
6608// API call, and error handling.
6609//
6610// This method is useful when you want to inject custom logic or configuration
6611// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6612//
6613//
6614//    // Example sending a request using the UpdateCodeRepositoryRequest method.
6615//    req, resp := client.UpdateCodeRepositoryRequest(params)
6616//
6617//    err := req.Send()
6618//    if err == nil { // resp is now filled
6619//        fmt.Println(resp)
6620//    }
6621//
6622// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateCodeRepository
6623func (c *SageMaker) UpdateCodeRepositoryRequest(input *UpdateCodeRepositoryInput) (req *request.Request, output *UpdateCodeRepositoryOutput) {
6624	op := &request.Operation{
6625		Name:       opUpdateCodeRepository,
6626		HTTPMethod: "POST",
6627		HTTPPath:   "/",
6628	}
6629
6630	if input == nil {
6631		input = &UpdateCodeRepositoryInput{}
6632	}
6633
6634	output = &UpdateCodeRepositoryOutput{}
6635	req = c.newRequest(op, input, output)
6636	return
6637}
6638
6639// UpdateCodeRepository API operation for Amazon SageMaker Service.
6640//
6641// Updates the specified Git repository with the specified values.
6642//
6643// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6644// with awserr.Error's Code and Message methods to get detailed information about
6645// the error.
6646//
6647// See the AWS API reference guide for Amazon SageMaker Service's
6648// API operation UpdateCodeRepository for usage and error information.
6649// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateCodeRepository
6650func (c *SageMaker) UpdateCodeRepository(input *UpdateCodeRepositoryInput) (*UpdateCodeRepositoryOutput, error) {
6651	req, out := c.UpdateCodeRepositoryRequest(input)
6652	return out, req.Send()
6653}
6654
6655// UpdateCodeRepositoryWithContext is the same as UpdateCodeRepository with the addition of
6656// the ability to pass a context and additional request options.
6657//
6658// See UpdateCodeRepository for details on how to use this API operation.
6659//
6660// The context must be non-nil and will be used for request cancellation. If
6661// the context is nil a panic will occur. In the future the SDK may create
6662// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6663// for more information on using Contexts.
6664func (c *SageMaker) UpdateCodeRepositoryWithContext(ctx aws.Context, input *UpdateCodeRepositoryInput, opts ...request.Option) (*UpdateCodeRepositoryOutput, error) {
6665	req, out := c.UpdateCodeRepositoryRequest(input)
6666	req.SetContext(ctx)
6667	req.ApplyOptions(opts...)
6668	return out, req.Send()
6669}
6670
6671const opUpdateEndpoint = "UpdateEndpoint"
6672
6673// UpdateEndpointRequest generates a "aws/request.Request" representing the
6674// client's request for the UpdateEndpoint operation. The "output" return
6675// value will be populated with the request's response once the request completes
6676// successfully.
6677//
6678// Use "Send" method on the returned Request to send the API call to the service.
6679// the "output" return value is not valid until after Send returns without error.
6680//
6681// See UpdateEndpoint for more information on using the UpdateEndpoint
6682// API call, and error handling.
6683//
6684// This method is useful when you want to inject custom logic or configuration
6685// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6686//
6687//
6688//    // Example sending a request using the UpdateEndpointRequest method.
6689//    req, resp := client.UpdateEndpointRequest(params)
6690//
6691//    err := req.Send()
6692//    if err == nil { // resp is now filled
6693//        fmt.Println(resp)
6694//    }
6695//
6696// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateEndpoint
6697func (c *SageMaker) UpdateEndpointRequest(input *UpdateEndpointInput) (req *request.Request, output *UpdateEndpointOutput) {
6698	op := &request.Operation{
6699		Name:       opUpdateEndpoint,
6700		HTTPMethod: "POST",
6701		HTTPPath:   "/",
6702	}
6703
6704	if input == nil {
6705		input = &UpdateEndpointInput{}
6706	}
6707
6708	output = &UpdateEndpointOutput{}
6709	req = c.newRequest(op, input, output)
6710	return
6711}
6712
6713// UpdateEndpoint API operation for Amazon SageMaker Service.
6714//
6715// Deploys the new EndpointConfig specified in the request, switches to using
6716// newly created endpoint, and then deletes resources provisioned for the endpoint
6717// using the previous EndpointConfig (there is no availability loss).
6718//
6719// When Amazon SageMaker receives the request, it sets the endpoint status to
6720// Updating. After updating the endpoint, it sets the status to InService. To
6721// check the status of an endpoint, use the DescribeEndpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeEndpoint.html)
6722// API.
6723//
6724// You must not delete an EndpointConfig in use by an endpoint that is live
6725// or while the UpdateEndpoint or CreateEndpoint operations are being performed
6726// on the endpoint. To update an endpoint, you must create a new EndpointConfig.
6727//
6728// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6729// with awserr.Error's Code and Message methods to get detailed information about
6730// the error.
6731//
6732// See the AWS API reference guide for Amazon SageMaker Service's
6733// API operation UpdateEndpoint for usage and error information.
6734//
6735// Returned Error Codes:
6736//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
6737//   You have exceeded an Amazon SageMaker resource limit. For example, you might
6738//   have too many training jobs created.
6739//
6740// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateEndpoint
6741func (c *SageMaker) UpdateEndpoint(input *UpdateEndpointInput) (*UpdateEndpointOutput, error) {
6742	req, out := c.UpdateEndpointRequest(input)
6743	return out, req.Send()
6744}
6745
6746// UpdateEndpointWithContext is the same as UpdateEndpoint with the addition of
6747// the ability to pass a context and additional request options.
6748//
6749// See UpdateEndpoint for details on how to use this API operation.
6750//
6751// The context must be non-nil and will be used for request cancellation. If
6752// the context is nil a panic will occur. In the future the SDK may create
6753// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6754// for more information on using Contexts.
6755func (c *SageMaker) UpdateEndpointWithContext(ctx aws.Context, input *UpdateEndpointInput, opts ...request.Option) (*UpdateEndpointOutput, error) {
6756	req, out := c.UpdateEndpointRequest(input)
6757	req.SetContext(ctx)
6758	req.ApplyOptions(opts...)
6759	return out, req.Send()
6760}
6761
6762const opUpdateEndpointWeightsAndCapacities = "UpdateEndpointWeightsAndCapacities"
6763
6764// UpdateEndpointWeightsAndCapacitiesRequest generates a "aws/request.Request" representing the
6765// client's request for the UpdateEndpointWeightsAndCapacities operation. The "output" return
6766// value will be populated with the request's response once the request completes
6767// successfully.
6768//
6769// Use "Send" method on the returned Request to send the API call to the service.
6770// the "output" return value is not valid until after Send returns without error.
6771//
6772// See UpdateEndpointWeightsAndCapacities for more information on using the UpdateEndpointWeightsAndCapacities
6773// API call, and error handling.
6774//
6775// This method is useful when you want to inject custom logic or configuration
6776// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6777//
6778//
6779//    // Example sending a request using the UpdateEndpointWeightsAndCapacitiesRequest method.
6780//    req, resp := client.UpdateEndpointWeightsAndCapacitiesRequest(params)
6781//
6782//    err := req.Send()
6783//    if err == nil { // resp is now filled
6784//        fmt.Println(resp)
6785//    }
6786//
6787// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateEndpointWeightsAndCapacities
6788func (c *SageMaker) UpdateEndpointWeightsAndCapacitiesRequest(input *UpdateEndpointWeightsAndCapacitiesInput) (req *request.Request, output *UpdateEndpointWeightsAndCapacitiesOutput) {
6789	op := &request.Operation{
6790		Name:       opUpdateEndpointWeightsAndCapacities,
6791		HTTPMethod: "POST",
6792		HTTPPath:   "/",
6793	}
6794
6795	if input == nil {
6796		input = &UpdateEndpointWeightsAndCapacitiesInput{}
6797	}
6798
6799	output = &UpdateEndpointWeightsAndCapacitiesOutput{}
6800	req = c.newRequest(op, input, output)
6801	return
6802}
6803
6804// UpdateEndpointWeightsAndCapacities API operation for Amazon SageMaker Service.
6805//
6806// Updates variant weight of one or more variants associated with an existing
6807// endpoint, or capacity of one variant associated with an existing endpoint.
6808// When it receives the request, Amazon SageMaker sets the endpoint status to
6809// Updating. After updating the endpoint, it sets the status to InService. To
6810// check the status of an endpoint, use the DescribeEndpoint (https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeEndpoint.html)
6811// API.
6812//
6813// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6814// with awserr.Error's Code and Message methods to get detailed information about
6815// the error.
6816//
6817// See the AWS API reference guide for Amazon SageMaker Service's
6818// API operation UpdateEndpointWeightsAndCapacities for usage and error information.
6819//
6820// Returned Error Codes:
6821//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
6822//   You have exceeded an Amazon SageMaker resource limit. For example, you might
6823//   have too many training jobs created.
6824//
6825// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateEndpointWeightsAndCapacities
6826func (c *SageMaker) UpdateEndpointWeightsAndCapacities(input *UpdateEndpointWeightsAndCapacitiesInput) (*UpdateEndpointWeightsAndCapacitiesOutput, error) {
6827	req, out := c.UpdateEndpointWeightsAndCapacitiesRequest(input)
6828	return out, req.Send()
6829}
6830
6831// UpdateEndpointWeightsAndCapacitiesWithContext is the same as UpdateEndpointWeightsAndCapacities with the addition of
6832// the ability to pass a context and additional request options.
6833//
6834// See UpdateEndpointWeightsAndCapacities for details on how to use this API operation.
6835//
6836// The context must be non-nil and will be used for request cancellation. If
6837// the context is nil a panic will occur. In the future the SDK may create
6838// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6839// for more information on using Contexts.
6840func (c *SageMaker) UpdateEndpointWeightsAndCapacitiesWithContext(ctx aws.Context, input *UpdateEndpointWeightsAndCapacitiesInput, opts ...request.Option) (*UpdateEndpointWeightsAndCapacitiesOutput, error) {
6841	req, out := c.UpdateEndpointWeightsAndCapacitiesRequest(input)
6842	req.SetContext(ctx)
6843	req.ApplyOptions(opts...)
6844	return out, req.Send()
6845}
6846
6847const opUpdateNotebookInstance = "UpdateNotebookInstance"
6848
6849// UpdateNotebookInstanceRequest generates a "aws/request.Request" representing the
6850// client's request for the UpdateNotebookInstance operation. The "output" return
6851// value will be populated with the request's response once the request completes
6852// successfully.
6853//
6854// Use "Send" method on the returned Request to send the API call to the service.
6855// the "output" return value is not valid until after Send returns without error.
6856//
6857// See UpdateNotebookInstance for more information on using the UpdateNotebookInstance
6858// API call, and error handling.
6859//
6860// This method is useful when you want to inject custom logic or configuration
6861// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6862//
6863//
6864//    // Example sending a request using the UpdateNotebookInstanceRequest method.
6865//    req, resp := client.UpdateNotebookInstanceRequest(params)
6866//
6867//    err := req.Send()
6868//    if err == nil { // resp is now filled
6869//        fmt.Println(resp)
6870//    }
6871//
6872// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateNotebookInstance
6873func (c *SageMaker) UpdateNotebookInstanceRequest(input *UpdateNotebookInstanceInput) (req *request.Request, output *UpdateNotebookInstanceOutput) {
6874	op := &request.Operation{
6875		Name:       opUpdateNotebookInstance,
6876		HTTPMethod: "POST",
6877		HTTPPath:   "/",
6878	}
6879
6880	if input == nil {
6881		input = &UpdateNotebookInstanceInput{}
6882	}
6883
6884	output = &UpdateNotebookInstanceOutput{}
6885	req = c.newRequest(op, input, output)
6886	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6887	return
6888}
6889
6890// UpdateNotebookInstance API operation for Amazon SageMaker Service.
6891//
6892// Updates a notebook instance. NotebookInstance updates include upgrading or
6893// downgrading the ML compute instance used for your notebook instance to accommodate
6894// changes in your workload requirements.
6895//
6896// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6897// with awserr.Error's Code and Message methods to get detailed information about
6898// the error.
6899//
6900// See the AWS API reference guide for Amazon SageMaker Service's
6901// API operation UpdateNotebookInstance for usage and error information.
6902//
6903// Returned Error Codes:
6904//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
6905//   You have exceeded an Amazon SageMaker resource limit. For example, you might
6906//   have too many training jobs created.
6907//
6908// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateNotebookInstance
6909func (c *SageMaker) UpdateNotebookInstance(input *UpdateNotebookInstanceInput) (*UpdateNotebookInstanceOutput, error) {
6910	req, out := c.UpdateNotebookInstanceRequest(input)
6911	return out, req.Send()
6912}
6913
6914// UpdateNotebookInstanceWithContext is the same as UpdateNotebookInstance with the addition of
6915// the ability to pass a context and additional request options.
6916//
6917// See UpdateNotebookInstance for details on how to use this API operation.
6918//
6919// The context must be non-nil and will be used for request cancellation. If
6920// the context is nil a panic will occur. In the future the SDK may create
6921// sub-contexts for http.Requests. See https://golang.org/pkg/context/
6922// for more information on using Contexts.
6923func (c *SageMaker) UpdateNotebookInstanceWithContext(ctx aws.Context, input *UpdateNotebookInstanceInput, opts ...request.Option) (*UpdateNotebookInstanceOutput, error) {
6924	req, out := c.UpdateNotebookInstanceRequest(input)
6925	req.SetContext(ctx)
6926	req.ApplyOptions(opts...)
6927	return out, req.Send()
6928}
6929
6930const opUpdateNotebookInstanceLifecycleConfig = "UpdateNotebookInstanceLifecycleConfig"
6931
6932// UpdateNotebookInstanceLifecycleConfigRequest generates a "aws/request.Request" representing the
6933// client's request for the UpdateNotebookInstanceLifecycleConfig operation. The "output" return
6934// value will be populated with the request's response once the request completes
6935// successfully.
6936//
6937// Use "Send" method on the returned Request to send the API call to the service.
6938// the "output" return value is not valid until after Send returns without error.
6939//
6940// See UpdateNotebookInstanceLifecycleConfig for more information on using the UpdateNotebookInstanceLifecycleConfig
6941// API call, and error handling.
6942//
6943// This method is useful when you want to inject custom logic or configuration
6944// into the SDK's request lifecycle. Such as custom headers, or retry logic.
6945//
6946//
6947//    // Example sending a request using the UpdateNotebookInstanceLifecycleConfigRequest method.
6948//    req, resp := client.UpdateNotebookInstanceLifecycleConfigRequest(params)
6949//
6950//    err := req.Send()
6951//    if err == nil { // resp is now filled
6952//        fmt.Println(resp)
6953//    }
6954//
6955// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateNotebookInstanceLifecycleConfig
6956func (c *SageMaker) UpdateNotebookInstanceLifecycleConfigRequest(input *UpdateNotebookInstanceLifecycleConfigInput) (req *request.Request, output *UpdateNotebookInstanceLifecycleConfigOutput) {
6957	op := &request.Operation{
6958		Name:       opUpdateNotebookInstanceLifecycleConfig,
6959		HTTPMethod: "POST",
6960		HTTPPath:   "/",
6961	}
6962
6963	if input == nil {
6964		input = &UpdateNotebookInstanceLifecycleConfigInput{}
6965	}
6966
6967	output = &UpdateNotebookInstanceLifecycleConfigOutput{}
6968	req = c.newRequest(op, input, output)
6969	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
6970	return
6971}
6972
6973// UpdateNotebookInstanceLifecycleConfig API operation for Amazon SageMaker Service.
6974//
6975// Updates a notebook instance lifecycle configuration created with the CreateNotebookInstanceLifecycleConfig
6976// API.
6977//
6978// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
6979// with awserr.Error's Code and Message methods to get detailed information about
6980// the error.
6981//
6982// See the AWS API reference guide for Amazon SageMaker Service's
6983// API operation UpdateNotebookInstanceLifecycleConfig for usage and error information.
6984//
6985// Returned Error Codes:
6986//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
6987//   You have exceeded an Amazon SageMaker resource limit. For example, you might
6988//   have too many training jobs created.
6989//
6990// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateNotebookInstanceLifecycleConfig
6991func (c *SageMaker) UpdateNotebookInstanceLifecycleConfig(input *UpdateNotebookInstanceLifecycleConfigInput) (*UpdateNotebookInstanceLifecycleConfigOutput, error) {
6992	req, out := c.UpdateNotebookInstanceLifecycleConfigRequest(input)
6993	return out, req.Send()
6994}
6995
6996// UpdateNotebookInstanceLifecycleConfigWithContext is the same as UpdateNotebookInstanceLifecycleConfig with the addition of
6997// the ability to pass a context and additional request options.
6998//
6999// See UpdateNotebookInstanceLifecycleConfig for details on how to use this API operation.
7000//
7001// The context must be non-nil and will be used for request cancellation. If
7002// the context is nil a panic will occur. In the future the SDK may create
7003// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7004// for more information on using Contexts.
7005func (c *SageMaker) UpdateNotebookInstanceLifecycleConfigWithContext(ctx aws.Context, input *UpdateNotebookInstanceLifecycleConfigInput, opts ...request.Option) (*UpdateNotebookInstanceLifecycleConfigOutput, error) {
7006	req, out := c.UpdateNotebookInstanceLifecycleConfigRequest(input)
7007	req.SetContext(ctx)
7008	req.ApplyOptions(opts...)
7009	return out, req.Send()
7010}
7011
7012const opUpdateWorkteam = "UpdateWorkteam"
7013
7014// UpdateWorkteamRequest generates a "aws/request.Request" representing the
7015// client's request for the UpdateWorkteam operation. The "output" return
7016// value will be populated with the request's response once the request completes
7017// successfully.
7018//
7019// Use "Send" method on the returned Request to send the API call to the service.
7020// the "output" return value is not valid until after Send returns without error.
7021//
7022// See UpdateWorkteam for more information on using the UpdateWorkteam
7023// API call, and error handling.
7024//
7025// This method is useful when you want to inject custom logic or configuration
7026// into the SDK's request lifecycle. Such as custom headers, or retry logic.
7027//
7028//
7029//    // Example sending a request using the UpdateWorkteamRequest method.
7030//    req, resp := client.UpdateWorkteamRequest(params)
7031//
7032//    err := req.Send()
7033//    if err == nil { // resp is now filled
7034//        fmt.Println(resp)
7035//    }
7036//
7037// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateWorkteam
7038func (c *SageMaker) UpdateWorkteamRequest(input *UpdateWorkteamInput) (req *request.Request, output *UpdateWorkteamOutput) {
7039	op := &request.Operation{
7040		Name:       opUpdateWorkteam,
7041		HTTPMethod: "POST",
7042		HTTPPath:   "/",
7043	}
7044
7045	if input == nil {
7046		input = &UpdateWorkteamInput{}
7047	}
7048
7049	output = &UpdateWorkteamOutput{}
7050	req = c.newRequest(op, input, output)
7051	return
7052}
7053
7054// UpdateWorkteam API operation for Amazon SageMaker Service.
7055//
7056// Updates an existing work team with new member definitions or description.
7057//
7058// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
7059// with awserr.Error's Code and Message methods to get detailed information about
7060// the error.
7061//
7062// See the AWS API reference guide for Amazon SageMaker Service's
7063// API operation UpdateWorkteam for usage and error information.
7064//
7065// Returned Error Codes:
7066//   * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
7067//   You have exceeded an Amazon SageMaker resource limit. For example, you might
7068//   have too many training jobs created.
7069//
7070// See also, https://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/UpdateWorkteam
7071func (c *SageMaker) UpdateWorkteam(input *UpdateWorkteamInput) (*UpdateWorkteamOutput, error) {
7072	req, out := c.UpdateWorkteamRequest(input)
7073	return out, req.Send()
7074}
7075
7076// UpdateWorkteamWithContext is the same as UpdateWorkteam with the addition of
7077// the ability to pass a context and additional request options.
7078//
7079// See UpdateWorkteam for details on how to use this API operation.
7080//
7081// The context must be non-nil and will be used for request cancellation. If
7082// the context is nil a panic will occur. In the future the SDK may create
7083// sub-contexts for http.Requests. See https://golang.org/pkg/context/
7084// for more information on using Contexts.
7085func (c *SageMaker) UpdateWorkteamWithContext(ctx aws.Context, input *UpdateWorkteamInput, opts ...request.Option) (*UpdateWorkteamOutput, error) {
7086	req, out := c.UpdateWorkteamRequest(input)
7087	req.SetContext(ctx)
7088	req.ApplyOptions(opts...)
7089	return out, req.Send()
7090}
7091
7092type AddTagsInput struct {
7093	_ struct{} `type:"structure"`
7094
7095	// The Amazon Resource Name (ARN) of the resource that you want to tag.
7096	//
7097	// ResourceArn is a required field
7098	ResourceArn *string `type:"string" required:"true"`
7099
7100	// An array of Tag objects. Each tag is a key-value pair. Only the key parameter
7101	// is required. If you don't specify a value, Amazon SageMaker sets the value
7102	// to an empty string.
7103	//
7104	// Tags is a required field
7105	Tags []*Tag `type:"list" required:"true"`
7106}
7107
7108// String returns the string representation
7109func (s AddTagsInput) String() string {
7110	return awsutil.Prettify(s)
7111}
7112
7113// GoString returns the string representation
7114func (s AddTagsInput) GoString() string {
7115	return s.String()
7116}
7117
7118// Validate inspects the fields of the type to determine if they are valid.
7119func (s *AddTagsInput) Validate() error {
7120	invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"}
7121	if s.ResourceArn == nil {
7122		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
7123	}
7124	if s.Tags == nil {
7125		invalidParams.Add(request.NewErrParamRequired("Tags"))
7126	}
7127	if s.Tags != nil {
7128		for i, v := range s.Tags {
7129			if v == nil {
7130				continue
7131			}
7132			if err := v.Validate(); err != nil {
7133				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
7134			}
7135		}
7136	}
7137
7138	if invalidParams.Len() > 0 {
7139		return invalidParams
7140	}
7141	return nil
7142}
7143
7144// SetResourceArn sets the ResourceArn field's value.
7145func (s *AddTagsInput) SetResourceArn(v string) *AddTagsInput {
7146	s.ResourceArn = &v
7147	return s
7148}
7149
7150// SetTags sets the Tags field's value.
7151func (s *AddTagsInput) SetTags(v []*Tag) *AddTagsInput {
7152	s.Tags = v
7153	return s
7154}
7155
7156type AddTagsOutput struct {
7157	_ struct{} `type:"structure"`
7158
7159	// A list of tags associated with the Amazon SageMaker resource.
7160	Tags []*Tag `type:"list"`
7161}
7162
7163// String returns the string representation
7164func (s AddTagsOutput) String() string {
7165	return awsutil.Prettify(s)
7166}
7167
7168// GoString returns the string representation
7169func (s AddTagsOutput) GoString() string {
7170	return s.String()
7171}
7172
7173// SetTags sets the Tags field's value.
7174func (s *AddTagsOutput) SetTags(v []*Tag) *AddTagsOutput {
7175	s.Tags = v
7176	return s
7177}
7178
7179// Specifies the training algorithm to use in a CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateTrainingJob.html)
7180// request.
7181//
7182// For more information about algorithms provided by Amazon SageMaker, see Algorithms
7183// (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). For information
7184// about using your own algorithms, see Using Your Own Algorithms with Amazon
7185// SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
7186type AlgorithmSpecification struct {
7187	_ struct{} `type:"structure"`
7188
7189	// The name of the algorithm resource to use for the training job. This must
7190	// be an algorithm resource that you created or subscribe to on AWS Marketplace.
7191	// If you specify a value for this parameter, you can't specify a value for
7192	// TrainingImage.
7193	AlgorithmName *string `min:"1" type:"string"`
7194
7195	// A list of metric definition objects. Each object specifies the metric name
7196	// and regular expressions used to parse algorithm logs. Amazon SageMaker publishes
7197	// each metric to Amazon CloudWatch.
7198	MetricDefinitions []*MetricDefinition `type:"list"`
7199
7200	// The registry path of the Docker image that contains the training algorithm.
7201	// For information about docker registry paths for built-in algorithms, see
7202	// Algorithms Provided by Amazon SageMaker: Common Parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html).
7203	// Amazon SageMaker supports both registry/repository[:tag] and registry/repository[@digest]
7204	// image path formats. For more information, see Using Your Own Algorithms with
7205	// Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
7206	TrainingImage *string `type:"string"`
7207
7208	// The input mode that the algorithm supports. For the input modes that Amazon
7209	// SageMaker algorithms support, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
7210	// If an algorithm supports the File input mode, Amazon SageMaker downloads
7211	// the training data from S3 to the provisioned ML storage Volume, and mounts
7212	// the directory to docker volume for training container. If an algorithm supports
7213	// the Pipe input mode, Amazon SageMaker streams data directly from S3 to the
7214	// container.
7215	//
7216	// In File mode, make sure you provision ML storage volume with sufficient capacity
7217	// to accommodate the data download from S3. In addition to the training data,
7218	// the ML storage volume also stores the output model. The algorithm container
7219	// use ML storage volume to also store intermediate information, if any.
7220	//
7221	// For distributed algorithms using File mode, training data is distributed
7222	// uniformly, and your training duration is predictable if the input data objects
7223	// size is approximately same. Amazon SageMaker does not split the files any
7224	// further for model training. If the object sizes are skewed, training won't
7225	// be optimal as the data distribution is also skewed where one host in a training
7226	// cluster is overloaded, thus becoming bottleneck in training.
7227	//
7228	// TrainingInputMode is a required field
7229	TrainingInputMode *string `type:"string" required:"true" enum:"TrainingInputMode"`
7230}
7231
7232// String returns the string representation
7233func (s AlgorithmSpecification) String() string {
7234	return awsutil.Prettify(s)
7235}
7236
7237// GoString returns the string representation
7238func (s AlgorithmSpecification) GoString() string {
7239	return s.String()
7240}
7241
7242// Validate inspects the fields of the type to determine if they are valid.
7243func (s *AlgorithmSpecification) Validate() error {
7244	invalidParams := request.ErrInvalidParams{Context: "AlgorithmSpecification"}
7245	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
7246		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
7247	}
7248	if s.TrainingInputMode == nil {
7249		invalidParams.Add(request.NewErrParamRequired("TrainingInputMode"))
7250	}
7251	if s.MetricDefinitions != nil {
7252		for i, v := range s.MetricDefinitions {
7253			if v == nil {
7254				continue
7255			}
7256			if err := v.Validate(); err != nil {
7257				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricDefinitions", i), err.(request.ErrInvalidParams))
7258			}
7259		}
7260	}
7261
7262	if invalidParams.Len() > 0 {
7263		return invalidParams
7264	}
7265	return nil
7266}
7267
7268// SetAlgorithmName sets the AlgorithmName field's value.
7269func (s *AlgorithmSpecification) SetAlgorithmName(v string) *AlgorithmSpecification {
7270	s.AlgorithmName = &v
7271	return s
7272}
7273
7274// SetMetricDefinitions sets the MetricDefinitions field's value.
7275func (s *AlgorithmSpecification) SetMetricDefinitions(v []*MetricDefinition) *AlgorithmSpecification {
7276	s.MetricDefinitions = v
7277	return s
7278}
7279
7280// SetTrainingImage sets the TrainingImage field's value.
7281func (s *AlgorithmSpecification) SetTrainingImage(v string) *AlgorithmSpecification {
7282	s.TrainingImage = &v
7283	return s
7284}
7285
7286// SetTrainingInputMode sets the TrainingInputMode field's value.
7287func (s *AlgorithmSpecification) SetTrainingInputMode(v string) *AlgorithmSpecification {
7288	s.TrainingInputMode = &v
7289	return s
7290}
7291
7292// Specifies the validation and image scan statuses of the algorithm.
7293type AlgorithmStatusDetails struct {
7294	_ struct{} `type:"structure"`
7295
7296	// The status of the scan of the algorithm's Docker image container.
7297	ImageScanStatuses []*AlgorithmStatusItem `type:"list"`
7298
7299	// The status of algorithm validation.
7300	ValidationStatuses []*AlgorithmStatusItem `type:"list"`
7301}
7302
7303// String returns the string representation
7304func (s AlgorithmStatusDetails) String() string {
7305	return awsutil.Prettify(s)
7306}
7307
7308// GoString returns the string representation
7309func (s AlgorithmStatusDetails) GoString() string {
7310	return s.String()
7311}
7312
7313// SetImageScanStatuses sets the ImageScanStatuses field's value.
7314func (s *AlgorithmStatusDetails) SetImageScanStatuses(v []*AlgorithmStatusItem) *AlgorithmStatusDetails {
7315	s.ImageScanStatuses = v
7316	return s
7317}
7318
7319// SetValidationStatuses sets the ValidationStatuses field's value.
7320func (s *AlgorithmStatusDetails) SetValidationStatuses(v []*AlgorithmStatusItem) *AlgorithmStatusDetails {
7321	s.ValidationStatuses = v
7322	return s
7323}
7324
7325// Represents the overall status of an algorithm.
7326type AlgorithmStatusItem struct {
7327	_ struct{} `type:"structure"`
7328
7329	// if the overall status is Failed, the reason for the failure.
7330	FailureReason *string `type:"string"`
7331
7332	// The name of the algorithm for which the overall status is being reported.
7333	//
7334	// Name is a required field
7335	Name *string `min:"1" type:"string" required:"true"`
7336
7337	// The current status.
7338	//
7339	// Status is a required field
7340	Status *string `type:"string" required:"true" enum:"DetailedAlgorithmStatus"`
7341}
7342
7343// String returns the string representation
7344func (s AlgorithmStatusItem) String() string {
7345	return awsutil.Prettify(s)
7346}
7347
7348// GoString returns the string representation
7349func (s AlgorithmStatusItem) GoString() string {
7350	return s.String()
7351}
7352
7353// SetFailureReason sets the FailureReason field's value.
7354func (s *AlgorithmStatusItem) SetFailureReason(v string) *AlgorithmStatusItem {
7355	s.FailureReason = &v
7356	return s
7357}
7358
7359// SetName sets the Name field's value.
7360func (s *AlgorithmStatusItem) SetName(v string) *AlgorithmStatusItem {
7361	s.Name = &v
7362	return s
7363}
7364
7365// SetStatus sets the Status field's value.
7366func (s *AlgorithmStatusItem) SetStatus(v string) *AlgorithmStatusItem {
7367	s.Status = &v
7368	return s
7369}
7370
7371// Provides summary information about an algorithm.
7372type AlgorithmSummary struct {
7373	_ struct{} `type:"structure"`
7374
7375	// The Amazon Resource Name (ARN) of the algorithm.
7376	//
7377	// AlgorithmArn is a required field
7378	AlgorithmArn *string `min:"1" type:"string" required:"true"`
7379
7380	// A brief description of the algorithm.
7381	AlgorithmDescription *string `type:"string"`
7382
7383	// The name of the algorithm that is described by the summary.
7384	//
7385	// AlgorithmName is a required field
7386	AlgorithmName *string `min:"1" type:"string" required:"true"`
7387
7388	// The overall status of the algorithm.
7389	//
7390	// AlgorithmStatus is a required field
7391	AlgorithmStatus *string `type:"string" required:"true" enum:"AlgorithmStatus"`
7392
7393	// A timestamp that shows when the algorithm was created.
7394	//
7395	// CreationTime is a required field
7396	CreationTime *time.Time `type:"timestamp" required:"true"`
7397}
7398
7399// String returns the string representation
7400func (s AlgorithmSummary) String() string {
7401	return awsutil.Prettify(s)
7402}
7403
7404// GoString returns the string representation
7405func (s AlgorithmSummary) GoString() string {
7406	return s.String()
7407}
7408
7409// SetAlgorithmArn sets the AlgorithmArn field's value.
7410func (s *AlgorithmSummary) SetAlgorithmArn(v string) *AlgorithmSummary {
7411	s.AlgorithmArn = &v
7412	return s
7413}
7414
7415// SetAlgorithmDescription sets the AlgorithmDescription field's value.
7416func (s *AlgorithmSummary) SetAlgorithmDescription(v string) *AlgorithmSummary {
7417	s.AlgorithmDescription = &v
7418	return s
7419}
7420
7421// SetAlgorithmName sets the AlgorithmName field's value.
7422func (s *AlgorithmSummary) SetAlgorithmName(v string) *AlgorithmSummary {
7423	s.AlgorithmName = &v
7424	return s
7425}
7426
7427// SetAlgorithmStatus sets the AlgorithmStatus field's value.
7428func (s *AlgorithmSummary) SetAlgorithmStatus(v string) *AlgorithmSummary {
7429	s.AlgorithmStatus = &v
7430	return s
7431}
7432
7433// SetCreationTime sets the CreationTime field's value.
7434func (s *AlgorithmSummary) SetCreationTime(v time.Time) *AlgorithmSummary {
7435	s.CreationTime = &v
7436	return s
7437}
7438
7439// Defines a training job and a batch transform job that Amazon SageMaker runs
7440// to validate your algorithm.
7441//
7442// The data provided in the validation profile is made available to your buyers
7443// on AWS Marketplace.
7444type AlgorithmValidationProfile struct {
7445	_ struct{} `type:"structure"`
7446
7447	// The name of the profile for the algorithm. The name must have 1 to 63 characters.
7448	// Valid characters are a-z, A-Z, 0-9, and - (hyphen).
7449	//
7450	// ProfileName is a required field
7451	ProfileName *string `min:"1" type:"string" required:"true"`
7452
7453	// The TrainingJobDefinition object that describes the training job that Amazon
7454	// SageMaker runs to validate your algorithm.
7455	//
7456	// TrainingJobDefinition is a required field
7457	TrainingJobDefinition *TrainingJobDefinition `type:"structure" required:"true"`
7458
7459	// The TransformJobDefinition object that describes the transform job that Amazon
7460	// SageMaker runs to validate your algorithm.
7461	TransformJobDefinition *TransformJobDefinition `type:"structure"`
7462}
7463
7464// String returns the string representation
7465func (s AlgorithmValidationProfile) String() string {
7466	return awsutil.Prettify(s)
7467}
7468
7469// GoString returns the string representation
7470func (s AlgorithmValidationProfile) GoString() string {
7471	return s.String()
7472}
7473
7474// Validate inspects the fields of the type to determine if they are valid.
7475func (s *AlgorithmValidationProfile) Validate() error {
7476	invalidParams := request.ErrInvalidParams{Context: "AlgorithmValidationProfile"}
7477	if s.ProfileName == nil {
7478		invalidParams.Add(request.NewErrParamRequired("ProfileName"))
7479	}
7480	if s.ProfileName != nil && len(*s.ProfileName) < 1 {
7481		invalidParams.Add(request.NewErrParamMinLen("ProfileName", 1))
7482	}
7483	if s.TrainingJobDefinition == nil {
7484		invalidParams.Add(request.NewErrParamRequired("TrainingJobDefinition"))
7485	}
7486	if s.TrainingJobDefinition != nil {
7487		if err := s.TrainingJobDefinition.Validate(); err != nil {
7488			invalidParams.AddNested("TrainingJobDefinition", err.(request.ErrInvalidParams))
7489		}
7490	}
7491	if s.TransformJobDefinition != nil {
7492		if err := s.TransformJobDefinition.Validate(); err != nil {
7493			invalidParams.AddNested("TransformJobDefinition", err.(request.ErrInvalidParams))
7494		}
7495	}
7496
7497	if invalidParams.Len() > 0 {
7498		return invalidParams
7499	}
7500	return nil
7501}
7502
7503// SetProfileName sets the ProfileName field's value.
7504func (s *AlgorithmValidationProfile) SetProfileName(v string) *AlgorithmValidationProfile {
7505	s.ProfileName = &v
7506	return s
7507}
7508
7509// SetTrainingJobDefinition sets the TrainingJobDefinition field's value.
7510func (s *AlgorithmValidationProfile) SetTrainingJobDefinition(v *TrainingJobDefinition) *AlgorithmValidationProfile {
7511	s.TrainingJobDefinition = v
7512	return s
7513}
7514
7515// SetTransformJobDefinition sets the TransformJobDefinition field's value.
7516func (s *AlgorithmValidationProfile) SetTransformJobDefinition(v *TransformJobDefinition) *AlgorithmValidationProfile {
7517	s.TransformJobDefinition = v
7518	return s
7519}
7520
7521// Specifies configurations for one or more training jobs that Amazon SageMaker
7522// runs to test the algorithm.
7523type AlgorithmValidationSpecification struct {
7524	_ struct{} `type:"structure"`
7525
7526	// An array of AlgorithmValidationProfile objects, each of which specifies a
7527	// training job and batch transform job that Amazon SageMaker runs to validate
7528	// your algorithm.
7529	//
7530	// ValidationProfiles is a required field
7531	ValidationProfiles []*AlgorithmValidationProfile `min:"1" type:"list" required:"true"`
7532
7533	// The IAM roles that Amazon SageMaker uses to run the training jobs.
7534	//
7535	// ValidationRole is a required field
7536	ValidationRole *string `min:"20" type:"string" required:"true"`
7537}
7538
7539// String returns the string representation
7540func (s AlgorithmValidationSpecification) String() string {
7541	return awsutil.Prettify(s)
7542}
7543
7544// GoString returns the string representation
7545func (s AlgorithmValidationSpecification) GoString() string {
7546	return s.String()
7547}
7548
7549// Validate inspects the fields of the type to determine if they are valid.
7550func (s *AlgorithmValidationSpecification) Validate() error {
7551	invalidParams := request.ErrInvalidParams{Context: "AlgorithmValidationSpecification"}
7552	if s.ValidationProfiles == nil {
7553		invalidParams.Add(request.NewErrParamRequired("ValidationProfiles"))
7554	}
7555	if s.ValidationProfiles != nil && len(s.ValidationProfiles) < 1 {
7556		invalidParams.Add(request.NewErrParamMinLen("ValidationProfiles", 1))
7557	}
7558	if s.ValidationRole == nil {
7559		invalidParams.Add(request.NewErrParamRequired("ValidationRole"))
7560	}
7561	if s.ValidationRole != nil && len(*s.ValidationRole) < 20 {
7562		invalidParams.Add(request.NewErrParamMinLen("ValidationRole", 20))
7563	}
7564	if s.ValidationProfiles != nil {
7565		for i, v := range s.ValidationProfiles {
7566			if v == nil {
7567				continue
7568			}
7569			if err := v.Validate(); err != nil {
7570				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ValidationProfiles", i), err.(request.ErrInvalidParams))
7571			}
7572		}
7573	}
7574
7575	if invalidParams.Len() > 0 {
7576		return invalidParams
7577	}
7578	return nil
7579}
7580
7581// SetValidationProfiles sets the ValidationProfiles field's value.
7582func (s *AlgorithmValidationSpecification) SetValidationProfiles(v []*AlgorithmValidationProfile) *AlgorithmValidationSpecification {
7583	s.ValidationProfiles = v
7584	return s
7585}
7586
7587// SetValidationRole sets the ValidationRole field's value.
7588func (s *AlgorithmValidationSpecification) SetValidationRole(v string) *AlgorithmValidationSpecification {
7589	s.ValidationRole = &v
7590	return s
7591}
7592
7593// Configures how labels are consolidated across human workers.
7594type AnnotationConsolidationConfig struct {
7595	_ struct{} `type:"structure"`
7596
7597	// The Amazon Resource Name (ARN) of a Lambda function implements the logic
7598	// for annotation consolidation.
7599	//
7600	// For the built-in bounding box, image classification, semantic segmentation,
7601	// and text classification task types, Amazon SageMaker Ground Truth provides
7602	// the following Lambda functions:
7603	//
7604	//    * Bounding box - Finds the most similar boxes from different workers based
7605	//    on the Jaccard index of the boxes. arn:aws:lambda:us-east-1:432418664414:function:ACS-BoundingBox
7606	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-BoundingBox arn:aws:lambda:us-west-2:081040173940:function:ACS-BoundingBox
7607	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-BoundingBox arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-BoundingBox
7608	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-BoundingBox arn:aws:lambda:ap-south-1:565803892007:function:ACS-BoundingBox
7609	//    arn:aws:lambda:eu-central-1:203001061592:function:ACS-BoundingBox arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-BoundingBox
7610	//    arn:aws:lambda:eu-west-2:487402164563:function:ACS-BoundingBox arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-BoundingBox
7611	//    arn:aws:lambda:ca-central-1:918755190332:function:ACS-BoundingBox
7612	//
7613	//    * Image classification - Uses a variant of the Expectation Maximization
7614	//    approach to estimate the true class of an image based on annotations from
7615	//    individual workers. arn:aws:lambda:us-east-1:432418664414:function:ACS-ImageMultiClass
7616	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-ImageMultiClass arn:aws:lambda:us-west-2:081040173940:function:ACS-ImageMultiClass
7617	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-ImageMultiClass arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-ImageMultiClass
7618	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-ImageMultiClass
7619	//    arn:aws:lambda:ap-south-1:565803892007:function:ACS-ImageMultiClass arn:aws:lambda:eu-central-1:203001061592:function:ACS-ImageMultiClass
7620	//    arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-ImageMultiClass
7621	//    arn:aws:lambda:eu-west-2:487402164563:function:ACS-ImageMultiClass arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-ImageMultiClass
7622	//    arn:aws:lambda:ca-central-1:918755190332:function:ACS-ImageMultiClass
7623	//
7624	//    * Semantic segmentation - Treats each pixel in an image as a multi-class
7625	//    classification and treats pixel annotations from workers as "votes" for
7626	//    the correct label. arn:aws:lambda:us-east-1:432418664414:function:ACS-SemanticSegmentation
7627	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-SemanticSegmentation
7628	//    arn:aws:lambda:us-west-2:081040173940:function:ACS-SemanticSegmentation
7629	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-SemanticSegmentation
7630	//    arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-SemanticSegmentation
7631	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-SemanticSegmentation
7632	//    arn:aws:lambda:ap-south-1:565803892007:function:ACS-SemanticSegmentation
7633	//    arn:aws:lambda:eu-central-1:203001061592:function:ACS-SemanticSegmentation
7634	//    arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-SemanticSegmentation
7635	//    arn:aws:lambda:eu-west-2:487402164563:function:ACS-SemanticSegmentation
7636	//    arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-SemanticSegmentation
7637	//    arn:aws:lambda:ca-central-1:918755190332:function:ACS-SemanticSegmentation
7638	//
7639	//    * Text classification - Uses a variant of the Expectation Maximization
7640	//    approach to estimate the true class of text based on annotations from
7641	//    individual workers. arn:aws:lambda:us-east-1:432418664414:function:ACS-TextMultiClass
7642	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-TextMultiClass arn:aws:lambda:us-west-2:081040173940:function:ACS-TextMultiClass
7643	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-TextMultiClass arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-TextMultiClass
7644	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-TextMultiClass
7645	//    arn:aws:lambda:ap-south-1:565803892007:function:ACS-TextMultiClass arn:aws:lambda:eu-central-1:203001061592:function:ACS-TextMultiClass
7646	//    arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-TextMultiClass
7647	//    arn:aws:lambda:eu-west-2:487402164563:function:ACS-TextMultiClass arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-TextMultiClass
7648	//    arn:aws:lambda:ca-central-1:918755190332:function:ACS-TextMultiClass
7649	//
7650	//    * Named entity eecognition - Groups similar selections and calculates
7651	//    aggregate boundaries, resolving to most-assigned label. arn:aws:lambda:us-east-1:432418664414:function:ACS-NamedEntityRecognition
7652	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-NamedEntityRecognition
7653	//    arn:aws:lambda:us-west-2:081040173940:function:ACS-NamedEntityRecognition
7654	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-NamedEntityRecognition
7655	//    arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-NamedEntityRecognition
7656	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-NamedEntityRecognition
7657	//    arn:aws:lambda:ap-south-1:565803892007:function:ACS-NamedEntityRecognition
7658	//    arn:aws:lambda:eu-central-1:203001061592:function:ACS-NamedEntityRecognition
7659	//    arn:aws:lambda:ap-northeast-2:845288260483:function:ACS-NamedEntityRecognition
7660	//    arn:aws:lambda:eu-west-2:487402164563:function:ACS-NamedEntityRecognition
7661	//    arn:aws:lambda:ap-southeast-1:377565633583:function:ACS-NamedEntityRecognition
7662	//    arn:aws:lambda:ca-central-1:918755190332:function:ACS-NamedEntityRecognition
7663	//
7664	// For more information, see Annotation Consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html).
7665	//
7666	// AnnotationConsolidationLambdaArn is a required field
7667	AnnotationConsolidationLambdaArn *string `type:"string" required:"true"`
7668}
7669
7670// String returns the string representation
7671func (s AnnotationConsolidationConfig) String() string {
7672	return awsutil.Prettify(s)
7673}
7674
7675// GoString returns the string representation
7676func (s AnnotationConsolidationConfig) GoString() string {
7677	return s.String()
7678}
7679
7680// Validate inspects the fields of the type to determine if they are valid.
7681func (s *AnnotationConsolidationConfig) Validate() error {
7682	invalidParams := request.ErrInvalidParams{Context: "AnnotationConsolidationConfig"}
7683	if s.AnnotationConsolidationLambdaArn == nil {
7684		invalidParams.Add(request.NewErrParamRequired("AnnotationConsolidationLambdaArn"))
7685	}
7686
7687	if invalidParams.Len() > 0 {
7688		return invalidParams
7689	}
7690	return nil
7691}
7692
7693// SetAnnotationConsolidationLambdaArn sets the AnnotationConsolidationLambdaArn field's value.
7694func (s *AnnotationConsolidationConfig) SetAnnotationConsolidationLambdaArn(v string) *AnnotationConsolidationConfig {
7695	s.AnnotationConsolidationLambdaArn = &v
7696	return s
7697}
7698
7699// A list of categorical hyperparameters to tune.
7700type CategoricalParameterRange struct {
7701	_ struct{} `type:"structure"`
7702
7703	// The name of the categorical hyperparameter to tune.
7704	//
7705	// Name is a required field
7706	Name *string `type:"string" required:"true"`
7707
7708	// A list of the categories for the hyperparameter.
7709	//
7710	// Values is a required field
7711	Values []*string `min:"1" type:"list" required:"true"`
7712}
7713
7714// String returns the string representation
7715func (s CategoricalParameterRange) String() string {
7716	return awsutil.Prettify(s)
7717}
7718
7719// GoString returns the string representation
7720func (s CategoricalParameterRange) GoString() string {
7721	return s.String()
7722}
7723
7724// Validate inspects the fields of the type to determine if they are valid.
7725func (s *CategoricalParameterRange) Validate() error {
7726	invalidParams := request.ErrInvalidParams{Context: "CategoricalParameterRange"}
7727	if s.Name == nil {
7728		invalidParams.Add(request.NewErrParamRequired("Name"))
7729	}
7730	if s.Values == nil {
7731		invalidParams.Add(request.NewErrParamRequired("Values"))
7732	}
7733	if s.Values != nil && len(s.Values) < 1 {
7734		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
7735	}
7736
7737	if invalidParams.Len() > 0 {
7738		return invalidParams
7739	}
7740	return nil
7741}
7742
7743// SetName sets the Name field's value.
7744func (s *CategoricalParameterRange) SetName(v string) *CategoricalParameterRange {
7745	s.Name = &v
7746	return s
7747}
7748
7749// SetValues sets the Values field's value.
7750func (s *CategoricalParameterRange) SetValues(v []*string) *CategoricalParameterRange {
7751	s.Values = v
7752	return s
7753}
7754
7755// Defines the possible values for a categorical hyperparameter.
7756type CategoricalParameterRangeSpecification struct {
7757	_ struct{} `type:"structure"`
7758
7759	// The allowed categories for the hyperparameter.
7760	//
7761	// Values is a required field
7762	Values []*string `min:"1" type:"list" required:"true"`
7763}
7764
7765// String returns the string representation
7766func (s CategoricalParameterRangeSpecification) String() string {
7767	return awsutil.Prettify(s)
7768}
7769
7770// GoString returns the string representation
7771func (s CategoricalParameterRangeSpecification) GoString() string {
7772	return s.String()
7773}
7774
7775// Validate inspects the fields of the type to determine if they are valid.
7776func (s *CategoricalParameterRangeSpecification) Validate() error {
7777	invalidParams := request.ErrInvalidParams{Context: "CategoricalParameterRangeSpecification"}
7778	if s.Values == nil {
7779		invalidParams.Add(request.NewErrParamRequired("Values"))
7780	}
7781	if s.Values != nil && len(s.Values) < 1 {
7782		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
7783	}
7784
7785	if invalidParams.Len() > 0 {
7786		return invalidParams
7787	}
7788	return nil
7789}
7790
7791// SetValues sets the Values field's value.
7792func (s *CategoricalParameterRangeSpecification) SetValues(v []*string) *CategoricalParameterRangeSpecification {
7793	s.Values = v
7794	return s
7795}
7796
7797// A channel is a named input source that training algorithms can consume.
7798type Channel struct {
7799	_ struct{} `type:"structure"`
7800
7801	// The name of the channel.
7802	//
7803	// ChannelName is a required field
7804	ChannelName *string `min:"1" type:"string" required:"true"`
7805
7806	// If training data is compressed, the compression type. The default value is
7807	// None. CompressionType is used only in Pipe input mode. In File mode, leave
7808	// this field unset or set it to None.
7809	CompressionType *string `type:"string" enum:"CompressionType"`
7810
7811	// The MIME type of the data.
7812	ContentType *string `type:"string"`
7813
7814	// The location of the channel data.
7815	//
7816	// DataSource is a required field
7817	DataSource *DataSource `type:"structure" required:"true"`
7818
7819	// (Optional) The input mode to use for the data channel in a training job.
7820	// If you don't set a value for InputMode, Amazon SageMaker uses the value set
7821	// for TrainingInputMode. Use this parameter to override the TrainingInputMode
7822	// setting in a AlgorithmSpecification request when you have a channel that
7823	// needs a different input mode from the training job's general setting. To
7824	// download the data from Amazon Simple Storage Service (Amazon S3) to the provisioned
7825	// ML storage volume, and mount the directory to a Docker volume, use File input
7826	// mode. To stream data directly from Amazon S3 to the container, choose Pipe
7827	// input mode.
7828	//
7829	// To use a model for incremental training, choose File input model.
7830	InputMode *string `type:"string" enum:"TrainingInputMode"`
7831
7832	// Specify RecordIO as the value when input data is in raw format but the training
7833	// algorithm requires the RecordIO format. In this case, Amazon SageMaker wraps
7834	// each individual S3 object in a RecordIO record. If the input data is already
7835	// in RecordIO format, you don't need to set this attribute. For more information,
7836	// see Create a Dataset Using RecordIO (https://mxnet.incubator.apache.org/architecture/note_data_loading.html#data-format).
7837	//
7838	// In File mode, leave this field unset or set it to None.
7839	RecordWrapperType *string `type:"string" enum:"RecordWrapper"`
7840
7841	// A configuration for a shuffle option for input data in a channel. If you
7842	// use S3Prefix for S3DataType, this shuffles the results of the S3 key prefix
7843	// matches. If you use ManifestFile, the order of the S3 object references in
7844	// the ManifestFile is shuffled. If you use AugmentedManifestFile, the order
7845	// of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling
7846	// order is determined using the Seed value.
7847	//
7848	// For Pipe input mode, shuffling is done at the start of every epoch. With
7849	// large datasets this ensures that the order of the training data is different
7850	// for each epoch, it helps reduce bias and possible overfitting. In a multi-node
7851	// training job when ShuffleConfig is combined with S3DataDistributionType of
7852	// ShardedByS3Key, the data is shuffled across nodes so that the content sent
7853	// to a particular node on the first epoch might be sent to a different node
7854	// on the second epoch.
7855	ShuffleConfig *ShuffleConfig `type:"structure"`
7856}
7857
7858// String returns the string representation
7859func (s Channel) String() string {
7860	return awsutil.Prettify(s)
7861}
7862
7863// GoString returns the string representation
7864func (s Channel) GoString() string {
7865	return s.String()
7866}
7867
7868// Validate inspects the fields of the type to determine if they are valid.
7869func (s *Channel) Validate() error {
7870	invalidParams := request.ErrInvalidParams{Context: "Channel"}
7871	if s.ChannelName == nil {
7872		invalidParams.Add(request.NewErrParamRequired("ChannelName"))
7873	}
7874	if s.ChannelName != nil && len(*s.ChannelName) < 1 {
7875		invalidParams.Add(request.NewErrParamMinLen("ChannelName", 1))
7876	}
7877	if s.DataSource == nil {
7878		invalidParams.Add(request.NewErrParamRequired("DataSource"))
7879	}
7880	if s.DataSource != nil {
7881		if err := s.DataSource.Validate(); err != nil {
7882			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
7883		}
7884	}
7885	if s.ShuffleConfig != nil {
7886		if err := s.ShuffleConfig.Validate(); err != nil {
7887			invalidParams.AddNested("ShuffleConfig", err.(request.ErrInvalidParams))
7888		}
7889	}
7890
7891	if invalidParams.Len() > 0 {
7892		return invalidParams
7893	}
7894	return nil
7895}
7896
7897// SetChannelName sets the ChannelName field's value.
7898func (s *Channel) SetChannelName(v string) *Channel {
7899	s.ChannelName = &v
7900	return s
7901}
7902
7903// SetCompressionType sets the CompressionType field's value.
7904func (s *Channel) SetCompressionType(v string) *Channel {
7905	s.CompressionType = &v
7906	return s
7907}
7908
7909// SetContentType sets the ContentType field's value.
7910func (s *Channel) SetContentType(v string) *Channel {
7911	s.ContentType = &v
7912	return s
7913}
7914
7915// SetDataSource sets the DataSource field's value.
7916func (s *Channel) SetDataSource(v *DataSource) *Channel {
7917	s.DataSource = v
7918	return s
7919}
7920
7921// SetInputMode sets the InputMode field's value.
7922func (s *Channel) SetInputMode(v string) *Channel {
7923	s.InputMode = &v
7924	return s
7925}
7926
7927// SetRecordWrapperType sets the RecordWrapperType field's value.
7928func (s *Channel) SetRecordWrapperType(v string) *Channel {
7929	s.RecordWrapperType = &v
7930	return s
7931}
7932
7933// SetShuffleConfig sets the ShuffleConfig field's value.
7934func (s *Channel) SetShuffleConfig(v *ShuffleConfig) *Channel {
7935	s.ShuffleConfig = v
7936	return s
7937}
7938
7939// Defines a named input source, called a channel, to be used by an algorithm.
7940type ChannelSpecification struct {
7941	_ struct{} `type:"structure"`
7942
7943	// A brief description of the channel.
7944	Description *string `type:"string"`
7945
7946	// Indicates whether the channel is required by the algorithm.
7947	IsRequired *bool `type:"boolean"`
7948
7949	// The name of the channel.
7950	//
7951	// Name is a required field
7952	Name *string `min:"1" type:"string" required:"true"`
7953
7954	// The allowed compression types, if data compression is used.
7955	SupportedCompressionTypes []*string `type:"list"`
7956
7957	// The supported MIME types for the data.
7958	//
7959	// SupportedContentTypes is a required field
7960	SupportedContentTypes []*string `type:"list" required:"true"`
7961
7962	// The allowed input mode, either FILE or PIPE.
7963	//
7964	// In FILE mode, Amazon SageMaker copies the data from the input source onto
7965	// the local Amazon Elastic Block Store (Amazon EBS) volumes before starting
7966	// your training algorithm. This is the most commonly used input mode.
7967	//
7968	// In PIPE mode, Amazon SageMaker streams input data from the source directly
7969	// to your algorithm without using the EBS volume.
7970	//
7971	// SupportedInputModes is a required field
7972	SupportedInputModes []*string `min:"1" type:"list" required:"true"`
7973}
7974
7975// String returns the string representation
7976func (s ChannelSpecification) String() string {
7977	return awsutil.Prettify(s)
7978}
7979
7980// GoString returns the string representation
7981func (s ChannelSpecification) GoString() string {
7982	return s.String()
7983}
7984
7985// Validate inspects the fields of the type to determine if they are valid.
7986func (s *ChannelSpecification) Validate() error {
7987	invalidParams := request.ErrInvalidParams{Context: "ChannelSpecification"}
7988	if s.Name == nil {
7989		invalidParams.Add(request.NewErrParamRequired("Name"))
7990	}
7991	if s.Name != nil && len(*s.Name) < 1 {
7992		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7993	}
7994	if s.SupportedContentTypes == nil {
7995		invalidParams.Add(request.NewErrParamRequired("SupportedContentTypes"))
7996	}
7997	if s.SupportedInputModes == nil {
7998		invalidParams.Add(request.NewErrParamRequired("SupportedInputModes"))
7999	}
8000	if s.SupportedInputModes != nil && len(s.SupportedInputModes) < 1 {
8001		invalidParams.Add(request.NewErrParamMinLen("SupportedInputModes", 1))
8002	}
8003
8004	if invalidParams.Len() > 0 {
8005		return invalidParams
8006	}
8007	return nil
8008}
8009
8010// SetDescription sets the Description field's value.
8011func (s *ChannelSpecification) SetDescription(v string) *ChannelSpecification {
8012	s.Description = &v
8013	return s
8014}
8015
8016// SetIsRequired sets the IsRequired field's value.
8017func (s *ChannelSpecification) SetIsRequired(v bool) *ChannelSpecification {
8018	s.IsRequired = &v
8019	return s
8020}
8021
8022// SetName sets the Name field's value.
8023func (s *ChannelSpecification) SetName(v string) *ChannelSpecification {
8024	s.Name = &v
8025	return s
8026}
8027
8028// SetSupportedCompressionTypes sets the SupportedCompressionTypes field's value.
8029func (s *ChannelSpecification) SetSupportedCompressionTypes(v []*string) *ChannelSpecification {
8030	s.SupportedCompressionTypes = v
8031	return s
8032}
8033
8034// SetSupportedContentTypes sets the SupportedContentTypes field's value.
8035func (s *ChannelSpecification) SetSupportedContentTypes(v []*string) *ChannelSpecification {
8036	s.SupportedContentTypes = v
8037	return s
8038}
8039
8040// SetSupportedInputModes sets the SupportedInputModes field's value.
8041func (s *ChannelSpecification) SetSupportedInputModes(v []*string) *ChannelSpecification {
8042	s.SupportedInputModes = v
8043	return s
8044}
8045
8046// Contains information about the output location for managed spot training
8047// checkpoint data.
8048type CheckpointConfig struct {
8049	_ struct{} `type:"structure"`
8050
8051	// (Optional) The local directory where checkpoints are written. The default
8052	// directory is /opt/ml/checkpoints/.
8053	LocalPath *string `type:"string"`
8054
8055	// Identifies the S3 path where you want Amazon SageMaker to store checkpoints.
8056	// For example, s3://bucket-name/key-name-prefix.
8057	//
8058	// S3Uri is a required field
8059	S3Uri *string `type:"string" required:"true"`
8060}
8061
8062// String returns the string representation
8063func (s CheckpointConfig) String() string {
8064	return awsutil.Prettify(s)
8065}
8066
8067// GoString returns the string representation
8068func (s CheckpointConfig) GoString() string {
8069	return s.String()
8070}
8071
8072// Validate inspects the fields of the type to determine if they are valid.
8073func (s *CheckpointConfig) Validate() error {
8074	invalidParams := request.ErrInvalidParams{Context: "CheckpointConfig"}
8075	if s.S3Uri == nil {
8076		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
8077	}
8078
8079	if invalidParams.Len() > 0 {
8080		return invalidParams
8081	}
8082	return nil
8083}
8084
8085// SetLocalPath sets the LocalPath field's value.
8086func (s *CheckpointConfig) SetLocalPath(v string) *CheckpointConfig {
8087	s.LocalPath = &v
8088	return s
8089}
8090
8091// SetS3Uri sets the S3Uri field's value.
8092func (s *CheckpointConfig) SetS3Uri(v string) *CheckpointConfig {
8093	s.S3Uri = &v
8094	return s
8095}
8096
8097// Specifies summary information about a Git repository.
8098type CodeRepositorySummary struct {
8099	_ struct{} `type:"structure"`
8100
8101	// The Amazon Resource Name (ARN) of the Git repository.
8102	//
8103	// CodeRepositoryArn is a required field
8104	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
8105
8106	// The name of the Git repository.
8107	//
8108	// CodeRepositoryName is a required field
8109	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
8110
8111	// The date and time that the Git repository was created.
8112	//
8113	// CreationTime is a required field
8114	CreationTime *time.Time `type:"timestamp" required:"true"`
8115
8116	// Configuration details for the Git repository, including the URL where it
8117	// is located and the ARN of the AWS Secrets Manager secret that contains the
8118	// credentials used to access the repository.
8119	GitConfig *GitConfig `type:"structure"`
8120
8121	// The date and time that the Git repository was last modified.
8122	//
8123	// LastModifiedTime is a required field
8124	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
8125}
8126
8127// String returns the string representation
8128func (s CodeRepositorySummary) String() string {
8129	return awsutil.Prettify(s)
8130}
8131
8132// GoString returns the string representation
8133func (s CodeRepositorySummary) GoString() string {
8134	return s.String()
8135}
8136
8137// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
8138func (s *CodeRepositorySummary) SetCodeRepositoryArn(v string) *CodeRepositorySummary {
8139	s.CodeRepositoryArn = &v
8140	return s
8141}
8142
8143// SetCodeRepositoryName sets the CodeRepositoryName field's value.
8144func (s *CodeRepositorySummary) SetCodeRepositoryName(v string) *CodeRepositorySummary {
8145	s.CodeRepositoryName = &v
8146	return s
8147}
8148
8149// SetCreationTime sets the CreationTime field's value.
8150func (s *CodeRepositorySummary) SetCreationTime(v time.Time) *CodeRepositorySummary {
8151	s.CreationTime = &v
8152	return s
8153}
8154
8155// SetGitConfig sets the GitConfig field's value.
8156func (s *CodeRepositorySummary) SetGitConfig(v *GitConfig) *CodeRepositorySummary {
8157	s.GitConfig = v
8158	return s
8159}
8160
8161// SetLastModifiedTime sets the LastModifiedTime field's value.
8162func (s *CodeRepositorySummary) SetLastModifiedTime(v time.Time) *CodeRepositorySummary {
8163	s.LastModifiedTime = &v
8164	return s
8165}
8166
8167// Identifies a Amazon Cognito user group. A user group can be used in on or
8168// more work teams.
8169type CognitoMemberDefinition struct {
8170	_ struct{} `type:"structure"`
8171
8172	// An identifier for an application client. You must create the app client ID
8173	// using Amazon Cognito.
8174	//
8175	// ClientId is a required field
8176	ClientId *string `min:"1" type:"string" required:"true"`
8177
8178	// An identifier for a user group.
8179	//
8180	// UserGroup is a required field
8181	UserGroup *string `min:"1" type:"string" required:"true"`
8182
8183	// An identifier for a user pool. The user pool must be in the same region as
8184	// the service that you are calling.
8185	//
8186	// UserPool is a required field
8187	UserPool *string `min:"1" type:"string" required:"true"`
8188}
8189
8190// String returns the string representation
8191func (s CognitoMemberDefinition) String() string {
8192	return awsutil.Prettify(s)
8193}
8194
8195// GoString returns the string representation
8196func (s CognitoMemberDefinition) GoString() string {
8197	return s.String()
8198}
8199
8200// Validate inspects the fields of the type to determine if they are valid.
8201func (s *CognitoMemberDefinition) Validate() error {
8202	invalidParams := request.ErrInvalidParams{Context: "CognitoMemberDefinition"}
8203	if s.ClientId == nil {
8204		invalidParams.Add(request.NewErrParamRequired("ClientId"))
8205	}
8206	if s.ClientId != nil && len(*s.ClientId) < 1 {
8207		invalidParams.Add(request.NewErrParamMinLen("ClientId", 1))
8208	}
8209	if s.UserGroup == nil {
8210		invalidParams.Add(request.NewErrParamRequired("UserGroup"))
8211	}
8212	if s.UserGroup != nil && len(*s.UserGroup) < 1 {
8213		invalidParams.Add(request.NewErrParamMinLen("UserGroup", 1))
8214	}
8215	if s.UserPool == nil {
8216		invalidParams.Add(request.NewErrParamRequired("UserPool"))
8217	}
8218	if s.UserPool != nil && len(*s.UserPool) < 1 {
8219		invalidParams.Add(request.NewErrParamMinLen("UserPool", 1))
8220	}
8221
8222	if invalidParams.Len() > 0 {
8223		return invalidParams
8224	}
8225	return nil
8226}
8227
8228// SetClientId sets the ClientId field's value.
8229func (s *CognitoMemberDefinition) SetClientId(v string) *CognitoMemberDefinition {
8230	s.ClientId = &v
8231	return s
8232}
8233
8234// SetUserGroup sets the UserGroup field's value.
8235func (s *CognitoMemberDefinition) SetUserGroup(v string) *CognitoMemberDefinition {
8236	s.UserGroup = &v
8237	return s
8238}
8239
8240// SetUserPool sets the UserPool field's value.
8241func (s *CognitoMemberDefinition) SetUserPool(v string) *CognitoMemberDefinition {
8242	s.UserPool = &v
8243	return s
8244}
8245
8246// A summary of a model compilation job.
8247type CompilationJobSummary struct {
8248	_ struct{} `type:"structure"`
8249
8250	// The time when the model compilation job completed.
8251	CompilationEndTime *time.Time `type:"timestamp"`
8252
8253	// The Amazon Resource Name (ARN) of the model compilation job.
8254	//
8255	// CompilationJobArn is a required field
8256	CompilationJobArn *string `type:"string" required:"true"`
8257
8258	// The name of the model compilation job that you want a summary for.
8259	//
8260	// CompilationJobName is a required field
8261	CompilationJobName *string `min:"1" type:"string" required:"true"`
8262
8263	// The status of the model compilation job.
8264	//
8265	// CompilationJobStatus is a required field
8266	CompilationJobStatus *string `type:"string" required:"true" enum:"CompilationJobStatus"`
8267
8268	// The time when the model compilation job started.
8269	CompilationStartTime *time.Time `type:"timestamp"`
8270
8271	// The type of device that the model will run on after compilation has completed.
8272	//
8273	// CompilationTargetDevice is a required field
8274	CompilationTargetDevice *string `type:"string" required:"true" enum:"TargetDevice"`
8275
8276	// The time when the model compilation job was created.
8277	//
8278	// CreationTime is a required field
8279	CreationTime *time.Time `type:"timestamp" required:"true"`
8280
8281	// The time when the model compilation job was last modified.
8282	LastModifiedTime *time.Time `type:"timestamp"`
8283}
8284
8285// String returns the string representation
8286func (s CompilationJobSummary) String() string {
8287	return awsutil.Prettify(s)
8288}
8289
8290// GoString returns the string representation
8291func (s CompilationJobSummary) GoString() string {
8292	return s.String()
8293}
8294
8295// SetCompilationEndTime sets the CompilationEndTime field's value.
8296func (s *CompilationJobSummary) SetCompilationEndTime(v time.Time) *CompilationJobSummary {
8297	s.CompilationEndTime = &v
8298	return s
8299}
8300
8301// SetCompilationJobArn sets the CompilationJobArn field's value.
8302func (s *CompilationJobSummary) SetCompilationJobArn(v string) *CompilationJobSummary {
8303	s.CompilationJobArn = &v
8304	return s
8305}
8306
8307// SetCompilationJobName sets the CompilationJobName field's value.
8308func (s *CompilationJobSummary) SetCompilationJobName(v string) *CompilationJobSummary {
8309	s.CompilationJobName = &v
8310	return s
8311}
8312
8313// SetCompilationJobStatus sets the CompilationJobStatus field's value.
8314func (s *CompilationJobSummary) SetCompilationJobStatus(v string) *CompilationJobSummary {
8315	s.CompilationJobStatus = &v
8316	return s
8317}
8318
8319// SetCompilationStartTime sets the CompilationStartTime field's value.
8320func (s *CompilationJobSummary) SetCompilationStartTime(v time.Time) *CompilationJobSummary {
8321	s.CompilationStartTime = &v
8322	return s
8323}
8324
8325// SetCompilationTargetDevice sets the CompilationTargetDevice field's value.
8326func (s *CompilationJobSummary) SetCompilationTargetDevice(v string) *CompilationJobSummary {
8327	s.CompilationTargetDevice = &v
8328	return s
8329}
8330
8331// SetCreationTime sets the CreationTime field's value.
8332func (s *CompilationJobSummary) SetCreationTime(v time.Time) *CompilationJobSummary {
8333	s.CreationTime = &v
8334	return s
8335}
8336
8337// SetLastModifiedTime sets the LastModifiedTime field's value.
8338func (s *CompilationJobSummary) SetLastModifiedTime(v time.Time) *CompilationJobSummary {
8339	s.LastModifiedTime = &v
8340	return s
8341}
8342
8343// Describes the container, as part of model definition.
8344type ContainerDefinition struct {
8345	_ struct{} `type:"structure"`
8346
8347	// This parameter is ignored for models that contain only a PrimaryContainer.
8348	//
8349	// When a ContainerDefinition is part of an inference pipeline, the value of
8350	// ths parameter uniquely identifies the container for the purposes of logging
8351	// and metrics. For information, see Use Logs and Metrics to Monitor an Inference
8352	// Pipeline (https://docs.aws.amazon.com/sagemaker/latest/dg/inference-pipeline-logs-metrics.html).
8353	// If you don't specify a value for this parameter for a ContainerDefinition
8354	// that is part of an inference pipeline, a unique name is automatically assigned
8355	// based on the position of the ContainerDefinition in the pipeline. If you
8356	// specify a value for the ContainerHostName for any ContainerDefinition that
8357	// is part of an inference pipeline, you must specify a value for the ContainerHostName
8358	// parameter of every ContainerDefinition in that pipeline.
8359	ContainerHostname *string `type:"string"`
8360
8361	// The environment variables to set in the Docker container. Each key and value
8362	// in the Environment string to string map can have length of up to 1024. We
8363	// support up to 16 entries in the map.
8364	Environment map[string]*string `type:"map"`
8365
8366	// The Amazon EC2 Container Registry (Amazon ECR) path where inference code
8367	// is stored. If you are using your own custom algorithm instead of an algorithm
8368	// provided by Amazon SageMaker, the inference code must meet Amazon SageMaker
8369	// requirements. Amazon SageMaker supports both registry/repository[:tag] and
8370	// registry/repository[@digest] image path formats. For more information, see
8371	// Using Your Own Algorithms with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html)
8372	Image *string `type:"string"`
8373
8374	// The S3 path where the model artifacts, which result from model training,
8375	// are stored. This path must point to a single gzip compressed tar archive
8376	// (.tar.gz suffix). The S3 path is required for Amazon SageMaker built-in algorithms,
8377	// but not if you use your own algorithms. For more information on built-in
8378	// algorithms, see Common Parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html).
8379	//
8380	// If you provide a value for this parameter, Amazon SageMaker uses AWS Security
8381	// Token Service to download model artifacts from the S3 path you provide. AWS
8382	// STS is activated in your IAM user account by default. If you previously deactivated
8383	// AWS STS for a region, you need to reactivate AWS STS for that region. For
8384	// more information, see Activating and Deactivating AWS STS in an AWS Region
8385	// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)
8386	// in the AWS Identity and Access Management User Guide.
8387	//
8388	// If you use a built-in algorithm to create a model, Amazon SageMaker requires
8389	// that you provide a S3 path to the model artifacts in ModelDataUrl.
8390	ModelDataUrl *string `type:"string"`
8391
8392	// The name or Amazon Resource Name (ARN) of the model package to use to create
8393	// the model.
8394	ModelPackageName *string `min:"1" type:"string"`
8395}
8396
8397// String returns the string representation
8398func (s ContainerDefinition) String() string {
8399	return awsutil.Prettify(s)
8400}
8401
8402// GoString returns the string representation
8403func (s ContainerDefinition) GoString() string {
8404	return s.String()
8405}
8406
8407// Validate inspects the fields of the type to determine if they are valid.
8408func (s *ContainerDefinition) Validate() error {
8409	invalidParams := request.ErrInvalidParams{Context: "ContainerDefinition"}
8410	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
8411		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
8412	}
8413
8414	if invalidParams.Len() > 0 {
8415		return invalidParams
8416	}
8417	return nil
8418}
8419
8420// SetContainerHostname sets the ContainerHostname field's value.
8421func (s *ContainerDefinition) SetContainerHostname(v string) *ContainerDefinition {
8422	s.ContainerHostname = &v
8423	return s
8424}
8425
8426// SetEnvironment sets the Environment field's value.
8427func (s *ContainerDefinition) SetEnvironment(v map[string]*string) *ContainerDefinition {
8428	s.Environment = v
8429	return s
8430}
8431
8432// SetImage sets the Image field's value.
8433func (s *ContainerDefinition) SetImage(v string) *ContainerDefinition {
8434	s.Image = &v
8435	return s
8436}
8437
8438// SetModelDataUrl sets the ModelDataUrl field's value.
8439func (s *ContainerDefinition) SetModelDataUrl(v string) *ContainerDefinition {
8440	s.ModelDataUrl = &v
8441	return s
8442}
8443
8444// SetModelPackageName sets the ModelPackageName field's value.
8445func (s *ContainerDefinition) SetModelPackageName(v string) *ContainerDefinition {
8446	s.ModelPackageName = &v
8447	return s
8448}
8449
8450// A list of continuous hyperparameters to tune.
8451type ContinuousParameterRange struct {
8452	_ struct{} `type:"structure"`
8453
8454	// The maximum value for the hyperparameter. The tuning job uses floating-point
8455	// values between MinValue value and this value for tuning.
8456	//
8457	// MaxValue is a required field
8458	MaxValue *string `type:"string" required:"true"`
8459
8460	// The minimum value for the hyperparameter. The tuning job uses floating-point
8461	// values between this value and MaxValuefor tuning.
8462	//
8463	// MinValue is a required field
8464	MinValue *string `type:"string" required:"true"`
8465
8466	// The name of the continuous hyperparameter to tune.
8467	//
8468	// Name is a required field
8469	Name *string `type:"string" required:"true"`
8470
8471	// The scale that hyperparameter tuning uses to search the hyperparameter range.
8472	// For information about choosing a hyperparameter scale, see Hyperparameter
8473	// Scaling (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
8474	// One of the following values:
8475	//
8476	// Auto
8477	//
8478	// Amazon SageMaker hyperparameter tuning chooses the best scale for the hyperparameter.
8479	//
8480	// Linear
8481	//
8482	// Hyperparameter tuning searches the values in the hyperparameter range by
8483	// using a linear scale.
8484	//
8485	// Logarithmic
8486	//
8487	// Hyperparameter tuning searches the values in the hyperparameter range by
8488	// using a logarithmic scale.
8489	//
8490	// Logarithmic scaling works only for ranges that have only values greater than
8491	// 0.
8492	//
8493	// ReverseLogarithmic
8494	//
8495	// Hyperparemeter tuning searches the values in the hyperparameter range by
8496	// using a reverse logarithmic scale.
8497	//
8498	// Reverse logarithmic scaling works only for ranges that are entirely within
8499	// the range 0<=x<1.0.
8500	ScalingType *string `type:"string" enum:"HyperParameterScalingType"`
8501}
8502
8503// String returns the string representation
8504func (s ContinuousParameterRange) String() string {
8505	return awsutil.Prettify(s)
8506}
8507
8508// GoString returns the string representation
8509func (s ContinuousParameterRange) GoString() string {
8510	return s.String()
8511}
8512
8513// Validate inspects the fields of the type to determine if they are valid.
8514func (s *ContinuousParameterRange) Validate() error {
8515	invalidParams := request.ErrInvalidParams{Context: "ContinuousParameterRange"}
8516	if s.MaxValue == nil {
8517		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
8518	}
8519	if s.MinValue == nil {
8520		invalidParams.Add(request.NewErrParamRequired("MinValue"))
8521	}
8522	if s.Name == nil {
8523		invalidParams.Add(request.NewErrParamRequired("Name"))
8524	}
8525
8526	if invalidParams.Len() > 0 {
8527		return invalidParams
8528	}
8529	return nil
8530}
8531
8532// SetMaxValue sets the MaxValue field's value.
8533func (s *ContinuousParameterRange) SetMaxValue(v string) *ContinuousParameterRange {
8534	s.MaxValue = &v
8535	return s
8536}
8537
8538// SetMinValue sets the MinValue field's value.
8539func (s *ContinuousParameterRange) SetMinValue(v string) *ContinuousParameterRange {
8540	s.MinValue = &v
8541	return s
8542}
8543
8544// SetName sets the Name field's value.
8545func (s *ContinuousParameterRange) SetName(v string) *ContinuousParameterRange {
8546	s.Name = &v
8547	return s
8548}
8549
8550// SetScalingType sets the ScalingType field's value.
8551func (s *ContinuousParameterRange) SetScalingType(v string) *ContinuousParameterRange {
8552	s.ScalingType = &v
8553	return s
8554}
8555
8556// Defines the possible values for a continuous hyperparameter.
8557type ContinuousParameterRangeSpecification struct {
8558	_ struct{} `type:"structure"`
8559
8560	// The maximum floating-point value allowed.
8561	//
8562	// MaxValue is a required field
8563	MaxValue *string `type:"string" required:"true"`
8564
8565	// The minimum floating-point value allowed.
8566	//
8567	// MinValue is a required field
8568	MinValue *string `type:"string" required:"true"`
8569}
8570
8571// String returns the string representation
8572func (s ContinuousParameterRangeSpecification) String() string {
8573	return awsutil.Prettify(s)
8574}
8575
8576// GoString returns the string representation
8577func (s ContinuousParameterRangeSpecification) GoString() string {
8578	return s.String()
8579}
8580
8581// Validate inspects the fields of the type to determine if they are valid.
8582func (s *ContinuousParameterRangeSpecification) Validate() error {
8583	invalidParams := request.ErrInvalidParams{Context: "ContinuousParameterRangeSpecification"}
8584	if s.MaxValue == nil {
8585		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
8586	}
8587	if s.MinValue == nil {
8588		invalidParams.Add(request.NewErrParamRequired("MinValue"))
8589	}
8590
8591	if invalidParams.Len() > 0 {
8592		return invalidParams
8593	}
8594	return nil
8595}
8596
8597// SetMaxValue sets the MaxValue field's value.
8598func (s *ContinuousParameterRangeSpecification) SetMaxValue(v string) *ContinuousParameterRangeSpecification {
8599	s.MaxValue = &v
8600	return s
8601}
8602
8603// SetMinValue sets the MinValue field's value.
8604func (s *ContinuousParameterRangeSpecification) SetMinValue(v string) *ContinuousParameterRangeSpecification {
8605	s.MinValue = &v
8606	return s
8607}
8608
8609type CreateAlgorithmInput struct {
8610	_ struct{} `type:"structure"`
8611
8612	// A description of the algorithm.
8613	AlgorithmDescription *string `type:"string"`
8614
8615	// The name of the algorithm.
8616	//
8617	// AlgorithmName is a required field
8618	AlgorithmName *string `min:"1" type:"string" required:"true"`
8619
8620	// Whether to certify the algorithm so that it can be listed in AWS Marketplace.
8621	CertifyForMarketplace *bool `type:"boolean"`
8622
8623	// Specifies details about inference jobs that the algorithm runs, including
8624	// the following:
8625	//
8626	//    * The Amazon ECR paths of containers that contain the inference code and
8627	//    model artifacts.
8628	//
8629	//    * The instance types that the algorithm supports for transform jobs and
8630	//    real-time endpoints used for inference.
8631	//
8632	//    * The input and output content formats that the algorithm supports for
8633	//    inference.
8634	InferenceSpecification *InferenceSpecification `type:"structure"`
8635
8636	// Specifies details about training jobs run by this algorithm, including the
8637	// following:
8638	//
8639	//    * The Amazon ECR path of the container and the version digest of the algorithm.
8640	//
8641	//    * The hyperparameters that the algorithm supports.
8642	//
8643	//    * The instance types that the algorithm supports for training.
8644	//
8645	//    * Whether the algorithm supports distributed training.
8646	//
8647	//    * The metrics that the algorithm emits to Amazon CloudWatch.
8648	//
8649	//    * Which metrics that the algorithm emits can be used as the objective
8650	//    metric for hyperparameter tuning jobs.
8651	//
8652	//    * The input channels that the algorithm supports for training data. For
8653	//    example, an algorithm might support train, validation, and test channels.
8654	//
8655	// TrainingSpecification is a required field
8656	TrainingSpecification *TrainingSpecification `type:"structure" required:"true"`
8657
8658	// Specifies configurations for one or more training jobs and that Amazon SageMaker
8659	// runs to test the algorithm's training code and, optionally, one or more batch
8660	// transform jobs that Amazon SageMaker runs to test the algorithm's inference
8661	// code.
8662	ValidationSpecification *AlgorithmValidationSpecification `type:"structure"`
8663}
8664
8665// String returns the string representation
8666func (s CreateAlgorithmInput) String() string {
8667	return awsutil.Prettify(s)
8668}
8669
8670// GoString returns the string representation
8671func (s CreateAlgorithmInput) GoString() string {
8672	return s.String()
8673}
8674
8675// Validate inspects the fields of the type to determine if they are valid.
8676func (s *CreateAlgorithmInput) Validate() error {
8677	invalidParams := request.ErrInvalidParams{Context: "CreateAlgorithmInput"}
8678	if s.AlgorithmName == nil {
8679		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
8680	}
8681	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
8682		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
8683	}
8684	if s.TrainingSpecification == nil {
8685		invalidParams.Add(request.NewErrParamRequired("TrainingSpecification"))
8686	}
8687	if s.InferenceSpecification != nil {
8688		if err := s.InferenceSpecification.Validate(); err != nil {
8689			invalidParams.AddNested("InferenceSpecification", err.(request.ErrInvalidParams))
8690		}
8691	}
8692	if s.TrainingSpecification != nil {
8693		if err := s.TrainingSpecification.Validate(); err != nil {
8694			invalidParams.AddNested("TrainingSpecification", err.(request.ErrInvalidParams))
8695		}
8696	}
8697	if s.ValidationSpecification != nil {
8698		if err := s.ValidationSpecification.Validate(); err != nil {
8699			invalidParams.AddNested("ValidationSpecification", err.(request.ErrInvalidParams))
8700		}
8701	}
8702
8703	if invalidParams.Len() > 0 {
8704		return invalidParams
8705	}
8706	return nil
8707}
8708
8709// SetAlgorithmDescription sets the AlgorithmDescription field's value.
8710func (s *CreateAlgorithmInput) SetAlgorithmDescription(v string) *CreateAlgorithmInput {
8711	s.AlgorithmDescription = &v
8712	return s
8713}
8714
8715// SetAlgorithmName sets the AlgorithmName field's value.
8716func (s *CreateAlgorithmInput) SetAlgorithmName(v string) *CreateAlgorithmInput {
8717	s.AlgorithmName = &v
8718	return s
8719}
8720
8721// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
8722func (s *CreateAlgorithmInput) SetCertifyForMarketplace(v bool) *CreateAlgorithmInput {
8723	s.CertifyForMarketplace = &v
8724	return s
8725}
8726
8727// SetInferenceSpecification sets the InferenceSpecification field's value.
8728func (s *CreateAlgorithmInput) SetInferenceSpecification(v *InferenceSpecification) *CreateAlgorithmInput {
8729	s.InferenceSpecification = v
8730	return s
8731}
8732
8733// SetTrainingSpecification sets the TrainingSpecification field's value.
8734func (s *CreateAlgorithmInput) SetTrainingSpecification(v *TrainingSpecification) *CreateAlgorithmInput {
8735	s.TrainingSpecification = v
8736	return s
8737}
8738
8739// SetValidationSpecification sets the ValidationSpecification field's value.
8740func (s *CreateAlgorithmInput) SetValidationSpecification(v *AlgorithmValidationSpecification) *CreateAlgorithmInput {
8741	s.ValidationSpecification = v
8742	return s
8743}
8744
8745type CreateAlgorithmOutput struct {
8746	_ struct{} `type:"structure"`
8747
8748	// The Amazon Resource Name (ARN) of the new algorithm.
8749	//
8750	// AlgorithmArn is a required field
8751	AlgorithmArn *string `min:"1" type:"string" required:"true"`
8752}
8753
8754// String returns the string representation
8755func (s CreateAlgorithmOutput) String() string {
8756	return awsutil.Prettify(s)
8757}
8758
8759// GoString returns the string representation
8760func (s CreateAlgorithmOutput) GoString() string {
8761	return s.String()
8762}
8763
8764// SetAlgorithmArn sets the AlgorithmArn field's value.
8765func (s *CreateAlgorithmOutput) SetAlgorithmArn(v string) *CreateAlgorithmOutput {
8766	s.AlgorithmArn = &v
8767	return s
8768}
8769
8770type CreateCodeRepositoryInput struct {
8771	_ struct{} `type:"structure"`
8772
8773	// The name of the Git repository. The name must have 1 to 63 characters. Valid
8774	// characters are a-z, A-Z, 0-9, and - (hyphen).
8775	//
8776	// CodeRepositoryName is a required field
8777	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
8778
8779	// Specifies details about the repository, including the URL where the repository
8780	// is located, the default branch, and credentials to use to access the repository.
8781	//
8782	// GitConfig is a required field
8783	GitConfig *GitConfig `type:"structure" required:"true"`
8784}
8785
8786// String returns the string representation
8787func (s CreateCodeRepositoryInput) String() string {
8788	return awsutil.Prettify(s)
8789}
8790
8791// GoString returns the string representation
8792func (s CreateCodeRepositoryInput) GoString() string {
8793	return s.String()
8794}
8795
8796// Validate inspects the fields of the type to determine if they are valid.
8797func (s *CreateCodeRepositoryInput) Validate() error {
8798	invalidParams := request.ErrInvalidParams{Context: "CreateCodeRepositoryInput"}
8799	if s.CodeRepositoryName == nil {
8800		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
8801	}
8802	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
8803		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
8804	}
8805	if s.GitConfig == nil {
8806		invalidParams.Add(request.NewErrParamRequired("GitConfig"))
8807	}
8808	if s.GitConfig != nil {
8809		if err := s.GitConfig.Validate(); err != nil {
8810			invalidParams.AddNested("GitConfig", err.(request.ErrInvalidParams))
8811		}
8812	}
8813
8814	if invalidParams.Len() > 0 {
8815		return invalidParams
8816	}
8817	return nil
8818}
8819
8820// SetCodeRepositoryName sets the CodeRepositoryName field's value.
8821func (s *CreateCodeRepositoryInput) SetCodeRepositoryName(v string) *CreateCodeRepositoryInput {
8822	s.CodeRepositoryName = &v
8823	return s
8824}
8825
8826// SetGitConfig sets the GitConfig field's value.
8827func (s *CreateCodeRepositoryInput) SetGitConfig(v *GitConfig) *CreateCodeRepositoryInput {
8828	s.GitConfig = v
8829	return s
8830}
8831
8832type CreateCodeRepositoryOutput struct {
8833	_ struct{} `type:"structure"`
8834
8835	// The Amazon Resource Name (ARN) of the new repository.
8836	//
8837	// CodeRepositoryArn is a required field
8838	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
8839}
8840
8841// String returns the string representation
8842func (s CreateCodeRepositoryOutput) String() string {
8843	return awsutil.Prettify(s)
8844}
8845
8846// GoString returns the string representation
8847func (s CreateCodeRepositoryOutput) GoString() string {
8848	return s.String()
8849}
8850
8851// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
8852func (s *CreateCodeRepositoryOutput) SetCodeRepositoryArn(v string) *CreateCodeRepositoryOutput {
8853	s.CodeRepositoryArn = &v
8854	return s
8855}
8856
8857type CreateCompilationJobInput struct {
8858	_ struct{} `type:"structure"`
8859
8860	// A name for the model compilation job. The name must be unique within the
8861	// AWS Region and within your AWS account.
8862	//
8863	// CompilationJobName is a required field
8864	CompilationJobName *string `min:"1" type:"string" required:"true"`
8865
8866	// Provides information about the location of input model artifacts, the name
8867	// and shape of the expected data inputs, and the framework in which the model
8868	// was trained.
8869	//
8870	// InputConfig is a required field
8871	InputConfig *InputConfig `type:"structure" required:"true"`
8872
8873	// Provides information about the output location for the compiled model and
8874	// the target device the model runs on.
8875	//
8876	// OutputConfig is a required field
8877	OutputConfig *OutputConfig `type:"structure" required:"true"`
8878
8879	// The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker
8880	// to perform tasks on your behalf.
8881	//
8882	// During model compilation, Amazon SageMaker needs your permission to:
8883	//
8884	//    * Read input data from an S3 bucket
8885	//
8886	//    * Write model artifacts to an S3 bucket
8887	//
8888	//    * Write logs to Amazon CloudWatch Logs
8889	//
8890	//    * Publish metrics to Amazon CloudWatch
8891	//
8892	// You grant permissions for all of these tasks to an IAM role. To pass this
8893	// role to Amazon SageMaker, the caller of this API must have the iam:PassRole
8894	// permission. For more information, see Amazon SageMaker Roles. (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html)
8895	//
8896	// RoleArn is a required field
8897	RoleArn *string `min:"20" type:"string" required:"true"`
8898
8899	// Specifies a limit to how long a model compilation job can run. When the job
8900	// reaches the time limit, Amazon SageMaker ends the compilation job. Use this
8901	// API to cap model training costs.
8902	//
8903	// StoppingCondition is a required field
8904	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
8905}
8906
8907// String returns the string representation
8908func (s CreateCompilationJobInput) String() string {
8909	return awsutil.Prettify(s)
8910}
8911
8912// GoString returns the string representation
8913func (s CreateCompilationJobInput) GoString() string {
8914	return s.String()
8915}
8916
8917// Validate inspects the fields of the type to determine if they are valid.
8918func (s *CreateCompilationJobInput) Validate() error {
8919	invalidParams := request.ErrInvalidParams{Context: "CreateCompilationJobInput"}
8920	if s.CompilationJobName == nil {
8921		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
8922	}
8923	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
8924		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
8925	}
8926	if s.InputConfig == nil {
8927		invalidParams.Add(request.NewErrParamRequired("InputConfig"))
8928	}
8929	if s.OutputConfig == nil {
8930		invalidParams.Add(request.NewErrParamRequired("OutputConfig"))
8931	}
8932	if s.RoleArn == nil {
8933		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
8934	}
8935	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
8936		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
8937	}
8938	if s.StoppingCondition == nil {
8939		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
8940	}
8941	if s.InputConfig != nil {
8942		if err := s.InputConfig.Validate(); err != nil {
8943			invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams))
8944		}
8945	}
8946	if s.OutputConfig != nil {
8947		if err := s.OutputConfig.Validate(); err != nil {
8948			invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams))
8949		}
8950	}
8951	if s.StoppingCondition != nil {
8952		if err := s.StoppingCondition.Validate(); err != nil {
8953			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
8954		}
8955	}
8956
8957	if invalidParams.Len() > 0 {
8958		return invalidParams
8959	}
8960	return nil
8961}
8962
8963// SetCompilationJobName sets the CompilationJobName field's value.
8964func (s *CreateCompilationJobInput) SetCompilationJobName(v string) *CreateCompilationJobInput {
8965	s.CompilationJobName = &v
8966	return s
8967}
8968
8969// SetInputConfig sets the InputConfig field's value.
8970func (s *CreateCompilationJobInput) SetInputConfig(v *InputConfig) *CreateCompilationJobInput {
8971	s.InputConfig = v
8972	return s
8973}
8974
8975// SetOutputConfig sets the OutputConfig field's value.
8976func (s *CreateCompilationJobInput) SetOutputConfig(v *OutputConfig) *CreateCompilationJobInput {
8977	s.OutputConfig = v
8978	return s
8979}
8980
8981// SetRoleArn sets the RoleArn field's value.
8982func (s *CreateCompilationJobInput) SetRoleArn(v string) *CreateCompilationJobInput {
8983	s.RoleArn = &v
8984	return s
8985}
8986
8987// SetStoppingCondition sets the StoppingCondition field's value.
8988func (s *CreateCompilationJobInput) SetStoppingCondition(v *StoppingCondition) *CreateCompilationJobInput {
8989	s.StoppingCondition = v
8990	return s
8991}
8992
8993type CreateCompilationJobOutput struct {
8994	_ struct{} `type:"structure"`
8995
8996	// If the action is successful, the service sends back an HTTP 200 response.
8997	// Amazon SageMaker returns the following data in JSON format:
8998	//
8999	//    * CompilationJobArn: The Amazon Resource Name (ARN) of the compiled job.
9000	//
9001	// CompilationJobArn is a required field
9002	CompilationJobArn *string `type:"string" required:"true"`
9003}
9004
9005// String returns the string representation
9006func (s CreateCompilationJobOutput) String() string {
9007	return awsutil.Prettify(s)
9008}
9009
9010// GoString returns the string representation
9011func (s CreateCompilationJobOutput) GoString() string {
9012	return s.String()
9013}
9014
9015// SetCompilationJobArn sets the CompilationJobArn field's value.
9016func (s *CreateCompilationJobOutput) SetCompilationJobArn(v string) *CreateCompilationJobOutput {
9017	s.CompilationJobArn = &v
9018	return s
9019}
9020
9021type CreateEndpointConfigInput struct {
9022	_ struct{} `type:"structure"`
9023
9024	// The name of the endpoint configuration. You specify this name in a CreateEndpoint
9025	// (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpoint.html)
9026	// request.
9027	//
9028	// EndpointConfigName is a required field
9029	EndpointConfigName *string `type:"string" required:"true"`
9030
9031	// The Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon
9032	// SageMaker uses to encrypt data on the storage volume attached to the ML compute
9033	// instance that hosts the endpoint.
9034	//
9035	// Nitro-based instances do not support encryption with AWS KMS. If any of the
9036	// models that you specify in the ProductionVariants parameter use nitro-based
9037	// instances, do not specify a value for the KmsKeyId parameter. If you specify
9038	// a value for KmsKeyId when using any nitro-based instances, the call to CreateEndpointConfig
9039	// fails.
9040	//
9041	// For a list of nitro-based instances, see Nitro-based Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances)
9042	// in the Amazon Elastic Compute Cloud User Guide for Linux Instances.
9043	//
9044	// For more information about storage volumes on nitro-based instances, see
9045	// Amazon EBS and NVMe on Linux Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvme-ebs-volumes.html).
9046	KmsKeyId *string `type:"string"`
9047
9048	// An list of ProductionVariant objects, one for each model that you want to
9049	// host at this endpoint.
9050	//
9051	// ProductionVariants is a required field
9052	ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"`
9053
9054	// A list of key-value pairs. For more information, see Using Cost Allocation
9055	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9056	// in the AWS Billing and Cost Management User Guide.
9057	Tags []*Tag `type:"list"`
9058}
9059
9060// String returns the string representation
9061func (s CreateEndpointConfigInput) String() string {
9062	return awsutil.Prettify(s)
9063}
9064
9065// GoString returns the string representation
9066func (s CreateEndpointConfigInput) GoString() string {
9067	return s.String()
9068}
9069
9070// Validate inspects the fields of the type to determine if they are valid.
9071func (s *CreateEndpointConfigInput) Validate() error {
9072	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointConfigInput"}
9073	if s.EndpointConfigName == nil {
9074		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
9075	}
9076	if s.ProductionVariants == nil {
9077		invalidParams.Add(request.NewErrParamRequired("ProductionVariants"))
9078	}
9079	if s.ProductionVariants != nil && len(s.ProductionVariants) < 1 {
9080		invalidParams.Add(request.NewErrParamMinLen("ProductionVariants", 1))
9081	}
9082	if s.ProductionVariants != nil {
9083		for i, v := range s.ProductionVariants {
9084			if v == nil {
9085				continue
9086			}
9087			if err := v.Validate(); err != nil {
9088				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductionVariants", i), err.(request.ErrInvalidParams))
9089			}
9090		}
9091	}
9092	if s.Tags != nil {
9093		for i, v := range s.Tags {
9094			if v == nil {
9095				continue
9096			}
9097			if err := v.Validate(); err != nil {
9098				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9099			}
9100		}
9101	}
9102
9103	if invalidParams.Len() > 0 {
9104		return invalidParams
9105	}
9106	return nil
9107}
9108
9109// SetEndpointConfigName sets the EndpointConfigName field's value.
9110func (s *CreateEndpointConfigInput) SetEndpointConfigName(v string) *CreateEndpointConfigInput {
9111	s.EndpointConfigName = &v
9112	return s
9113}
9114
9115// SetKmsKeyId sets the KmsKeyId field's value.
9116func (s *CreateEndpointConfigInput) SetKmsKeyId(v string) *CreateEndpointConfigInput {
9117	s.KmsKeyId = &v
9118	return s
9119}
9120
9121// SetProductionVariants sets the ProductionVariants field's value.
9122func (s *CreateEndpointConfigInput) SetProductionVariants(v []*ProductionVariant) *CreateEndpointConfigInput {
9123	s.ProductionVariants = v
9124	return s
9125}
9126
9127// SetTags sets the Tags field's value.
9128func (s *CreateEndpointConfigInput) SetTags(v []*Tag) *CreateEndpointConfigInput {
9129	s.Tags = v
9130	return s
9131}
9132
9133type CreateEndpointConfigOutput struct {
9134	_ struct{} `type:"structure"`
9135
9136	// The Amazon Resource Name (ARN) of the endpoint configuration.
9137	//
9138	// EndpointConfigArn is a required field
9139	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
9140}
9141
9142// String returns the string representation
9143func (s CreateEndpointConfigOutput) String() string {
9144	return awsutil.Prettify(s)
9145}
9146
9147// GoString returns the string representation
9148func (s CreateEndpointConfigOutput) GoString() string {
9149	return s.String()
9150}
9151
9152// SetEndpointConfigArn sets the EndpointConfigArn field's value.
9153func (s *CreateEndpointConfigOutput) SetEndpointConfigArn(v string) *CreateEndpointConfigOutput {
9154	s.EndpointConfigArn = &v
9155	return s
9156}
9157
9158type CreateEndpointInput struct {
9159	_ struct{} `type:"structure"`
9160
9161	// The name of an endpoint configuration. For more information, see CreateEndpointConfig
9162	// (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpointConfig.html).
9163	//
9164	// EndpointConfigName is a required field
9165	EndpointConfigName *string `type:"string" required:"true"`
9166
9167	// The name of the endpoint. The name must be unique within an AWS Region in
9168	// your AWS account.
9169	//
9170	// EndpointName is a required field
9171	EndpointName *string `type:"string" required:"true"`
9172
9173	// An array of key-value pairs. For more information, see Using Cost Allocation
9174	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)in
9175	// the AWS Billing and Cost Management User Guide.
9176	Tags []*Tag `type:"list"`
9177}
9178
9179// String returns the string representation
9180func (s CreateEndpointInput) String() string {
9181	return awsutil.Prettify(s)
9182}
9183
9184// GoString returns the string representation
9185func (s CreateEndpointInput) GoString() string {
9186	return s.String()
9187}
9188
9189// Validate inspects the fields of the type to determine if they are valid.
9190func (s *CreateEndpointInput) Validate() error {
9191	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"}
9192	if s.EndpointConfigName == nil {
9193		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
9194	}
9195	if s.EndpointName == nil {
9196		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
9197	}
9198	if s.Tags != nil {
9199		for i, v := range s.Tags {
9200			if v == nil {
9201				continue
9202			}
9203			if err := v.Validate(); err != nil {
9204				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9205			}
9206		}
9207	}
9208
9209	if invalidParams.Len() > 0 {
9210		return invalidParams
9211	}
9212	return nil
9213}
9214
9215// SetEndpointConfigName sets the EndpointConfigName field's value.
9216func (s *CreateEndpointInput) SetEndpointConfigName(v string) *CreateEndpointInput {
9217	s.EndpointConfigName = &v
9218	return s
9219}
9220
9221// SetEndpointName sets the EndpointName field's value.
9222func (s *CreateEndpointInput) SetEndpointName(v string) *CreateEndpointInput {
9223	s.EndpointName = &v
9224	return s
9225}
9226
9227// SetTags sets the Tags field's value.
9228func (s *CreateEndpointInput) SetTags(v []*Tag) *CreateEndpointInput {
9229	s.Tags = v
9230	return s
9231}
9232
9233type CreateEndpointOutput struct {
9234	_ struct{} `type:"structure"`
9235
9236	// The Amazon Resource Name (ARN) of the endpoint.
9237	//
9238	// EndpointArn is a required field
9239	EndpointArn *string `min:"20" type:"string" required:"true"`
9240}
9241
9242// String returns the string representation
9243func (s CreateEndpointOutput) String() string {
9244	return awsutil.Prettify(s)
9245}
9246
9247// GoString returns the string representation
9248func (s CreateEndpointOutput) GoString() string {
9249	return s.String()
9250}
9251
9252// SetEndpointArn sets the EndpointArn field's value.
9253func (s *CreateEndpointOutput) SetEndpointArn(v string) *CreateEndpointOutput {
9254	s.EndpointArn = &v
9255	return s
9256}
9257
9258type CreateHyperParameterTuningJobInput struct {
9259	_ struct{} `type:"structure"`
9260
9261	// The HyperParameterTuningJobConfig object that describes the tuning job, including
9262	// the search strategy, the objective metric used to evaluate training jobs,
9263	// ranges of parameters to search, and resource limits for the tuning job. For
9264	// more information, see automatic-model-tuning
9265	//
9266	// HyperParameterTuningJobConfig is a required field
9267	HyperParameterTuningJobConfig *HyperParameterTuningJobConfig `type:"structure" required:"true"`
9268
9269	// The name of the tuning job. This name is the prefix for the names of all
9270	// training jobs that this tuning job launches. The name must be unique within
9271	// the same AWS account and AWS Region. The name must have { } to { } characters.
9272	// Valid characters are a-z, A-Z, 0-9, and : + = @ _ % - (hyphen). The name
9273	// is not case sensitive.
9274	//
9275	// HyperParameterTuningJobName is a required field
9276	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
9277
9278	// An array of key-value pairs. You can use tags to categorize your AWS resources
9279	// in different ways, for example, by purpose, owner, or environment. For more
9280	// information, see AWS Tagging Strategies (https://docs.aws.amazon.com/https:/aws.amazon.com/answers/account-management/aws-tagging-strategies/).
9281	//
9282	// Tags that you specify for the tuning job are also added to all training jobs
9283	// that the tuning job launches.
9284	Tags []*Tag `type:"list"`
9285
9286	// The HyperParameterTrainingJobDefinition object that describes the training
9287	// jobs that this tuning job launches, including static hyperparameters, input
9288	// data configuration, output data configuration, resource configuration, and
9289	// stopping condition.
9290	TrainingJobDefinition *HyperParameterTrainingJobDefinition `type:"structure"`
9291
9292	// Specifies the configuration for starting the hyperparameter tuning job using
9293	// one or more previous tuning jobs as a starting point. The results of previous
9294	// tuning jobs are used to inform which combinations of hyperparameters to search
9295	// over in the new tuning job.
9296	//
9297	// All training jobs launched by the new hyperparameter tuning job are evaluated
9298	// by using the objective metric. If you specify IDENTICAL_DATA_AND_ALGORITHM
9299	// as the WarmStartType value for the warm start configuration, the training
9300	// job that performs the best in the new tuning job is compared to the best
9301	// training jobs from the parent tuning jobs. From these, the training job that
9302	// performs the best as measured by the objective metric is returned as the
9303	// overall best training job.
9304	//
9305	// All training jobs launched by parent hyperparameter tuning jobs and the new
9306	// hyperparameter tuning jobs count against the limit of training jobs for the
9307	// tuning job.
9308	WarmStartConfig *HyperParameterTuningJobWarmStartConfig `type:"structure"`
9309}
9310
9311// String returns the string representation
9312func (s CreateHyperParameterTuningJobInput) String() string {
9313	return awsutil.Prettify(s)
9314}
9315
9316// GoString returns the string representation
9317func (s CreateHyperParameterTuningJobInput) GoString() string {
9318	return s.String()
9319}
9320
9321// Validate inspects the fields of the type to determine if they are valid.
9322func (s *CreateHyperParameterTuningJobInput) Validate() error {
9323	invalidParams := request.ErrInvalidParams{Context: "CreateHyperParameterTuningJobInput"}
9324	if s.HyperParameterTuningJobConfig == nil {
9325		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobConfig"))
9326	}
9327	if s.HyperParameterTuningJobName == nil {
9328		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
9329	}
9330	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
9331		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
9332	}
9333	if s.HyperParameterTuningJobConfig != nil {
9334		if err := s.HyperParameterTuningJobConfig.Validate(); err != nil {
9335			invalidParams.AddNested("HyperParameterTuningJobConfig", err.(request.ErrInvalidParams))
9336		}
9337	}
9338	if s.Tags != nil {
9339		for i, v := range s.Tags {
9340			if v == nil {
9341				continue
9342			}
9343			if err := v.Validate(); err != nil {
9344				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9345			}
9346		}
9347	}
9348	if s.TrainingJobDefinition != nil {
9349		if err := s.TrainingJobDefinition.Validate(); err != nil {
9350			invalidParams.AddNested("TrainingJobDefinition", err.(request.ErrInvalidParams))
9351		}
9352	}
9353	if s.WarmStartConfig != nil {
9354		if err := s.WarmStartConfig.Validate(); err != nil {
9355			invalidParams.AddNested("WarmStartConfig", err.(request.ErrInvalidParams))
9356		}
9357	}
9358
9359	if invalidParams.Len() > 0 {
9360		return invalidParams
9361	}
9362	return nil
9363}
9364
9365// SetHyperParameterTuningJobConfig sets the HyperParameterTuningJobConfig field's value.
9366func (s *CreateHyperParameterTuningJobInput) SetHyperParameterTuningJobConfig(v *HyperParameterTuningJobConfig) *CreateHyperParameterTuningJobInput {
9367	s.HyperParameterTuningJobConfig = v
9368	return s
9369}
9370
9371// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
9372func (s *CreateHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *CreateHyperParameterTuningJobInput {
9373	s.HyperParameterTuningJobName = &v
9374	return s
9375}
9376
9377// SetTags sets the Tags field's value.
9378func (s *CreateHyperParameterTuningJobInput) SetTags(v []*Tag) *CreateHyperParameterTuningJobInput {
9379	s.Tags = v
9380	return s
9381}
9382
9383// SetTrainingJobDefinition sets the TrainingJobDefinition field's value.
9384func (s *CreateHyperParameterTuningJobInput) SetTrainingJobDefinition(v *HyperParameterTrainingJobDefinition) *CreateHyperParameterTuningJobInput {
9385	s.TrainingJobDefinition = v
9386	return s
9387}
9388
9389// SetWarmStartConfig sets the WarmStartConfig field's value.
9390func (s *CreateHyperParameterTuningJobInput) SetWarmStartConfig(v *HyperParameterTuningJobWarmStartConfig) *CreateHyperParameterTuningJobInput {
9391	s.WarmStartConfig = v
9392	return s
9393}
9394
9395type CreateHyperParameterTuningJobOutput struct {
9396	_ struct{} `type:"structure"`
9397
9398	// The Amazon Resource Name (ARN) of the tuning job. Amazon SageMaker assigns
9399	// an ARN to a hyperparameter tuning job when you create it.
9400	//
9401	// HyperParameterTuningJobArn is a required field
9402	HyperParameterTuningJobArn *string `type:"string" required:"true"`
9403}
9404
9405// String returns the string representation
9406func (s CreateHyperParameterTuningJobOutput) String() string {
9407	return awsutil.Prettify(s)
9408}
9409
9410// GoString returns the string representation
9411func (s CreateHyperParameterTuningJobOutput) GoString() string {
9412	return s.String()
9413}
9414
9415// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
9416func (s *CreateHyperParameterTuningJobOutput) SetHyperParameterTuningJobArn(v string) *CreateHyperParameterTuningJobOutput {
9417	s.HyperParameterTuningJobArn = &v
9418	return s
9419}
9420
9421type CreateLabelingJobInput struct {
9422	_ struct{} `type:"structure"`
9423
9424	// Configures the information required for human workers to complete a labeling
9425	// task.
9426	//
9427	// HumanTaskConfig is a required field
9428	HumanTaskConfig *HumanTaskConfig `type:"structure" required:"true"`
9429
9430	// Input data for the labeling job, such as the Amazon S3 location of the data
9431	// objects and the location of the manifest file that describes the data objects.
9432	//
9433	// InputConfig is a required field
9434	InputConfig *LabelingJobInputConfig `type:"structure" required:"true"`
9435
9436	// The attribute name to use for the label in the output manifest file. This
9437	// is the key for the key/value pair formed with the label that a worker assigns
9438	// to the object. The name can't end with "-metadata". If you are running a
9439	// semantic segmentation labeling job, the attribute name must end with "-ref".
9440	// If you are running any other kind of labeling job, the attribute name must
9441	// not end with "-ref".
9442	//
9443	// LabelAttributeName is a required field
9444	LabelAttributeName *string `min:"1" type:"string" required:"true"`
9445
9446	// The S3 URL of the file that defines the categories used to label the data
9447	// objects.
9448	//
9449	// The file is a JSON structure in the following format:
9450	//
9451	// {
9452	//
9453	// "document-version": "2018-11-28"
9454	//
9455	// "labels": [
9456	//
9457	// {
9458	//
9459	// "label": "label 1"
9460	//
9461	// },
9462	//
9463	// {
9464	//
9465	// "label": "label 2"
9466	//
9467	// },
9468	//
9469	// ...
9470	//
9471	// {
9472	//
9473	// "label": "label n"
9474	//
9475	// }
9476	//
9477	// ]
9478	//
9479	// }
9480	LabelCategoryConfigS3Uri *string `type:"string"`
9481
9482	// Configures the information required to perform automated data labeling.
9483	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig `type:"structure"`
9484
9485	// The name of the labeling job. This name is used to identify the job in a
9486	// list of labeling jobs.
9487	//
9488	// LabelingJobName is a required field
9489	LabelingJobName *string `min:"1" type:"string" required:"true"`
9490
9491	// The location of the output data and the AWS Key Management Service key ID
9492	// for the key used to encrypt the output data, if any.
9493	//
9494	// OutputConfig is a required field
9495	OutputConfig *LabelingJobOutputConfig `type:"structure" required:"true"`
9496
9497	// The Amazon Resource Number (ARN) that Amazon SageMaker assumes to perform
9498	// tasks on your behalf during data labeling. You must grant this role the necessary
9499	// permissions so that Amazon SageMaker can successfully complete data labeling.
9500	//
9501	// RoleArn is a required field
9502	RoleArn *string `min:"20" type:"string" required:"true"`
9503
9504	// A set of conditions for stopping the labeling job. If any of the conditions
9505	// are met, the job is automatically stopped. You can use these conditions to
9506	// control the cost of data labeling.
9507	StoppingConditions *LabelingJobStoppingConditions `type:"structure"`
9508
9509	// An array of key/value pairs. For more information, see Using Cost Allocation
9510	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9511	// in the AWS Billing and Cost Management User Guide.
9512	Tags []*Tag `type:"list"`
9513}
9514
9515// String returns the string representation
9516func (s CreateLabelingJobInput) String() string {
9517	return awsutil.Prettify(s)
9518}
9519
9520// GoString returns the string representation
9521func (s CreateLabelingJobInput) GoString() string {
9522	return s.String()
9523}
9524
9525// Validate inspects the fields of the type to determine if they are valid.
9526func (s *CreateLabelingJobInput) Validate() error {
9527	invalidParams := request.ErrInvalidParams{Context: "CreateLabelingJobInput"}
9528	if s.HumanTaskConfig == nil {
9529		invalidParams.Add(request.NewErrParamRequired("HumanTaskConfig"))
9530	}
9531	if s.InputConfig == nil {
9532		invalidParams.Add(request.NewErrParamRequired("InputConfig"))
9533	}
9534	if s.LabelAttributeName == nil {
9535		invalidParams.Add(request.NewErrParamRequired("LabelAttributeName"))
9536	}
9537	if s.LabelAttributeName != nil && len(*s.LabelAttributeName) < 1 {
9538		invalidParams.Add(request.NewErrParamMinLen("LabelAttributeName", 1))
9539	}
9540	if s.LabelingJobName == nil {
9541		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
9542	}
9543	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
9544		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
9545	}
9546	if s.OutputConfig == nil {
9547		invalidParams.Add(request.NewErrParamRequired("OutputConfig"))
9548	}
9549	if s.RoleArn == nil {
9550		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
9551	}
9552	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
9553		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
9554	}
9555	if s.HumanTaskConfig != nil {
9556		if err := s.HumanTaskConfig.Validate(); err != nil {
9557			invalidParams.AddNested("HumanTaskConfig", err.(request.ErrInvalidParams))
9558		}
9559	}
9560	if s.InputConfig != nil {
9561		if err := s.InputConfig.Validate(); err != nil {
9562			invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams))
9563		}
9564	}
9565	if s.LabelingJobAlgorithmsConfig != nil {
9566		if err := s.LabelingJobAlgorithmsConfig.Validate(); err != nil {
9567			invalidParams.AddNested("LabelingJobAlgorithmsConfig", err.(request.ErrInvalidParams))
9568		}
9569	}
9570	if s.OutputConfig != nil {
9571		if err := s.OutputConfig.Validate(); err != nil {
9572			invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams))
9573		}
9574	}
9575	if s.StoppingConditions != nil {
9576		if err := s.StoppingConditions.Validate(); err != nil {
9577			invalidParams.AddNested("StoppingConditions", err.(request.ErrInvalidParams))
9578		}
9579	}
9580	if s.Tags != nil {
9581		for i, v := range s.Tags {
9582			if v == nil {
9583				continue
9584			}
9585			if err := v.Validate(); err != nil {
9586				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9587			}
9588		}
9589	}
9590
9591	if invalidParams.Len() > 0 {
9592		return invalidParams
9593	}
9594	return nil
9595}
9596
9597// SetHumanTaskConfig sets the HumanTaskConfig field's value.
9598func (s *CreateLabelingJobInput) SetHumanTaskConfig(v *HumanTaskConfig) *CreateLabelingJobInput {
9599	s.HumanTaskConfig = v
9600	return s
9601}
9602
9603// SetInputConfig sets the InputConfig field's value.
9604func (s *CreateLabelingJobInput) SetInputConfig(v *LabelingJobInputConfig) *CreateLabelingJobInput {
9605	s.InputConfig = v
9606	return s
9607}
9608
9609// SetLabelAttributeName sets the LabelAttributeName field's value.
9610func (s *CreateLabelingJobInput) SetLabelAttributeName(v string) *CreateLabelingJobInput {
9611	s.LabelAttributeName = &v
9612	return s
9613}
9614
9615// SetLabelCategoryConfigS3Uri sets the LabelCategoryConfigS3Uri field's value.
9616func (s *CreateLabelingJobInput) SetLabelCategoryConfigS3Uri(v string) *CreateLabelingJobInput {
9617	s.LabelCategoryConfigS3Uri = &v
9618	return s
9619}
9620
9621// SetLabelingJobAlgorithmsConfig sets the LabelingJobAlgorithmsConfig field's value.
9622func (s *CreateLabelingJobInput) SetLabelingJobAlgorithmsConfig(v *LabelingJobAlgorithmsConfig) *CreateLabelingJobInput {
9623	s.LabelingJobAlgorithmsConfig = v
9624	return s
9625}
9626
9627// SetLabelingJobName sets the LabelingJobName field's value.
9628func (s *CreateLabelingJobInput) SetLabelingJobName(v string) *CreateLabelingJobInput {
9629	s.LabelingJobName = &v
9630	return s
9631}
9632
9633// SetOutputConfig sets the OutputConfig field's value.
9634func (s *CreateLabelingJobInput) SetOutputConfig(v *LabelingJobOutputConfig) *CreateLabelingJobInput {
9635	s.OutputConfig = v
9636	return s
9637}
9638
9639// SetRoleArn sets the RoleArn field's value.
9640func (s *CreateLabelingJobInput) SetRoleArn(v string) *CreateLabelingJobInput {
9641	s.RoleArn = &v
9642	return s
9643}
9644
9645// SetStoppingConditions sets the StoppingConditions field's value.
9646func (s *CreateLabelingJobInput) SetStoppingConditions(v *LabelingJobStoppingConditions) *CreateLabelingJobInput {
9647	s.StoppingConditions = v
9648	return s
9649}
9650
9651// SetTags sets the Tags field's value.
9652func (s *CreateLabelingJobInput) SetTags(v []*Tag) *CreateLabelingJobInput {
9653	s.Tags = v
9654	return s
9655}
9656
9657type CreateLabelingJobOutput struct {
9658	_ struct{} `type:"structure"`
9659
9660	// The Amazon Resource Name (ARN) of the labeling job. You use this ARN to identify
9661	// the labeling job.
9662	//
9663	// LabelingJobArn is a required field
9664	LabelingJobArn *string `type:"string" required:"true"`
9665}
9666
9667// String returns the string representation
9668func (s CreateLabelingJobOutput) String() string {
9669	return awsutil.Prettify(s)
9670}
9671
9672// GoString returns the string representation
9673func (s CreateLabelingJobOutput) GoString() string {
9674	return s.String()
9675}
9676
9677// SetLabelingJobArn sets the LabelingJobArn field's value.
9678func (s *CreateLabelingJobOutput) SetLabelingJobArn(v string) *CreateLabelingJobOutput {
9679	s.LabelingJobArn = &v
9680	return s
9681}
9682
9683type CreateModelInput struct {
9684	_ struct{} `type:"structure"`
9685
9686	// Specifies the containers in the inference pipeline.
9687	Containers []*ContainerDefinition `type:"list"`
9688
9689	// Isolates the model container. No inbound or outbound network calls can be
9690	// made to or from the model container.
9691	//
9692	// The Semantic Segmentation built-in algorithm does not support network isolation.
9693	EnableNetworkIsolation *bool `type:"boolean"`
9694
9695	// The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker can
9696	// assume to access model artifacts and docker image for deployment on ML compute
9697	// instances or for batch transform jobs. Deploying on ML compute instances
9698	// is part of model hosting. For more information, see Amazon SageMaker Roles
9699	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
9700	//
9701	// To be able to pass this role to Amazon SageMaker, the caller of this API
9702	// must have the iam:PassRole permission.
9703	//
9704	// ExecutionRoleArn is a required field
9705	ExecutionRoleArn *string `min:"20" type:"string" required:"true"`
9706
9707	// The name of the new model.
9708	//
9709	// ModelName is a required field
9710	ModelName *string `type:"string" required:"true"`
9711
9712	// The location of the primary docker image containing inference code, associated
9713	// artifacts, and custom environment map that the inference code uses when the
9714	// model is deployed for predictions.
9715	PrimaryContainer *ContainerDefinition `type:"structure"`
9716
9717	// An array of key-value pairs. For more information, see Using Cost Allocation
9718	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9719	// in the AWS Billing and Cost Management User Guide.
9720	Tags []*Tag `type:"list"`
9721
9722	// A VpcConfig (https://docs.aws.amazon.com/sagemaker/latest/dg/API_VpcConfig.html)
9723	// object that specifies the VPC that you want your model to connect to. Control
9724	// access to and from your model container by configuring the VPC. VpcConfig
9725	// is used in hosting services and in batch transform. For more information,
9726	// see Protect Endpoints by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
9727	// and Protect Data in Batch Transform Jobs by Using an Amazon Virtual Private
9728	// Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html).
9729	VpcConfig *VpcConfig `type:"structure"`
9730}
9731
9732// String returns the string representation
9733func (s CreateModelInput) String() string {
9734	return awsutil.Prettify(s)
9735}
9736
9737// GoString returns the string representation
9738func (s CreateModelInput) GoString() string {
9739	return s.String()
9740}
9741
9742// Validate inspects the fields of the type to determine if they are valid.
9743func (s *CreateModelInput) Validate() error {
9744	invalidParams := request.ErrInvalidParams{Context: "CreateModelInput"}
9745	if s.ExecutionRoleArn == nil {
9746		invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn"))
9747	}
9748	if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 {
9749		invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20))
9750	}
9751	if s.ModelName == nil {
9752		invalidParams.Add(request.NewErrParamRequired("ModelName"))
9753	}
9754	if s.Containers != nil {
9755		for i, v := range s.Containers {
9756			if v == nil {
9757				continue
9758			}
9759			if err := v.Validate(); err != nil {
9760				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Containers", i), err.(request.ErrInvalidParams))
9761			}
9762		}
9763	}
9764	if s.PrimaryContainer != nil {
9765		if err := s.PrimaryContainer.Validate(); err != nil {
9766			invalidParams.AddNested("PrimaryContainer", err.(request.ErrInvalidParams))
9767		}
9768	}
9769	if s.Tags != nil {
9770		for i, v := range s.Tags {
9771			if v == nil {
9772				continue
9773			}
9774			if err := v.Validate(); err != nil {
9775				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9776			}
9777		}
9778	}
9779	if s.VpcConfig != nil {
9780		if err := s.VpcConfig.Validate(); err != nil {
9781			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
9782		}
9783	}
9784
9785	if invalidParams.Len() > 0 {
9786		return invalidParams
9787	}
9788	return nil
9789}
9790
9791// SetContainers sets the Containers field's value.
9792func (s *CreateModelInput) SetContainers(v []*ContainerDefinition) *CreateModelInput {
9793	s.Containers = v
9794	return s
9795}
9796
9797// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
9798func (s *CreateModelInput) SetEnableNetworkIsolation(v bool) *CreateModelInput {
9799	s.EnableNetworkIsolation = &v
9800	return s
9801}
9802
9803// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
9804func (s *CreateModelInput) SetExecutionRoleArn(v string) *CreateModelInput {
9805	s.ExecutionRoleArn = &v
9806	return s
9807}
9808
9809// SetModelName sets the ModelName field's value.
9810func (s *CreateModelInput) SetModelName(v string) *CreateModelInput {
9811	s.ModelName = &v
9812	return s
9813}
9814
9815// SetPrimaryContainer sets the PrimaryContainer field's value.
9816func (s *CreateModelInput) SetPrimaryContainer(v *ContainerDefinition) *CreateModelInput {
9817	s.PrimaryContainer = v
9818	return s
9819}
9820
9821// SetTags sets the Tags field's value.
9822func (s *CreateModelInput) SetTags(v []*Tag) *CreateModelInput {
9823	s.Tags = v
9824	return s
9825}
9826
9827// SetVpcConfig sets the VpcConfig field's value.
9828func (s *CreateModelInput) SetVpcConfig(v *VpcConfig) *CreateModelInput {
9829	s.VpcConfig = v
9830	return s
9831}
9832
9833type CreateModelOutput struct {
9834	_ struct{} `type:"structure"`
9835
9836	// The ARN of the model created in Amazon SageMaker.
9837	//
9838	// ModelArn is a required field
9839	ModelArn *string `min:"20" type:"string" required:"true"`
9840}
9841
9842// String returns the string representation
9843func (s CreateModelOutput) String() string {
9844	return awsutil.Prettify(s)
9845}
9846
9847// GoString returns the string representation
9848func (s CreateModelOutput) GoString() string {
9849	return s.String()
9850}
9851
9852// SetModelArn sets the ModelArn field's value.
9853func (s *CreateModelOutput) SetModelArn(v string) *CreateModelOutput {
9854	s.ModelArn = &v
9855	return s
9856}
9857
9858type CreateModelPackageInput struct {
9859	_ struct{} `type:"structure"`
9860
9861	// Whether to certify the model package for listing on AWS Marketplace.
9862	CertifyForMarketplace *bool `type:"boolean"`
9863
9864	// Specifies details about inference jobs that can be run with models based
9865	// on this model package, including the following:
9866	//
9867	//    * The Amazon ECR paths of containers that contain the inference code and
9868	//    model artifacts.
9869	//
9870	//    * The instance types that the model package supports for transform jobs
9871	//    and real-time endpoints used for inference.
9872	//
9873	//    * The input and output content formats that the model package supports
9874	//    for inference.
9875	InferenceSpecification *InferenceSpecification `type:"structure"`
9876
9877	// A description of the model package.
9878	ModelPackageDescription *string `type:"string"`
9879
9880	// The name of the model package. The name must have 1 to 63 characters. Valid
9881	// characters are a-z, A-Z, 0-9, and - (hyphen).
9882	//
9883	// ModelPackageName is a required field
9884	ModelPackageName *string `min:"1" type:"string" required:"true"`
9885
9886	// Details about the algorithm that was used to create the model package.
9887	SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"`
9888
9889	// Specifies configurations for one or more transform jobs that Amazon SageMaker
9890	// runs to test the model package.
9891	ValidationSpecification *ModelPackageValidationSpecification `type:"structure"`
9892}
9893
9894// String returns the string representation
9895func (s CreateModelPackageInput) String() string {
9896	return awsutil.Prettify(s)
9897}
9898
9899// GoString returns the string representation
9900func (s CreateModelPackageInput) GoString() string {
9901	return s.String()
9902}
9903
9904// Validate inspects the fields of the type to determine if they are valid.
9905func (s *CreateModelPackageInput) Validate() error {
9906	invalidParams := request.ErrInvalidParams{Context: "CreateModelPackageInput"}
9907	if s.ModelPackageName == nil {
9908		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
9909	}
9910	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
9911		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
9912	}
9913	if s.InferenceSpecification != nil {
9914		if err := s.InferenceSpecification.Validate(); err != nil {
9915			invalidParams.AddNested("InferenceSpecification", err.(request.ErrInvalidParams))
9916		}
9917	}
9918	if s.SourceAlgorithmSpecification != nil {
9919		if err := s.SourceAlgorithmSpecification.Validate(); err != nil {
9920			invalidParams.AddNested("SourceAlgorithmSpecification", err.(request.ErrInvalidParams))
9921		}
9922	}
9923	if s.ValidationSpecification != nil {
9924		if err := s.ValidationSpecification.Validate(); err != nil {
9925			invalidParams.AddNested("ValidationSpecification", err.(request.ErrInvalidParams))
9926		}
9927	}
9928
9929	if invalidParams.Len() > 0 {
9930		return invalidParams
9931	}
9932	return nil
9933}
9934
9935// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
9936func (s *CreateModelPackageInput) SetCertifyForMarketplace(v bool) *CreateModelPackageInput {
9937	s.CertifyForMarketplace = &v
9938	return s
9939}
9940
9941// SetInferenceSpecification sets the InferenceSpecification field's value.
9942func (s *CreateModelPackageInput) SetInferenceSpecification(v *InferenceSpecification) *CreateModelPackageInput {
9943	s.InferenceSpecification = v
9944	return s
9945}
9946
9947// SetModelPackageDescription sets the ModelPackageDescription field's value.
9948func (s *CreateModelPackageInput) SetModelPackageDescription(v string) *CreateModelPackageInput {
9949	s.ModelPackageDescription = &v
9950	return s
9951}
9952
9953// SetModelPackageName sets the ModelPackageName field's value.
9954func (s *CreateModelPackageInput) SetModelPackageName(v string) *CreateModelPackageInput {
9955	s.ModelPackageName = &v
9956	return s
9957}
9958
9959// SetSourceAlgorithmSpecification sets the SourceAlgorithmSpecification field's value.
9960func (s *CreateModelPackageInput) SetSourceAlgorithmSpecification(v *SourceAlgorithmSpecification) *CreateModelPackageInput {
9961	s.SourceAlgorithmSpecification = v
9962	return s
9963}
9964
9965// SetValidationSpecification sets the ValidationSpecification field's value.
9966func (s *CreateModelPackageInput) SetValidationSpecification(v *ModelPackageValidationSpecification) *CreateModelPackageInput {
9967	s.ValidationSpecification = v
9968	return s
9969}
9970
9971type CreateModelPackageOutput struct {
9972	_ struct{} `type:"structure"`
9973
9974	// The Amazon Resource Name (ARN) of the new model package.
9975	//
9976	// ModelPackageArn is a required field
9977	ModelPackageArn *string `min:"1" type:"string" required:"true"`
9978}
9979
9980// String returns the string representation
9981func (s CreateModelPackageOutput) String() string {
9982	return awsutil.Prettify(s)
9983}
9984
9985// GoString returns the string representation
9986func (s CreateModelPackageOutput) GoString() string {
9987	return s.String()
9988}
9989
9990// SetModelPackageArn sets the ModelPackageArn field's value.
9991func (s *CreateModelPackageOutput) SetModelPackageArn(v string) *CreateModelPackageOutput {
9992	s.ModelPackageArn = &v
9993	return s
9994}
9995
9996type CreateNotebookInstanceInput struct {
9997	_ struct{} `type:"structure"`
9998
9999	// A list of Elastic Inference (EI) instance types to associate with this notebook
10000	// instance. Currently, only one instance type can be associated with a notebook
10001	// instance. For more information, see Using Elastic Inference in Amazon SageMaker
10002	// (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html).
10003	AcceleratorTypes []*string `type:"list"`
10004
10005	// An array of up to three Git repositories to associate with the notebook instance.
10006	// These can be either the names of Git repositories stored as resources in
10007	// your account, or the URL of Git repositories in AWS CodeCommit (codecommit/latest/userguide/welcome.html)
10008	// or in any other Git repository. These repositories are cloned at the same
10009	// level as the default repository of your notebook instance. For more information,
10010	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
10011	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
10012	AdditionalCodeRepositories []*string `type:"list"`
10013
10014	// A Git repository to associate with the notebook instance as its default code
10015	// repository. This can be either the name of a Git repository stored as a resource
10016	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
10017	// or in any other Git repository. When you open a notebook instance, it opens
10018	// in the directory that contains this repository. For more information, see
10019	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
10020	DefaultCodeRepository *string `min:"1" type:"string"`
10021
10022	// Sets whether Amazon SageMaker provides internet access to the notebook instance.
10023	// If you set this to Disabled this notebook instance will be able to access
10024	// resources only in your VPC, and will not be able to connect to Amazon SageMaker
10025	// training and endpoint services unless your configure a NAT Gateway in your
10026	// VPC.
10027	//
10028	// For more information, see Notebook Instances Are Internet-Enabled by Default
10029	// (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access).
10030	// You can set the value of this parameter to Disabled only if you set a value
10031	// for the SubnetId parameter.
10032	DirectInternetAccess *string `type:"string" enum:"DirectInternetAccess"`
10033
10034	// The type of ML compute instance to launch for the notebook instance.
10035	//
10036	// InstanceType is a required field
10037	InstanceType *string `type:"string" required:"true" enum:"InstanceType"`
10038
10039	// The Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon
10040	// SageMaker uses to encrypt data on the storage volume attached to your notebook
10041	// instance. The KMS key you provide must be enabled. For information, see Enabling
10042	// and Disabling Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html)
10043	// in the AWS Key Management Service Developer Guide.
10044	KmsKeyId *string `type:"string"`
10045
10046	// The name of a lifecycle configuration to associate with the notebook instance.
10047	// For information about lifestyle configurations, see Step 2.1: (Optional)
10048	// Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
10049	LifecycleConfigName *string `type:"string"`
10050
10051	// The name of the new notebook instance.
10052	//
10053	// NotebookInstanceName is a required field
10054	NotebookInstanceName *string `type:"string" required:"true"`
10055
10056	// When you send any requests to AWS resources from the notebook instance, Amazon
10057	// SageMaker assumes this role to perform tasks on your behalf. You must grant
10058	// this role necessary permissions so Amazon SageMaker can perform these tasks.
10059	// The policy must allow the Amazon SageMaker service principal (sagemaker.amazonaws.com)
10060	// permissionsto to assume this role. For more information, see Amazon SageMaker
10061	// Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
10062	//
10063	// To be able to pass this role to Amazon SageMaker, the caller of this API
10064	// must have the iam:PassRole permission.
10065	//
10066	// RoleArn is a required field
10067	RoleArn *string `min:"20" type:"string" required:"true"`
10068
10069	// Whether root access is enabled or disabled for users of the notebook instance.
10070	// The default value is Enabled.
10071	//
10072	// Lifecycle configurations need root access to be able to set up a notebook
10073	// instance. Because of this, lifecycle configurations associated with a notebook
10074	// instance always run with root access even if you disable root access for
10075	// users.
10076	RootAccess *string `type:"string" enum:"RootAccess"`
10077
10078	// The VPC security group IDs, in the form sg-xxxxxxxx. The security groups
10079	// must be for the same VPC as specified in the subnet.
10080	SecurityGroupIds []*string `type:"list"`
10081
10082	// The ID of the subnet in a VPC to which you would like to have a connectivity
10083	// from your ML compute instance.
10084	SubnetId *string `type:"string"`
10085
10086	// A list of tags to associate with the notebook instance. You can add tags
10087	// later by using the CreateTags API.
10088	Tags []*Tag `type:"list"`
10089
10090	// The size, in GB, of the ML storage volume to attach to the notebook instance.
10091	// The default value is 5 GB.
10092	VolumeSizeInGB *int64 `min:"5" type:"integer"`
10093}
10094
10095// String returns the string representation
10096func (s CreateNotebookInstanceInput) String() string {
10097	return awsutil.Prettify(s)
10098}
10099
10100// GoString returns the string representation
10101func (s CreateNotebookInstanceInput) GoString() string {
10102	return s.String()
10103}
10104
10105// Validate inspects the fields of the type to determine if they are valid.
10106func (s *CreateNotebookInstanceInput) Validate() error {
10107	invalidParams := request.ErrInvalidParams{Context: "CreateNotebookInstanceInput"}
10108	if s.DefaultCodeRepository != nil && len(*s.DefaultCodeRepository) < 1 {
10109		invalidParams.Add(request.NewErrParamMinLen("DefaultCodeRepository", 1))
10110	}
10111	if s.InstanceType == nil {
10112		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
10113	}
10114	if s.NotebookInstanceName == nil {
10115		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
10116	}
10117	if s.RoleArn == nil {
10118		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
10119	}
10120	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
10121		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
10122	}
10123	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 5 {
10124		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 5))
10125	}
10126	if s.Tags != nil {
10127		for i, v := range s.Tags {
10128			if v == nil {
10129				continue
10130			}
10131			if err := v.Validate(); err != nil {
10132				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10133			}
10134		}
10135	}
10136
10137	if invalidParams.Len() > 0 {
10138		return invalidParams
10139	}
10140	return nil
10141}
10142
10143// SetAcceleratorTypes sets the AcceleratorTypes field's value.
10144func (s *CreateNotebookInstanceInput) SetAcceleratorTypes(v []*string) *CreateNotebookInstanceInput {
10145	s.AcceleratorTypes = v
10146	return s
10147}
10148
10149// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
10150func (s *CreateNotebookInstanceInput) SetAdditionalCodeRepositories(v []*string) *CreateNotebookInstanceInput {
10151	s.AdditionalCodeRepositories = v
10152	return s
10153}
10154
10155// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
10156func (s *CreateNotebookInstanceInput) SetDefaultCodeRepository(v string) *CreateNotebookInstanceInput {
10157	s.DefaultCodeRepository = &v
10158	return s
10159}
10160
10161// SetDirectInternetAccess sets the DirectInternetAccess field's value.
10162func (s *CreateNotebookInstanceInput) SetDirectInternetAccess(v string) *CreateNotebookInstanceInput {
10163	s.DirectInternetAccess = &v
10164	return s
10165}
10166
10167// SetInstanceType sets the InstanceType field's value.
10168func (s *CreateNotebookInstanceInput) SetInstanceType(v string) *CreateNotebookInstanceInput {
10169	s.InstanceType = &v
10170	return s
10171}
10172
10173// SetKmsKeyId sets the KmsKeyId field's value.
10174func (s *CreateNotebookInstanceInput) SetKmsKeyId(v string) *CreateNotebookInstanceInput {
10175	s.KmsKeyId = &v
10176	return s
10177}
10178
10179// SetLifecycleConfigName sets the LifecycleConfigName field's value.
10180func (s *CreateNotebookInstanceInput) SetLifecycleConfigName(v string) *CreateNotebookInstanceInput {
10181	s.LifecycleConfigName = &v
10182	return s
10183}
10184
10185// SetNotebookInstanceName sets the NotebookInstanceName field's value.
10186func (s *CreateNotebookInstanceInput) SetNotebookInstanceName(v string) *CreateNotebookInstanceInput {
10187	s.NotebookInstanceName = &v
10188	return s
10189}
10190
10191// SetRoleArn sets the RoleArn field's value.
10192func (s *CreateNotebookInstanceInput) SetRoleArn(v string) *CreateNotebookInstanceInput {
10193	s.RoleArn = &v
10194	return s
10195}
10196
10197// SetRootAccess sets the RootAccess field's value.
10198func (s *CreateNotebookInstanceInput) SetRootAccess(v string) *CreateNotebookInstanceInput {
10199	s.RootAccess = &v
10200	return s
10201}
10202
10203// SetSecurityGroupIds sets the SecurityGroupIds field's value.
10204func (s *CreateNotebookInstanceInput) SetSecurityGroupIds(v []*string) *CreateNotebookInstanceInput {
10205	s.SecurityGroupIds = v
10206	return s
10207}
10208
10209// SetSubnetId sets the SubnetId field's value.
10210func (s *CreateNotebookInstanceInput) SetSubnetId(v string) *CreateNotebookInstanceInput {
10211	s.SubnetId = &v
10212	return s
10213}
10214
10215// SetTags sets the Tags field's value.
10216func (s *CreateNotebookInstanceInput) SetTags(v []*Tag) *CreateNotebookInstanceInput {
10217	s.Tags = v
10218	return s
10219}
10220
10221// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
10222func (s *CreateNotebookInstanceInput) SetVolumeSizeInGB(v int64) *CreateNotebookInstanceInput {
10223	s.VolumeSizeInGB = &v
10224	return s
10225}
10226
10227type CreateNotebookInstanceLifecycleConfigInput struct {
10228	_ struct{} `type:"structure"`
10229
10230	// The name of the lifecycle configuration.
10231	//
10232	// NotebookInstanceLifecycleConfigName is a required field
10233	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
10234
10235	// A shell script that runs only once, when you create a notebook instance.
10236	// The shell script must be a base64-encoded string.
10237	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
10238
10239	// A shell script that runs every time you start a notebook instance, including
10240	// when you create the notebook instance. The shell script must be a base64-encoded
10241	// string.
10242	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
10243}
10244
10245// String returns the string representation
10246func (s CreateNotebookInstanceLifecycleConfigInput) String() string {
10247	return awsutil.Prettify(s)
10248}
10249
10250// GoString returns the string representation
10251func (s CreateNotebookInstanceLifecycleConfigInput) GoString() string {
10252	return s.String()
10253}
10254
10255// Validate inspects the fields of the type to determine if they are valid.
10256func (s *CreateNotebookInstanceLifecycleConfigInput) Validate() error {
10257	invalidParams := request.ErrInvalidParams{Context: "CreateNotebookInstanceLifecycleConfigInput"}
10258	if s.NotebookInstanceLifecycleConfigName == nil {
10259		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
10260	}
10261	if s.OnCreate != nil {
10262		for i, v := range s.OnCreate {
10263			if v == nil {
10264				continue
10265			}
10266			if err := v.Validate(); err != nil {
10267				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnCreate", i), err.(request.ErrInvalidParams))
10268			}
10269		}
10270	}
10271	if s.OnStart != nil {
10272		for i, v := range s.OnStart {
10273			if v == nil {
10274				continue
10275			}
10276			if err := v.Validate(); err != nil {
10277				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnStart", i), err.(request.ErrInvalidParams))
10278			}
10279		}
10280	}
10281
10282	if invalidParams.Len() > 0 {
10283		return invalidParams
10284	}
10285	return nil
10286}
10287
10288// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
10289func (s *CreateNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *CreateNotebookInstanceLifecycleConfigInput {
10290	s.NotebookInstanceLifecycleConfigName = &v
10291	return s
10292}
10293
10294// SetOnCreate sets the OnCreate field's value.
10295func (s *CreateNotebookInstanceLifecycleConfigInput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *CreateNotebookInstanceLifecycleConfigInput {
10296	s.OnCreate = v
10297	return s
10298}
10299
10300// SetOnStart sets the OnStart field's value.
10301func (s *CreateNotebookInstanceLifecycleConfigInput) SetOnStart(v []*NotebookInstanceLifecycleHook) *CreateNotebookInstanceLifecycleConfigInput {
10302	s.OnStart = v
10303	return s
10304}
10305
10306type CreateNotebookInstanceLifecycleConfigOutput struct {
10307	_ struct{} `type:"structure"`
10308
10309	// The Amazon Resource Name (ARN) of the lifecycle configuration.
10310	NotebookInstanceLifecycleConfigArn *string `type:"string"`
10311}
10312
10313// String returns the string representation
10314func (s CreateNotebookInstanceLifecycleConfigOutput) String() string {
10315	return awsutil.Prettify(s)
10316}
10317
10318// GoString returns the string representation
10319func (s CreateNotebookInstanceLifecycleConfigOutput) GoString() string {
10320	return s.String()
10321}
10322
10323// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
10324func (s *CreateNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigArn(v string) *CreateNotebookInstanceLifecycleConfigOutput {
10325	s.NotebookInstanceLifecycleConfigArn = &v
10326	return s
10327}
10328
10329type CreateNotebookInstanceOutput struct {
10330	_ struct{} `type:"structure"`
10331
10332	// The Amazon Resource Name (ARN) of the notebook instance.
10333	NotebookInstanceArn *string `type:"string"`
10334}
10335
10336// String returns the string representation
10337func (s CreateNotebookInstanceOutput) String() string {
10338	return awsutil.Prettify(s)
10339}
10340
10341// GoString returns the string representation
10342func (s CreateNotebookInstanceOutput) GoString() string {
10343	return s.String()
10344}
10345
10346// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
10347func (s *CreateNotebookInstanceOutput) SetNotebookInstanceArn(v string) *CreateNotebookInstanceOutput {
10348	s.NotebookInstanceArn = &v
10349	return s
10350}
10351
10352type CreatePresignedNotebookInstanceUrlInput struct {
10353	_ struct{} `type:"structure"`
10354
10355	// The name of the notebook instance.
10356	//
10357	// NotebookInstanceName is a required field
10358	NotebookInstanceName *string `type:"string" required:"true"`
10359
10360	// The duration of the session, in seconds. The default is 12 hours.
10361	SessionExpirationDurationInSeconds *int64 `min:"1800" type:"integer"`
10362}
10363
10364// String returns the string representation
10365func (s CreatePresignedNotebookInstanceUrlInput) String() string {
10366	return awsutil.Prettify(s)
10367}
10368
10369// GoString returns the string representation
10370func (s CreatePresignedNotebookInstanceUrlInput) GoString() string {
10371	return s.String()
10372}
10373
10374// Validate inspects the fields of the type to determine if they are valid.
10375func (s *CreatePresignedNotebookInstanceUrlInput) Validate() error {
10376	invalidParams := request.ErrInvalidParams{Context: "CreatePresignedNotebookInstanceUrlInput"}
10377	if s.NotebookInstanceName == nil {
10378		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
10379	}
10380	if s.SessionExpirationDurationInSeconds != nil && *s.SessionExpirationDurationInSeconds < 1800 {
10381		invalidParams.Add(request.NewErrParamMinValue("SessionExpirationDurationInSeconds", 1800))
10382	}
10383
10384	if invalidParams.Len() > 0 {
10385		return invalidParams
10386	}
10387	return nil
10388}
10389
10390// SetNotebookInstanceName sets the NotebookInstanceName field's value.
10391func (s *CreatePresignedNotebookInstanceUrlInput) SetNotebookInstanceName(v string) *CreatePresignedNotebookInstanceUrlInput {
10392	s.NotebookInstanceName = &v
10393	return s
10394}
10395
10396// SetSessionExpirationDurationInSeconds sets the SessionExpirationDurationInSeconds field's value.
10397func (s *CreatePresignedNotebookInstanceUrlInput) SetSessionExpirationDurationInSeconds(v int64) *CreatePresignedNotebookInstanceUrlInput {
10398	s.SessionExpirationDurationInSeconds = &v
10399	return s
10400}
10401
10402type CreatePresignedNotebookInstanceUrlOutput struct {
10403	_ struct{} `type:"structure"`
10404
10405	// A JSON object that contains the URL string.
10406	AuthorizedUrl *string `type:"string"`
10407}
10408
10409// String returns the string representation
10410func (s CreatePresignedNotebookInstanceUrlOutput) String() string {
10411	return awsutil.Prettify(s)
10412}
10413
10414// GoString returns the string representation
10415func (s CreatePresignedNotebookInstanceUrlOutput) GoString() string {
10416	return s.String()
10417}
10418
10419// SetAuthorizedUrl sets the AuthorizedUrl field's value.
10420func (s *CreatePresignedNotebookInstanceUrlOutput) SetAuthorizedUrl(v string) *CreatePresignedNotebookInstanceUrlOutput {
10421	s.AuthorizedUrl = &v
10422	return s
10423}
10424
10425type CreateTrainingJobInput struct {
10426	_ struct{} `type:"structure"`
10427
10428	// The registry path of the Docker image that contains the training algorithm
10429	// and algorithm-specific metadata, including the input mode. For more information
10430	// about algorithms provided by Amazon SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
10431	// For information about providing your own algorithms, see Using Your Own Algorithms
10432	// with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
10433	//
10434	// AlgorithmSpecification is a required field
10435	AlgorithmSpecification *AlgorithmSpecification `type:"structure" required:"true"`
10436
10437	// Contains information about the output location for managed spot training
10438	// checkpoint data.
10439	CheckpointConfig *CheckpointConfig `type:"structure"`
10440
10441	// To encrypt all communications between ML compute instances in distributed
10442	// training, choose True. Encryption provides greater security for distributed
10443	// training, but training might take longer. How long it takes depends on the
10444	// amount of communication between compute instances, especially if you use
10445	// a deep learning algorithm in distributed training. For more information,
10446	// see Protect Communications Between ML Compute Instances in a Distributed
10447	// Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html).
10448	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
10449
10450	// To train models using managed spot training, choose True. Managed spot training
10451	// provides a fully managed and scalable infrastructure for training machine
10452	// learning models. this option is useful when training jobs can be interrupted
10453	// and when there is flexibility when the training job is run.
10454	//
10455	// The complete and intermediate results of jobs are stored in an Amazon S3
10456	// bucket, and can be used as a starting point to train models incrementally.
10457	// Amazon SageMaker provides metrics and logs in CloudWatch. They can be used
10458	// to see when managed spot training jobs are running, interrupted, resumed,
10459	// or completed.
10460	EnableManagedSpotTraining *bool `type:"boolean"`
10461
10462	// Isolates the training container. No inbound or outbound network calls can
10463	// be made, except for calls between peers within a training cluster for distributed
10464	// training. If you enable network isolation for training jobs that are configured
10465	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
10466	// artifacts through the specified VPC, but the training container does not
10467	// have network access.
10468	//
10469	// The Semantic Segmentation built-in algorithm does not support network isolation.
10470	EnableNetworkIsolation *bool `type:"boolean"`
10471
10472	// Algorithm-specific parameters that influence the quality of the model. You
10473	// set hyperparameters before you start the learning process. For a list of
10474	// hyperparameters for each training algorithm provided by Amazon SageMaker,
10475	// see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
10476	//
10477	// You can specify a maximum of 100 hyperparameters. Each hyperparameter is
10478	// a key-value pair. Each key and value is limited to 256 characters, as specified
10479	// by the Length Constraint.
10480	HyperParameters map[string]*string `type:"map"`
10481
10482	// An array of Channel objects. Each channel is a named input source. InputDataConfig
10483	// describes the input data and its location.
10484	//
10485	// Algorithms can accept input data from one or more channels. For example,
10486	// an algorithm might have two channels of input data, training_data and validation_data.
10487	// The configuration for each channel provides the S3, EFS, or FSx location
10488	// where the input data is stored. It also provides information about the stored
10489	// data: the MIME type, compression method, and whether the data is wrapped
10490	// in RecordIO format.
10491	//
10492	// Depending on the input mode that the algorithm supports, Amazon SageMaker
10493	// either copies input data files from an S3 bucket to a local directory in
10494	// the Docker container, or makes it available as input streams. For example,
10495	// if you specify an EFS location, input data files will be made available as
10496	// input streams. They do not need to be downloaded.
10497	InputDataConfig []*Channel `min:"1" type:"list"`
10498
10499	// Specifies the path to the S3 location where you want to store model artifacts.
10500	// Amazon SageMaker creates subfolders for the artifacts.
10501	//
10502	// OutputDataConfig is a required field
10503	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
10504
10505	// The resources, including the ML compute instances and ML storage volumes,
10506	// to use for model training.
10507	//
10508	// ML storage volumes store model artifacts and incremental states. Training
10509	// algorithms might also use ML storage volumes for scratch space. If you want
10510	// Amazon SageMaker to use the ML storage volume to store the training data,
10511	// choose File as the TrainingInputMode in the algorithm specification. For
10512	// distributed training algorithms, specify an instance count greater than 1.
10513	//
10514	// ResourceConfig is a required field
10515	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
10516
10517	// The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume
10518	// to perform tasks on your behalf.
10519	//
10520	// During model training, Amazon SageMaker needs your permission to read input
10521	// data from an S3 bucket, download a Docker image that contains training code,
10522	// write model artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs,
10523	// and publish metrics to Amazon CloudWatch. You grant permissions for all of
10524	// these tasks to an IAM role. For more information, see Amazon SageMaker Roles
10525	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
10526	//
10527	// To be able to pass this role to Amazon SageMaker, the caller of this API
10528	// must have the iam:PassRole permission.
10529	//
10530	// RoleArn is a required field
10531	RoleArn *string `min:"20" type:"string" required:"true"`
10532
10533	// Specifies a limit to how long a model training job can run. When the job
10534	// reaches the time limit, Amazon SageMaker ends the training job. Use this
10535	// API to cap model training costs.
10536	//
10537	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
10538	// delays job termination for 120 seconds. Algorithms can use this 120-second
10539	// window to save the model artifacts, so the results of training are not lost.
10540	//
10541	// StoppingCondition is a required field
10542	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
10543
10544	// An array of key-value pairs. For more information, see Using Cost Allocation
10545	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
10546	// in the AWS Billing and Cost Management User Guide.
10547	Tags []*Tag `type:"list"`
10548
10549	// The name of the training job. The name must be unique within an AWS Region
10550	// in an AWS account.
10551	//
10552	// TrainingJobName is a required field
10553	TrainingJobName *string `min:"1" type:"string" required:"true"`
10554
10555	// A VpcConfig object that specifies the VPC that you want your training job
10556	// to connect to. Control access to and from your training container by configuring
10557	// the VPC. For more information, see Protect Training Jobs by Using an Amazon
10558	// Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
10559	VpcConfig *VpcConfig `type:"structure"`
10560}
10561
10562// String returns the string representation
10563func (s CreateTrainingJobInput) String() string {
10564	return awsutil.Prettify(s)
10565}
10566
10567// GoString returns the string representation
10568func (s CreateTrainingJobInput) GoString() string {
10569	return s.String()
10570}
10571
10572// Validate inspects the fields of the type to determine if they are valid.
10573func (s *CreateTrainingJobInput) Validate() error {
10574	invalidParams := request.ErrInvalidParams{Context: "CreateTrainingJobInput"}
10575	if s.AlgorithmSpecification == nil {
10576		invalidParams.Add(request.NewErrParamRequired("AlgorithmSpecification"))
10577	}
10578	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
10579		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
10580	}
10581	if s.OutputDataConfig == nil {
10582		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
10583	}
10584	if s.ResourceConfig == nil {
10585		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
10586	}
10587	if s.RoleArn == nil {
10588		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
10589	}
10590	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
10591		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
10592	}
10593	if s.StoppingCondition == nil {
10594		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
10595	}
10596	if s.TrainingJobName == nil {
10597		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
10598	}
10599	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
10600		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
10601	}
10602	if s.AlgorithmSpecification != nil {
10603		if err := s.AlgorithmSpecification.Validate(); err != nil {
10604			invalidParams.AddNested("AlgorithmSpecification", err.(request.ErrInvalidParams))
10605		}
10606	}
10607	if s.CheckpointConfig != nil {
10608		if err := s.CheckpointConfig.Validate(); err != nil {
10609			invalidParams.AddNested("CheckpointConfig", err.(request.ErrInvalidParams))
10610		}
10611	}
10612	if s.InputDataConfig != nil {
10613		for i, v := range s.InputDataConfig {
10614			if v == nil {
10615				continue
10616			}
10617			if err := v.Validate(); err != nil {
10618				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
10619			}
10620		}
10621	}
10622	if s.OutputDataConfig != nil {
10623		if err := s.OutputDataConfig.Validate(); err != nil {
10624			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
10625		}
10626	}
10627	if s.ResourceConfig != nil {
10628		if err := s.ResourceConfig.Validate(); err != nil {
10629			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
10630		}
10631	}
10632	if s.StoppingCondition != nil {
10633		if err := s.StoppingCondition.Validate(); err != nil {
10634			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
10635		}
10636	}
10637	if s.Tags != nil {
10638		for i, v := range s.Tags {
10639			if v == nil {
10640				continue
10641			}
10642			if err := v.Validate(); err != nil {
10643				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10644			}
10645		}
10646	}
10647	if s.VpcConfig != nil {
10648		if err := s.VpcConfig.Validate(); err != nil {
10649			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
10650		}
10651	}
10652
10653	if invalidParams.Len() > 0 {
10654		return invalidParams
10655	}
10656	return nil
10657}
10658
10659// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
10660func (s *CreateTrainingJobInput) SetAlgorithmSpecification(v *AlgorithmSpecification) *CreateTrainingJobInput {
10661	s.AlgorithmSpecification = v
10662	return s
10663}
10664
10665// SetCheckpointConfig sets the CheckpointConfig field's value.
10666func (s *CreateTrainingJobInput) SetCheckpointConfig(v *CheckpointConfig) *CreateTrainingJobInput {
10667	s.CheckpointConfig = v
10668	return s
10669}
10670
10671// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
10672func (s *CreateTrainingJobInput) SetEnableInterContainerTrafficEncryption(v bool) *CreateTrainingJobInput {
10673	s.EnableInterContainerTrafficEncryption = &v
10674	return s
10675}
10676
10677// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
10678func (s *CreateTrainingJobInput) SetEnableManagedSpotTraining(v bool) *CreateTrainingJobInput {
10679	s.EnableManagedSpotTraining = &v
10680	return s
10681}
10682
10683// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
10684func (s *CreateTrainingJobInput) SetEnableNetworkIsolation(v bool) *CreateTrainingJobInput {
10685	s.EnableNetworkIsolation = &v
10686	return s
10687}
10688
10689// SetHyperParameters sets the HyperParameters field's value.
10690func (s *CreateTrainingJobInput) SetHyperParameters(v map[string]*string) *CreateTrainingJobInput {
10691	s.HyperParameters = v
10692	return s
10693}
10694
10695// SetInputDataConfig sets the InputDataConfig field's value.
10696func (s *CreateTrainingJobInput) SetInputDataConfig(v []*Channel) *CreateTrainingJobInput {
10697	s.InputDataConfig = v
10698	return s
10699}
10700
10701// SetOutputDataConfig sets the OutputDataConfig field's value.
10702func (s *CreateTrainingJobInput) SetOutputDataConfig(v *OutputDataConfig) *CreateTrainingJobInput {
10703	s.OutputDataConfig = v
10704	return s
10705}
10706
10707// SetResourceConfig sets the ResourceConfig field's value.
10708func (s *CreateTrainingJobInput) SetResourceConfig(v *ResourceConfig) *CreateTrainingJobInput {
10709	s.ResourceConfig = v
10710	return s
10711}
10712
10713// SetRoleArn sets the RoleArn field's value.
10714func (s *CreateTrainingJobInput) SetRoleArn(v string) *CreateTrainingJobInput {
10715	s.RoleArn = &v
10716	return s
10717}
10718
10719// SetStoppingCondition sets the StoppingCondition field's value.
10720func (s *CreateTrainingJobInput) SetStoppingCondition(v *StoppingCondition) *CreateTrainingJobInput {
10721	s.StoppingCondition = v
10722	return s
10723}
10724
10725// SetTags sets the Tags field's value.
10726func (s *CreateTrainingJobInput) SetTags(v []*Tag) *CreateTrainingJobInput {
10727	s.Tags = v
10728	return s
10729}
10730
10731// SetTrainingJobName sets the TrainingJobName field's value.
10732func (s *CreateTrainingJobInput) SetTrainingJobName(v string) *CreateTrainingJobInput {
10733	s.TrainingJobName = &v
10734	return s
10735}
10736
10737// SetVpcConfig sets the VpcConfig field's value.
10738func (s *CreateTrainingJobInput) SetVpcConfig(v *VpcConfig) *CreateTrainingJobInput {
10739	s.VpcConfig = v
10740	return s
10741}
10742
10743type CreateTrainingJobOutput struct {
10744	_ struct{} `type:"structure"`
10745
10746	// The Amazon Resource Name (ARN) of the training job.
10747	//
10748	// TrainingJobArn is a required field
10749	TrainingJobArn *string `type:"string" required:"true"`
10750}
10751
10752// String returns the string representation
10753func (s CreateTrainingJobOutput) String() string {
10754	return awsutil.Prettify(s)
10755}
10756
10757// GoString returns the string representation
10758func (s CreateTrainingJobOutput) GoString() string {
10759	return s.String()
10760}
10761
10762// SetTrainingJobArn sets the TrainingJobArn field's value.
10763func (s *CreateTrainingJobOutput) SetTrainingJobArn(v string) *CreateTrainingJobOutput {
10764	s.TrainingJobArn = &v
10765	return s
10766}
10767
10768type CreateTransformJobInput struct {
10769	_ struct{} `type:"structure"`
10770
10771	// Specifies the number of records to include in a mini-batch for an HTTP inference
10772	// request. A record is a single unit of input data that inference can be made
10773	// on. For example, a single line in a CSV file is a record.
10774	//
10775	// To enable the batch strategy, you must set SplitType to Line, RecordIO, or
10776	// TFRecord.
10777	//
10778	// To use only one record when making an HTTP invocation request to a container,
10779	// set BatchStrategy to SingleRecord and SplitType to Line.
10780	//
10781	// To fit as many records in a mini-batch as can fit within the MaxPayloadInMB
10782	// limit, set BatchStrategy to MultiRecord and SplitType to Line.
10783	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
10784
10785	// The data structure used to specify the data to be used for inference in a
10786	// batch transform job and to associate the data that is relevant to the prediction
10787	// results in the output. The input filter provided allows you to exclude input
10788	// data that is not needed for inference in a batch transform job. The output
10789	// filter provided allows you to include input data relevant to interpreting
10790	// the predictions in the output from the job. For more information, see Associate
10791	// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
10792	DataProcessing *DataProcessing `type:"structure"`
10793
10794	// The environment variables to set in the Docker container. We support up to
10795	// 16 key and values entries in the map.
10796	Environment map[string]*string `type:"map"`
10797
10798	// The maximum number of parallel requests that can be sent to each instance
10799	// in a transform job. If MaxConcurrentTransforms is set to 0 or left unset,
10800	// Amazon SageMaker checks the optional execution-parameters to determine the
10801	// optimal settings for your chosen algorithm. If the execution-parameters endpoint
10802	// is not enabled, the default value is 1. For more information on execution-parameters,
10803	// see How Containers Serve Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests).
10804	// For built-in algorithms, you don't need to set a value for MaxConcurrentTransforms.
10805	MaxConcurrentTransforms *int64 `type:"integer"`
10806
10807	// The maximum allowed size of the payload, in MB. A payload is the data portion
10808	// of a record (without metadata). The value in MaxPayloadInMB must be greater
10809	// than, or equal to, the size of a single record. To estimate the size of a
10810	// record in MB, divide the size of your dataset by the number of records. To
10811	// ensure that the records fit within the maximum payload size, we recommend
10812	// using a slightly larger value. The default value is 6 MB.
10813	//
10814	// For cases where the payload might be arbitrarily large and is transmitted
10815	// using HTTP chunked encoding, set the value to 0. This feature works only
10816	// in supported algorithms. Currently, Amazon SageMaker built-in algorithms
10817	// do not support HTTP chunked encoding.
10818	MaxPayloadInMB *int64 `type:"integer"`
10819
10820	// The name of the model that you want to use for the transform job. ModelName
10821	// must be the name of an existing Amazon SageMaker model within an AWS Region
10822	// in an AWS account.
10823	//
10824	// ModelName is a required field
10825	ModelName *string `type:"string" required:"true"`
10826
10827	// (Optional) An array of key-value pairs. For more information, see Using Cost
10828	// Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
10829	// in the AWS Billing and Cost Management User Guide.
10830	Tags []*Tag `type:"list"`
10831
10832	// Describes the input source and the way the transform job consumes it.
10833	//
10834	// TransformInput is a required field
10835	TransformInput *TransformInput `type:"structure" required:"true"`
10836
10837	// The name of the transform job. The name must be unique within an AWS Region
10838	// in an AWS account.
10839	//
10840	// TransformJobName is a required field
10841	TransformJobName *string `min:"1" type:"string" required:"true"`
10842
10843	// Describes the results of the transform job.
10844	//
10845	// TransformOutput is a required field
10846	TransformOutput *TransformOutput `type:"structure" required:"true"`
10847
10848	// Describes the resources, including ML instance types and ML instance count,
10849	// to use for the transform job.
10850	//
10851	// TransformResources is a required field
10852	TransformResources *TransformResources `type:"structure" required:"true"`
10853}
10854
10855// String returns the string representation
10856func (s CreateTransformJobInput) String() string {
10857	return awsutil.Prettify(s)
10858}
10859
10860// GoString returns the string representation
10861func (s CreateTransformJobInput) GoString() string {
10862	return s.String()
10863}
10864
10865// Validate inspects the fields of the type to determine if they are valid.
10866func (s *CreateTransformJobInput) Validate() error {
10867	invalidParams := request.ErrInvalidParams{Context: "CreateTransformJobInput"}
10868	if s.ModelName == nil {
10869		invalidParams.Add(request.NewErrParamRequired("ModelName"))
10870	}
10871	if s.TransformInput == nil {
10872		invalidParams.Add(request.NewErrParamRequired("TransformInput"))
10873	}
10874	if s.TransformJobName == nil {
10875		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
10876	}
10877	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
10878		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
10879	}
10880	if s.TransformOutput == nil {
10881		invalidParams.Add(request.NewErrParamRequired("TransformOutput"))
10882	}
10883	if s.TransformResources == nil {
10884		invalidParams.Add(request.NewErrParamRequired("TransformResources"))
10885	}
10886	if s.Tags != nil {
10887		for i, v := range s.Tags {
10888			if v == nil {
10889				continue
10890			}
10891			if err := v.Validate(); err != nil {
10892				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10893			}
10894		}
10895	}
10896	if s.TransformInput != nil {
10897		if err := s.TransformInput.Validate(); err != nil {
10898			invalidParams.AddNested("TransformInput", err.(request.ErrInvalidParams))
10899		}
10900	}
10901	if s.TransformOutput != nil {
10902		if err := s.TransformOutput.Validate(); err != nil {
10903			invalidParams.AddNested("TransformOutput", err.(request.ErrInvalidParams))
10904		}
10905	}
10906	if s.TransformResources != nil {
10907		if err := s.TransformResources.Validate(); err != nil {
10908			invalidParams.AddNested("TransformResources", err.(request.ErrInvalidParams))
10909		}
10910	}
10911
10912	if invalidParams.Len() > 0 {
10913		return invalidParams
10914	}
10915	return nil
10916}
10917
10918// SetBatchStrategy sets the BatchStrategy field's value.
10919func (s *CreateTransformJobInput) SetBatchStrategy(v string) *CreateTransformJobInput {
10920	s.BatchStrategy = &v
10921	return s
10922}
10923
10924// SetDataProcessing sets the DataProcessing field's value.
10925func (s *CreateTransformJobInput) SetDataProcessing(v *DataProcessing) *CreateTransformJobInput {
10926	s.DataProcessing = v
10927	return s
10928}
10929
10930// SetEnvironment sets the Environment field's value.
10931func (s *CreateTransformJobInput) SetEnvironment(v map[string]*string) *CreateTransformJobInput {
10932	s.Environment = v
10933	return s
10934}
10935
10936// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
10937func (s *CreateTransformJobInput) SetMaxConcurrentTransforms(v int64) *CreateTransformJobInput {
10938	s.MaxConcurrentTransforms = &v
10939	return s
10940}
10941
10942// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
10943func (s *CreateTransformJobInput) SetMaxPayloadInMB(v int64) *CreateTransformJobInput {
10944	s.MaxPayloadInMB = &v
10945	return s
10946}
10947
10948// SetModelName sets the ModelName field's value.
10949func (s *CreateTransformJobInput) SetModelName(v string) *CreateTransformJobInput {
10950	s.ModelName = &v
10951	return s
10952}
10953
10954// SetTags sets the Tags field's value.
10955func (s *CreateTransformJobInput) SetTags(v []*Tag) *CreateTransformJobInput {
10956	s.Tags = v
10957	return s
10958}
10959
10960// SetTransformInput sets the TransformInput field's value.
10961func (s *CreateTransformJobInput) SetTransformInput(v *TransformInput) *CreateTransformJobInput {
10962	s.TransformInput = v
10963	return s
10964}
10965
10966// SetTransformJobName sets the TransformJobName field's value.
10967func (s *CreateTransformJobInput) SetTransformJobName(v string) *CreateTransformJobInput {
10968	s.TransformJobName = &v
10969	return s
10970}
10971
10972// SetTransformOutput sets the TransformOutput field's value.
10973func (s *CreateTransformJobInput) SetTransformOutput(v *TransformOutput) *CreateTransformJobInput {
10974	s.TransformOutput = v
10975	return s
10976}
10977
10978// SetTransformResources sets the TransformResources field's value.
10979func (s *CreateTransformJobInput) SetTransformResources(v *TransformResources) *CreateTransformJobInput {
10980	s.TransformResources = v
10981	return s
10982}
10983
10984type CreateTransformJobOutput struct {
10985	_ struct{} `type:"structure"`
10986
10987	// The Amazon Resource Name (ARN) of the transform job.
10988	//
10989	// TransformJobArn is a required field
10990	TransformJobArn *string `type:"string" required:"true"`
10991}
10992
10993// String returns the string representation
10994func (s CreateTransformJobOutput) String() string {
10995	return awsutil.Prettify(s)
10996}
10997
10998// GoString returns the string representation
10999func (s CreateTransformJobOutput) GoString() string {
11000	return s.String()
11001}
11002
11003// SetTransformJobArn sets the TransformJobArn field's value.
11004func (s *CreateTransformJobOutput) SetTransformJobArn(v string) *CreateTransformJobOutput {
11005	s.TransformJobArn = &v
11006	return s
11007}
11008
11009type CreateWorkteamInput struct {
11010	_ struct{} `type:"structure"`
11011
11012	// A description of the work team.
11013	//
11014	// Description is a required field
11015	Description *string `min:"1" type:"string" required:"true"`
11016
11017	// A list of MemberDefinition objects that contains objects that identify the
11018	// Amazon Cognito user pool that makes up the work team. For more information,
11019	// see Amazon Cognito User Pools (https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html).
11020	//
11021	// All of the CognitoMemberDefinition objects that make up the member definition
11022	// must have the same ClientId and UserPool values.
11023	//
11024	// MemberDefinitions is a required field
11025	MemberDefinitions []*MemberDefinition `min:"1" type:"list" required:"true"`
11026
11027	// Configures notification of workers regarding available or expiring work items.
11028	NotificationConfiguration *NotificationConfiguration `type:"structure"`
11029
11030	// An array of key-value pairs.
11031	//
11032	// For more information, see Resource Tag (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)
11033	// and Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
11034	// in the AWS Billing and Cost Management User Guide.
11035	Tags []*Tag `type:"list"`
11036
11037	// The name of the work team. Use this name to identify the work team.
11038	//
11039	// WorkteamName is a required field
11040	WorkteamName *string `min:"1" type:"string" required:"true"`
11041}
11042
11043// String returns the string representation
11044func (s CreateWorkteamInput) String() string {
11045	return awsutil.Prettify(s)
11046}
11047
11048// GoString returns the string representation
11049func (s CreateWorkteamInput) GoString() string {
11050	return s.String()
11051}
11052
11053// Validate inspects the fields of the type to determine if they are valid.
11054func (s *CreateWorkteamInput) Validate() error {
11055	invalidParams := request.ErrInvalidParams{Context: "CreateWorkteamInput"}
11056	if s.Description == nil {
11057		invalidParams.Add(request.NewErrParamRequired("Description"))
11058	}
11059	if s.Description != nil && len(*s.Description) < 1 {
11060		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
11061	}
11062	if s.MemberDefinitions == nil {
11063		invalidParams.Add(request.NewErrParamRequired("MemberDefinitions"))
11064	}
11065	if s.MemberDefinitions != nil && len(s.MemberDefinitions) < 1 {
11066		invalidParams.Add(request.NewErrParamMinLen("MemberDefinitions", 1))
11067	}
11068	if s.WorkteamName == nil {
11069		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
11070	}
11071	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
11072		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
11073	}
11074	if s.MemberDefinitions != nil {
11075		for i, v := range s.MemberDefinitions {
11076			if v == nil {
11077				continue
11078			}
11079			if err := v.Validate(); err != nil {
11080				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberDefinitions", i), err.(request.ErrInvalidParams))
11081			}
11082		}
11083	}
11084	if s.Tags != nil {
11085		for i, v := range s.Tags {
11086			if v == nil {
11087				continue
11088			}
11089			if err := v.Validate(); err != nil {
11090				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
11091			}
11092		}
11093	}
11094
11095	if invalidParams.Len() > 0 {
11096		return invalidParams
11097	}
11098	return nil
11099}
11100
11101// SetDescription sets the Description field's value.
11102func (s *CreateWorkteamInput) SetDescription(v string) *CreateWorkteamInput {
11103	s.Description = &v
11104	return s
11105}
11106
11107// SetMemberDefinitions sets the MemberDefinitions field's value.
11108func (s *CreateWorkteamInput) SetMemberDefinitions(v []*MemberDefinition) *CreateWorkteamInput {
11109	s.MemberDefinitions = v
11110	return s
11111}
11112
11113// SetNotificationConfiguration sets the NotificationConfiguration field's value.
11114func (s *CreateWorkteamInput) SetNotificationConfiguration(v *NotificationConfiguration) *CreateWorkteamInput {
11115	s.NotificationConfiguration = v
11116	return s
11117}
11118
11119// SetTags sets the Tags field's value.
11120func (s *CreateWorkteamInput) SetTags(v []*Tag) *CreateWorkteamInput {
11121	s.Tags = v
11122	return s
11123}
11124
11125// SetWorkteamName sets the WorkteamName field's value.
11126func (s *CreateWorkteamInput) SetWorkteamName(v string) *CreateWorkteamInput {
11127	s.WorkteamName = &v
11128	return s
11129}
11130
11131type CreateWorkteamOutput struct {
11132	_ struct{} `type:"structure"`
11133
11134	// The Amazon Resource Name (ARN) of the work team. You can use this ARN to
11135	// identify the work team.
11136	WorkteamArn *string `type:"string"`
11137}
11138
11139// String returns the string representation
11140func (s CreateWorkteamOutput) String() string {
11141	return awsutil.Prettify(s)
11142}
11143
11144// GoString returns the string representation
11145func (s CreateWorkteamOutput) GoString() string {
11146	return s.String()
11147}
11148
11149// SetWorkteamArn sets the WorkteamArn field's value.
11150func (s *CreateWorkteamOutput) SetWorkteamArn(v string) *CreateWorkteamOutput {
11151	s.WorkteamArn = &v
11152	return s
11153}
11154
11155// The data structure used to specify the data to be used for inference in a
11156// batch transform job and to associate the data that is relevant to the prediction
11157// results in the output. The input filter provided allows you to exclude input
11158// data that is not needed for inference in a batch transform job. The output
11159// filter provided allows you to include input data relevant to interpreting
11160// the predictions in the output from the job. For more information, see Associate
11161// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
11162type DataProcessing struct {
11163	_ struct{} `type:"structure"`
11164
11165	// A JSONPath (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html#data-processing-operators)
11166	// expression used to select a portion of the input data to pass to the algorithm.
11167	// Use the InputFilter parameter to exclude fields, such as an ID column, from
11168	// the input. If you want Amazon SageMaker to pass the entire input dataset
11169	// to the algorithm, accept the default value $.
11170	//
11171	// Examples: "$", "$[1:]", "$.features"
11172	InputFilter *string `type:"string"`
11173
11174	// Specifies the source of the data to join with the transformed data. The valid
11175	// values are None and Input The default value is None which specifies not to
11176	// join the input with the transformed data. If you want the batch transform
11177	// job to join the original input data with the transformed data, set JoinSource
11178	// to Input.
11179	//
11180	// For JSON or JSONLines objects, such as a JSON array, Amazon SageMaker adds
11181	// the transformed data to the input JSON object in an attribute called SageMakerOutput.
11182	// The joined result for JSON must be a key-value pair object. If the input
11183	// is not a key-value pair object, Amazon SageMaker creates a new JSON file.
11184	// In the new JSON file, and the input data is stored under the SageMakerInput
11185	// key and the results are stored in SageMakerOutput.
11186	//
11187	// For CSV files, Amazon SageMaker combines the transformed data with the input
11188	// data at the end of the input data and stores it in the output file. The joined
11189	// data has the joined input data followed by the transformed data and the output
11190	// is a CSV file.
11191	JoinSource *string `type:"string" enum:"JoinSource"`
11192
11193	// A JSONPath (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html#data-processing-operators)
11194	// expression used to select a portion of the joined dataset to save in the
11195	// output file for a batch transform job. If you want Amazon SageMaker to store
11196	// the entire input dataset in the output file, leave the default value, $.
11197	// If you specify indexes that aren't within the dimension size of the joined
11198	// dataset, you get an error.
11199	//
11200	// Examples: "$", "$[0,5:]", "$['id','SageMakerOutput']"
11201	OutputFilter *string `type:"string"`
11202}
11203
11204// String returns the string representation
11205func (s DataProcessing) String() string {
11206	return awsutil.Prettify(s)
11207}
11208
11209// GoString returns the string representation
11210func (s DataProcessing) GoString() string {
11211	return s.String()
11212}
11213
11214// SetInputFilter sets the InputFilter field's value.
11215func (s *DataProcessing) SetInputFilter(v string) *DataProcessing {
11216	s.InputFilter = &v
11217	return s
11218}
11219
11220// SetJoinSource sets the JoinSource field's value.
11221func (s *DataProcessing) SetJoinSource(v string) *DataProcessing {
11222	s.JoinSource = &v
11223	return s
11224}
11225
11226// SetOutputFilter sets the OutputFilter field's value.
11227func (s *DataProcessing) SetOutputFilter(v string) *DataProcessing {
11228	s.OutputFilter = &v
11229	return s
11230}
11231
11232// Describes the location of the channel data.
11233type DataSource struct {
11234	_ struct{} `type:"structure"`
11235
11236	// The file system that is associated with a channel.
11237	FileSystemDataSource *FileSystemDataSource `type:"structure"`
11238
11239	// The S3 location of the data source that is associated with a channel.
11240	S3DataSource *S3DataSource `type:"structure"`
11241}
11242
11243// String returns the string representation
11244func (s DataSource) String() string {
11245	return awsutil.Prettify(s)
11246}
11247
11248// GoString returns the string representation
11249func (s DataSource) GoString() string {
11250	return s.String()
11251}
11252
11253// Validate inspects the fields of the type to determine if they are valid.
11254func (s *DataSource) Validate() error {
11255	invalidParams := request.ErrInvalidParams{Context: "DataSource"}
11256	if s.FileSystemDataSource != nil {
11257		if err := s.FileSystemDataSource.Validate(); err != nil {
11258			invalidParams.AddNested("FileSystemDataSource", err.(request.ErrInvalidParams))
11259		}
11260	}
11261	if s.S3DataSource != nil {
11262		if err := s.S3DataSource.Validate(); err != nil {
11263			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
11264		}
11265	}
11266
11267	if invalidParams.Len() > 0 {
11268		return invalidParams
11269	}
11270	return nil
11271}
11272
11273// SetFileSystemDataSource sets the FileSystemDataSource field's value.
11274func (s *DataSource) SetFileSystemDataSource(v *FileSystemDataSource) *DataSource {
11275	s.FileSystemDataSource = v
11276	return s
11277}
11278
11279// SetS3DataSource sets the S3DataSource field's value.
11280func (s *DataSource) SetS3DataSource(v *S3DataSource) *DataSource {
11281	s.S3DataSource = v
11282	return s
11283}
11284
11285type DeleteAlgorithmInput struct {
11286	_ struct{} `type:"structure"`
11287
11288	// The name of the algorithm to delete.
11289	//
11290	// AlgorithmName is a required field
11291	AlgorithmName *string `min:"1" type:"string" required:"true"`
11292}
11293
11294// String returns the string representation
11295func (s DeleteAlgorithmInput) String() string {
11296	return awsutil.Prettify(s)
11297}
11298
11299// GoString returns the string representation
11300func (s DeleteAlgorithmInput) GoString() string {
11301	return s.String()
11302}
11303
11304// Validate inspects the fields of the type to determine if they are valid.
11305func (s *DeleteAlgorithmInput) Validate() error {
11306	invalidParams := request.ErrInvalidParams{Context: "DeleteAlgorithmInput"}
11307	if s.AlgorithmName == nil {
11308		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
11309	}
11310	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
11311		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
11312	}
11313
11314	if invalidParams.Len() > 0 {
11315		return invalidParams
11316	}
11317	return nil
11318}
11319
11320// SetAlgorithmName sets the AlgorithmName field's value.
11321func (s *DeleteAlgorithmInput) SetAlgorithmName(v string) *DeleteAlgorithmInput {
11322	s.AlgorithmName = &v
11323	return s
11324}
11325
11326type DeleteAlgorithmOutput struct {
11327	_ struct{} `type:"structure"`
11328}
11329
11330// String returns the string representation
11331func (s DeleteAlgorithmOutput) String() string {
11332	return awsutil.Prettify(s)
11333}
11334
11335// GoString returns the string representation
11336func (s DeleteAlgorithmOutput) GoString() string {
11337	return s.String()
11338}
11339
11340type DeleteCodeRepositoryInput struct {
11341	_ struct{} `type:"structure"`
11342
11343	// The name of the Git repository to delete.
11344	//
11345	// CodeRepositoryName is a required field
11346	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
11347}
11348
11349// String returns the string representation
11350func (s DeleteCodeRepositoryInput) String() string {
11351	return awsutil.Prettify(s)
11352}
11353
11354// GoString returns the string representation
11355func (s DeleteCodeRepositoryInput) GoString() string {
11356	return s.String()
11357}
11358
11359// Validate inspects the fields of the type to determine if they are valid.
11360func (s *DeleteCodeRepositoryInput) Validate() error {
11361	invalidParams := request.ErrInvalidParams{Context: "DeleteCodeRepositoryInput"}
11362	if s.CodeRepositoryName == nil {
11363		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
11364	}
11365	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
11366		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
11367	}
11368
11369	if invalidParams.Len() > 0 {
11370		return invalidParams
11371	}
11372	return nil
11373}
11374
11375// SetCodeRepositoryName sets the CodeRepositoryName field's value.
11376func (s *DeleteCodeRepositoryInput) SetCodeRepositoryName(v string) *DeleteCodeRepositoryInput {
11377	s.CodeRepositoryName = &v
11378	return s
11379}
11380
11381type DeleteCodeRepositoryOutput struct {
11382	_ struct{} `type:"structure"`
11383}
11384
11385// String returns the string representation
11386func (s DeleteCodeRepositoryOutput) String() string {
11387	return awsutil.Prettify(s)
11388}
11389
11390// GoString returns the string representation
11391func (s DeleteCodeRepositoryOutput) GoString() string {
11392	return s.String()
11393}
11394
11395type DeleteEndpointConfigInput struct {
11396	_ struct{} `type:"structure"`
11397
11398	// The name of the endpoint configuration that you want to delete.
11399	//
11400	// EndpointConfigName is a required field
11401	EndpointConfigName *string `type:"string" required:"true"`
11402}
11403
11404// String returns the string representation
11405func (s DeleteEndpointConfigInput) String() string {
11406	return awsutil.Prettify(s)
11407}
11408
11409// GoString returns the string representation
11410func (s DeleteEndpointConfigInput) GoString() string {
11411	return s.String()
11412}
11413
11414// Validate inspects the fields of the type to determine if they are valid.
11415func (s *DeleteEndpointConfigInput) Validate() error {
11416	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointConfigInput"}
11417	if s.EndpointConfigName == nil {
11418		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
11419	}
11420
11421	if invalidParams.Len() > 0 {
11422		return invalidParams
11423	}
11424	return nil
11425}
11426
11427// SetEndpointConfigName sets the EndpointConfigName field's value.
11428func (s *DeleteEndpointConfigInput) SetEndpointConfigName(v string) *DeleteEndpointConfigInput {
11429	s.EndpointConfigName = &v
11430	return s
11431}
11432
11433type DeleteEndpointConfigOutput struct {
11434	_ struct{} `type:"structure"`
11435}
11436
11437// String returns the string representation
11438func (s DeleteEndpointConfigOutput) String() string {
11439	return awsutil.Prettify(s)
11440}
11441
11442// GoString returns the string representation
11443func (s DeleteEndpointConfigOutput) GoString() string {
11444	return s.String()
11445}
11446
11447type DeleteEndpointInput struct {
11448	_ struct{} `type:"structure"`
11449
11450	// The name of the endpoint that you want to delete.
11451	//
11452	// EndpointName is a required field
11453	EndpointName *string `type:"string" required:"true"`
11454}
11455
11456// String returns the string representation
11457func (s DeleteEndpointInput) String() string {
11458	return awsutil.Prettify(s)
11459}
11460
11461// GoString returns the string representation
11462func (s DeleteEndpointInput) GoString() string {
11463	return s.String()
11464}
11465
11466// Validate inspects the fields of the type to determine if they are valid.
11467func (s *DeleteEndpointInput) Validate() error {
11468	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
11469	if s.EndpointName == nil {
11470		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
11471	}
11472
11473	if invalidParams.Len() > 0 {
11474		return invalidParams
11475	}
11476	return nil
11477}
11478
11479// SetEndpointName sets the EndpointName field's value.
11480func (s *DeleteEndpointInput) SetEndpointName(v string) *DeleteEndpointInput {
11481	s.EndpointName = &v
11482	return s
11483}
11484
11485type DeleteEndpointOutput struct {
11486	_ struct{} `type:"structure"`
11487}
11488
11489// String returns the string representation
11490func (s DeleteEndpointOutput) String() string {
11491	return awsutil.Prettify(s)
11492}
11493
11494// GoString returns the string representation
11495func (s DeleteEndpointOutput) GoString() string {
11496	return s.String()
11497}
11498
11499type DeleteModelInput struct {
11500	_ struct{} `type:"structure"`
11501
11502	// The name of the model to delete.
11503	//
11504	// ModelName is a required field
11505	ModelName *string `type:"string" required:"true"`
11506}
11507
11508// String returns the string representation
11509func (s DeleteModelInput) String() string {
11510	return awsutil.Prettify(s)
11511}
11512
11513// GoString returns the string representation
11514func (s DeleteModelInput) GoString() string {
11515	return s.String()
11516}
11517
11518// Validate inspects the fields of the type to determine if they are valid.
11519func (s *DeleteModelInput) Validate() error {
11520	invalidParams := request.ErrInvalidParams{Context: "DeleteModelInput"}
11521	if s.ModelName == nil {
11522		invalidParams.Add(request.NewErrParamRequired("ModelName"))
11523	}
11524
11525	if invalidParams.Len() > 0 {
11526		return invalidParams
11527	}
11528	return nil
11529}
11530
11531// SetModelName sets the ModelName field's value.
11532func (s *DeleteModelInput) SetModelName(v string) *DeleteModelInput {
11533	s.ModelName = &v
11534	return s
11535}
11536
11537type DeleteModelOutput struct {
11538	_ struct{} `type:"structure"`
11539}
11540
11541// String returns the string representation
11542func (s DeleteModelOutput) String() string {
11543	return awsutil.Prettify(s)
11544}
11545
11546// GoString returns the string representation
11547func (s DeleteModelOutput) GoString() string {
11548	return s.String()
11549}
11550
11551type DeleteModelPackageInput struct {
11552	_ struct{} `type:"structure"`
11553
11554	// The name of the model package. The name must have 1 to 63 characters. Valid
11555	// characters are a-z, A-Z, 0-9, and - (hyphen).
11556	//
11557	// ModelPackageName is a required field
11558	ModelPackageName *string `min:"1" type:"string" required:"true"`
11559}
11560
11561// String returns the string representation
11562func (s DeleteModelPackageInput) String() string {
11563	return awsutil.Prettify(s)
11564}
11565
11566// GoString returns the string representation
11567func (s DeleteModelPackageInput) GoString() string {
11568	return s.String()
11569}
11570
11571// Validate inspects the fields of the type to determine if they are valid.
11572func (s *DeleteModelPackageInput) Validate() error {
11573	invalidParams := request.ErrInvalidParams{Context: "DeleteModelPackageInput"}
11574	if s.ModelPackageName == nil {
11575		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
11576	}
11577	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
11578		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
11579	}
11580
11581	if invalidParams.Len() > 0 {
11582		return invalidParams
11583	}
11584	return nil
11585}
11586
11587// SetModelPackageName sets the ModelPackageName field's value.
11588func (s *DeleteModelPackageInput) SetModelPackageName(v string) *DeleteModelPackageInput {
11589	s.ModelPackageName = &v
11590	return s
11591}
11592
11593type DeleteModelPackageOutput struct {
11594	_ struct{} `type:"structure"`
11595}
11596
11597// String returns the string representation
11598func (s DeleteModelPackageOutput) String() string {
11599	return awsutil.Prettify(s)
11600}
11601
11602// GoString returns the string representation
11603func (s DeleteModelPackageOutput) GoString() string {
11604	return s.String()
11605}
11606
11607type DeleteNotebookInstanceInput struct {
11608	_ struct{} `type:"structure"`
11609
11610	// The name of the Amazon SageMaker notebook instance to delete.
11611	//
11612	// NotebookInstanceName is a required field
11613	NotebookInstanceName *string `type:"string" required:"true"`
11614}
11615
11616// String returns the string representation
11617func (s DeleteNotebookInstanceInput) String() string {
11618	return awsutil.Prettify(s)
11619}
11620
11621// GoString returns the string representation
11622func (s DeleteNotebookInstanceInput) GoString() string {
11623	return s.String()
11624}
11625
11626// Validate inspects the fields of the type to determine if they are valid.
11627func (s *DeleteNotebookInstanceInput) Validate() error {
11628	invalidParams := request.ErrInvalidParams{Context: "DeleteNotebookInstanceInput"}
11629	if s.NotebookInstanceName == nil {
11630		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
11631	}
11632
11633	if invalidParams.Len() > 0 {
11634		return invalidParams
11635	}
11636	return nil
11637}
11638
11639// SetNotebookInstanceName sets the NotebookInstanceName field's value.
11640func (s *DeleteNotebookInstanceInput) SetNotebookInstanceName(v string) *DeleteNotebookInstanceInput {
11641	s.NotebookInstanceName = &v
11642	return s
11643}
11644
11645type DeleteNotebookInstanceLifecycleConfigInput struct {
11646	_ struct{} `type:"structure"`
11647
11648	// The name of the lifecycle configuration to delete.
11649	//
11650	// NotebookInstanceLifecycleConfigName is a required field
11651	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
11652}
11653
11654// String returns the string representation
11655func (s DeleteNotebookInstanceLifecycleConfigInput) String() string {
11656	return awsutil.Prettify(s)
11657}
11658
11659// GoString returns the string representation
11660func (s DeleteNotebookInstanceLifecycleConfigInput) GoString() string {
11661	return s.String()
11662}
11663
11664// Validate inspects the fields of the type to determine if they are valid.
11665func (s *DeleteNotebookInstanceLifecycleConfigInput) Validate() error {
11666	invalidParams := request.ErrInvalidParams{Context: "DeleteNotebookInstanceLifecycleConfigInput"}
11667	if s.NotebookInstanceLifecycleConfigName == nil {
11668		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
11669	}
11670
11671	if invalidParams.Len() > 0 {
11672		return invalidParams
11673	}
11674	return nil
11675}
11676
11677// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
11678func (s *DeleteNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *DeleteNotebookInstanceLifecycleConfigInput {
11679	s.NotebookInstanceLifecycleConfigName = &v
11680	return s
11681}
11682
11683type DeleteNotebookInstanceLifecycleConfigOutput struct {
11684	_ struct{} `type:"structure"`
11685}
11686
11687// String returns the string representation
11688func (s DeleteNotebookInstanceLifecycleConfigOutput) String() string {
11689	return awsutil.Prettify(s)
11690}
11691
11692// GoString returns the string representation
11693func (s DeleteNotebookInstanceLifecycleConfigOutput) GoString() string {
11694	return s.String()
11695}
11696
11697type DeleteNotebookInstanceOutput struct {
11698	_ struct{} `type:"structure"`
11699}
11700
11701// String returns the string representation
11702func (s DeleteNotebookInstanceOutput) String() string {
11703	return awsutil.Prettify(s)
11704}
11705
11706// GoString returns the string representation
11707func (s DeleteNotebookInstanceOutput) GoString() string {
11708	return s.String()
11709}
11710
11711type DeleteTagsInput struct {
11712	_ struct{} `type:"structure"`
11713
11714	// The Amazon Resource Name (ARN) of the resource whose tags you want to delete.
11715	//
11716	// ResourceArn is a required field
11717	ResourceArn *string `type:"string" required:"true"`
11718
11719	// An array or one or more tag keys to delete.
11720	//
11721	// TagKeys is a required field
11722	TagKeys []*string `min:"1" type:"list" required:"true"`
11723}
11724
11725// String returns the string representation
11726func (s DeleteTagsInput) String() string {
11727	return awsutil.Prettify(s)
11728}
11729
11730// GoString returns the string representation
11731func (s DeleteTagsInput) GoString() string {
11732	return s.String()
11733}
11734
11735// Validate inspects the fields of the type to determine if they are valid.
11736func (s *DeleteTagsInput) Validate() error {
11737	invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"}
11738	if s.ResourceArn == nil {
11739		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11740	}
11741	if s.TagKeys == nil {
11742		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
11743	}
11744	if s.TagKeys != nil && len(s.TagKeys) < 1 {
11745		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
11746	}
11747
11748	if invalidParams.Len() > 0 {
11749		return invalidParams
11750	}
11751	return nil
11752}
11753
11754// SetResourceArn sets the ResourceArn field's value.
11755func (s *DeleteTagsInput) SetResourceArn(v string) *DeleteTagsInput {
11756	s.ResourceArn = &v
11757	return s
11758}
11759
11760// SetTagKeys sets the TagKeys field's value.
11761func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput {
11762	s.TagKeys = v
11763	return s
11764}
11765
11766type DeleteTagsOutput struct {
11767	_ struct{} `type:"structure"`
11768}
11769
11770// String returns the string representation
11771func (s DeleteTagsOutput) String() string {
11772	return awsutil.Prettify(s)
11773}
11774
11775// GoString returns the string representation
11776func (s DeleteTagsOutput) GoString() string {
11777	return s.String()
11778}
11779
11780type DeleteWorkteamInput struct {
11781	_ struct{} `type:"structure"`
11782
11783	// The name of the work team to delete.
11784	//
11785	// WorkteamName is a required field
11786	WorkteamName *string `min:"1" type:"string" required:"true"`
11787}
11788
11789// String returns the string representation
11790func (s DeleteWorkteamInput) String() string {
11791	return awsutil.Prettify(s)
11792}
11793
11794// GoString returns the string representation
11795func (s DeleteWorkteamInput) GoString() string {
11796	return s.String()
11797}
11798
11799// Validate inspects the fields of the type to determine if they are valid.
11800func (s *DeleteWorkteamInput) Validate() error {
11801	invalidParams := request.ErrInvalidParams{Context: "DeleteWorkteamInput"}
11802	if s.WorkteamName == nil {
11803		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
11804	}
11805	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
11806		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
11807	}
11808
11809	if invalidParams.Len() > 0 {
11810		return invalidParams
11811	}
11812	return nil
11813}
11814
11815// SetWorkteamName sets the WorkteamName field's value.
11816func (s *DeleteWorkteamInput) SetWorkteamName(v string) *DeleteWorkteamInput {
11817	s.WorkteamName = &v
11818	return s
11819}
11820
11821type DeleteWorkteamOutput struct {
11822	_ struct{} `type:"structure"`
11823
11824	// Returns true if the work team was successfully deleted; otherwise, returns
11825	// false.
11826	//
11827	// Success is a required field
11828	Success *bool `type:"boolean" required:"true"`
11829}
11830
11831// String returns the string representation
11832func (s DeleteWorkteamOutput) String() string {
11833	return awsutil.Prettify(s)
11834}
11835
11836// GoString returns the string representation
11837func (s DeleteWorkteamOutput) GoString() string {
11838	return s.String()
11839}
11840
11841// SetSuccess sets the Success field's value.
11842func (s *DeleteWorkteamOutput) SetSuccess(v bool) *DeleteWorkteamOutput {
11843	s.Success = &v
11844	return s
11845}
11846
11847// Gets the Amazon EC2 Container Registry path of the docker image of the model
11848// that is hosted in this ProductionVariant.
11849//
11850// If you used the registry/repository[:tag] form to specify the image path
11851// of the primary container when you created the model hosted in this ProductionVariant,
11852// the path resolves to a path of the form registry/repository[@digest]. A digest
11853// is a hash value that identifies a specific version of an image. For information
11854// about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html)
11855// in the Amazon ECR User Guide.
11856type DeployedImage struct {
11857	_ struct{} `type:"structure"`
11858
11859	// The date and time when the image path for the model resolved to the ResolvedImage
11860	ResolutionTime *time.Time `type:"timestamp"`
11861
11862	// The specific digest path of the image hosted in this ProductionVariant.
11863	ResolvedImage *string `type:"string"`
11864
11865	// The image path you specified when you created the model.
11866	SpecifiedImage *string `type:"string"`
11867}
11868
11869// String returns the string representation
11870func (s DeployedImage) String() string {
11871	return awsutil.Prettify(s)
11872}
11873
11874// GoString returns the string representation
11875func (s DeployedImage) GoString() string {
11876	return s.String()
11877}
11878
11879// SetResolutionTime sets the ResolutionTime field's value.
11880func (s *DeployedImage) SetResolutionTime(v time.Time) *DeployedImage {
11881	s.ResolutionTime = &v
11882	return s
11883}
11884
11885// SetResolvedImage sets the ResolvedImage field's value.
11886func (s *DeployedImage) SetResolvedImage(v string) *DeployedImage {
11887	s.ResolvedImage = &v
11888	return s
11889}
11890
11891// SetSpecifiedImage sets the SpecifiedImage field's value.
11892func (s *DeployedImage) SetSpecifiedImage(v string) *DeployedImage {
11893	s.SpecifiedImage = &v
11894	return s
11895}
11896
11897type DescribeAlgorithmInput struct {
11898	_ struct{} `type:"structure"`
11899
11900	// The name of the algorithm to describe.
11901	//
11902	// AlgorithmName is a required field
11903	AlgorithmName *string `min:"1" type:"string" required:"true"`
11904}
11905
11906// String returns the string representation
11907func (s DescribeAlgorithmInput) String() string {
11908	return awsutil.Prettify(s)
11909}
11910
11911// GoString returns the string representation
11912func (s DescribeAlgorithmInput) GoString() string {
11913	return s.String()
11914}
11915
11916// Validate inspects the fields of the type to determine if they are valid.
11917func (s *DescribeAlgorithmInput) Validate() error {
11918	invalidParams := request.ErrInvalidParams{Context: "DescribeAlgorithmInput"}
11919	if s.AlgorithmName == nil {
11920		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
11921	}
11922	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
11923		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
11924	}
11925
11926	if invalidParams.Len() > 0 {
11927		return invalidParams
11928	}
11929	return nil
11930}
11931
11932// SetAlgorithmName sets the AlgorithmName field's value.
11933func (s *DescribeAlgorithmInput) SetAlgorithmName(v string) *DescribeAlgorithmInput {
11934	s.AlgorithmName = &v
11935	return s
11936}
11937
11938type DescribeAlgorithmOutput struct {
11939	_ struct{} `type:"structure"`
11940
11941	// The Amazon Resource Name (ARN) of the algorithm.
11942	//
11943	// AlgorithmArn is a required field
11944	AlgorithmArn *string `min:"1" type:"string" required:"true"`
11945
11946	// A brief summary about the algorithm.
11947	AlgorithmDescription *string `type:"string"`
11948
11949	// The name of the algorithm being described.
11950	//
11951	// AlgorithmName is a required field
11952	AlgorithmName *string `min:"1" type:"string" required:"true"`
11953
11954	// The current status of the algorithm.
11955	//
11956	// AlgorithmStatus is a required field
11957	AlgorithmStatus *string `type:"string" required:"true" enum:"AlgorithmStatus"`
11958
11959	// Details about the current status of the algorithm.
11960	//
11961	// AlgorithmStatusDetails is a required field
11962	AlgorithmStatusDetails *AlgorithmStatusDetails `type:"structure" required:"true"`
11963
11964	// Whether the algorithm is certified to be listed in AWS Marketplace.
11965	CertifyForMarketplace *bool `type:"boolean"`
11966
11967	// A timestamp specifying when the algorithm was created.
11968	//
11969	// CreationTime is a required field
11970	CreationTime *time.Time `type:"timestamp" required:"true"`
11971
11972	// Details about inference jobs that the algorithm runs.
11973	InferenceSpecification *InferenceSpecification `type:"structure"`
11974
11975	// The product identifier of the algorithm.
11976	ProductId *string `type:"string"`
11977
11978	// Details about training jobs run by this algorithm.
11979	//
11980	// TrainingSpecification is a required field
11981	TrainingSpecification *TrainingSpecification `type:"structure" required:"true"`
11982
11983	// Details about configurations for one or more training jobs that Amazon SageMaker
11984	// runs to test the algorithm.
11985	ValidationSpecification *AlgorithmValidationSpecification `type:"structure"`
11986}
11987
11988// String returns the string representation
11989func (s DescribeAlgorithmOutput) String() string {
11990	return awsutil.Prettify(s)
11991}
11992
11993// GoString returns the string representation
11994func (s DescribeAlgorithmOutput) GoString() string {
11995	return s.String()
11996}
11997
11998// SetAlgorithmArn sets the AlgorithmArn field's value.
11999func (s *DescribeAlgorithmOutput) SetAlgorithmArn(v string) *DescribeAlgorithmOutput {
12000	s.AlgorithmArn = &v
12001	return s
12002}
12003
12004// SetAlgorithmDescription sets the AlgorithmDescription field's value.
12005func (s *DescribeAlgorithmOutput) SetAlgorithmDescription(v string) *DescribeAlgorithmOutput {
12006	s.AlgorithmDescription = &v
12007	return s
12008}
12009
12010// SetAlgorithmName sets the AlgorithmName field's value.
12011func (s *DescribeAlgorithmOutput) SetAlgorithmName(v string) *DescribeAlgorithmOutput {
12012	s.AlgorithmName = &v
12013	return s
12014}
12015
12016// SetAlgorithmStatus sets the AlgorithmStatus field's value.
12017func (s *DescribeAlgorithmOutput) SetAlgorithmStatus(v string) *DescribeAlgorithmOutput {
12018	s.AlgorithmStatus = &v
12019	return s
12020}
12021
12022// SetAlgorithmStatusDetails sets the AlgorithmStatusDetails field's value.
12023func (s *DescribeAlgorithmOutput) SetAlgorithmStatusDetails(v *AlgorithmStatusDetails) *DescribeAlgorithmOutput {
12024	s.AlgorithmStatusDetails = v
12025	return s
12026}
12027
12028// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
12029func (s *DescribeAlgorithmOutput) SetCertifyForMarketplace(v bool) *DescribeAlgorithmOutput {
12030	s.CertifyForMarketplace = &v
12031	return s
12032}
12033
12034// SetCreationTime sets the CreationTime field's value.
12035func (s *DescribeAlgorithmOutput) SetCreationTime(v time.Time) *DescribeAlgorithmOutput {
12036	s.CreationTime = &v
12037	return s
12038}
12039
12040// SetInferenceSpecification sets the InferenceSpecification field's value.
12041func (s *DescribeAlgorithmOutput) SetInferenceSpecification(v *InferenceSpecification) *DescribeAlgorithmOutput {
12042	s.InferenceSpecification = v
12043	return s
12044}
12045
12046// SetProductId sets the ProductId field's value.
12047func (s *DescribeAlgorithmOutput) SetProductId(v string) *DescribeAlgorithmOutput {
12048	s.ProductId = &v
12049	return s
12050}
12051
12052// SetTrainingSpecification sets the TrainingSpecification field's value.
12053func (s *DescribeAlgorithmOutput) SetTrainingSpecification(v *TrainingSpecification) *DescribeAlgorithmOutput {
12054	s.TrainingSpecification = v
12055	return s
12056}
12057
12058// SetValidationSpecification sets the ValidationSpecification field's value.
12059func (s *DescribeAlgorithmOutput) SetValidationSpecification(v *AlgorithmValidationSpecification) *DescribeAlgorithmOutput {
12060	s.ValidationSpecification = v
12061	return s
12062}
12063
12064type DescribeCodeRepositoryInput struct {
12065	_ struct{} `type:"structure"`
12066
12067	// The name of the Git repository to describe.
12068	//
12069	// CodeRepositoryName is a required field
12070	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
12071}
12072
12073// String returns the string representation
12074func (s DescribeCodeRepositoryInput) String() string {
12075	return awsutil.Prettify(s)
12076}
12077
12078// GoString returns the string representation
12079func (s DescribeCodeRepositoryInput) GoString() string {
12080	return s.String()
12081}
12082
12083// Validate inspects the fields of the type to determine if they are valid.
12084func (s *DescribeCodeRepositoryInput) Validate() error {
12085	invalidParams := request.ErrInvalidParams{Context: "DescribeCodeRepositoryInput"}
12086	if s.CodeRepositoryName == nil {
12087		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
12088	}
12089	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
12090		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
12091	}
12092
12093	if invalidParams.Len() > 0 {
12094		return invalidParams
12095	}
12096	return nil
12097}
12098
12099// SetCodeRepositoryName sets the CodeRepositoryName field's value.
12100func (s *DescribeCodeRepositoryInput) SetCodeRepositoryName(v string) *DescribeCodeRepositoryInput {
12101	s.CodeRepositoryName = &v
12102	return s
12103}
12104
12105type DescribeCodeRepositoryOutput struct {
12106	_ struct{} `type:"structure"`
12107
12108	// The Amazon Resource Name (ARN) of the Git repository.
12109	//
12110	// CodeRepositoryArn is a required field
12111	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
12112
12113	// The name of the Git repository.
12114	//
12115	// CodeRepositoryName is a required field
12116	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
12117
12118	// The date and time that the repository was created.
12119	//
12120	// CreationTime is a required field
12121	CreationTime *time.Time `type:"timestamp" required:"true"`
12122
12123	// Configuration details about the repository, including the URL where the repository
12124	// is located, the default branch, and the Amazon Resource Name (ARN) of the
12125	// AWS Secrets Manager secret that contains the credentials used to access the
12126	// repository.
12127	GitConfig *GitConfig `type:"structure"`
12128
12129	// The date and time that the repository was last changed.
12130	//
12131	// LastModifiedTime is a required field
12132	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12133}
12134
12135// String returns the string representation
12136func (s DescribeCodeRepositoryOutput) String() string {
12137	return awsutil.Prettify(s)
12138}
12139
12140// GoString returns the string representation
12141func (s DescribeCodeRepositoryOutput) GoString() string {
12142	return s.String()
12143}
12144
12145// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
12146func (s *DescribeCodeRepositoryOutput) SetCodeRepositoryArn(v string) *DescribeCodeRepositoryOutput {
12147	s.CodeRepositoryArn = &v
12148	return s
12149}
12150
12151// SetCodeRepositoryName sets the CodeRepositoryName field's value.
12152func (s *DescribeCodeRepositoryOutput) SetCodeRepositoryName(v string) *DescribeCodeRepositoryOutput {
12153	s.CodeRepositoryName = &v
12154	return s
12155}
12156
12157// SetCreationTime sets the CreationTime field's value.
12158func (s *DescribeCodeRepositoryOutput) SetCreationTime(v time.Time) *DescribeCodeRepositoryOutput {
12159	s.CreationTime = &v
12160	return s
12161}
12162
12163// SetGitConfig sets the GitConfig field's value.
12164func (s *DescribeCodeRepositoryOutput) SetGitConfig(v *GitConfig) *DescribeCodeRepositoryOutput {
12165	s.GitConfig = v
12166	return s
12167}
12168
12169// SetLastModifiedTime sets the LastModifiedTime field's value.
12170func (s *DescribeCodeRepositoryOutput) SetLastModifiedTime(v time.Time) *DescribeCodeRepositoryOutput {
12171	s.LastModifiedTime = &v
12172	return s
12173}
12174
12175type DescribeCompilationJobInput struct {
12176	_ struct{} `type:"structure"`
12177
12178	// The name of the model compilation job that you want information about.
12179	//
12180	// CompilationJobName is a required field
12181	CompilationJobName *string `min:"1" type:"string" required:"true"`
12182}
12183
12184// String returns the string representation
12185func (s DescribeCompilationJobInput) String() string {
12186	return awsutil.Prettify(s)
12187}
12188
12189// GoString returns the string representation
12190func (s DescribeCompilationJobInput) GoString() string {
12191	return s.String()
12192}
12193
12194// Validate inspects the fields of the type to determine if they are valid.
12195func (s *DescribeCompilationJobInput) Validate() error {
12196	invalidParams := request.ErrInvalidParams{Context: "DescribeCompilationJobInput"}
12197	if s.CompilationJobName == nil {
12198		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
12199	}
12200	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
12201		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
12202	}
12203
12204	if invalidParams.Len() > 0 {
12205		return invalidParams
12206	}
12207	return nil
12208}
12209
12210// SetCompilationJobName sets the CompilationJobName field's value.
12211func (s *DescribeCompilationJobInput) SetCompilationJobName(v string) *DescribeCompilationJobInput {
12212	s.CompilationJobName = &v
12213	return s
12214}
12215
12216type DescribeCompilationJobOutput struct {
12217	_ struct{} `type:"structure"`
12218
12219	// The time when the model compilation job on a compilation job instance ended.
12220	// For a successful or stopped job, this is when the job's model artifacts have
12221	// finished uploading. For a failed job, this is when Amazon SageMaker detected
12222	// that the job failed.
12223	CompilationEndTime *time.Time `type:"timestamp"`
12224
12225	// The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker assumes
12226	// to perform the model compilation job.
12227	//
12228	// CompilationJobArn is a required field
12229	CompilationJobArn *string `type:"string" required:"true"`
12230
12231	// The name of the model compilation job.
12232	//
12233	// CompilationJobName is a required field
12234	CompilationJobName *string `min:"1" type:"string" required:"true"`
12235
12236	// The status of the model compilation job.
12237	//
12238	// CompilationJobStatus is a required field
12239	CompilationJobStatus *string `type:"string" required:"true" enum:"CompilationJobStatus"`
12240
12241	// The time when the model compilation job started the CompilationJob instances.
12242	//
12243	// You are billed for the time between this timestamp and the timestamp in the
12244	// DescribeCompilationJobResponse$CompilationEndTime field. In Amazon CloudWatch
12245	// Logs, the start time might be later than this time. That's because it takes
12246	// time to download the compilation job, which depends on the size of the compilation
12247	// job container.
12248	CompilationStartTime *time.Time `type:"timestamp"`
12249
12250	// The time that the model compilation job was created.
12251	//
12252	// CreationTime is a required field
12253	CreationTime *time.Time `type:"timestamp" required:"true"`
12254
12255	// If a model compilation job failed, the reason it failed.
12256	//
12257	// FailureReason is a required field
12258	FailureReason *string `type:"string" required:"true"`
12259
12260	// Information about the location in Amazon S3 of the input model artifacts,
12261	// the name and shape of the expected data inputs, and the framework in which
12262	// the model was trained.
12263	//
12264	// InputConfig is a required field
12265	InputConfig *InputConfig `type:"structure" required:"true"`
12266
12267	// The time that the status of the model compilation job was last modified.
12268	//
12269	// LastModifiedTime is a required field
12270	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12271
12272	// Information about the location in Amazon S3 that has been configured for
12273	// storing the model artifacts used in the compilation job.
12274	//
12275	// ModelArtifacts is a required field
12276	ModelArtifacts *ModelArtifacts `type:"structure" required:"true"`
12277
12278	// Information about the output location for the compiled model and the target
12279	// device that the model runs on.
12280	//
12281	// OutputConfig is a required field
12282	OutputConfig *OutputConfig `type:"structure" required:"true"`
12283
12284	// The Amazon Resource Name (ARN) of the model compilation job.
12285	//
12286	// RoleArn is a required field
12287	RoleArn *string `min:"20" type:"string" required:"true"`
12288
12289	// Specifies a limit to how long a model compilation job can run. When the job
12290	// reaches the time limit, Amazon SageMaker ends the compilation job. Use this
12291	// API to cap model training costs.
12292	//
12293	// StoppingCondition is a required field
12294	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
12295}
12296
12297// String returns the string representation
12298func (s DescribeCompilationJobOutput) String() string {
12299	return awsutil.Prettify(s)
12300}
12301
12302// GoString returns the string representation
12303func (s DescribeCompilationJobOutput) GoString() string {
12304	return s.String()
12305}
12306
12307// SetCompilationEndTime sets the CompilationEndTime field's value.
12308func (s *DescribeCompilationJobOutput) SetCompilationEndTime(v time.Time) *DescribeCompilationJobOutput {
12309	s.CompilationEndTime = &v
12310	return s
12311}
12312
12313// SetCompilationJobArn sets the CompilationJobArn field's value.
12314func (s *DescribeCompilationJobOutput) SetCompilationJobArn(v string) *DescribeCompilationJobOutput {
12315	s.CompilationJobArn = &v
12316	return s
12317}
12318
12319// SetCompilationJobName sets the CompilationJobName field's value.
12320func (s *DescribeCompilationJobOutput) SetCompilationJobName(v string) *DescribeCompilationJobOutput {
12321	s.CompilationJobName = &v
12322	return s
12323}
12324
12325// SetCompilationJobStatus sets the CompilationJobStatus field's value.
12326func (s *DescribeCompilationJobOutput) SetCompilationJobStatus(v string) *DescribeCompilationJobOutput {
12327	s.CompilationJobStatus = &v
12328	return s
12329}
12330
12331// SetCompilationStartTime sets the CompilationStartTime field's value.
12332func (s *DescribeCompilationJobOutput) SetCompilationStartTime(v time.Time) *DescribeCompilationJobOutput {
12333	s.CompilationStartTime = &v
12334	return s
12335}
12336
12337// SetCreationTime sets the CreationTime field's value.
12338func (s *DescribeCompilationJobOutput) SetCreationTime(v time.Time) *DescribeCompilationJobOutput {
12339	s.CreationTime = &v
12340	return s
12341}
12342
12343// SetFailureReason sets the FailureReason field's value.
12344func (s *DescribeCompilationJobOutput) SetFailureReason(v string) *DescribeCompilationJobOutput {
12345	s.FailureReason = &v
12346	return s
12347}
12348
12349// SetInputConfig sets the InputConfig field's value.
12350func (s *DescribeCompilationJobOutput) SetInputConfig(v *InputConfig) *DescribeCompilationJobOutput {
12351	s.InputConfig = v
12352	return s
12353}
12354
12355// SetLastModifiedTime sets the LastModifiedTime field's value.
12356func (s *DescribeCompilationJobOutput) SetLastModifiedTime(v time.Time) *DescribeCompilationJobOutput {
12357	s.LastModifiedTime = &v
12358	return s
12359}
12360
12361// SetModelArtifacts sets the ModelArtifacts field's value.
12362func (s *DescribeCompilationJobOutput) SetModelArtifacts(v *ModelArtifacts) *DescribeCompilationJobOutput {
12363	s.ModelArtifacts = v
12364	return s
12365}
12366
12367// SetOutputConfig sets the OutputConfig field's value.
12368func (s *DescribeCompilationJobOutput) SetOutputConfig(v *OutputConfig) *DescribeCompilationJobOutput {
12369	s.OutputConfig = v
12370	return s
12371}
12372
12373// SetRoleArn sets the RoleArn field's value.
12374func (s *DescribeCompilationJobOutput) SetRoleArn(v string) *DescribeCompilationJobOutput {
12375	s.RoleArn = &v
12376	return s
12377}
12378
12379// SetStoppingCondition sets the StoppingCondition field's value.
12380func (s *DescribeCompilationJobOutput) SetStoppingCondition(v *StoppingCondition) *DescribeCompilationJobOutput {
12381	s.StoppingCondition = v
12382	return s
12383}
12384
12385type DescribeEndpointConfigInput struct {
12386	_ struct{} `type:"structure"`
12387
12388	// The name of the endpoint configuration.
12389	//
12390	// EndpointConfigName is a required field
12391	EndpointConfigName *string `type:"string" required:"true"`
12392}
12393
12394// String returns the string representation
12395func (s DescribeEndpointConfigInput) String() string {
12396	return awsutil.Prettify(s)
12397}
12398
12399// GoString returns the string representation
12400func (s DescribeEndpointConfigInput) GoString() string {
12401	return s.String()
12402}
12403
12404// Validate inspects the fields of the type to determine if they are valid.
12405func (s *DescribeEndpointConfigInput) Validate() error {
12406	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointConfigInput"}
12407	if s.EndpointConfigName == nil {
12408		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
12409	}
12410
12411	if invalidParams.Len() > 0 {
12412		return invalidParams
12413	}
12414	return nil
12415}
12416
12417// SetEndpointConfigName sets the EndpointConfigName field's value.
12418func (s *DescribeEndpointConfigInput) SetEndpointConfigName(v string) *DescribeEndpointConfigInput {
12419	s.EndpointConfigName = &v
12420	return s
12421}
12422
12423type DescribeEndpointConfigOutput struct {
12424	_ struct{} `type:"structure"`
12425
12426	// A timestamp that shows when the endpoint configuration was created.
12427	//
12428	// CreationTime is a required field
12429	CreationTime *time.Time `type:"timestamp" required:"true"`
12430
12431	// The Amazon Resource Name (ARN) of the endpoint configuration.
12432	//
12433	// EndpointConfigArn is a required field
12434	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
12435
12436	// Name of the Amazon SageMaker endpoint configuration.
12437	//
12438	// EndpointConfigName is a required field
12439	EndpointConfigName *string `type:"string" required:"true"`
12440
12441	// AWS KMS key ID Amazon SageMaker uses to encrypt data when storing it on the
12442	// ML storage volume attached to the instance.
12443	KmsKeyId *string `type:"string"`
12444
12445	// An array of ProductionVariant objects, one for each model that you want to
12446	// host at this endpoint.
12447	//
12448	// ProductionVariants is a required field
12449	ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"`
12450}
12451
12452// String returns the string representation
12453func (s DescribeEndpointConfigOutput) String() string {
12454	return awsutil.Prettify(s)
12455}
12456
12457// GoString returns the string representation
12458func (s DescribeEndpointConfigOutput) GoString() string {
12459	return s.String()
12460}
12461
12462// SetCreationTime sets the CreationTime field's value.
12463func (s *DescribeEndpointConfigOutput) SetCreationTime(v time.Time) *DescribeEndpointConfigOutput {
12464	s.CreationTime = &v
12465	return s
12466}
12467
12468// SetEndpointConfigArn sets the EndpointConfigArn field's value.
12469func (s *DescribeEndpointConfigOutput) SetEndpointConfigArn(v string) *DescribeEndpointConfigOutput {
12470	s.EndpointConfigArn = &v
12471	return s
12472}
12473
12474// SetEndpointConfigName sets the EndpointConfigName field's value.
12475func (s *DescribeEndpointConfigOutput) SetEndpointConfigName(v string) *DescribeEndpointConfigOutput {
12476	s.EndpointConfigName = &v
12477	return s
12478}
12479
12480// SetKmsKeyId sets the KmsKeyId field's value.
12481func (s *DescribeEndpointConfigOutput) SetKmsKeyId(v string) *DescribeEndpointConfigOutput {
12482	s.KmsKeyId = &v
12483	return s
12484}
12485
12486// SetProductionVariants sets the ProductionVariants field's value.
12487func (s *DescribeEndpointConfigOutput) SetProductionVariants(v []*ProductionVariant) *DescribeEndpointConfigOutput {
12488	s.ProductionVariants = v
12489	return s
12490}
12491
12492type DescribeEndpointInput struct {
12493	_ struct{} `type:"structure"`
12494
12495	// The name of the endpoint.
12496	//
12497	// EndpointName is a required field
12498	EndpointName *string `type:"string" required:"true"`
12499}
12500
12501// String returns the string representation
12502func (s DescribeEndpointInput) String() string {
12503	return awsutil.Prettify(s)
12504}
12505
12506// GoString returns the string representation
12507func (s DescribeEndpointInput) GoString() string {
12508	return s.String()
12509}
12510
12511// Validate inspects the fields of the type to determine if they are valid.
12512func (s *DescribeEndpointInput) Validate() error {
12513	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointInput"}
12514	if s.EndpointName == nil {
12515		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
12516	}
12517
12518	if invalidParams.Len() > 0 {
12519		return invalidParams
12520	}
12521	return nil
12522}
12523
12524// SetEndpointName sets the EndpointName field's value.
12525func (s *DescribeEndpointInput) SetEndpointName(v string) *DescribeEndpointInput {
12526	s.EndpointName = &v
12527	return s
12528}
12529
12530type DescribeEndpointOutput struct {
12531	_ struct{} `type:"structure"`
12532
12533	// A timestamp that shows when the endpoint was created.
12534	//
12535	// CreationTime is a required field
12536	CreationTime *time.Time `type:"timestamp" required:"true"`
12537
12538	// The Amazon Resource Name (ARN) of the endpoint.
12539	//
12540	// EndpointArn is a required field
12541	EndpointArn *string `min:"20" type:"string" required:"true"`
12542
12543	// The name of the endpoint configuration associated with this endpoint.
12544	//
12545	// EndpointConfigName is a required field
12546	EndpointConfigName *string `type:"string" required:"true"`
12547
12548	// Name of the endpoint.
12549	//
12550	// EndpointName is a required field
12551	EndpointName *string `type:"string" required:"true"`
12552
12553	// The status of the endpoint.
12554	//
12555	//    * OutOfService: Endpoint is not available to take incoming requests.
12556	//
12557	//    * Creating: CreateEndpoint is executing.
12558	//
12559	//    * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing.
12560	//
12561	//    * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated
12562	//    or deleted or re-scaled until it has completed. This maintenance operation
12563	//    does not change any customer-specified values such as VPC config, KMS
12564	//    encryption, model, instance type, or instance count.
12565	//
12566	//    * RollingBack: Endpoint fails to scale up or down or change its variant
12567	//    weight and is in the process of rolling back to its previous configuration.
12568	//    Once the rollback completes, endpoint returns to an InService status.
12569	//    This transitional status only applies to an endpoint that has autoscaling
12570	//    enabled and is undergoing variant weight or capacity changes as part of
12571	//    an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities
12572	//    operation is called explicitly.
12573	//
12574	//    * InService: Endpoint is available to process incoming requests.
12575	//
12576	//    * Deleting: DeleteEndpoint is executing.
12577	//
12578	//    * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason
12579	//    for information about the failure. DeleteEndpoint is the only operation
12580	//    that can be performed on a failed endpoint.
12581	//
12582	// EndpointStatus is a required field
12583	EndpointStatus *string `type:"string" required:"true" enum:"EndpointStatus"`
12584
12585	// If the status of the endpoint is Failed, the reason why it failed.
12586	FailureReason *string `type:"string"`
12587
12588	// A timestamp that shows when the endpoint was last modified.
12589	//
12590	// LastModifiedTime is a required field
12591	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12592
12593	// An array of ProductionVariantSummary objects, one for each model hosted behind
12594	// this endpoint.
12595	ProductionVariants []*ProductionVariantSummary `min:"1" type:"list"`
12596}
12597
12598// String returns the string representation
12599func (s DescribeEndpointOutput) String() string {
12600	return awsutil.Prettify(s)
12601}
12602
12603// GoString returns the string representation
12604func (s DescribeEndpointOutput) GoString() string {
12605	return s.String()
12606}
12607
12608// SetCreationTime sets the CreationTime field's value.
12609func (s *DescribeEndpointOutput) SetCreationTime(v time.Time) *DescribeEndpointOutput {
12610	s.CreationTime = &v
12611	return s
12612}
12613
12614// SetEndpointArn sets the EndpointArn field's value.
12615func (s *DescribeEndpointOutput) SetEndpointArn(v string) *DescribeEndpointOutput {
12616	s.EndpointArn = &v
12617	return s
12618}
12619
12620// SetEndpointConfigName sets the EndpointConfigName field's value.
12621func (s *DescribeEndpointOutput) SetEndpointConfigName(v string) *DescribeEndpointOutput {
12622	s.EndpointConfigName = &v
12623	return s
12624}
12625
12626// SetEndpointName sets the EndpointName field's value.
12627func (s *DescribeEndpointOutput) SetEndpointName(v string) *DescribeEndpointOutput {
12628	s.EndpointName = &v
12629	return s
12630}
12631
12632// SetEndpointStatus sets the EndpointStatus field's value.
12633func (s *DescribeEndpointOutput) SetEndpointStatus(v string) *DescribeEndpointOutput {
12634	s.EndpointStatus = &v
12635	return s
12636}
12637
12638// SetFailureReason sets the FailureReason field's value.
12639func (s *DescribeEndpointOutput) SetFailureReason(v string) *DescribeEndpointOutput {
12640	s.FailureReason = &v
12641	return s
12642}
12643
12644// SetLastModifiedTime sets the LastModifiedTime field's value.
12645func (s *DescribeEndpointOutput) SetLastModifiedTime(v time.Time) *DescribeEndpointOutput {
12646	s.LastModifiedTime = &v
12647	return s
12648}
12649
12650// SetProductionVariants sets the ProductionVariants field's value.
12651func (s *DescribeEndpointOutput) SetProductionVariants(v []*ProductionVariantSummary) *DescribeEndpointOutput {
12652	s.ProductionVariants = v
12653	return s
12654}
12655
12656type DescribeHyperParameterTuningJobInput struct {
12657	_ struct{} `type:"structure"`
12658
12659	// The name of the tuning job to describe.
12660	//
12661	// HyperParameterTuningJobName is a required field
12662	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
12663}
12664
12665// String returns the string representation
12666func (s DescribeHyperParameterTuningJobInput) String() string {
12667	return awsutil.Prettify(s)
12668}
12669
12670// GoString returns the string representation
12671func (s DescribeHyperParameterTuningJobInput) GoString() string {
12672	return s.String()
12673}
12674
12675// Validate inspects the fields of the type to determine if they are valid.
12676func (s *DescribeHyperParameterTuningJobInput) Validate() error {
12677	invalidParams := request.ErrInvalidParams{Context: "DescribeHyperParameterTuningJobInput"}
12678	if s.HyperParameterTuningJobName == nil {
12679		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
12680	}
12681	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
12682		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
12683	}
12684
12685	if invalidParams.Len() > 0 {
12686		return invalidParams
12687	}
12688	return nil
12689}
12690
12691// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
12692func (s *DescribeHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *DescribeHyperParameterTuningJobInput {
12693	s.HyperParameterTuningJobName = &v
12694	return s
12695}
12696
12697type DescribeHyperParameterTuningJobOutput struct {
12698	_ struct{} `type:"structure"`
12699
12700	// A TrainingJobSummary object that describes the training job that completed
12701	// with the best current HyperParameterTuningJobObjective.
12702	BestTrainingJob *HyperParameterTrainingJobSummary `type:"structure"`
12703
12704	// The date and time that the tuning job started.
12705	//
12706	// CreationTime is a required field
12707	CreationTime *time.Time `type:"timestamp" required:"true"`
12708
12709	// If the tuning job failed, the reason it failed.
12710	FailureReason *string `type:"string"`
12711
12712	// The date and time that the tuning job ended.
12713	HyperParameterTuningEndTime *time.Time `type:"timestamp"`
12714
12715	// The Amazon Resource Name (ARN) of the tuning job.
12716	//
12717	// HyperParameterTuningJobArn is a required field
12718	HyperParameterTuningJobArn *string `type:"string" required:"true"`
12719
12720	// The HyperParameterTuningJobConfig object that specifies the configuration
12721	// of the tuning job.
12722	//
12723	// HyperParameterTuningJobConfig is a required field
12724	HyperParameterTuningJobConfig *HyperParameterTuningJobConfig `type:"structure" required:"true"`
12725
12726	// The name of the tuning job.
12727	//
12728	// HyperParameterTuningJobName is a required field
12729	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
12730
12731	// The status of the tuning job: InProgress, Completed, Failed, Stopping, or
12732	// Stopped.
12733	//
12734	// HyperParameterTuningJobStatus is a required field
12735	HyperParameterTuningJobStatus *string `type:"string" required:"true" enum:"HyperParameterTuningJobStatus"`
12736
12737	// The date and time that the status of the tuning job was modified.
12738	LastModifiedTime *time.Time `type:"timestamp"`
12739
12740	// The ObjectiveStatusCounters object that specifies the number of training
12741	// jobs, categorized by the status of their final objective metric, that this
12742	// tuning job launched.
12743	//
12744	// ObjectiveStatusCounters is a required field
12745	ObjectiveStatusCounters *ObjectiveStatusCounters `type:"structure" required:"true"`
12746
12747	// If the hyperparameter tuning job is an warm start tuning job with a WarmStartType
12748	// of IDENTICAL_DATA_AND_ALGORITHM, this is the TrainingJobSummary for the training
12749	// job with the best objective metric value of all training jobs launched by
12750	// this tuning job and all parent jobs specified for the warm start tuning job.
12751	OverallBestTrainingJob *HyperParameterTrainingJobSummary `type:"structure"`
12752
12753	// The HyperParameterTrainingJobDefinition object that specifies the definition
12754	// of the training jobs that this tuning job launches.
12755	TrainingJobDefinition *HyperParameterTrainingJobDefinition `type:"structure"`
12756
12757	// The TrainingJobStatusCounters object that specifies the number of training
12758	// jobs, categorized by status, that this tuning job launched.
12759	//
12760	// TrainingJobStatusCounters is a required field
12761	TrainingJobStatusCounters *TrainingJobStatusCounters `type:"structure" required:"true"`
12762
12763	// The configuration for starting the hyperparameter parameter tuning job using
12764	// one or more previous tuning jobs as a starting point. The results of previous
12765	// tuning jobs are used to inform which combinations of hyperparameters to search
12766	// over in the new tuning job.
12767	WarmStartConfig *HyperParameterTuningJobWarmStartConfig `type:"structure"`
12768}
12769
12770// String returns the string representation
12771func (s DescribeHyperParameterTuningJobOutput) String() string {
12772	return awsutil.Prettify(s)
12773}
12774
12775// GoString returns the string representation
12776func (s DescribeHyperParameterTuningJobOutput) GoString() string {
12777	return s.String()
12778}
12779
12780// SetBestTrainingJob sets the BestTrainingJob field's value.
12781func (s *DescribeHyperParameterTuningJobOutput) SetBestTrainingJob(v *HyperParameterTrainingJobSummary) *DescribeHyperParameterTuningJobOutput {
12782	s.BestTrainingJob = v
12783	return s
12784}
12785
12786// SetCreationTime sets the CreationTime field's value.
12787func (s *DescribeHyperParameterTuningJobOutput) SetCreationTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12788	s.CreationTime = &v
12789	return s
12790}
12791
12792// SetFailureReason sets the FailureReason field's value.
12793func (s *DescribeHyperParameterTuningJobOutput) SetFailureReason(v string) *DescribeHyperParameterTuningJobOutput {
12794	s.FailureReason = &v
12795	return s
12796}
12797
12798// SetHyperParameterTuningEndTime sets the HyperParameterTuningEndTime field's value.
12799func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningEndTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12800	s.HyperParameterTuningEndTime = &v
12801	return s
12802}
12803
12804// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
12805func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobArn(v string) *DescribeHyperParameterTuningJobOutput {
12806	s.HyperParameterTuningJobArn = &v
12807	return s
12808}
12809
12810// SetHyperParameterTuningJobConfig sets the HyperParameterTuningJobConfig field's value.
12811func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobConfig(v *HyperParameterTuningJobConfig) *DescribeHyperParameterTuningJobOutput {
12812	s.HyperParameterTuningJobConfig = v
12813	return s
12814}
12815
12816// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
12817func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobName(v string) *DescribeHyperParameterTuningJobOutput {
12818	s.HyperParameterTuningJobName = &v
12819	return s
12820}
12821
12822// SetHyperParameterTuningJobStatus sets the HyperParameterTuningJobStatus field's value.
12823func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobStatus(v string) *DescribeHyperParameterTuningJobOutput {
12824	s.HyperParameterTuningJobStatus = &v
12825	return s
12826}
12827
12828// SetLastModifiedTime sets the LastModifiedTime field's value.
12829func (s *DescribeHyperParameterTuningJobOutput) SetLastModifiedTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12830	s.LastModifiedTime = &v
12831	return s
12832}
12833
12834// SetObjectiveStatusCounters sets the ObjectiveStatusCounters field's value.
12835func (s *DescribeHyperParameterTuningJobOutput) SetObjectiveStatusCounters(v *ObjectiveStatusCounters) *DescribeHyperParameterTuningJobOutput {
12836	s.ObjectiveStatusCounters = v
12837	return s
12838}
12839
12840// SetOverallBestTrainingJob sets the OverallBestTrainingJob field's value.
12841func (s *DescribeHyperParameterTuningJobOutput) SetOverallBestTrainingJob(v *HyperParameterTrainingJobSummary) *DescribeHyperParameterTuningJobOutput {
12842	s.OverallBestTrainingJob = v
12843	return s
12844}
12845
12846// SetTrainingJobDefinition sets the TrainingJobDefinition field's value.
12847func (s *DescribeHyperParameterTuningJobOutput) SetTrainingJobDefinition(v *HyperParameterTrainingJobDefinition) *DescribeHyperParameterTuningJobOutput {
12848	s.TrainingJobDefinition = v
12849	return s
12850}
12851
12852// SetTrainingJobStatusCounters sets the TrainingJobStatusCounters field's value.
12853func (s *DescribeHyperParameterTuningJobOutput) SetTrainingJobStatusCounters(v *TrainingJobStatusCounters) *DescribeHyperParameterTuningJobOutput {
12854	s.TrainingJobStatusCounters = v
12855	return s
12856}
12857
12858// SetWarmStartConfig sets the WarmStartConfig field's value.
12859func (s *DescribeHyperParameterTuningJobOutput) SetWarmStartConfig(v *HyperParameterTuningJobWarmStartConfig) *DescribeHyperParameterTuningJobOutput {
12860	s.WarmStartConfig = v
12861	return s
12862}
12863
12864type DescribeLabelingJobInput struct {
12865	_ struct{} `type:"structure"`
12866
12867	// The name of the labeling job to return information for.
12868	//
12869	// LabelingJobName is a required field
12870	LabelingJobName *string `min:"1" type:"string" required:"true"`
12871}
12872
12873// String returns the string representation
12874func (s DescribeLabelingJobInput) String() string {
12875	return awsutil.Prettify(s)
12876}
12877
12878// GoString returns the string representation
12879func (s DescribeLabelingJobInput) GoString() string {
12880	return s.String()
12881}
12882
12883// Validate inspects the fields of the type to determine if they are valid.
12884func (s *DescribeLabelingJobInput) Validate() error {
12885	invalidParams := request.ErrInvalidParams{Context: "DescribeLabelingJobInput"}
12886	if s.LabelingJobName == nil {
12887		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
12888	}
12889	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
12890		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
12891	}
12892
12893	if invalidParams.Len() > 0 {
12894		return invalidParams
12895	}
12896	return nil
12897}
12898
12899// SetLabelingJobName sets the LabelingJobName field's value.
12900func (s *DescribeLabelingJobInput) SetLabelingJobName(v string) *DescribeLabelingJobInput {
12901	s.LabelingJobName = &v
12902	return s
12903}
12904
12905type DescribeLabelingJobOutput struct {
12906	_ struct{} `type:"structure"`
12907
12908	// The date and time that the labeling job was created.
12909	//
12910	// CreationTime is a required field
12911	CreationTime *time.Time `type:"timestamp" required:"true"`
12912
12913	// If the job failed, the reason that it failed.
12914	FailureReason *string `type:"string"`
12915
12916	// Configuration information required for human workers to complete a labeling
12917	// task.
12918	//
12919	// HumanTaskConfig is a required field
12920	HumanTaskConfig *HumanTaskConfig `type:"structure" required:"true"`
12921
12922	// Input configuration information for the labeling job, such as the Amazon
12923	// S3 location of the data objects and the location of the manifest file that
12924	// describes the data objects.
12925	//
12926	// InputConfig is a required field
12927	InputConfig *LabelingJobInputConfig `type:"structure" required:"true"`
12928
12929	// A unique identifier for work done as part of a labeling job.
12930	//
12931	// JobReferenceCode is a required field
12932	JobReferenceCode *string `min:"1" type:"string" required:"true"`
12933
12934	// The attribute used as the label in the output manifest file.
12935	LabelAttributeName *string `min:"1" type:"string"`
12936
12937	// The S3 location of the JSON file that defines the categories used to label
12938	// data objects.
12939	//
12940	// The file is a JSON structure in the following format:
12941	//
12942	// {
12943	//
12944	// "document-version": "2018-11-28"
12945	//
12946	// "labels": [
12947	//
12948	// {
12949	//
12950	// "label": "label 1"
12951	//
12952	// },
12953	//
12954	// {
12955	//
12956	// "label": "label 2"
12957	//
12958	// },
12959	//
12960	// ...
12961	//
12962	// {
12963	//
12964	// "label": "label n"
12965	//
12966	// }
12967	//
12968	// ]
12969	//
12970	// }
12971	LabelCategoryConfigS3Uri *string `type:"string"`
12972
12973	// Provides a breakdown of the number of data objects labeled by humans, the
12974	// number of objects labeled by machine, the number of objects than couldn't
12975	// be labeled, and the total number of objects labeled.
12976	//
12977	// LabelCounters is a required field
12978	LabelCounters *LabelCounters `type:"structure" required:"true"`
12979
12980	// Configuration information for automated data labeling.
12981	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig `type:"structure"`
12982
12983	// The Amazon Resource Name (ARN) of the labeling job.
12984	//
12985	// LabelingJobArn is a required field
12986	LabelingJobArn *string `type:"string" required:"true"`
12987
12988	// The name assigned to the labeling job when it was created.
12989	//
12990	// LabelingJobName is a required field
12991	LabelingJobName *string `min:"1" type:"string" required:"true"`
12992
12993	// The location of the output produced by the labeling job.
12994	LabelingJobOutput *LabelingJobOutput `type:"structure"`
12995
12996	// The processing status of the labeling job.
12997	//
12998	// LabelingJobStatus is a required field
12999	LabelingJobStatus *string `type:"string" required:"true" enum:"LabelingJobStatus"`
13000
13001	// The date and time that the labeling job was last updated.
13002	//
13003	// LastModifiedTime is a required field
13004	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
13005
13006	// The location of the job's output data and the AWS Key Management Service
13007	// key ID for the key used to encrypt the output data, if any.
13008	//
13009	// OutputConfig is a required field
13010	OutputConfig *LabelingJobOutputConfig `type:"structure" required:"true"`
13011
13012	// The Amazon Resource Name (ARN) that Amazon SageMaker assumes to perform tasks
13013	// on your behalf during data labeling.
13014	//
13015	// RoleArn is a required field
13016	RoleArn *string `min:"20" type:"string" required:"true"`
13017
13018	// A set of conditions for stopping a labeling job. If any of the conditions
13019	// are met, the job is automatically stopped.
13020	StoppingConditions *LabelingJobStoppingConditions `type:"structure"`
13021
13022	// An array of key/value pairs. For more information, see Using Cost Allocation
13023	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
13024	// in the AWS Billing and Cost Management User Guide.
13025	Tags []*Tag `type:"list"`
13026}
13027
13028// String returns the string representation
13029func (s DescribeLabelingJobOutput) String() string {
13030	return awsutil.Prettify(s)
13031}
13032
13033// GoString returns the string representation
13034func (s DescribeLabelingJobOutput) GoString() string {
13035	return s.String()
13036}
13037
13038// SetCreationTime sets the CreationTime field's value.
13039func (s *DescribeLabelingJobOutput) SetCreationTime(v time.Time) *DescribeLabelingJobOutput {
13040	s.CreationTime = &v
13041	return s
13042}
13043
13044// SetFailureReason sets the FailureReason field's value.
13045func (s *DescribeLabelingJobOutput) SetFailureReason(v string) *DescribeLabelingJobOutput {
13046	s.FailureReason = &v
13047	return s
13048}
13049
13050// SetHumanTaskConfig sets the HumanTaskConfig field's value.
13051func (s *DescribeLabelingJobOutput) SetHumanTaskConfig(v *HumanTaskConfig) *DescribeLabelingJobOutput {
13052	s.HumanTaskConfig = v
13053	return s
13054}
13055
13056// SetInputConfig sets the InputConfig field's value.
13057func (s *DescribeLabelingJobOutput) SetInputConfig(v *LabelingJobInputConfig) *DescribeLabelingJobOutput {
13058	s.InputConfig = v
13059	return s
13060}
13061
13062// SetJobReferenceCode sets the JobReferenceCode field's value.
13063func (s *DescribeLabelingJobOutput) SetJobReferenceCode(v string) *DescribeLabelingJobOutput {
13064	s.JobReferenceCode = &v
13065	return s
13066}
13067
13068// SetLabelAttributeName sets the LabelAttributeName field's value.
13069func (s *DescribeLabelingJobOutput) SetLabelAttributeName(v string) *DescribeLabelingJobOutput {
13070	s.LabelAttributeName = &v
13071	return s
13072}
13073
13074// SetLabelCategoryConfigS3Uri sets the LabelCategoryConfigS3Uri field's value.
13075func (s *DescribeLabelingJobOutput) SetLabelCategoryConfigS3Uri(v string) *DescribeLabelingJobOutput {
13076	s.LabelCategoryConfigS3Uri = &v
13077	return s
13078}
13079
13080// SetLabelCounters sets the LabelCounters field's value.
13081func (s *DescribeLabelingJobOutput) SetLabelCounters(v *LabelCounters) *DescribeLabelingJobOutput {
13082	s.LabelCounters = v
13083	return s
13084}
13085
13086// SetLabelingJobAlgorithmsConfig sets the LabelingJobAlgorithmsConfig field's value.
13087func (s *DescribeLabelingJobOutput) SetLabelingJobAlgorithmsConfig(v *LabelingJobAlgorithmsConfig) *DescribeLabelingJobOutput {
13088	s.LabelingJobAlgorithmsConfig = v
13089	return s
13090}
13091
13092// SetLabelingJobArn sets the LabelingJobArn field's value.
13093func (s *DescribeLabelingJobOutput) SetLabelingJobArn(v string) *DescribeLabelingJobOutput {
13094	s.LabelingJobArn = &v
13095	return s
13096}
13097
13098// SetLabelingJobName sets the LabelingJobName field's value.
13099func (s *DescribeLabelingJobOutput) SetLabelingJobName(v string) *DescribeLabelingJobOutput {
13100	s.LabelingJobName = &v
13101	return s
13102}
13103
13104// SetLabelingJobOutput sets the LabelingJobOutput field's value.
13105func (s *DescribeLabelingJobOutput) SetLabelingJobOutput(v *LabelingJobOutput) *DescribeLabelingJobOutput {
13106	s.LabelingJobOutput = v
13107	return s
13108}
13109
13110// SetLabelingJobStatus sets the LabelingJobStatus field's value.
13111func (s *DescribeLabelingJobOutput) SetLabelingJobStatus(v string) *DescribeLabelingJobOutput {
13112	s.LabelingJobStatus = &v
13113	return s
13114}
13115
13116// SetLastModifiedTime sets the LastModifiedTime field's value.
13117func (s *DescribeLabelingJobOutput) SetLastModifiedTime(v time.Time) *DescribeLabelingJobOutput {
13118	s.LastModifiedTime = &v
13119	return s
13120}
13121
13122// SetOutputConfig sets the OutputConfig field's value.
13123func (s *DescribeLabelingJobOutput) SetOutputConfig(v *LabelingJobOutputConfig) *DescribeLabelingJobOutput {
13124	s.OutputConfig = v
13125	return s
13126}
13127
13128// SetRoleArn sets the RoleArn field's value.
13129func (s *DescribeLabelingJobOutput) SetRoleArn(v string) *DescribeLabelingJobOutput {
13130	s.RoleArn = &v
13131	return s
13132}
13133
13134// SetStoppingConditions sets the StoppingConditions field's value.
13135func (s *DescribeLabelingJobOutput) SetStoppingConditions(v *LabelingJobStoppingConditions) *DescribeLabelingJobOutput {
13136	s.StoppingConditions = v
13137	return s
13138}
13139
13140// SetTags sets the Tags field's value.
13141func (s *DescribeLabelingJobOutput) SetTags(v []*Tag) *DescribeLabelingJobOutput {
13142	s.Tags = v
13143	return s
13144}
13145
13146type DescribeModelInput struct {
13147	_ struct{} `type:"structure"`
13148
13149	// The name of the model.
13150	//
13151	// ModelName is a required field
13152	ModelName *string `type:"string" required:"true"`
13153}
13154
13155// String returns the string representation
13156func (s DescribeModelInput) String() string {
13157	return awsutil.Prettify(s)
13158}
13159
13160// GoString returns the string representation
13161func (s DescribeModelInput) GoString() string {
13162	return s.String()
13163}
13164
13165// Validate inspects the fields of the type to determine if they are valid.
13166func (s *DescribeModelInput) Validate() error {
13167	invalidParams := request.ErrInvalidParams{Context: "DescribeModelInput"}
13168	if s.ModelName == nil {
13169		invalidParams.Add(request.NewErrParamRequired("ModelName"))
13170	}
13171
13172	if invalidParams.Len() > 0 {
13173		return invalidParams
13174	}
13175	return nil
13176}
13177
13178// SetModelName sets the ModelName field's value.
13179func (s *DescribeModelInput) SetModelName(v string) *DescribeModelInput {
13180	s.ModelName = &v
13181	return s
13182}
13183
13184type DescribeModelOutput struct {
13185	_ struct{} `type:"structure"`
13186
13187	// The containers in the inference pipeline.
13188	Containers []*ContainerDefinition `type:"list"`
13189
13190	// A timestamp that shows when the model was created.
13191	//
13192	// CreationTime is a required field
13193	CreationTime *time.Time `type:"timestamp" required:"true"`
13194
13195	// If True, no inbound or outbound network calls can be made to or from the
13196	// model container.
13197	//
13198	// The Semantic Segmentation built-in algorithm does not support network isolation.
13199	EnableNetworkIsolation *bool `type:"boolean"`
13200
13201	// The Amazon Resource Name (ARN) of the IAM role that you specified for the
13202	// model.
13203	//
13204	// ExecutionRoleArn is a required field
13205	ExecutionRoleArn *string `min:"20" type:"string" required:"true"`
13206
13207	// The Amazon Resource Name (ARN) of the model.
13208	//
13209	// ModelArn is a required field
13210	ModelArn *string `min:"20" type:"string" required:"true"`
13211
13212	// Name of the Amazon SageMaker model.
13213	//
13214	// ModelName is a required field
13215	ModelName *string `type:"string" required:"true"`
13216
13217	// The location of the primary inference code, associated artifacts, and custom
13218	// environment map that the inference code uses when it is deployed in production.
13219	PrimaryContainer *ContainerDefinition `type:"structure"`
13220
13221	// A VpcConfig object that specifies the VPC that this model has access to.
13222	// For more information, see Protect Endpoints by Using an Amazon Virtual Private
13223	// Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
13224	VpcConfig *VpcConfig `type:"structure"`
13225}
13226
13227// String returns the string representation
13228func (s DescribeModelOutput) String() string {
13229	return awsutil.Prettify(s)
13230}
13231
13232// GoString returns the string representation
13233func (s DescribeModelOutput) GoString() string {
13234	return s.String()
13235}
13236
13237// SetContainers sets the Containers field's value.
13238func (s *DescribeModelOutput) SetContainers(v []*ContainerDefinition) *DescribeModelOutput {
13239	s.Containers = v
13240	return s
13241}
13242
13243// SetCreationTime sets the CreationTime field's value.
13244func (s *DescribeModelOutput) SetCreationTime(v time.Time) *DescribeModelOutput {
13245	s.CreationTime = &v
13246	return s
13247}
13248
13249// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
13250func (s *DescribeModelOutput) SetEnableNetworkIsolation(v bool) *DescribeModelOutput {
13251	s.EnableNetworkIsolation = &v
13252	return s
13253}
13254
13255// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
13256func (s *DescribeModelOutput) SetExecutionRoleArn(v string) *DescribeModelOutput {
13257	s.ExecutionRoleArn = &v
13258	return s
13259}
13260
13261// SetModelArn sets the ModelArn field's value.
13262func (s *DescribeModelOutput) SetModelArn(v string) *DescribeModelOutput {
13263	s.ModelArn = &v
13264	return s
13265}
13266
13267// SetModelName sets the ModelName field's value.
13268func (s *DescribeModelOutput) SetModelName(v string) *DescribeModelOutput {
13269	s.ModelName = &v
13270	return s
13271}
13272
13273// SetPrimaryContainer sets the PrimaryContainer field's value.
13274func (s *DescribeModelOutput) SetPrimaryContainer(v *ContainerDefinition) *DescribeModelOutput {
13275	s.PrimaryContainer = v
13276	return s
13277}
13278
13279// SetVpcConfig sets the VpcConfig field's value.
13280func (s *DescribeModelOutput) SetVpcConfig(v *VpcConfig) *DescribeModelOutput {
13281	s.VpcConfig = v
13282	return s
13283}
13284
13285type DescribeModelPackageInput struct {
13286	_ struct{} `type:"structure"`
13287
13288	// The name of the model package to describe.
13289	//
13290	// ModelPackageName is a required field
13291	ModelPackageName *string `min:"1" type:"string" required:"true"`
13292}
13293
13294// String returns the string representation
13295func (s DescribeModelPackageInput) String() string {
13296	return awsutil.Prettify(s)
13297}
13298
13299// GoString returns the string representation
13300func (s DescribeModelPackageInput) GoString() string {
13301	return s.String()
13302}
13303
13304// Validate inspects the fields of the type to determine if they are valid.
13305func (s *DescribeModelPackageInput) Validate() error {
13306	invalidParams := request.ErrInvalidParams{Context: "DescribeModelPackageInput"}
13307	if s.ModelPackageName == nil {
13308		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
13309	}
13310	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
13311		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
13312	}
13313
13314	if invalidParams.Len() > 0 {
13315		return invalidParams
13316	}
13317	return nil
13318}
13319
13320// SetModelPackageName sets the ModelPackageName field's value.
13321func (s *DescribeModelPackageInput) SetModelPackageName(v string) *DescribeModelPackageInput {
13322	s.ModelPackageName = &v
13323	return s
13324}
13325
13326type DescribeModelPackageOutput struct {
13327	_ struct{} `type:"structure"`
13328
13329	// Whether the model package is certified for listing on AWS Marketplace.
13330	CertifyForMarketplace *bool `type:"boolean"`
13331
13332	// A timestamp specifying when the model package was created.
13333	//
13334	// CreationTime is a required field
13335	CreationTime *time.Time `type:"timestamp" required:"true"`
13336
13337	// Details about inference jobs that can be run with models based on this model
13338	// package.
13339	InferenceSpecification *InferenceSpecification `type:"structure"`
13340
13341	// The Amazon Resource Name (ARN) of the model package.
13342	//
13343	// ModelPackageArn is a required field
13344	ModelPackageArn *string `min:"1" type:"string" required:"true"`
13345
13346	// A brief summary of the model package.
13347	ModelPackageDescription *string `type:"string"`
13348
13349	// The name of the model package being described.
13350	//
13351	// ModelPackageName is a required field
13352	ModelPackageName *string `min:"1" type:"string" required:"true"`
13353
13354	// The current status of the model package.
13355	//
13356	// ModelPackageStatus is a required field
13357	ModelPackageStatus *string `type:"string" required:"true" enum:"ModelPackageStatus"`
13358
13359	// Details about the current status of the model package.
13360	//
13361	// ModelPackageStatusDetails is a required field
13362	ModelPackageStatusDetails *ModelPackageStatusDetails `type:"structure" required:"true"`
13363
13364	// Details about the algorithm that was used to create the model package.
13365	SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"`
13366
13367	// Configurations for one or more transform jobs that Amazon SageMaker runs
13368	// to test the model package.
13369	ValidationSpecification *ModelPackageValidationSpecification `type:"structure"`
13370}
13371
13372// String returns the string representation
13373func (s DescribeModelPackageOutput) String() string {
13374	return awsutil.Prettify(s)
13375}
13376
13377// GoString returns the string representation
13378func (s DescribeModelPackageOutput) GoString() string {
13379	return s.String()
13380}
13381
13382// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
13383func (s *DescribeModelPackageOutput) SetCertifyForMarketplace(v bool) *DescribeModelPackageOutput {
13384	s.CertifyForMarketplace = &v
13385	return s
13386}
13387
13388// SetCreationTime sets the CreationTime field's value.
13389func (s *DescribeModelPackageOutput) SetCreationTime(v time.Time) *DescribeModelPackageOutput {
13390	s.CreationTime = &v
13391	return s
13392}
13393
13394// SetInferenceSpecification sets the InferenceSpecification field's value.
13395func (s *DescribeModelPackageOutput) SetInferenceSpecification(v *InferenceSpecification) *DescribeModelPackageOutput {
13396	s.InferenceSpecification = v
13397	return s
13398}
13399
13400// SetModelPackageArn sets the ModelPackageArn field's value.
13401func (s *DescribeModelPackageOutput) SetModelPackageArn(v string) *DescribeModelPackageOutput {
13402	s.ModelPackageArn = &v
13403	return s
13404}
13405
13406// SetModelPackageDescription sets the ModelPackageDescription field's value.
13407func (s *DescribeModelPackageOutput) SetModelPackageDescription(v string) *DescribeModelPackageOutput {
13408	s.ModelPackageDescription = &v
13409	return s
13410}
13411
13412// SetModelPackageName sets the ModelPackageName field's value.
13413func (s *DescribeModelPackageOutput) SetModelPackageName(v string) *DescribeModelPackageOutput {
13414	s.ModelPackageName = &v
13415	return s
13416}
13417
13418// SetModelPackageStatus sets the ModelPackageStatus field's value.
13419func (s *DescribeModelPackageOutput) SetModelPackageStatus(v string) *DescribeModelPackageOutput {
13420	s.ModelPackageStatus = &v
13421	return s
13422}
13423
13424// SetModelPackageStatusDetails sets the ModelPackageStatusDetails field's value.
13425func (s *DescribeModelPackageOutput) SetModelPackageStatusDetails(v *ModelPackageStatusDetails) *DescribeModelPackageOutput {
13426	s.ModelPackageStatusDetails = v
13427	return s
13428}
13429
13430// SetSourceAlgorithmSpecification sets the SourceAlgorithmSpecification field's value.
13431func (s *DescribeModelPackageOutput) SetSourceAlgorithmSpecification(v *SourceAlgorithmSpecification) *DescribeModelPackageOutput {
13432	s.SourceAlgorithmSpecification = v
13433	return s
13434}
13435
13436// SetValidationSpecification sets the ValidationSpecification field's value.
13437func (s *DescribeModelPackageOutput) SetValidationSpecification(v *ModelPackageValidationSpecification) *DescribeModelPackageOutput {
13438	s.ValidationSpecification = v
13439	return s
13440}
13441
13442type DescribeNotebookInstanceInput struct {
13443	_ struct{} `type:"structure"`
13444
13445	// The name of the notebook instance that you want information about.
13446	//
13447	// NotebookInstanceName is a required field
13448	NotebookInstanceName *string `type:"string" required:"true"`
13449}
13450
13451// String returns the string representation
13452func (s DescribeNotebookInstanceInput) String() string {
13453	return awsutil.Prettify(s)
13454}
13455
13456// GoString returns the string representation
13457func (s DescribeNotebookInstanceInput) GoString() string {
13458	return s.String()
13459}
13460
13461// Validate inspects the fields of the type to determine if they are valid.
13462func (s *DescribeNotebookInstanceInput) Validate() error {
13463	invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookInstanceInput"}
13464	if s.NotebookInstanceName == nil {
13465		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
13466	}
13467
13468	if invalidParams.Len() > 0 {
13469		return invalidParams
13470	}
13471	return nil
13472}
13473
13474// SetNotebookInstanceName sets the NotebookInstanceName field's value.
13475func (s *DescribeNotebookInstanceInput) SetNotebookInstanceName(v string) *DescribeNotebookInstanceInput {
13476	s.NotebookInstanceName = &v
13477	return s
13478}
13479
13480type DescribeNotebookInstanceLifecycleConfigInput struct {
13481	_ struct{} `type:"structure"`
13482
13483	// The name of the lifecycle configuration to describe.
13484	//
13485	// NotebookInstanceLifecycleConfigName is a required field
13486	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
13487}
13488
13489// String returns the string representation
13490func (s DescribeNotebookInstanceLifecycleConfigInput) String() string {
13491	return awsutil.Prettify(s)
13492}
13493
13494// GoString returns the string representation
13495func (s DescribeNotebookInstanceLifecycleConfigInput) GoString() string {
13496	return s.String()
13497}
13498
13499// Validate inspects the fields of the type to determine if they are valid.
13500func (s *DescribeNotebookInstanceLifecycleConfigInput) Validate() error {
13501	invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookInstanceLifecycleConfigInput"}
13502	if s.NotebookInstanceLifecycleConfigName == nil {
13503		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
13504	}
13505
13506	if invalidParams.Len() > 0 {
13507		return invalidParams
13508	}
13509	return nil
13510}
13511
13512// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13513func (s *DescribeNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceLifecycleConfigInput {
13514	s.NotebookInstanceLifecycleConfigName = &v
13515	return s
13516}
13517
13518type DescribeNotebookInstanceLifecycleConfigOutput struct {
13519	_ struct{} `type:"structure"`
13520
13521	// A timestamp that tells when the lifecycle configuration was created.
13522	CreationTime *time.Time `type:"timestamp"`
13523
13524	// A timestamp that tells when the lifecycle configuration was last modified.
13525	LastModifiedTime *time.Time `type:"timestamp"`
13526
13527	// The Amazon Resource Name (ARN) of the lifecycle configuration.
13528	NotebookInstanceLifecycleConfigArn *string `type:"string"`
13529
13530	// The name of the lifecycle configuration.
13531	NotebookInstanceLifecycleConfigName *string `type:"string"`
13532
13533	// The shell script that runs only once, when you create a notebook instance.
13534	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
13535
13536	// The shell script that runs every time you start a notebook instance, including
13537	// when you create the notebook instance.
13538	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
13539}
13540
13541// String returns the string representation
13542func (s DescribeNotebookInstanceLifecycleConfigOutput) String() string {
13543	return awsutil.Prettify(s)
13544}
13545
13546// GoString returns the string representation
13547func (s DescribeNotebookInstanceLifecycleConfigOutput) GoString() string {
13548	return s.String()
13549}
13550
13551// SetCreationTime sets the CreationTime field's value.
13552func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetCreationTime(v time.Time) *DescribeNotebookInstanceLifecycleConfigOutput {
13553	s.CreationTime = &v
13554	return s
13555}
13556
13557// SetLastModifiedTime sets the LastModifiedTime field's value.
13558func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetLastModifiedTime(v time.Time) *DescribeNotebookInstanceLifecycleConfigOutput {
13559	s.LastModifiedTime = &v
13560	return s
13561}
13562
13563// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
13564func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigArn(v string) *DescribeNotebookInstanceLifecycleConfigOutput {
13565	s.NotebookInstanceLifecycleConfigArn = &v
13566	return s
13567}
13568
13569// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13570func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceLifecycleConfigOutput {
13571	s.NotebookInstanceLifecycleConfigName = &v
13572	return s
13573}
13574
13575// SetOnCreate sets the OnCreate field's value.
13576func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *DescribeNotebookInstanceLifecycleConfigOutput {
13577	s.OnCreate = v
13578	return s
13579}
13580
13581// SetOnStart sets the OnStart field's value.
13582func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetOnStart(v []*NotebookInstanceLifecycleHook) *DescribeNotebookInstanceLifecycleConfigOutput {
13583	s.OnStart = v
13584	return s
13585}
13586
13587type DescribeNotebookInstanceOutput struct {
13588	_ struct{} `type:"structure"`
13589
13590	// A list of the Elastic Inference (EI) instance types associated with this
13591	// notebook instance. Currently only one EI instance type can be associated
13592	// with a notebook instance. For more information, see Using Elastic Inference
13593	// in Amazon SageMaker (sagemaker/latest/dg/ei.html).
13594	AcceleratorTypes []*string `type:"list"`
13595
13596	// An array of up to three Git repositories associated with the notebook instance.
13597	// These can be either the names of Git repositories stored as resources in
13598	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
13599	// or in any other Git repository. These repositories are cloned at the same
13600	// level as the default repository of your notebook instance. For more information,
13601	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
13602	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
13603	AdditionalCodeRepositories []*string `type:"list"`
13604
13605	// A timestamp. Use this parameter to return the time when the notebook instance
13606	// was created
13607	CreationTime *time.Time `type:"timestamp"`
13608
13609	// The Git repository associated with the notebook instance as its default code
13610	// repository. This can be either the name of a Git repository stored as a resource
13611	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
13612	// or in any other Git repository. When you open a notebook instance, it opens
13613	// in the directory that contains this repository. For more information, see
13614	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
13615	DefaultCodeRepository *string `min:"1" type:"string"`
13616
13617	// Describes whether Amazon SageMaker provides internet access to the notebook
13618	// instance. If this value is set to Disabled, the notebook instance does not
13619	// have internet access, and cannot connect to Amazon SageMaker training and
13620	// endpoint services.
13621	//
13622	// For more information, see Notebook Instances Are Internet-Enabled by Default
13623	// (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access).
13624	DirectInternetAccess *string `type:"string" enum:"DirectInternetAccess"`
13625
13626	// If status is Failed, the reason it failed.
13627	FailureReason *string `type:"string"`
13628
13629	// The type of ML compute instance running on the notebook instance.
13630	InstanceType *string `type:"string" enum:"InstanceType"`
13631
13632	// The AWS KMS key ID Amazon SageMaker uses to encrypt data when storing it
13633	// on the ML storage volume attached to the instance.
13634	KmsKeyId *string `type:"string"`
13635
13636	// A timestamp. Use this parameter to retrieve the time when the notebook instance
13637	// was last modified.
13638	LastModifiedTime *time.Time `type:"timestamp"`
13639
13640	// The network interface IDs that Amazon SageMaker created at the time of creating
13641	// the instance.
13642	NetworkInterfaceId *string `type:"string"`
13643
13644	// The Amazon Resource Name (ARN) of the notebook instance.
13645	NotebookInstanceArn *string `type:"string"`
13646
13647	// Returns the name of a notebook instance lifecycle configuration.
13648	//
13649	// For information about notebook instance lifestyle configurations, see Step
13650	// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)
13651	NotebookInstanceLifecycleConfigName *string `type:"string"`
13652
13653	// The name of the Amazon SageMaker notebook instance.
13654	NotebookInstanceName *string `type:"string"`
13655
13656	// The status of the notebook instance.
13657	NotebookInstanceStatus *string `type:"string" enum:"NotebookInstanceStatus"`
13658
13659	// The Amazon Resource Name (ARN) of the IAM role associated with the instance.
13660	RoleArn *string `min:"20" type:"string"`
13661
13662	// Whether root access is enabled or disabled for users of the notebook instance.
13663	//
13664	// Lifecycle configurations need root access to be able to set up a notebook
13665	// instance. Because of this, lifecycle configurations associated with a notebook
13666	// instance always run with root access even if you disable root access for
13667	// users.
13668	RootAccess *string `type:"string" enum:"RootAccess"`
13669
13670	// The IDs of the VPC security groups.
13671	SecurityGroups []*string `type:"list"`
13672
13673	// The ID of the VPC subnet.
13674	SubnetId *string `type:"string"`
13675
13676	// The URL that you use to connect to the Jupyter notebook that is running in
13677	// your notebook instance.
13678	Url *string `type:"string"`
13679
13680	// The size, in GB, of the ML storage volume attached to the notebook instance.
13681	VolumeSizeInGB *int64 `min:"5" type:"integer"`
13682}
13683
13684// String returns the string representation
13685func (s DescribeNotebookInstanceOutput) String() string {
13686	return awsutil.Prettify(s)
13687}
13688
13689// GoString returns the string representation
13690func (s DescribeNotebookInstanceOutput) GoString() string {
13691	return s.String()
13692}
13693
13694// SetAcceleratorTypes sets the AcceleratorTypes field's value.
13695func (s *DescribeNotebookInstanceOutput) SetAcceleratorTypes(v []*string) *DescribeNotebookInstanceOutput {
13696	s.AcceleratorTypes = v
13697	return s
13698}
13699
13700// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
13701func (s *DescribeNotebookInstanceOutput) SetAdditionalCodeRepositories(v []*string) *DescribeNotebookInstanceOutput {
13702	s.AdditionalCodeRepositories = v
13703	return s
13704}
13705
13706// SetCreationTime sets the CreationTime field's value.
13707func (s *DescribeNotebookInstanceOutput) SetCreationTime(v time.Time) *DescribeNotebookInstanceOutput {
13708	s.CreationTime = &v
13709	return s
13710}
13711
13712// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
13713func (s *DescribeNotebookInstanceOutput) SetDefaultCodeRepository(v string) *DescribeNotebookInstanceOutput {
13714	s.DefaultCodeRepository = &v
13715	return s
13716}
13717
13718// SetDirectInternetAccess sets the DirectInternetAccess field's value.
13719func (s *DescribeNotebookInstanceOutput) SetDirectInternetAccess(v string) *DescribeNotebookInstanceOutput {
13720	s.DirectInternetAccess = &v
13721	return s
13722}
13723
13724// SetFailureReason sets the FailureReason field's value.
13725func (s *DescribeNotebookInstanceOutput) SetFailureReason(v string) *DescribeNotebookInstanceOutput {
13726	s.FailureReason = &v
13727	return s
13728}
13729
13730// SetInstanceType sets the InstanceType field's value.
13731func (s *DescribeNotebookInstanceOutput) SetInstanceType(v string) *DescribeNotebookInstanceOutput {
13732	s.InstanceType = &v
13733	return s
13734}
13735
13736// SetKmsKeyId sets the KmsKeyId field's value.
13737func (s *DescribeNotebookInstanceOutput) SetKmsKeyId(v string) *DescribeNotebookInstanceOutput {
13738	s.KmsKeyId = &v
13739	return s
13740}
13741
13742// SetLastModifiedTime sets the LastModifiedTime field's value.
13743func (s *DescribeNotebookInstanceOutput) SetLastModifiedTime(v time.Time) *DescribeNotebookInstanceOutput {
13744	s.LastModifiedTime = &v
13745	return s
13746}
13747
13748// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
13749func (s *DescribeNotebookInstanceOutput) SetNetworkInterfaceId(v string) *DescribeNotebookInstanceOutput {
13750	s.NetworkInterfaceId = &v
13751	return s
13752}
13753
13754// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
13755func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceArn(v string) *DescribeNotebookInstanceOutput {
13756	s.NotebookInstanceArn = &v
13757	return s
13758}
13759
13760// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13761func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceOutput {
13762	s.NotebookInstanceLifecycleConfigName = &v
13763	return s
13764}
13765
13766// SetNotebookInstanceName sets the NotebookInstanceName field's value.
13767func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceName(v string) *DescribeNotebookInstanceOutput {
13768	s.NotebookInstanceName = &v
13769	return s
13770}
13771
13772// SetNotebookInstanceStatus sets the NotebookInstanceStatus field's value.
13773func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceStatus(v string) *DescribeNotebookInstanceOutput {
13774	s.NotebookInstanceStatus = &v
13775	return s
13776}
13777
13778// SetRoleArn sets the RoleArn field's value.
13779func (s *DescribeNotebookInstanceOutput) SetRoleArn(v string) *DescribeNotebookInstanceOutput {
13780	s.RoleArn = &v
13781	return s
13782}
13783
13784// SetRootAccess sets the RootAccess field's value.
13785func (s *DescribeNotebookInstanceOutput) SetRootAccess(v string) *DescribeNotebookInstanceOutput {
13786	s.RootAccess = &v
13787	return s
13788}
13789
13790// SetSecurityGroups sets the SecurityGroups field's value.
13791func (s *DescribeNotebookInstanceOutput) SetSecurityGroups(v []*string) *DescribeNotebookInstanceOutput {
13792	s.SecurityGroups = v
13793	return s
13794}
13795
13796// SetSubnetId sets the SubnetId field's value.
13797func (s *DescribeNotebookInstanceOutput) SetSubnetId(v string) *DescribeNotebookInstanceOutput {
13798	s.SubnetId = &v
13799	return s
13800}
13801
13802// SetUrl sets the Url field's value.
13803func (s *DescribeNotebookInstanceOutput) SetUrl(v string) *DescribeNotebookInstanceOutput {
13804	s.Url = &v
13805	return s
13806}
13807
13808// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
13809func (s *DescribeNotebookInstanceOutput) SetVolumeSizeInGB(v int64) *DescribeNotebookInstanceOutput {
13810	s.VolumeSizeInGB = &v
13811	return s
13812}
13813
13814type DescribeSubscribedWorkteamInput struct {
13815	_ struct{} `type:"structure"`
13816
13817	// The Amazon Resource Name (ARN) of the subscribed work team to describe.
13818	//
13819	// WorkteamArn is a required field
13820	WorkteamArn *string `type:"string" required:"true"`
13821}
13822
13823// String returns the string representation
13824func (s DescribeSubscribedWorkteamInput) String() string {
13825	return awsutil.Prettify(s)
13826}
13827
13828// GoString returns the string representation
13829func (s DescribeSubscribedWorkteamInput) GoString() string {
13830	return s.String()
13831}
13832
13833// Validate inspects the fields of the type to determine if they are valid.
13834func (s *DescribeSubscribedWorkteamInput) Validate() error {
13835	invalidParams := request.ErrInvalidParams{Context: "DescribeSubscribedWorkteamInput"}
13836	if s.WorkteamArn == nil {
13837		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
13838	}
13839
13840	if invalidParams.Len() > 0 {
13841		return invalidParams
13842	}
13843	return nil
13844}
13845
13846// SetWorkteamArn sets the WorkteamArn field's value.
13847func (s *DescribeSubscribedWorkteamInput) SetWorkteamArn(v string) *DescribeSubscribedWorkteamInput {
13848	s.WorkteamArn = &v
13849	return s
13850}
13851
13852type DescribeSubscribedWorkteamOutput struct {
13853	_ struct{} `type:"structure"`
13854
13855	// A Workteam instance that contains information about the work team.
13856	//
13857	// SubscribedWorkteam is a required field
13858	SubscribedWorkteam *SubscribedWorkteam `type:"structure" required:"true"`
13859}
13860
13861// String returns the string representation
13862func (s DescribeSubscribedWorkteamOutput) String() string {
13863	return awsutil.Prettify(s)
13864}
13865
13866// GoString returns the string representation
13867func (s DescribeSubscribedWorkteamOutput) GoString() string {
13868	return s.String()
13869}
13870
13871// SetSubscribedWorkteam sets the SubscribedWorkteam field's value.
13872func (s *DescribeSubscribedWorkteamOutput) SetSubscribedWorkteam(v *SubscribedWorkteam) *DescribeSubscribedWorkteamOutput {
13873	s.SubscribedWorkteam = v
13874	return s
13875}
13876
13877type DescribeTrainingJobInput struct {
13878	_ struct{} `type:"structure"`
13879
13880	// The name of the training job.
13881	//
13882	// TrainingJobName is a required field
13883	TrainingJobName *string `min:"1" type:"string" required:"true"`
13884}
13885
13886// String returns the string representation
13887func (s DescribeTrainingJobInput) String() string {
13888	return awsutil.Prettify(s)
13889}
13890
13891// GoString returns the string representation
13892func (s DescribeTrainingJobInput) GoString() string {
13893	return s.String()
13894}
13895
13896// Validate inspects the fields of the type to determine if they are valid.
13897func (s *DescribeTrainingJobInput) Validate() error {
13898	invalidParams := request.ErrInvalidParams{Context: "DescribeTrainingJobInput"}
13899	if s.TrainingJobName == nil {
13900		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
13901	}
13902	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
13903		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
13904	}
13905
13906	if invalidParams.Len() > 0 {
13907		return invalidParams
13908	}
13909	return nil
13910}
13911
13912// SetTrainingJobName sets the TrainingJobName field's value.
13913func (s *DescribeTrainingJobInput) SetTrainingJobName(v string) *DescribeTrainingJobInput {
13914	s.TrainingJobName = &v
13915	return s
13916}
13917
13918type DescribeTrainingJobOutput struct {
13919	_ struct{} `type:"structure"`
13920
13921	// Information about the algorithm used for training, and algorithm metadata.
13922	//
13923	// AlgorithmSpecification is a required field
13924	AlgorithmSpecification *AlgorithmSpecification `type:"structure" required:"true"`
13925
13926	// The billable time in seconds.
13927	//
13928	// You can calculate the savings from using managed spot training using the
13929	// formula (1 - BillableTimeInSeconds / TrainingTimeInSeconds) * 100. For example,
13930	// if BillableTimeInSeconds is 100 and TrainingTimeInSeconds is 500, the savings
13931	// is 80%.
13932	BillableTimeInSeconds *int64 `min:"1" type:"integer"`
13933
13934	// Contains information about the output location for managed spot training
13935	// checkpoint data.
13936	CheckpointConfig *CheckpointConfig `type:"structure"`
13937
13938	// A timestamp that indicates when the training job was created.
13939	//
13940	// CreationTime is a required field
13941	CreationTime *time.Time `type:"timestamp" required:"true"`
13942
13943	// To encrypt all communications between ML compute instances in distributed
13944	// training, choose True. Encryption provides greater security for distributed
13945	// training, but training might take longer. How long it takes depends on the
13946	// amount of communication between compute instances, especially if you use
13947	// a deep learning algorithms in distributed training.
13948	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
13949
13950	// A Boolean indicating whether managed spot training is enabled (True) or not
13951	// (False).
13952	EnableManagedSpotTraining *bool `type:"boolean"`
13953
13954	// If you want to allow inbound or outbound network calls, except for calls
13955	// between peers within a training cluster for distributed training, choose
13956	// True. If you enable network isolation for training jobs that are configured
13957	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
13958	// artifacts through the specified VPC, but the training container does not
13959	// have network access.
13960	//
13961	// The Semantic Segmentation built-in algorithm does not support network isolation.
13962	EnableNetworkIsolation *bool `type:"boolean"`
13963
13964	// If the training job failed, the reason it failed.
13965	FailureReason *string `type:"string"`
13966
13967	// A collection of MetricData objects that specify the names, values, and dates
13968	// and times that the training algorithm emitted to Amazon CloudWatch.
13969	FinalMetricDataList []*MetricData `type:"list"`
13970
13971	// Algorithm-specific parameters.
13972	HyperParameters map[string]*string `type:"map"`
13973
13974	// An array of Channel objects that describes each data input channel.
13975	InputDataConfig []*Channel `min:"1" type:"list"`
13976
13977	// The Amazon Resource Name (ARN) of the Amazon SageMaker Ground Truth labeling
13978	// job that created the transform or training job.
13979	LabelingJobArn *string `type:"string"`
13980
13981	// A timestamp that indicates when the status of the training job was last modified.
13982	LastModifiedTime *time.Time `type:"timestamp"`
13983
13984	// Information about the Amazon S3 location that is configured for storing model
13985	// artifacts.
13986	//
13987	// ModelArtifacts is a required field
13988	ModelArtifacts *ModelArtifacts `type:"structure" required:"true"`
13989
13990	// The S3 path where model artifacts that you configured when creating the job
13991	// are stored. Amazon SageMaker creates subfolders for model artifacts.
13992	OutputDataConfig *OutputDataConfig `type:"structure"`
13993
13994	// Resources, including ML compute instances and ML storage volumes, that are
13995	// configured for model training.
13996	//
13997	// ResourceConfig is a required field
13998	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
13999
14000	// The AWS Identity and Access Management (IAM) role configured for the training
14001	// job.
14002	RoleArn *string `min:"20" type:"string"`
14003
14004	// Provides detailed information about the state of the training job. For detailed
14005	// information on the secondary status of the training job, see StatusMessage
14006	// under SecondaryStatusTransition.
14007	//
14008	// Amazon SageMaker provides primary statuses and secondary statuses that apply
14009	// to each of them:
14010	//
14011	// InProgress
14012	//
14013	//    * Starting - Starting the training job.
14014	//
14015	//    * Downloading - An optional stage for algorithms that support File training
14016	//    input mode. It indicates that data is being downloaded to the ML storage
14017	//    volumes.
14018	//
14019	//    * Training - Training is in progress.
14020	//
14021	//    * Interrupted - The job stopped because the managed spot training instances
14022	//    were interrupted.
14023	//
14024	//    * Uploading - Training is complete and the model artifacts are being uploaded
14025	//    to the S3 location.
14026	//
14027	// Completed
14028	//
14029	//    * Completed - The training job has completed.
14030	//
14031	// Failed
14032	//
14033	//    * Failed - The training job has failed. The reason for the failure is
14034	//    returned in the FailureReason field of DescribeTrainingJobResponse.
14035	//
14036	// Stopped
14037	//
14038	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
14039	//    allowed runtime.
14040	//
14041	//    * MaxWaitTmeExceeded - The job stopped because it exceeded the maximum
14042	//    allowed wait time.
14043	//
14044	//    * Stopped - The training job has stopped.
14045	//
14046	// Stopping
14047	//
14048	//    * Stopping - Stopping the training job.
14049	//
14050	// Valid values for SecondaryStatus are subject to change.
14051	//
14052	// We no longer support the following secondary statuses:
14053	//
14054	//    * LaunchingMLInstances
14055	//
14056	//    * PreparingTrainingStack
14057	//
14058	//    * DownloadingTrainingImage
14059	//
14060	// SecondaryStatus is a required field
14061	SecondaryStatus *string `type:"string" required:"true" enum:"SecondaryStatus"`
14062
14063	// A history of all of the secondary statuses that the training job has transitioned
14064	// through.
14065	SecondaryStatusTransitions []*SecondaryStatusTransition `type:"list"`
14066
14067	// Specifies a limit to how long a model training job can run. It also specifies
14068	// the maximum time to wait for a spot instance. When the job reaches the time
14069	// limit, Amazon SageMaker ends the training job. Use this API to cap model
14070	// training costs.
14071	//
14072	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
14073	// delays job termination for 120 seconds. Algorithms can use this 120-second
14074	// window to save the model artifacts, so the results of training are not lost.
14075	//
14076	// StoppingCondition is a required field
14077	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
14078
14079	// Indicates the time when the training job ends on training instances. You
14080	// are billed for the time interval between the value of TrainingStartTime and
14081	// this time. For successful jobs and stopped jobs, this is the time after model
14082	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
14083	// detects a job failure.
14084	TrainingEndTime *time.Time `type:"timestamp"`
14085
14086	// The Amazon Resource Name (ARN) of the training job.
14087	//
14088	// TrainingJobArn is a required field
14089	TrainingJobArn *string `type:"string" required:"true"`
14090
14091	// Name of the model training job.
14092	//
14093	// TrainingJobName is a required field
14094	TrainingJobName *string `min:"1" type:"string" required:"true"`
14095
14096	// The status of the training job.
14097	//
14098	// Amazon SageMaker provides the following training job statuses:
14099	//
14100	//    * InProgress - The training is in progress.
14101	//
14102	//    * Completed - The training job has completed.
14103	//
14104	//    * Failed - The training job has failed. To see the reason for the failure,
14105	//    see the FailureReason field in the response to a DescribeTrainingJobResponse
14106	//    call.
14107	//
14108	//    * Stopping - The training job is stopping.
14109	//
14110	//    * Stopped - The training job has stopped.
14111	//
14112	// For more detailed information, see SecondaryStatus.
14113	//
14114	// TrainingJobStatus is a required field
14115	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
14116
14117	// Indicates the time when the training job starts on training instances. You
14118	// are billed for the time interval between this time and the value of TrainingEndTime.
14119	// The start time in CloudWatch Logs might be later than this time. The difference
14120	// is due to the time it takes to download the training data and to the size
14121	// of the training container.
14122	TrainingStartTime *time.Time `type:"timestamp"`
14123
14124	// The training time in seconds.
14125	TrainingTimeInSeconds *int64 `min:"1" type:"integer"`
14126
14127	// The Amazon Resource Name (ARN) of the associated hyperparameter tuning job
14128	// if the training job was launched by a hyperparameter tuning job.
14129	TuningJobArn *string `type:"string"`
14130
14131	// A VpcConfig object that specifies the VPC that this training job has access
14132	// to. For more information, see Protect Training Jobs by Using an Amazon Virtual
14133	// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
14134	VpcConfig *VpcConfig `type:"structure"`
14135}
14136
14137// String returns the string representation
14138func (s DescribeTrainingJobOutput) String() string {
14139	return awsutil.Prettify(s)
14140}
14141
14142// GoString returns the string representation
14143func (s DescribeTrainingJobOutput) GoString() string {
14144	return s.String()
14145}
14146
14147// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
14148func (s *DescribeTrainingJobOutput) SetAlgorithmSpecification(v *AlgorithmSpecification) *DescribeTrainingJobOutput {
14149	s.AlgorithmSpecification = v
14150	return s
14151}
14152
14153// SetBillableTimeInSeconds sets the BillableTimeInSeconds field's value.
14154func (s *DescribeTrainingJobOutput) SetBillableTimeInSeconds(v int64) *DescribeTrainingJobOutput {
14155	s.BillableTimeInSeconds = &v
14156	return s
14157}
14158
14159// SetCheckpointConfig sets the CheckpointConfig field's value.
14160func (s *DescribeTrainingJobOutput) SetCheckpointConfig(v *CheckpointConfig) *DescribeTrainingJobOutput {
14161	s.CheckpointConfig = v
14162	return s
14163}
14164
14165// SetCreationTime sets the CreationTime field's value.
14166func (s *DescribeTrainingJobOutput) SetCreationTime(v time.Time) *DescribeTrainingJobOutput {
14167	s.CreationTime = &v
14168	return s
14169}
14170
14171// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
14172func (s *DescribeTrainingJobOutput) SetEnableInterContainerTrafficEncryption(v bool) *DescribeTrainingJobOutput {
14173	s.EnableInterContainerTrafficEncryption = &v
14174	return s
14175}
14176
14177// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
14178func (s *DescribeTrainingJobOutput) SetEnableManagedSpotTraining(v bool) *DescribeTrainingJobOutput {
14179	s.EnableManagedSpotTraining = &v
14180	return s
14181}
14182
14183// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
14184func (s *DescribeTrainingJobOutput) SetEnableNetworkIsolation(v bool) *DescribeTrainingJobOutput {
14185	s.EnableNetworkIsolation = &v
14186	return s
14187}
14188
14189// SetFailureReason sets the FailureReason field's value.
14190func (s *DescribeTrainingJobOutput) SetFailureReason(v string) *DescribeTrainingJobOutput {
14191	s.FailureReason = &v
14192	return s
14193}
14194
14195// SetFinalMetricDataList sets the FinalMetricDataList field's value.
14196func (s *DescribeTrainingJobOutput) SetFinalMetricDataList(v []*MetricData) *DescribeTrainingJobOutput {
14197	s.FinalMetricDataList = v
14198	return s
14199}
14200
14201// SetHyperParameters sets the HyperParameters field's value.
14202func (s *DescribeTrainingJobOutput) SetHyperParameters(v map[string]*string) *DescribeTrainingJobOutput {
14203	s.HyperParameters = v
14204	return s
14205}
14206
14207// SetInputDataConfig sets the InputDataConfig field's value.
14208func (s *DescribeTrainingJobOutput) SetInputDataConfig(v []*Channel) *DescribeTrainingJobOutput {
14209	s.InputDataConfig = v
14210	return s
14211}
14212
14213// SetLabelingJobArn sets the LabelingJobArn field's value.
14214func (s *DescribeTrainingJobOutput) SetLabelingJobArn(v string) *DescribeTrainingJobOutput {
14215	s.LabelingJobArn = &v
14216	return s
14217}
14218
14219// SetLastModifiedTime sets the LastModifiedTime field's value.
14220func (s *DescribeTrainingJobOutput) SetLastModifiedTime(v time.Time) *DescribeTrainingJobOutput {
14221	s.LastModifiedTime = &v
14222	return s
14223}
14224
14225// SetModelArtifacts sets the ModelArtifacts field's value.
14226func (s *DescribeTrainingJobOutput) SetModelArtifacts(v *ModelArtifacts) *DescribeTrainingJobOutput {
14227	s.ModelArtifacts = v
14228	return s
14229}
14230
14231// SetOutputDataConfig sets the OutputDataConfig field's value.
14232func (s *DescribeTrainingJobOutput) SetOutputDataConfig(v *OutputDataConfig) *DescribeTrainingJobOutput {
14233	s.OutputDataConfig = v
14234	return s
14235}
14236
14237// SetResourceConfig sets the ResourceConfig field's value.
14238func (s *DescribeTrainingJobOutput) SetResourceConfig(v *ResourceConfig) *DescribeTrainingJobOutput {
14239	s.ResourceConfig = v
14240	return s
14241}
14242
14243// SetRoleArn sets the RoleArn field's value.
14244func (s *DescribeTrainingJobOutput) SetRoleArn(v string) *DescribeTrainingJobOutput {
14245	s.RoleArn = &v
14246	return s
14247}
14248
14249// SetSecondaryStatus sets the SecondaryStatus field's value.
14250func (s *DescribeTrainingJobOutput) SetSecondaryStatus(v string) *DescribeTrainingJobOutput {
14251	s.SecondaryStatus = &v
14252	return s
14253}
14254
14255// SetSecondaryStatusTransitions sets the SecondaryStatusTransitions field's value.
14256func (s *DescribeTrainingJobOutput) SetSecondaryStatusTransitions(v []*SecondaryStatusTransition) *DescribeTrainingJobOutput {
14257	s.SecondaryStatusTransitions = v
14258	return s
14259}
14260
14261// SetStoppingCondition sets the StoppingCondition field's value.
14262func (s *DescribeTrainingJobOutput) SetStoppingCondition(v *StoppingCondition) *DescribeTrainingJobOutput {
14263	s.StoppingCondition = v
14264	return s
14265}
14266
14267// SetTrainingEndTime sets the TrainingEndTime field's value.
14268func (s *DescribeTrainingJobOutput) SetTrainingEndTime(v time.Time) *DescribeTrainingJobOutput {
14269	s.TrainingEndTime = &v
14270	return s
14271}
14272
14273// SetTrainingJobArn sets the TrainingJobArn field's value.
14274func (s *DescribeTrainingJobOutput) SetTrainingJobArn(v string) *DescribeTrainingJobOutput {
14275	s.TrainingJobArn = &v
14276	return s
14277}
14278
14279// SetTrainingJobName sets the TrainingJobName field's value.
14280func (s *DescribeTrainingJobOutput) SetTrainingJobName(v string) *DescribeTrainingJobOutput {
14281	s.TrainingJobName = &v
14282	return s
14283}
14284
14285// SetTrainingJobStatus sets the TrainingJobStatus field's value.
14286func (s *DescribeTrainingJobOutput) SetTrainingJobStatus(v string) *DescribeTrainingJobOutput {
14287	s.TrainingJobStatus = &v
14288	return s
14289}
14290
14291// SetTrainingStartTime sets the TrainingStartTime field's value.
14292func (s *DescribeTrainingJobOutput) SetTrainingStartTime(v time.Time) *DescribeTrainingJobOutput {
14293	s.TrainingStartTime = &v
14294	return s
14295}
14296
14297// SetTrainingTimeInSeconds sets the TrainingTimeInSeconds field's value.
14298func (s *DescribeTrainingJobOutput) SetTrainingTimeInSeconds(v int64) *DescribeTrainingJobOutput {
14299	s.TrainingTimeInSeconds = &v
14300	return s
14301}
14302
14303// SetTuningJobArn sets the TuningJobArn field's value.
14304func (s *DescribeTrainingJobOutput) SetTuningJobArn(v string) *DescribeTrainingJobOutput {
14305	s.TuningJobArn = &v
14306	return s
14307}
14308
14309// SetVpcConfig sets the VpcConfig field's value.
14310func (s *DescribeTrainingJobOutput) SetVpcConfig(v *VpcConfig) *DescribeTrainingJobOutput {
14311	s.VpcConfig = v
14312	return s
14313}
14314
14315type DescribeTransformJobInput struct {
14316	_ struct{} `type:"structure"`
14317
14318	// The name of the transform job that you want to view details of.
14319	//
14320	// TransformJobName is a required field
14321	TransformJobName *string `min:"1" type:"string" required:"true"`
14322}
14323
14324// String returns the string representation
14325func (s DescribeTransformJobInput) String() string {
14326	return awsutil.Prettify(s)
14327}
14328
14329// GoString returns the string representation
14330func (s DescribeTransformJobInput) GoString() string {
14331	return s.String()
14332}
14333
14334// Validate inspects the fields of the type to determine if they are valid.
14335func (s *DescribeTransformJobInput) Validate() error {
14336	invalidParams := request.ErrInvalidParams{Context: "DescribeTransformJobInput"}
14337	if s.TransformJobName == nil {
14338		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
14339	}
14340	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
14341		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
14342	}
14343
14344	if invalidParams.Len() > 0 {
14345		return invalidParams
14346	}
14347	return nil
14348}
14349
14350// SetTransformJobName sets the TransformJobName field's value.
14351func (s *DescribeTransformJobInput) SetTransformJobName(v string) *DescribeTransformJobInput {
14352	s.TransformJobName = &v
14353	return s
14354}
14355
14356type DescribeTransformJobOutput struct {
14357	_ struct{} `type:"structure"`
14358
14359	// Specifies the number of records to include in a mini-batch for an HTTP inference
14360	// request. A record is a single unit of input data that inference can be made
14361	// on. For example, a single line in a CSV file is a record.
14362	//
14363	// To enable the batch strategy, you must set SplitType to Line, RecordIO, or
14364	// TFRecord.
14365	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
14366
14367	// A timestamp that shows when the transform Job was created.
14368	//
14369	// CreationTime is a required field
14370	CreationTime *time.Time `type:"timestamp" required:"true"`
14371
14372	// The data structure used to specify the data to be used for inference in a
14373	// batch transform job and to associate the data that is relevant to the prediction
14374	// results in the output. The input filter provided allows you to exclude input
14375	// data that is not needed for inference in a batch transform job. The output
14376	// filter provided allows you to include input data relevant to interpreting
14377	// the predictions in the output from the job. For more information, see Associate
14378	// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
14379	DataProcessing *DataProcessing `type:"structure"`
14380
14381	// The environment variables to set in the Docker container. We support up to
14382	// 16 key and values entries in the map.
14383	Environment map[string]*string `type:"map"`
14384
14385	// If the transform job failed, FailureReason describes why it failed. A transform
14386	// job creates a log file, which includes error messages, and stores it as an
14387	// Amazon S3 object. For more information, see Log Amazon SageMaker Events with
14388	// Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html).
14389	FailureReason *string `type:"string"`
14390
14391	// The Amazon Resource Name (ARN) of the Amazon SageMaker Ground Truth labeling
14392	// job that created the transform or training job.
14393	LabelingJobArn *string `type:"string"`
14394
14395	// The maximum number of parallel requests on each instance node that can be
14396	// launched in a transform job. The default value is 1.
14397	MaxConcurrentTransforms *int64 `type:"integer"`
14398
14399	// The maximum payload size, in MB, used in the transform job.
14400	MaxPayloadInMB *int64 `type:"integer"`
14401
14402	// The name of the model used in the transform job.
14403	//
14404	// ModelName is a required field
14405	ModelName *string `type:"string" required:"true"`
14406
14407	// Indicates when the transform job has been completed, or has stopped or failed.
14408	// You are billed for the time interval between this time and the value of TransformStartTime.
14409	TransformEndTime *time.Time `type:"timestamp"`
14410
14411	// Describes the dataset to be transformed and the Amazon S3 location where
14412	// it is stored.
14413	//
14414	// TransformInput is a required field
14415	TransformInput *TransformInput `type:"structure" required:"true"`
14416
14417	// The Amazon Resource Name (ARN) of the transform job.
14418	//
14419	// TransformJobArn is a required field
14420	TransformJobArn *string `type:"string" required:"true"`
14421
14422	// The name of the transform job.
14423	//
14424	// TransformJobName is a required field
14425	TransformJobName *string `min:"1" type:"string" required:"true"`
14426
14427	// The status of the transform job. If the transform job failed, the reason
14428	// is returned in the FailureReason field.
14429	//
14430	// TransformJobStatus is a required field
14431	TransformJobStatus *string `type:"string" required:"true" enum:"TransformJobStatus"`
14432
14433	// Identifies the Amazon S3 location where you want Amazon SageMaker to save
14434	// the results from the transform job.
14435	TransformOutput *TransformOutput `type:"structure"`
14436
14437	// Describes the resources, including ML instance types and ML instance count,
14438	// to use for the transform job.
14439	//
14440	// TransformResources is a required field
14441	TransformResources *TransformResources `type:"structure" required:"true"`
14442
14443	// Indicates when the transform job starts on ML instances. You are billed for
14444	// the time interval between this time and the value of TransformEndTime.
14445	TransformStartTime *time.Time `type:"timestamp"`
14446}
14447
14448// String returns the string representation
14449func (s DescribeTransformJobOutput) String() string {
14450	return awsutil.Prettify(s)
14451}
14452
14453// GoString returns the string representation
14454func (s DescribeTransformJobOutput) GoString() string {
14455	return s.String()
14456}
14457
14458// SetBatchStrategy sets the BatchStrategy field's value.
14459func (s *DescribeTransformJobOutput) SetBatchStrategy(v string) *DescribeTransformJobOutput {
14460	s.BatchStrategy = &v
14461	return s
14462}
14463
14464// SetCreationTime sets the CreationTime field's value.
14465func (s *DescribeTransformJobOutput) SetCreationTime(v time.Time) *DescribeTransformJobOutput {
14466	s.CreationTime = &v
14467	return s
14468}
14469
14470// SetDataProcessing sets the DataProcessing field's value.
14471func (s *DescribeTransformJobOutput) SetDataProcessing(v *DataProcessing) *DescribeTransformJobOutput {
14472	s.DataProcessing = v
14473	return s
14474}
14475
14476// SetEnvironment sets the Environment field's value.
14477func (s *DescribeTransformJobOutput) SetEnvironment(v map[string]*string) *DescribeTransformJobOutput {
14478	s.Environment = v
14479	return s
14480}
14481
14482// SetFailureReason sets the FailureReason field's value.
14483func (s *DescribeTransformJobOutput) SetFailureReason(v string) *DescribeTransformJobOutput {
14484	s.FailureReason = &v
14485	return s
14486}
14487
14488// SetLabelingJobArn sets the LabelingJobArn field's value.
14489func (s *DescribeTransformJobOutput) SetLabelingJobArn(v string) *DescribeTransformJobOutput {
14490	s.LabelingJobArn = &v
14491	return s
14492}
14493
14494// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
14495func (s *DescribeTransformJobOutput) SetMaxConcurrentTransforms(v int64) *DescribeTransformJobOutput {
14496	s.MaxConcurrentTransforms = &v
14497	return s
14498}
14499
14500// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
14501func (s *DescribeTransformJobOutput) SetMaxPayloadInMB(v int64) *DescribeTransformJobOutput {
14502	s.MaxPayloadInMB = &v
14503	return s
14504}
14505
14506// SetModelName sets the ModelName field's value.
14507func (s *DescribeTransformJobOutput) SetModelName(v string) *DescribeTransformJobOutput {
14508	s.ModelName = &v
14509	return s
14510}
14511
14512// SetTransformEndTime sets the TransformEndTime field's value.
14513func (s *DescribeTransformJobOutput) SetTransformEndTime(v time.Time) *DescribeTransformJobOutput {
14514	s.TransformEndTime = &v
14515	return s
14516}
14517
14518// SetTransformInput sets the TransformInput field's value.
14519func (s *DescribeTransformJobOutput) SetTransformInput(v *TransformInput) *DescribeTransformJobOutput {
14520	s.TransformInput = v
14521	return s
14522}
14523
14524// SetTransformJobArn sets the TransformJobArn field's value.
14525func (s *DescribeTransformJobOutput) SetTransformJobArn(v string) *DescribeTransformJobOutput {
14526	s.TransformJobArn = &v
14527	return s
14528}
14529
14530// SetTransformJobName sets the TransformJobName field's value.
14531func (s *DescribeTransformJobOutput) SetTransformJobName(v string) *DescribeTransformJobOutput {
14532	s.TransformJobName = &v
14533	return s
14534}
14535
14536// SetTransformJobStatus sets the TransformJobStatus field's value.
14537func (s *DescribeTransformJobOutput) SetTransformJobStatus(v string) *DescribeTransformJobOutput {
14538	s.TransformJobStatus = &v
14539	return s
14540}
14541
14542// SetTransformOutput sets the TransformOutput field's value.
14543func (s *DescribeTransformJobOutput) SetTransformOutput(v *TransformOutput) *DescribeTransformJobOutput {
14544	s.TransformOutput = v
14545	return s
14546}
14547
14548// SetTransformResources sets the TransformResources field's value.
14549func (s *DescribeTransformJobOutput) SetTransformResources(v *TransformResources) *DescribeTransformJobOutput {
14550	s.TransformResources = v
14551	return s
14552}
14553
14554// SetTransformStartTime sets the TransformStartTime field's value.
14555func (s *DescribeTransformJobOutput) SetTransformStartTime(v time.Time) *DescribeTransformJobOutput {
14556	s.TransformStartTime = &v
14557	return s
14558}
14559
14560type DescribeWorkteamInput struct {
14561	_ struct{} `type:"structure"`
14562
14563	// The name of the work team to return a description of.
14564	//
14565	// WorkteamName is a required field
14566	WorkteamName *string `min:"1" type:"string" required:"true"`
14567}
14568
14569// String returns the string representation
14570func (s DescribeWorkteamInput) String() string {
14571	return awsutil.Prettify(s)
14572}
14573
14574// GoString returns the string representation
14575func (s DescribeWorkteamInput) GoString() string {
14576	return s.String()
14577}
14578
14579// Validate inspects the fields of the type to determine if they are valid.
14580func (s *DescribeWorkteamInput) Validate() error {
14581	invalidParams := request.ErrInvalidParams{Context: "DescribeWorkteamInput"}
14582	if s.WorkteamName == nil {
14583		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
14584	}
14585	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
14586		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
14587	}
14588
14589	if invalidParams.Len() > 0 {
14590		return invalidParams
14591	}
14592	return nil
14593}
14594
14595// SetWorkteamName sets the WorkteamName field's value.
14596func (s *DescribeWorkteamInput) SetWorkteamName(v string) *DescribeWorkteamInput {
14597	s.WorkteamName = &v
14598	return s
14599}
14600
14601type DescribeWorkteamOutput struct {
14602	_ struct{} `type:"structure"`
14603
14604	// A Workteam instance that contains information about the work team.
14605	//
14606	// Workteam is a required field
14607	Workteam *Workteam `type:"structure" required:"true"`
14608}
14609
14610// String returns the string representation
14611func (s DescribeWorkteamOutput) String() string {
14612	return awsutil.Prettify(s)
14613}
14614
14615// GoString returns the string representation
14616func (s DescribeWorkteamOutput) GoString() string {
14617	return s.String()
14618}
14619
14620// SetWorkteam sets the Workteam field's value.
14621func (s *DescribeWorkteamOutput) SetWorkteam(v *Workteam) *DescribeWorkteamOutput {
14622	s.Workteam = v
14623	return s
14624}
14625
14626// Specifies weight and capacity values for a production variant.
14627type DesiredWeightAndCapacity struct {
14628	_ struct{} `type:"structure"`
14629
14630	// The variant's capacity.
14631	DesiredInstanceCount *int64 `min:"1" type:"integer"`
14632
14633	// The variant's weight.
14634	DesiredWeight *float64 `type:"float"`
14635
14636	// The name of the variant to update.
14637	//
14638	// VariantName is a required field
14639	VariantName *string `type:"string" required:"true"`
14640}
14641
14642// String returns the string representation
14643func (s DesiredWeightAndCapacity) String() string {
14644	return awsutil.Prettify(s)
14645}
14646
14647// GoString returns the string representation
14648func (s DesiredWeightAndCapacity) GoString() string {
14649	return s.String()
14650}
14651
14652// Validate inspects the fields of the type to determine if they are valid.
14653func (s *DesiredWeightAndCapacity) Validate() error {
14654	invalidParams := request.ErrInvalidParams{Context: "DesiredWeightAndCapacity"}
14655	if s.DesiredInstanceCount != nil && *s.DesiredInstanceCount < 1 {
14656		invalidParams.Add(request.NewErrParamMinValue("DesiredInstanceCount", 1))
14657	}
14658	if s.VariantName == nil {
14659		invalidParams.Add(request.NewErrParamRequired("VariantName"))
14660	}
14661
14662	if invalidParams.Len() > 0 {
14663		return invalidParams
14664	}
14665	return nil
14666}
14667
14668// SetDesiredInstanceCount sets the DesiredInstanceCount field's value.
14669func (s *DesiredWeightAndCapacity) SetDesiredInstanceCount(v int64) *DesiredWeightAndCapacity {
14670	s.DesiredInstanceCount = &v
14671	return s
14672}
14673
14674// SetDesiredWeight sets the DesiredWeight field's value.
14675func (s *DesiredWeightAndCapacity) SetDesiredWeight(v float64) *DesiredWeightAndCapacity {
14676	s.DesiredWeight = &v
14677	return s
14678}
14679
14680// SetVariantName sets the VariantName field's value.
14681func (s *DesiredWeightAndCapacity) SetVariantName(v string) *DesiredWeightAndCapacity {
14682	s.VariantName = &v
14683	return s
14684}
14685
14686// Provides summary information for an endpoint configuration.
14687type EndpointConfigSummary struct {
14688	_ struct{} `type:"structure"`
14689
14690	// A timestamp that shows when the endpoint configuration was created.
14691	//
14692	// CreationTime is a required field
14693	CreationTime *time.Time `type:"timestamp" required:"true"`
14694
14695	// The Amazon Resource Name (ARN) of the endpoint configuration.
14696	//
14697	// EndpointConfigArn is a required field
14698	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
14699
14700	// The name of the endpoint configuration.
14701	//
14702	// EndpointConfigName is a required field
14703	EndpointConfigName *string `type:"string" required:"true"`
14704}
14705
14706// String returns the string representation
14707func (s EndpointConfigSummary) String() string {
14708	return awsutil.Prettify(s)
14709}
14710
14711// GoString returns the string representation
14712func (s EndpointConfigSummary) GoString() string {
14713	return s.String()
14714}
14715
14716// SetCreationTime sets the CreationTime field's value.
14717func (s *EndpointConfigSummary) SetCreationTime(v time.Time) *EndpointConfigSummary {
14718	s.CreationTime = &v
14719	return s
14720}
14721
14722// SetEndpointConfigArn sets the EndpointConfigArn field's value.
14723func (s *EndpointConfigSummary) SetEndpointConfigArn(v string) *EndpointConfigSummary {
14724	s.EndpointConfigArn = &v
14725	return s
14726}
14727
14728// SetEndpointConfigName sets the EndpointConfigName field's value.
14729func (s *EndpointConfigSummary) SetEndpointConfigName(v string) *EndpointConfigSummary {
14730	s.EndpointConfigName = &v
14731	return s
14732}
14733
14734// Provides summary information for an endpoint.
14735type EndpointSummary struct {
14736	_ struct{} `type:"structure"`
14737
14738	// A timestamp that shows when the endpoint was created.
14739	//
14740	// CreationTime is a required field
14741	CreationTime *time.Time `type:"timestamp" required:"true"`
14742
14743	// The Amazon Resource Name (ARN) of the endpoint.
14744	//
14745	// EndpointArn is a required field
14746	EndpointArn *string `min:"20" type:"string" required:"true"`
14747
14748	// The name of the endpoint.
14749	//
14750	// EndpointName is a required field
14751	EndpointName *string `type:"string" required:"true"`
14752
14753	// The status of the endpoint.
14754	//
14755	//    * OutOfService: Endpoint is not available to take incoming requests.
14756	//
14757	//    * Creating: CreateEndpoint is executing.
14758	//
14759	//    * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing.
14760	//
14761	//    * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated
14762	//    or deleted or re-scaled until it has completed. This maintenance operation
14763	//    does not change any customer-specified values such as VPC config, KMS
14764	//    encryption, model, instance type, or instance count.
14765	//
14766	//    * RollingBack: Endpoint fails to scale up or down or change its variant
14767	//    weight and is in the process of rolling back to its previous configuration.
14768	//    Once the rollback completes, endpoint returns to an InService status.
14769	//    This transitional status only applies to an endpoint that has autoscaling
14770	//    enabled and is undergoing variant weight or capacity changes as part of
14771	//    an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities
14772	//    operation is called explicitly.
14773	//
14774	//    * InService: Endpoint is available to process incoming requests.
14775	//
14776	//    * Deleting: DeleteEndpoint is executing.
14777	//
14778	//    * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason
14779	//    for information about the failure. DeleteEndpoint is the only operation
14780	//    that can be performed on a failed endpoint.
14781	//
14782	// To get a list of endpoints with a specified status, use the ListEndpointsInput$StatusEquals
14783	// filter.
14784	//
14785	// EndpointStatus is a required field
14786	EndpointStatus *string `type:"string" required:"true" enum:"EndpointStatus"`
14787
14788	// A timestamp that shows when the endpoint was last modified.
14789	//
14790	// LastModifiedTime is a required field
14791	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
14792}
14793
14794// String returns the string representation
14795func (s EndpointSummary) String() string {
14796	return awsutil.Prettify(s)
14797}
14798
14799// GoString returns the string representation
14800func (s EndpointSummary) GoString() string {
14801	return s.String()
14802}
14803
14804// SetCreationTime sets the CreationTime field's value.
14805func (s *EndpointSummary) SetCreationTime(v time.Time) *EndpointSummary {
14806	s.CreationTime = &v
14807	return s
14808}
14809
14810// SetEndpointArn sets the EndpointArn field's value.
14811func (s *EndpointSummary) SetEndpointArn(v string) *EndpointSummary {
14812	s.EndpointArn = &v
14813	return s
14814}
14815
14816// SetEndpointName sets the EndpointName field's value.
14817func (s *EndpointSummary) SetEndpointName(v string) *EndpointSummary {
14818	s.EndpointName = &v
14819	return s
14820}
14821
14822// SetEndpointStatus sets the EndpointStatus field's value.
14823func (s *EndpointSummary) SetEndpointStatus(v string) *EndpointSummary {
14824	s.EndpointStatus = &v
14825	return s
14826}
14827
14828// SetLastModifiedTime sets the LastModifiedTime field's value.
14829func (s *EndpointSummary) SetLastModifiedTime(v time.Time) *EndpointSummary {
14830	s.LastModifiedTime = &v
14831	return s
14832}
14833
14834// Specifies a file system data source for a channel.
14835type FileSystemDataSource struct {
14836	_ struct{} `type:"structure"`
14837
14838	// The full path to the directory to associate with the channel.
14839	//
14840	// DirectoryPath is a required field
14841	DirectoryPath *string `type:"string" required:"true"`
14842
14843	// The access mode of the mount of the directory associated with the channel.
14844	// A directory can be mounted either in ro (read-only) or rw (read-write) mode.
14845	//
14846	// FileSystemAccessMode is a required field
14847	FileSystemAccessMode *string `type:"string" required:"true" enum:"FileSystemAccessMode"`
14848
14849	// The file system id.
14850	//
14851	// FileSystemId is a required field
14852	FileSystemId *string `min:"11" type:"string" required:"true"`
14853
14854	// The file system type.
14855	//
14856	// FileSystemType is a required field
14857	FileSystemType *string `type:"string" required:"true" enum:"FileSystemType"`
14858}
14859
14860// String returns the string representation
14861func (s FileSystemDataSource) String() string {
14862	return awsutil.Prettify(s)
14863}
14864
14865// GoString returns the string representation
14866func (s FileSystemDataSource) GoString() string {
14867	return s.String()
14868}
14869
14870// Validate inspects the fields of the type to determine if they are valid.
14871func (s *FileSystemDataSource) Validate() error {
14872	invalidParams := request.ErrInvalidParams{Context: "FileSystemDataSource"}
14873	if s.DirectoryPath == nil {
14874		invalidParams.Add(request.NewErrParamRequired("DirectoryPath"))
14875	}
14876	if s.FileSystemAccessMode == nil {
14877		invalidParams.Add(request.NewErrParamRequired("FileSystemAccessMode"))
14878	}
14879	if s.FileSystemId == nil {
14880		invalidParams.Add(request.NewErrParamRequired("FileSystemId"))
14881	}
14882	if s.FileSystemId != nil && len(*s.FileSystemId) < 11 {
14883		invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11))
14884	}
14885	if s.FileSystemType == nil {
14886		invalidParams.Add(request.NewErrParamRequired("FileSystemType"))
14887	}
14888
14889	if invalidParams.Len() > 0 {
14890		return invalidParams
14891	}
14892	return nil
14893}
14894
14895// SetDirectoryPath sets the DirectoryPath field's value.
14896func (s *FileSystemDataSource) SetDirectoryPath(v string) *FileSystemDataSource {
14897	s.DirectoryPath = &v
14898	return s
14899}
14900
14901// SetFileSystemAccessMode sets the FileSystemAccessMode field's value.
14902func (s *FileSystemDataSource) SetFileSystemAccessMode(v string) *FileSystemDataSource {
14903	s.FileSystemAccessMode = &v
14904	return s
14905}
14906
14907// SetFileSystemId sets the FileSystemId field's value.
14908func (s *FileSystemDataSource) SetFileSystemId(v string) *FileSystemDataSource {
14909	s.FileSystemId = &v
14910	return s
14911}
14912
14913// SetFileSystemType sets the FileSystemType field's value.
14914func (s *FileSystemDataSource) SetFileSystemType(v string) *FileSystemDataSource {
14915	s.FileSystemType = &v
14916	return s
14917}
14918
14919// A conditional statement for a search expression that includes a Boolean operator,
14920// a resource property, and a value.
14921//
14922// If you don't specify an Operator and a Value, the filter searches for only
14923// the specified property. For example, defining a Filter for the FailureReason
14924// for the TrainingJob Resource searches for training job objects that have
14925// a value in the FailureReason field.
14926//
14927// If you specify a Value, but not an Operator, Amazon SageMaker uses the equals
14928// operator as the default.
14929//
14930// In search, there are several property types:
14931//
14932// Metrics
14933//
14934// To define a metric filter, enter a value using the form "Metrics.<name>",
14935// where <name> is a metric name. For example, the following filter searches
14936// for training jobs with an "accuracy" metric greater than "0.9":
14937//
14938// {
14939//
14940// "Name": "Metrics.accuracy",
14941//
14942// "Operator": "GREATER_THAN",
14943//
14944// "Value": "0.9"
14945//
14946// }
14947//
14948// HyperParameters
14949//
14950// To define a hyperparameter filter, enter a value with the form "HyperParameters.<name>".
14951// Decimal hyperparameter values are treated as a decimal in a comparison if
14952// the specified Value is also a decimal value. If the specified Value is an
14953// integer, the decimal hyperparameter values are treated as integers. For example,
14954// the following filter is satisfied by training jobs with a "learning_rate"
14955// hyperparameter that is less than "0.5":
14956//
14957// {
14958//
14959// "Name": "HyperParameters.learning_rate",
14960//
14961// "Operator": "LESS_THAN",
14962//
14963// "Value": "0.5"
14964//
14965// }
14966//
14967// Tags
14968//
14969// To define a tag filter, enter a value with the form "Tags.<key>".
14970type Filter struct {
14971	_ struct{} `type:"structure"`
14972
14973	// A property name. For example, TrainingJobName. For the list of valid property
14974	// names returned in a search result for each supported resource, see TrainingJob
14975	// properties. You must specify a valid property name for the resource.
14976	//
14977	// Name is a required field
14978	Name *string `min:"1" type:"string" required:"true"`
14979
14980	// A Boolean binary operator that is used to evaluate the filter. The operator
14981	// field contains one of the following values:
14982	//
14983	// Equals
14984	//
14985	// The specified resource in Name equals the specified Value.
14986	//
14987	// NotEquals
14988	//
14989	// The specified resource in Name does not equal the specified Value.
14990	//
14991	// GreaterThan
14992	//
14993	// The specified resource in Name is greater than the specified Value. Not supported
14994	// for text-based properties.
14995	//
14996	// GreaterThanOrEqualTo
14997	//
14998	// The specified resource in Name is greater than or equal to the specified
14999	// Value. Not supported for text-based properties.
15000	//
15001	// LessThan
15002	//
15003	// The specified resource in Name is less than the specified Value. Not supported
15004	// for text-based properties.
15005	//
15006	// LessThanOrEqualTo
15007	//
15008	// The specified resource in Name is less than or equal to the specified Value.
15009	// Not supported for text-based properties.
15010	//
15011	// Contains
15012	//
15013	// Only supported for text-based properties. The word-list of the property contains
15014	// the specified Value.
15015	//
15016	// If you have specified a filter Value, the default is Equals.
15017	Operator *string `type:"string" enum:"Operator"`
15018
15019	// A value used with Resource and Operator to determine if objects satisfy the
15020	// filter's condition. For numerical properties, Value must be an integer or
15021	// floating-point decimal. For timestamp properties, Value must be an ISO 8601
15022	// date-time string of the following format: YYYY-mm-dd'T'HH:MM:SS.
15023	Value *string `min:"1" type:"string"`
15024}
15025
15026// String returns the string representation
15027func (s Filter) String() string {
15028	return awsutil.Prettify(s)
15029}
15030
15031// GoString returns the string representation
15032func (s Filter) GoString() string {
15033	return s.String()
15034}
15035
15036// Validate inspects the fields of the type to determine if they are valid.
15037func (s *Filter) Validate() error {
15038	invalidParams := request.ErrInvalidParams{Context: "Filter"}
15039	if s.Name == nil {
15040		invalidParams.Add(request.NewErrParamRequired("Name"))
15041	}
15042	if s.Name != nil && len(*s.Name) < 1 {
15043		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
15044	}
15045	if s.Value != nil && len(*s.Value) < 1 {
15046		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
15047	}
15048
15049	if invalidParams.Len() > 0 {
15050		return invalidParams
15051	}
15052	return nil
15053}
15054
15055// SetName sets the Name field's value.
15056func (s *Filter) SetName(v string) *Filter {
15057	s.Name = &v
15058	return s
15059}
15060
15061// SetOperator sets the Operator field's value.
15062func (s *Filter) SetOperator(v string) *Filter {
15063	s.Operator = &v
15064	return s
15065}
15066
15067// SetValue sets the Value field's value.
15068func (s *Filter) SetValue(v string) *Filter {
15069	s.Value = &v
15070	return s
15071}
15072
15073// Shows the final value for the objective metric for a training job that was
15074// launched by a hyperparameter tuning job. You define the objective metric
15075// in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig.
15076type FinalHyperParameterTuningJobObjectiveMetric struct {
15077	_ struct{} `type:"structure"`
15078
15079	// The name of the objective metric.
15080	//
15081	// MetricName is a required field
15082	MetricName *string `min:"1" type:"string" required:"true"`
15083
15084	// Whether to minimize or maximize the objective metric. Valid values are Minimize
15085	// and Maximize.
15086	Type *string `type:"string" enum:"HyperParameterTuningJobObjectiveType"`
15087
15088	// The value of the objective metric.
15089	//
15090	// Value is a required field
15091	Value *float64 `type:"float" required:"true"`
15092}
15093
15094// String returns the string representation
15095func (s FinalHyperParameterTuningJobObjectiveMetric) String() string {
15096	return awsutil.Prettify(s)
15097}
15098
15099// GoString returns the string representation
15100func (s FinalHyperParameterTuningJobObjectiveMetric) GoString() string {
15101	return s.String()
15102}
15103
15104// SetMetricName sets the MetricName field's value.
15105func (s *FinalHyperParameterTuningJobObjectiveMetric) SetMetricName(v string) *FinalHyperParameterTuningJobObjectiveMetric {
15106	s.MetricName = &v
15107	return s
15108}
15109
15110// SetType sets the Type field's value.
15111func (s *FinalHyperParameterTuningJobObjectiveMetric) SetType(v string) *FinalHyperParameterTuningJobObjectiveMetric {
15112	s.Type = &v
15113	return s
15114}
15115
15116// SetValue sets the Value field's value.
15117func (s *FinalHyperParameterTuningJobObjectiveMetric) SetValue(v float64) *FinalHyperParameterTuningJobObjectiveMetric {
15118	s.Value = &v
15119	return s
15120}
15121
15122type GetSearchSuggestionsInput struct {
15123	_ struct{} `type:"structure"`
15124
15125	// The name of the Amazon SageMaker resource to Search for. The only valid Resource
15126	// value is TrainingJob.
15127	//
15128	// Resource is a required field
15129	Resource *string `type:"string" required:"true" enum:"ResourceType"`
15130
15131	// Limits the property names that are included in the response.
15132	SuggestionQuery *SuggestionQuery `type:"structure"`
15133}
15134
15135// String returns the string representation
15136func (s GetSearchSuggestionsInput) String() string {
15137	return awsutil.Prettify(s)
15138}
15139
15140// GoString returns the string representation
15141func (s GetSearchSuggestionsInput) GoString() string {
15142	return s.String()
15143}
15144
15145// Validate inspects the fields of the type to determine if they are valid.
15146func (s *GetSearchSuggestionsInput) Validate() error {
15147	invalidParams := request.ErrInvalidParams{Context: "GetSearchSuggestionsInput"}
15148	if s.Resource == nil {
15149		invalidParams.Add(request.NewErrParamRequired("Resource"))
15150	}
15151	if s.SuggestionQuery != nil {
15152		if err := s.SuggestionQuery.Validate(); err != nil {
15153			invalidParams.AddNested("SuggestionQuery", err.(request.ErrInvalidParams))
15154		}
15155	}
15156
15157	if invalidParams.Len() > 0 {
15158		return invalidParams
15159	}
15160	return nil
15161}
15162
15163// SetResource sets the Resource field's value.
15164func (s *GetSearchSuggestionsInput) SetResource(v string) *GetSearchSuggestionsInput {
15165	s.Resource = &v
15166	return s
15167}
15168
15169// SetSuggestionQuery sets the SuggestionQuery field's value.
15170func (s *GetSearchSuggestionsInput) SetSuggestionQuery(v *SuggestionQuery) *GetSearchSuggestionsInput {
15171	s.SuggestionQuery = v
15172	return s
15173}
15174
15175type GetSearchSuggestionsOutput struct {
15176	_ struct{} `type:"structure"`
15177
15178	// A list of property names for a Resource that match a SuggestionQuery.
15179	PropertyNameSuggestions []*PropertyNameSuggestion `type:"list"`
15180}
15181
15182// String returns the string representation
15183func (s GetSearchSuggestionsOutput) String() string {
15184	return awsutil.Prettify(s)
15185}
15186
15187// GoString returns the string representation
15188func (s GetSearchSuggestionsOutput) GoString() string {
15189	return s.String()
15190}
15191
15192// SetPropertyNameSuggestions sets the PropertyNameSuggestions field's value.
15193func (s *GetSearchSuggestionsOutput) SetPropertyNameSuggestions(v []*PropertyNameSuggestion) *GetSearchSuggestionsOutput {
15194	s.PropertyNameSuggestions = v
15195	return s
15196}
15197
15198// Specifies configuration details for a Git repository in your AWS account.
15199type GitConfig struct {
15200	_ struct{} `type:"structure"`
15201
15202	// The default branch for the Git repository.
15203	Branch *string `min:"1" type:"string"`
15204
15205	// The URL where the Git repository is located.
15206	//
15207	// RepositoryUrl is a required field
15208	RepositoryUrl *string `type:"string" required:"true"`
15209
15210	// The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains
15211	// the credentials used to access the git repository. The secret must have a
15212	// staging label of AWSCURRENT and must be in the following format:
15213	//
15214	// {"username": UserName, "password": Password}
15215	SecretArn *string `min:"1" type:"string"`
15216}
15217
15218// String returns the string representation
15219func (s GitConfig) String() string {
15220	return awsutil.Prettify(s)
15221}
15222
15223// GoString returns the string representation
15224func (s GitConfig) GoString() string {
15225	return s.String()
15226}
15227
15228// Validate inspects the fields of the type to determine if they are valid.
15229func (s *GitConfig) Validate() error {
15230	invalidParams := request.ErrInvalidParams{Context: "GitConfig"}
15231	if s.Branch != nil && len(*s.Branch) < 1 {
15232		invalidParams.Add(request.NewErrParamMinLen("Branch", 1))
15233	}
15234	if s.RepositoryUrl == nil {
15235		invalidParams.Add(request.NewErrParamRequired("RepositoryUrl"))
15236	}
15237	if s.SecretArn != nil && len(*s.SecretArn) < 1 {
15238		invalidParams.Add(request.NewErrParamMinLen("SecretArn", 1))
15239	}
15240
15241	if invalidParams.Len() > 0 {
15242		return invalidParams
15243	}
15244	return nil
15245}
15246
15247// SetBranch sets the Branch field's value.
15248func (s *GitConfig) SetBranch(v string) *GitConfig {
15249	s.Branch = &v
15250	return s
15251}
15252
15253// SetRepositoryUrl sets the RepositoryUrl field's value.
15254func (s *GitConfig) SetRepositoryUrl(v string) *GitConfig {
15255	s.RepositoryUrl = &v
15256	return s
15257}
15258
15259// SetSecretArn sets the SecretArn field's value.
15260func (s *GitConfig) SetSecretArn(v string) *GitConfig {
15261	s.SecretArn = &v
15262	return s
15263}
15264
15265// Specifies configuration details for a Git repository when the repository
15266// is updated.
15267type GitConfigForUpdate struct {
15268	_ struct{} `type:"structure"`
15269
15270	// The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains
15271	// the credentials used to access the git repository. The secret must have a
15272	// staging label of AWSCURRENT and must be in the following format:
15273	//
15274	// {"username": UserName, "password": Password}
15275	SecretArn *string `min:"1" type:"string"`
15276}
15277
15278// String returns the string representation
15279func (s GitConfigForUpdate) String() string {
15280	return awsutil.Prettify(s)
15281}
15282
15283// GoString returns the string representation
15284func (s GitConfigForUpdate) GoString() string {
15285	return s.String()
15286}
15287
15288// Validate inspects the fields of the type to determine if they are valid.
15289func (s *GitConfigForUpdate) Validate() error {
15290	invalidParams := request.ErrInvalidParams{Context: "GitConfigForUpdate"}
15291	if s.SecretArn != nil && len(*s.SecretArn) < 1 {
15292		invalidParams.Add(request.NewErrParamMinLen("SecretArn", 1))
15293	}
15294
15295	if invalidParams.Len() > 0 {
15296		return invalidParams
15297	}
15298	return nil
15299}
15300
15301// SetSecretArn sets the SecretArn field's value.
15302func (s *GitConfigForUpdate) SetSecretArn(v string) *GitConfigForUpdate {
15303	s.SecretArn = &v
15304	return s
15305}
15306
15307// Information required for human workers to complete a labeling task.
15308type HumanTaskConfig struct {
15309	_ struct{} `type:"structure"`
15310
15311	// Configures how labels are consolidated across human workers.
15312	//
15313	// AnnotationConsolidationConfig is a required field
15314	AnnotationConsolidationConfig *AnnotationConsolidationConfig `type:"structure" required:"true"`
15315
15316	// Defines the maximum number of data objects that can be labeled by human workers
15317	// at the same time. Each object may have more than one worker at one time.
15318	MaxConcurrentTaskCount *int64 `min:"1" type:"integer"`
15319
15320	// The number of human workers that will label an object.
15321	//
15322	// NumberOfHumanWorkersPerDataObject is a required field
15323	NumberOfHumanWorkersPerDataObject *int64 `min:"1" type:"integer" required:"true"`
15324
15325	// The Amazon Resource Name (ARN) of a Lambda function that is run before a
15326	// data object is sent to a human worker. Use this function to provide input
15327	// to a custom labeling job.
15328	//
15329	// For the built-in bounding box, image classification, semantic segmentation,
15330	// and text classification task types, Amazon SageMaker Ground Truth provides
15331	// the following Lambda functions:
15332	//
15333	// US East (Northern Virginia) (us-east-1):
15334	//
15335	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-BoundingBox
15336	//
15337	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClass
15338	//
15339	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-SemanticSegmentation
15340	//
15341	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-TextMultiClass
15342	//
15343	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-NamedEntityRecognition
15344	//
15345	// US East (Ohio) (us-east-2):
15346	//
15347	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-BoundingBox
15348	//
15349	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-ImageMultiClass
15350	//
15351	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-SemanticSegmentation
15352	//
15353	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-TextMultiClass
15354	//
15355	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-NamedEntityRecognition
15356	//
15357	// US West (Oregon) (us-west-2):
15358	//
15359	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-BoundingBox
15360	//
15361	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-ImageMultiClass
15362	//
15363	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-SemanticSegmentation
15364	//
15365	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-TextMultiClass
15366	//
15367	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-NamedEntityRecognition
15368	//
15369	// Canada (Central) (ca-central-1):
15370	//
15371	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-BoundingBox
15372	//
15373	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-ImageMultiClass
15374	//
15375	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-SemanticSegmentation
15376	//
15377	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-TextMultiClass
15378	//
15379	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-NamedEntityRecognition
15380	//
15381	// EU (Ireland) (eu-west-1):
15382	//
15383	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-BoundingBox
15384	//
15385	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-ImageMultiClass
15386	//
15387	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-SemanticSegmentation
15388	//
15389	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-TextMultiClass
15390	//
15391	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-NamedEntityRecognition
15392	//
15393	// EU (London) (eu-west-2):
15394	//
15395	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-BoundingBox
15396	//
15397	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-ImageMultiClass
15398	//
15399	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-SemanticSegmentation
15400	//
15401	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-TextMultiClass
15402	//
15403	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-NamedEntityRecognition
15404	//
15405	// EU Frankfurt (eu-central-1):
15406	//
15407	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-BoundingBox
15408	//
15409	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-ImageMultiClass
15410	//
15411	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-SemanticSegmentation
15412	//
15413	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-TextMultiClass
15414	//
15415	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-NamedEntityRecognition
15416	//
15417	// Asia Pacific (Tokyo) (ap-northeast-1):
15418	//
15419	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-BoundingBox
15420	//
15421	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-ImageMultiClass
15422	//
15423	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-SemanticSegmentation
15424	//
15425	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-TextMultiClass
15426	//
15427	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-NamedEntityRecognition
15428	//
15429	// Asia Pacific (Seoul) (ap-northeast-2):
15430	//
15431	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-BoundingBox
15432	//
15433	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-ImageMultiClass
15434	//
15435	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-SemanticSegmentation
15436	//
15437	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-TextMultiClass
15438	//
15439	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-NamedEntityRecognition
15440	//
15441	// Asia Pacific (Mumbai) (ap-south-1):
15442	//
15443	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-BoundingBox
15444	//
15445	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-ImageMultiClass
15446	//
15447	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-SemanticSegmentation
15448	//
15449	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-TextMultiClass
15450	//
15451	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-NamedEntityRecognition
15452	//
15453	// Asia Pacific (Singapore) (ap-southeast-1):
15454	//
15455	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-BoundingBox
15456	//
15457	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-ImageMultiClass
15458	//
15459	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-SemanticSegmentation
15460	//
15461	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-TextMultiClass
15462	//
15463	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-NamedEntityRecognition
15464	//
15465	// Asia Pacific (Sydney) (ap-southeast-2):
15466	//
15467	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-BoundingBox
15468	//
15469	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-ImageMultiClass
15470	//
15471	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-SemanticSegmentation
15472	//
15473	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-TextMultiClass
15474	//
15475	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-NamedEntityRecognition
15476	//
15477	// PreHumanTaskLambdaArn is a required field
15478	PreHumanTaskLambdaArn *string `type:"string" required:"true"`
15479
15480	// The price that you pay for each task performed by an Amazon Mechanical Turk
15481	// worker.
15482	PublicWorkforceTaskPrice *PublicWorkforceTaskPrice `type:"structure"`
15483
15484	// The length of time that a task remains available for labeling by human workers.
15485	// If you choose the Amazon Mechanical Turk workforce, the maximum is 12 hours
15486	// (43200). For private and vendor workforces, the maximum is as listed.
15487	TaskAvailabilityLifetimeInSeconds *int64 `min:"1" type:"integer"`
15488
15489	// A description of the task for your human workers.
15490	//
15491	// TaskDescription is a required field
15492	TaskDescription *string `min:"1" type:"string" required:"true"`
15493
15494	// Keywords used to describe the task so that workers on Amazon Mechanical Turk
15495	// can discover the task.
15496	TaskKeywords []*string `min:"1" type:"list"`
15497
15498	// The amount of time that a worker has to complete a task.
15499	//
15500	// TaskTimeLimitInSeconds is a required field
15501	TaskTimeLimitInSeconds *int64 `min:"30" type:"integer" required:"true"`
15502
15503	// A title for the task for your human workers.
15504	//
15505	// TaskTitle is a required field
15506	TaskTitle *string `min:"1" type:"string" required:"true"`
15507
15508	// Information about the user interface that workers use to complete the labeling
15509	// task.
15510	//
15511	// UiConfig is a required field
15512	UiConfig *UiConfig `type:"structure" required:"true"`
15513
15514	// The Amazon Resource Name (ARN) of the work team assigned to complete the
15515	// tasks.
15516	//
15517	// WorkteamArn is a required field
15518	WorkteamArn *string `type:"string" required:"true"`
15519}
15520
15521// String returns the string representation
15522func (s HumanTaskConfig) String() string {
15523	return awsutil.Prettify(s)
15524}
15525
15526// GoString returns the string representation
15527func (s HumanTaskConfig) GoString() string {
15528	return s.String()
15529}
15530
15531// Validate inspects the fields of the type to determine if they are valid.
15532func (s *HumanTaskConfig) Validate() error {
15533	invalidParams := request.ErrInvalidParams{Context: "HumanTaskConfig"}
15534	if s.AnnotationConsolidationConfig == nil {
15535		invalidParams.Add(request.NewErrParamRequired("AnnotationConsolidationConfig"))
15536	}
15537	if s.MaxConcurrentTaskCount != nil && *s.MaxConcurrentTaskCount < 1 {
15538		invalidParams.Add(request.NewErrParamMinValue("MaxConcurrentTaskCount", 1))
15539	}
15540	if s.NumberOfHumanWorkersPerDataObject == nil {
15541		invalidParams.Add(request.NewErrParamRequired("NumberOfHumanWorkersPerDataObject"))
15542	}
15543	if s.NumberOfHumanWorkersPerDataObject != nil && *s.NumberOfHumanWorkersPerDataObject < 1 {
15544		invalidParams.Add(request.NewErrParamMinValue("NumberOfHumanWorkersPerDataObject", 1))
15545	}
15546	if s.PreHumanTaskLambdaArn == nil {
15547		invalidParams.Add(request.NewErrParamRequired("PreHumanTaskLambdaArn"))
15548	}
15549	if s.TaskAvailabilityLifetimeInSeconds != nil && *s.TaskAvailabilityLifetimeInSeconds < 1 {
15550		invalidParams.Add(request.NewErrParamMinValue("TaskAvailabilityLifetimeInSeconds", 1))
15551	}
15552	if s.TaskDescription == nil {
15553		invalidParams.Add(request.NewErrParamRequired("TaskDescription"))
15554	}
15555	if s.TaskDescription != nil && len(*s.TaskDescription) < 1 {
15556		invalidParams.Add(request.NewErrParamMinLen("TaskDescription", 1))
15557	}
15558	if s.TaskKeywords != nil && len(s.TaskKeywords) < 1 {
15559		invalidParams.Add(request.NewErrParamMinLen("TaskKeywords", 1))
15560	}
15561	if s.TaskTimeLimitInSeconds == nil {
15562		invalidParams.Add(request.NewErrParamRequired("TaskTimeLimitInSeconds"))
15563	}
15564	if s.TaskTimeLimitInSeconds != nil && *s.TaskTimeLimitInSeconds < 30 {
15565		invalidParams.Add(request.NewErrParamMinValue("TaskTimeLimitInSeconds", 30))
15566	}
15567	if s.TaskTitle == nil {
15568		invalidParams.Add(request.NewErrParamRequired("TaskTitle"))
15569	}
15570	if s.TaskTitle != nil && len(*s.TaskTitle) < 1 {
15571		invalidParams.Add(request.NewErrParamMinLen("TaskTitle", 1))
15572	}
15573	if s.UiConfig == nil {
15574		invalidParams.Add(request.NewErrParamRequired("UiConfig"))
15575	}
15576	if s.WorkteamArn == nil {
15577		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
15578	}
15579	if s.AnnotationConsolidationConfig != nil {
15580		if err := s.AnnotationConsolidationConfig.Validate(); err != nil {
15581			invalidParams.AddNested("AnnotationConsolidationConfig", err.(request.ErrInvalidParams))
15582		}
15583	}
15584	if s.UiConfig != nil {
15585		if err := s.UiConfig.Validate(); err != nil {
15586			invalidParams.AddNested("UiConfig", err.(request.ErrInvalidParams))
15587		}
15588	}
15589
15590	if invalidParams.Len() > 0 {
15591		return invalidParams
15592	}
15593	return nil
15594}
15595
15596// SetAnnotationConsolidationConfig sets the AnnotationConsolidationConfig field's value.
15597func (s *HumanTaskConfig) SetAnnotationConsolidationConfig(v *AnnotationConsolidationConfig) *HumanTaskConfig {
15598	s.AnnotationConsolidationConfig = v
15599	return s
15600}
15601
15602// SetMaxConcurrentTaskCount sets the MaxConcurrentTaskCount field's value.
15603func (s *HumanTaskConfig) SetMaxConcurrentTaskCount(v int64) *HumanTaskConfig {
15604	s.MaxConcurrentTaskCount = &v
15605	return s
15606}
15607
15608// SetNumberOfHumanWorkersPerDataObject sets the NumberOfHumanWorkersPerDataObject field's value.
15609func (s *HumanTaskConfig) SetNumberOfHumanWorkersPerDataObject(v int64) *HumanTaskConfig {
15610	s.NumberOfHumanWorkersPerDataObject = &v
15611	return s
15612}
15613
15614// SetPreHumanTaskLambdaArn sets the PreHumanTaskLambdaArn field's value.
15615func (s *HumanTaskConfig) SetPreHumanTaskLambdaArn(v string) *HumanTaskConfig {
15616	s.PreHumanTaskLambdaArn = &v
15617	return s
15618}
15619
15620// SetPublicWorkforceTaskPrice sets the PublicWorkforceTaskPrice field's value.
15621func (s *HumanTaskConfig) SetPublicWorkforceTaskPrice(v *PublicWorkforceTaskPrice) *HumanTaskConfig {
15622	s.PublicWorkforceTaskPrice = v
15623	return s
15624}
15625
15626// SetTaskAvailabilityLifetimeInSeconds sets the TaskAvailabilityLifetimeInSeconds field's value.
15627func (s *HumanTaskConfig) SetTaskAvailabilityLifetimeInSeconds(v int64) *HumanTaskConfig {
15628	s.TaskAvailabilityLifetimeInSeconds = &v
15629	return s
15630}
15631
15632// SetTaskDescription sets the TaskDescription field's value.
15633func (s *HumanTaskConfig) SetTaskDescription(v string) *HumanTaskConfig {
15634	s.TaskDescription = &v
15635	return s
15636}
15637
15638// SetTaskKeywords sets the TaskKeywords field's value.
15639func (s *HumanTaskConfig) SetTaskKeywords(v []*string) *HumanTaskConfig {
15640	s.TaskKeywords = v
15641	return s
15642}
15643
15644// SetTaskTimeLimitInSeconds sets the TaskTimeLimitInSeconds field's value.
15645func (s *HumanTaskConfig) SetTaskTimeLimitInSeconds(v int64) *HumanTaskConfig {
15646	s.TaskTimeLimitInSeconds = &v
15647	return s
15648}
15649
15650// SetTaskTitle sets the TaskTitle field's value.
15651func (s *HumanTaskConfig) SetTaskTitle(v string) *HumanTaskConfig {
15652	s.TaskTitle = &v
15653	return s
15654}
15655
15656// SetUiConfig sets the UiConfig field's value.
15657func (s *HumanTaskConfig) SetUiConfig(v *UiConfig) *HumanTaskConfig {
15658	s.UiConfig = v
15659	return s
15660}
15661
15662// SetWorkteamArn sets the WorkteamArn field's value.
15663func (s *HumanTaskConfig) SetWorkteamArn(v string) *HumanTaskConfig {
15664	s.WorkteamArn = &v
15665	return s
15666}
15667
15668// Specifies which training algorithm to use for training jobs that a hyperparameter
15669// tuning job launches and the metrics to monitor.
15670type HyperParameterAlgorithmSpecification struct {
15671	_ struct{} `type:"structure"`
15672
15673	// The name of the resource algorithm to use for the hyperparameter tuning job.
15674	// If you specify a value for this parameter, do not specify a value for TrainingImage.
15675	AlgorithmName *string `min:"1" type:"string"`
15676
15677	// An array of MetricDefinition objects that specify the metrics that the algorithm
15678	// emits.
15679	MetricDefinitions []*MetricDefinition `type:"list"`
15680
15681	// The registry path of the Docker image that contains the training algorithm.
15682	// For information about Docker registry paths for built-in algorithms, see
15683	// Algorithms Provided by Amazon SageMaker: Common Parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html).
15684	// Amazon SageMaker supports both registry/repository[:tag] and registry/repository[@digest]
15685	// image path formats. For more information, see Using Your Own Algorithms with
15686	// Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
15687	TrainingImage *string `type:"string"`
15688
15689	// The input mode that the algorithm supports: File or Pipe. In File input mode,
15690	// Amazon SageMaker downloads the training data from Amazon S3 to the storage
15691	// volume that is attached to the training instance and mounts the directory
15692	// to the Docker volume for the training container. In Pipe input mode, Amazon
15693	// SageMaker streams data directly from Amazon S3 to the container.
15694	//
15695	// If you specify File mode, make sure that you provision the storage volume
15696	// that is attached to the training instance with enough capacity to accommodate
15697	// the training data downloaded from Amazon S3, the model artifacts, and intermediate
15698	// information.
15699	//
15700	// For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
15701	//
15702	// TrainingInputMode is a required field
15703	TrainingInputMode *string `type:"string" required:"true" enum:"TrainingInputMode"`
15704}
15705
15706// String returns the string representation
15707func (s HyperParameterAlgorithmSpecification) String() string {
15708	return awsutil.Prettify(s)
15709}
15710
15711// GoString returns the string representation
15712func (s HyperParameterAlgorithmSpecification) GoString() string {
15713	return s.String()
15714}
15715
15716// Validate inspects the fields of the type to determine if they are valid.
15717func (s *HyperParameterAlgorithmSpecification) Validate() error {
15718	invalidParams := request.ErrInvalidParams{Context: "HyperParameterAlgorithmSpecification"}
15719	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
15720		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
15721	}
15722	if s.TrainingInputMode == nil {
15723		invalidParams.Add(request.NewErrParamRequired("TrainingInputMode"))
15724	}
15725	if s.MetricDefinitions != nil {
15726		for i, v := range s.MetricDefinitions {
15727			if v == nil {
15728				continue
15729			}
15730			if err := v.Validate(); err != nil {
15731				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricDefinitions", i), err.(request.ErrInvalidParams))
15732			}
15733		}
15734	}
15735
15736	if invalidParams.Len() > 0 {
15737		return invalidParams
15738	}
15739	return nil
15740}
15741
15742// SetAlgorithmName sets the AlgorithmName field's value.
15743func (s *HyperParameterAlgorithmSpecification) SetAlgorithmName(v string) *HyperParameterAlgorithmSpecification {
15744	s.AlgorithmName = &v
15745	return s
15746}
15747
15748// SetMetricDefinitions sets the MetricDefinitions field's value.
15749func (s *HyperParameterAlgorithmSpecification) SetMetricDefinitions(v []*MetricDefinition) *HyperParameterAlgorithmSpecification {
15750	s.MetricDefinitions = v
15751	return s
15752}
15753
15754// SetTrainingImage sets the TrainingImage field's value.
15755func (s *HyperParameterAlgorithmSpecification) SetTrainingImage(v string) *HyperParameterAlgorithmSpecification {
15756	s.TrainingImage = &v
15757	return s
15758}
15759
15760// SetTrainingInputMode sets the TrainingInputMode field's value.
15761func (s *HyperParameterAlgorithmSpecification) SetTrainingInputMode(v string) *HyperParameterAlgorithmSpecification {
15762	s.TrainingInputMode = &v
15763	return s
15764}
15765
15766// Defines a hyperparameter to be used by an algorithm.
15767type HyperParameterSpecification struct {
15768	_ struct{} `type:"structure"`
15769
15770	// The default value for this hyperparameter. If a default value is specified,
15771	// a hyperparameter cannot be required.
15772	DefaultValue *string `type:"string"`
15773
15774	// A brief description of the hyperparameter.
15775	Description *string `type:"string"`
15776
15777	// Indicates whether this hyperparameter is required.
15778	IsRequired *bool `type:"boolean"`
15779
15780	// Indicates whether this hyperparameter is tunable in a hyperparameter tuning
15781	// job.
15782	IsTunable *bool `type:"boolean"`
15783
15784	// The name of this hyperparameter. The name must be unique.
15785	//
15786	// Name is a required field
15787	Name *string `type:"string" required:"true"`
15788
15789	// The allowed range for this hyperparameter.
15790	Range *ParameterRange `type:"structure"`
15791
15792	// The type of this hyperparameter. The valid types are Integer, Continuous,
15793	// Categorical, and FreeText.
15794	//
15795	// Type is a required field
15796	Type *string `type:"string" required:"true" enum:"ParameterType"`
15797}
15798
15799// String returns the string representation
15800func (s HyperParameterSpecification) String() string {
15801	return awsutil.Prettify(s)
15802}
15803
15804// GoString returns the string representation
15805func (s HyperParameterSpecification) GoString() string {
15806	return s.String()
15807}
15808
15809// Validate inspects the fields of the type to determine if they are valid.
15810func (s *HyperParameterSpecification) Validate() error {
15811	invalidParams := request.ErrInvalidParams{Context: "HyperParameterSpecification"}
15812	if s.Name == nil {
15813		invalidParams.Add(request.NewErrParamRequired("Name"))
15814	}
15815	if s.Type == nil {
15816		invalidParams.Add(request.NewErrParamRequired("Type"))
15817	}
15818	if s.Range != nil {
15819		if err := s.Range.Validate(); err != nil {
15820			invalidParams.AddNested("Range", err.(request.ErrInvalidParams))
15821		}
15822	}
15823
15824	if invalidParams.Len() > 0 {
15825		return invalidParams
15826	}
15827	return nil
15828}
15829
15830// SetDefaultValue sets the DefaultValue field's value.
15831func (s *HyperParameterSpecification) SetDefaultValue(v string) *HyperParameterSpecification {
15832	s.DefaultValue = &v
15833	return s
15834}
15835
15836// SetDescription sets the Description field's value.
15837func (s *HyperParameterSpecification) SetDescription(v string) *HyperParameterSpecification {
15838	s.Description = &v
15839	return s
15840}
15841
15842// SetIsRequired sets the IsRequired field's value.
15843func (s *HyperParameterSpecification) SetIsRequired(v bool) *HyperParameterSpecification {
15844	s.IsRequired = &v
15845	return s
15846}
15847
15848// SetIsTunable sets the IsTunable field's value.
15849func (s *HyperParameterSpecification) SetIsTunable(v bool) *HyperParameterSpecification {
15850	s.IsTunable = &v
15851	return s
15852}
15853
15854// SetName sets the Name field's value.
15855func (s *HyperParameterSpecification) SetName(v string) *HyperParameterSpecification {
15856	s.Name = &v
15857	return s
15858}
15859
15860// SetRange sets the Range field's value.
15861func (s *HyperParameterSpecification) SetRange(v *ParameterRange) *HyperParameterSpecification {
15862	s.Range = v
15863	return s
15864}
15865
15866// SetType sets the Type field's value.
15867func (s *HyperParameterSpecification) SetType(v string) *HyperParameterSpecification {
15868	s.Type = &v
15869	return s
15870}
15871
15872// Defines the training jobs launched by a hyperparameter tuning job.
15873type HyperParameterTrainingJobDefinition struct {
15874	_ struct{} `type:"structure"`
15875
15876	// The HyperParameterAlgorithmSpecification object that specifies the resource
15877	// algorithm to use for the training jobs that the tuning job launches.
15878	//
15879	// AlgorithmSpecification is a required field
15880	AlgorithmSpecification *HyperParameterAlgorithmSpecification `type:"structure" required:"true"`
15881
15882	// Contains information about the output location for managed spot training
15883	// checkpoint data.
15884	CheckpointConfig *CheckpointConfig `type:"structure"`
15885
15886	// To encrypt all communications between ML compute instances in distributed
15887	// training, choose True. Encryption provides greater security for distributed
15888	// training, but training might take longer. How long it takes depends on the
15889	// amount of communication between compute instances, especially if you use
15890	// a deep learning algorithm in distributed training.
15891	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
15892
15893	// A Boolean indicating whether managed spot training is enabled (True) or not
15894	// (False).
15895	EnableManagedSpotTraining *bool `type:"boolean"`
15896
15897	// Isolates the training container. No inbound or outbound network calls can
15898	// be made, except for calls between peers within a training cluster for distributed
15899	// training. If network isolation is used for training jobs that are configured
15900	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
15901	// artifacts through the specified VPC, but the training container does not
15902	// have network access.
15903	//
15904	// The Semantic Segmentation built-in algorithm does not support network isolation.
15905	EnableNetworkIsolation *bool `type:"boolean"`
15906
15907	// An array of Channel objects that specify the input for the training jobs
15908	// that the tuning job launches.
15909	InputDataConfig []*Channel `min:"1" type:"list"`
15910
15911	// Specifies the path to the Amazon S3 bucket where you store model artifacts
15912	// from the training jobs that the tuning job launches.
15913	//
15914	// OutputDataConfig is a required field
15915	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
15916
15917	// The resources, including the compute instances and storage volumes, to use
15918	// for the training jobs that the tuning job launches.
15919	//
15920	// Storage volumes store model artifacts and incremental states. Training algorithms
15921	// might also use storage volumes for scratch space. If you want Amazon SageMaker
15922	// to use the storage volume to store the training data, choose File as the
15923	// TrainingInputMode in the algorithm specification. For distributed training
15924	// algorithms, specify an instance count greater than 1.
15925	//
15926	// ResourceConfig is a required field
15927	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
15928
15929	// The Amazon Resource Name (ARN) of the IAM role associated with the training
15930	// jobs that the tuning job launches.
15931	//
15932	// RoleArn is a required field
15933	RoleArn *string `min:"20" type:"string" required:"true"`
15934
15935	// Specifies the values of hyperparameters that do not change for the tuning
15936	// job.
15937	StaticHyperParameters map[string]*string `type:"map"`
15938
15939	// Specifies a limit to how long a model hyperparameter training job can run.
15940	// It also specifies how long you are willing to wait for a managed spot training
15941	// job to complete. When the job reaches the a limit, Amazon SageMaker ends
15942	// the training job. Use this API to cap model training costs.
15943	//
15944	// StoppingCondition is a required field
15945	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
15946
15947	// The VpcConfig object that specifies the VPC that you want the training jobs
15948	// that this hyperparameter tuning job launches to connect to. Control access
15949	// to and from your training container by configuring the VPC. For more information,
15950	// see Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
15951	VpcConfig *VpcConfig `type:"structure"`
15952}
15953
15954// String returns the string representation
15955func (s HyperParameterTrainingJobDefinition) String() string {
15956	return awsutil.Prettify(s)
15957}
15958
15959// GoString returns the string representation
15960func (s HyperParameterTrainingJobDefinition) GoString() string {
15961	return s.String()
15962}
15963
15964// Validate inspects the fields of the type to determine if they are valid.
15965func (s *HyperParameterTrainingJobDefinition) Validate() error {
15966	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTrainingJobDefinition"}
15967	if s.AlgorithmSpecification == nil {
15968		invalidParams.Add(request.NewErrParamRequired("AlgorithmSpecification"))
15969	}
15970	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
15971		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
15972	}
15973	if s.OutputDataConfig == nil {
15974		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
15975	}
15976	if s.ResourceConfig == nil {
15977		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
15978	}
15979	if s.RoleArn == nil {
15980		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
15981	}
15982	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
15983		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
15984	}
15985	if s.StoppingCondition == nil {
15986		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
15987	}
15988	if s.AlgorithmSpecification != nil {
15989		if err := s.AlgorithmSpecification.Validate(); err != nil {
15990			invalidParams.AddNested("AlgorithmSpecification", err.(request.ErrInvalidParams))
15991		}
15992	}
15993	if s.CheckpointConfig != nil {
15994		if err := s.CheckpointConfig.Validate(); err != nil {
15995			invalidParams.AddNested("CheckpointConfig", err.(request.ErrInvalidParams))
15996		}
15997	}
15998	if s.InputDataConfig != nil {
15999		for i, v := range s.InputDataConfig {
16000			if v == nil {
16001				continue
16002			}
16003			if err := v.Validate(); err != nil {
16004				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
16005			}
16006		}
16007	}
16008	if s.OutputDataConfig != nil {
16009		if err := s.OutputDataConfig.Validate(); err != nil {
16010			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
16011		}
16012	}
16013	if s.ResourceConfig != nil {
16014		if err := s.ResourceConfig.Validate(); err != nil {
16015			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
16016		}
16017	}
16018	if s.StoppingCondition != nil {
16019		if err := s.StoppingCondition.Validate(); err != nil {
16020			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
16021		}
16022	}
16023	if s.VpcConfig != nil {
16024		if err := s.VpcConfig.Validate(); err != nil {
16025			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
16026		}
16027	}
16028
16029	if invalidParams.Len() > 0 {
16030		return invalidParams
16031	}
16032	return nil
16033}
16034
16035// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
16036func (s *HyperParameterTrainingJobDefinition) SetAlgorithmSpecification(v *HyperParameterAlgorithmSpecification) *HyperParameterTrainingJobDefinition {
16037	s.AlgorithmSpecification = v
16038	return s
16039}
16040
16041// SetCheckpointConfig sets the CheckpointConfig field's value.
16042func (s *HyperParameterTrainingJobDefinition) SetCheckpointConfig(v *CheckpointConfig) *HyperParameterTrainingJobDefinition {
16043	s.CheckpointConfig = v
16044	return s
16045}
16046
16047// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
16048func (s *HyperParameterTrainingJobDefinition) SetEnableInterContainerTrafficEncryption(v bool) *HyperParameterTrainingJobDefinition {
16049	s.EnableInterContainerTrafficEncryption = &v
16050	return s
16051}
16052
16053// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
16054func (s *HyperParameterTrainingJobDefinition) SetEnableManagedSpotTraining(v bool) *HyperParameterTrainingJobDefinition {
16055	s.EnableManagedSpotTraining = &v
16056	return s
16057}
16058
16059// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
16060func (s *HyperParameterTrainingJobDefinition) SetEnableNetworkIsolation(v bool) *HyperParameterTrainingJobDefinition {
16061	s.EnableNetworkIsolation = &v
16062	return s
16063}
16064
16065// SetInputDataConfig sets the InputDataConfig field's value.
16066func (s *HyperParameterTrainingJobDefinition) SetInputDataConfig(v []*Channel) *HyperParameterTrainingJobDefinition {
16067	s.InputDataConfig = v
16068	return s
16069}
16070
16071// SetOutputDataConfig sets the OutputDataConfig field's value.
16072func (s *HyperParameterTrainingJobDefinition) SetOutputDataConfig(v *OutputDataConfig) *HyperParameterTrainingJobDefinition {
16073	s.OutputDataConfig = v
16074	return s
16075}
16076
16077// SetResourceConfig sets the ResourceConfig field's value.
16078func (s *HyperParameterTrainingJobDefinition) SetResourceConfig(v *ResourceConfig) *HyperParameterTrainingJobDefinition {
16079	s.ResourceConfig = v
16080	return s
16081}
16082
16083// SetRoleArn sets the RoleArn field's value.
16084func (s *HyperParameterTrainingJobDefinition) SetRoleArn(v string) *HyperParameterTrainingJobDefinition {
16085	s.RoleArn = &v
16086	return s
16087}
16088
16089// SetStaticHyperParameters sets the StaticHyperParameters field's value.
16090func (s *HyperParameterTrainingJobDefinition) SetStaticHyperParameters(v map[string]*string) *HyperParameterTrainingJobDefinition {
16091	s.StaticHyperParameters = v
16092	return s
16093}
16094
16095// SetStoppingCondition sets the StoppingCondition field's value.
16096func (s *HyperParameterTrainingJobDefinition) SetStoppingCondition(v *StoppingCondition) *HyperParameterTrainingJobDefinition {
16097	s.StoppingCondition = v
16098	return s
16099}
16100
16101// SetVpcConfig sets the VpcConfig field's value.
16102func (s *HyperParameterTrainingJobDefinition) SetVpcConfig(v *VpcConfig) *HyperParameterTrainingJobDefinition {
16103	s.VpcConfig = v
16104	return s
16105}
16106
16107// Specifies summary information about a training job.
16108type HyperParameterTrainingJobSummary struct {
16109	_ struct{} `type:"structure"`
16110
16111	// The date and time that the training job was created.
16112	//
16113	// CreationTime is a required field
16114	CreationTime *time.Time `type:"timestamp" required:"true"`
16115
16116	// The reason that the training job failed.
16117	FailureReason *string `type:"string"`
16118
16119	// The FinalHyperParameterTuningJobObjectiveMetric object that specifies the
16120	// value of the objective metric of the tuning job that launched this training
16121	// job.
16122	FinalHyperParameterTuningJobObjectiveMetric *FinalHyperParameterTuningJobObjectiveMetric `type:"structure"`
16123
16124	// The status of the objective metric for the training job:
16125	//
16126	//    * Succeeded: The final objective metric for the training job was evaluated
16127	//    by the hyperparameter tuning job and used in the hyperparameter tuning
16128	//    process.
16129	//
16130	//    * Pending: The training job is in progress and evaluation of its final
16131	//    objective metric is pending.
16132	//
16133	//    * Failed: The final objective metric for the training job was not evaluated,
16134	//    and was not used in the hyperparameter tuning process. This typically
16135	//    occurs when the training job failed or did not emit an objective metric.
16136	ObjectiveStatus *string `type:"string" enum:"ObjectiveStatus"`
16137
16138	// Specifies the time when the training job ends on training instances. You
16139	// are billed for the time interval between the value of TrainingStartTime and
16140	// this time. For successful jobs and stopped jobs, this is the time after model
16141	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
16142	// detects a job failure.
16143	TrainingEndTime *time.Time `type:"timestamp"`
16144
16145	// The Amazon Resource Name (ARN) of the training job.
16146	//
16147	// TrainingJobArn is a required field
16148	TrainingJobArn *string `type:"string" required:"true"`
16149
16150	// The name of the training job.
16151	//
16152	// TrainingJobName is a required field
16153	TrainingJobName *string `min:"1" type:"string" required:"true"`
16154
16155	// The status of the training job.
16156	//
16157	// TrainingJobStatus is a required field
16158	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
16159
16160	// The date and time that the training job started.
16161	TrainingStartTime *time.Time `type:"timestamp"`
16162
16163	// A list of the hyperparameters for which you specified ranges to search.
16164	//
16165	// TunedHyperParameters is a required field
16166	TunedHyperParameters map[string]*string `type:"map" required:"true"`
16167
16168	// The HyperParameter tuning job that launched the training job.
16169	TuningJobName *string `min:"1" type:"string"`
16170}
16171
16172// String returns the string representation
16173func (s HyperParameterTrainingJobSummary) String() string {
16174	return awsutil.Prettify(s)
16175}
16176
16177// GoString returns the string representation
16178func (s HyperParameterTrainingJobSummary) GoString() string {
16179	return s.String()
16180}
16181
16182// SetCreationTime sets the CreationTime field's value.
16183func (s *HyperParameterTrainingJobSummary) SetCreationTime(v time.Time) *HyperParameterTrainingJobSummary {
16184	s.CreationTime = &v
16185	return s
16186}
16187
16188// SetFailureReason sets the FailureReason field's value.
16189func (s *HyperParameterTrainingJobSummary) SetFailureReason(v string) *HyperParameterTrainingJobSummary {
16190	s.FailureReason = &v
16191	return s
16192}
16193
16194// SetFinalHyperParameterTuningJobObjectiveMetric sets the FinalHyperParameterTuningJobObjectiveMetric field's value.
16195func (s *HyperParameterTrainingJobSummary) SetFinalHyperParameterTuningJobObjectiveMetric(v *FinalHyperParameterTuningJobObjectiveMetric) *HyperParameterTrainingJobSummary {
16196	s.FinalHyperParameterTuningJobObjectiveMetric = v
16197	return s
16198}
16199
16200// SetObjectiveStatus sets the ObjectiveStatus field's value.
16201func (s *HyperParameterTrainingJobSummary) SetObjectiveStatus(v string) *HyperParameterTrainingJobSummary {
16202	s.ObjectiveStatus = &v
16203	return s
16204}
16205
16206// SetTrainingEndTime sets the TrainingEndTime field's value.
16207func (s *HyperParameterTrainingJobSummary) SetTrainingEndTime(v time.Time) *HyperParameterTrainingJobSummary {
16208	s.TrainingEndTime = &v
16209	return s
16210}
16211
16212// SetTrainingJobArn sets the TrainingJobArn field's value.
16213func (s *HyperParameterTrainingJobSummary) SetTrainingJobArn(v string) *HyperParameterTrainingJobSummary {
16214	s.TrainingJobArn = &v
16215	return s
16216}
16217
16218// SetTrainingJobName sets the TrainingJobName field's value.
16219func (s *HyperParameterTrainingJobSummary) SetTrainingJobName(v string) *HyperParameterTrainingJobSummary {
16220	s.TrainingJobName = &v
16221	return s
16222}
16223
16224// SetTrainingJobStatus sets the TrainingJobStatus field's value.
16225func (s *HyperParameterTrainingJobSummary) SetTrainingJobStatus(v string) *HyperParameterTrainingJobSummary {
16226	s.TrainingJobStatus = &v
16227	return s
16228}
16229
16230// SetTrainingStartTime sets the TrainingStartTime field's value.
16231func (s *HyperParameterTrainingJobSummary) SetTrainingStartTime(v time.Time) *HyperParameterTrainingJobSummary {
16232	s.TrainingStartTime = &v
16233	return s
16234}
16235
16236// SetTunedHyperParameters sets the TunedHyperParameters field's value.
16237func (s *HyperParameterTrainingJobSummary) SetTunedHyperParameters(v map[string]*string) *HyperParameterTrainingJobSummary {
16238	s.TunedHyperParameters = v
16239	return s
16240}
16241
16242// SetTuningJobName sets the TuningJobName field's value.
16243func (s *HyperParameterTrainingJobSummary) SetTuningJobName(v string) *HyperParameterTrainingJobSummary {
16244	s.TuningJobName = &v
16245	return s
16246}
16247
16248// Configures a hyperparameter tuning job.
16249type HyperParameterTuningJobConfig struct {
16250	_ struct{} `type:"structure"`
16251
16252	// The HyperParameterTuningJobObjective object that specifies the objective
16253	// metric for this tuning job.
16254	HyperParameterTuningJobObjective *HyperParameterTuningJobObjective `type:"structure"`
16255
16256	// The ParameterRanges object that specifies the ranges of hyperparameters that
16257	// this tuning job searches.
16258	ParameterRanges *ParameterRanges `type:"structure"`
16259
16260	// The ResourceLimits object that specifies the maximum number of training jobs
16261	// and parallel training jobs for this tuning job.
16262	//
16263	// ResourceLimits is a required field
16264	ResourceLimits *ResourceLimits `type:"structure" required:"true"`
16265
16266	// Specifies how hyperparameter tuning chooses the combinations of hyperparameter
16267	// values to use for the training job it launches. To use the Bayesian search
16268	// stategy, set this to Bayesian. To randomly search, set it to Random. For
16269	// information about search strategies, see How Hyperparameter Tuning Works
16270	// (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html).
16271	//
16272	// Strategy is a required field
16273	Strategy *string `type:"string" required:"true" enum:"HyperParameterTuningJobStrategyType"`
16274
16275	// Specifies whether to use early stopping for training jobs launched by the
16276	// hyperparameter tuning job. This can be one of the following values (the default
16277	// value is OFF):
16278	//
16279	// OFF
16280	//
16281	// Training jobs launched by the hyperparameter tuning job do not use early
16282	// stopping.
16283	//
16284	// AUTO
16285	//
16286	// Amazon SageMaker stops training jobs launched by the hyperparameter tuning
16287	// job when they are unlikely to perform better than previously completed training
16288	// jobs. For more information, see Stop Training Jobs Early (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html).
16289	TrainingJobEarlyStoppingType *string `type:"string" enum:"TrainingJobEarlyStoppingType"`
16290}
16291
16292// String returns the string representation
16293func (s HyperParameterTuningJobConfig) String() string {
16294	return awsutil.Prettify(s)
16295}
16296
16297// GoString returns the string representation
16298func (s HyperParameterTuningJobConfig) GoString() string {
16299	return s.String()
16300}
16301
16302// Validate inspects the fields of the type to determine if they are valid.
16303func (s *HyperParameterTuningJobConfig) Validate() error {
16304	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobConfig"}
16305	if s.ResourceLimits == nil {
16306		invalidParams.Add(request.NewErrParamRequired("ResourceLimits"))
16307	}
16308	if s.Strategy == nil {
16309		invalidParams.Add(request.NewErrParamRequired("Strategy"))
16310	}
16311	if s.HyperParameterTuningJobObjective != nil {
16312		if err := s.HyperParameterTuningJobObjective.Validate(); err != nil {
16313			invalidParams.AddNested("HyperParameterTuningJobObjective", err.(request.ErrInvalidParams))
16314		}
16315	}
16316	if s.ParameterRanges != nil {
16317		if err := s.ParameterRanges.Validate(); err != nil {
16318			invalidParams.AddNested("ParameterRanges", err.(request.ErrInvalidParams))
16319		}
16320	}
16321	if s.ResourceLimits != nil {
16322		if err := s.ResourceLimits.Validate(); err != nil {
16323			invalidParams.AddNested("ResourceLimits", err.(request.ErrInvalidParams))
16324		}
16325	}
16326
16327	if invalidParams.Len() > 0 {
16328		return invalidParams
16329	}
16330	return nil
16331}
16332
16333// SetHyperParameterTuningJobObjective sets the HyperParameterTuningJobObjective field's value.
16334func (s *HyperParameterTuningJobConfig) SetHyperParameterTuningJobObjective(v *HyperParameterTuningJobObjective) *HyperParameterTuningJobConfig {
16335	s.HyperParameterTuningJobObjective = v
16336	return s
16337}
16338
16339// SetParameterRanges sets the ParameterRanges field's value.
16340func (s *HyperParameterTuningJobConfig) SetParameterRanges(v *ParameterRanges) *HyperParameterTuningJobConfig {
16341	s.ParameterRanges = v
16342	return s
16343}
16344
16345// SetResourceLimits sets the ResourceLimits field's value.
16346func (s *HyperParameterTuningJobConfig) SetResourceLimits(v *ResourceLimits) *HyperParameterTuningJobConfig {
16347	s.ResourceLimits = v
16348	return s
16349}
16350
16351// SetStrategy sets the Strategy field's value.
16352func (s *HyperParameterTuningJobConfig) SetStrategy(v string) *HyperParameterTuningJobConfig {
16353	s.Strategy = &v
16354	return s
16355}
16356
16357// SetTrainingJobEarlyStoppingType sets the TrainingJobEarlyStoppingType field's value.
16358func (s *HyperParameterTuningJobConfig) SetTrainingJobEarlyStoppingType(v string) *HyperParameterTuningJobConfig {
16359	s.TrainingJobEarlyStoppingType = &v
16360	return s
16361}
16362
16363// Defines the objective metric for a hyperparameter tuning job. Hyperparameter
16364// tuning uses the value of this metric to evaluate the training jobs it launches,
16365// and returns the training job that results in either the highest or lowest
16366// value for this metric, depending on the value you specify for the Type parameter.
16367type HyperParameterTuningJobObjective struct {
16368	_ struct{} `type:"structure"`
16369
16370	// The name of the metric to use for the objective metric.
16371	//
16372	// MetricName is a required field
16373	MetricName *string `min:"1" type:"string" required:"true"`
16374
16375	// Whether to minimize or maximize the objective metric.
16376	//
16377	// Type is a required field
16378	Type *string `type:"string" required:"true" enum:"HyperParameterTuningJobObjectiveType"`
16379}
16380
16381// String returns the string representation
16382func (s HyperParameterTuningJobObjective) String() string {
16383	return awsutil.Prettify(s)
16384}
16385
16386// GoString returns the string representation
16387func (s HyperParameterTuningJobObjective) GoString() string {
16388	return s.String()
16389}
16390
16391// Validate inspects the fields of the type to determine if they are valid.
16392func (s *HyperParameterTuningJobObjective) Validate() error {
16393	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobObjective"}
16394	if s.MetricName == nil {
16395		invalidParams.Add(request.NewErrParamRequired("MetricName"))
16396	}
16397	if s.MetricName != nil && len(*s.MetricName) < 1 {
16398		invalidParams.Add(request.NewErrParamMinLen("MetricName", 1))
16399	}
16400	if s.Type == nil {
16401		invalidParams.Add(request.NewErrParamRequired("Type"))
16402	}
16403
16404	if invalidParams.Len() > 0 {
16405		return invalidParams
16406	}
16407	return nil
16408}
16409
16410// SetMetricName sets the MetricName field's value.
16411func (s *HyperParameterTuningJobObjective) SetMetricName(v string) *HyperParameterTuningJobObjective {
16412	s.MetricName = &v
16413	return s
16414}
16415
16416// SetType sets the Type field's value.
16417func (s *HyperParameterTuningJobObjective) SetType(v string) *HyperParameterTuningJobObjective {
16418	s.Type = &v
16419	return s
16420}
16421
16422// Provides summary information about a hyperparameter tuning job.
16423type HyperParameterTuningJobSummary struct {
16424	_ struct{} `type:"structure"`
16425
16426	// The date and time that the tuning job was created.
16427	//
16428	// CreationTime is a required field
16429	CreationTime *time.Time `type:"timestamp" required:"true"`
16430
16431	// The date and time that the tuning job ended.
16432	HyperParameterTuningEndTime *time.Time `type:"timestamp"`
16433
16434	// The Amazon Resource Name (ARN) of the tuning job.
16435	//
16436	// HyperParameterTuningJobArn is a required field
16437	HyperParameterTuningJobArn *string `type:"string" required:"true"`
16438
16439	// The name of the tuning job.
16440	//
16441	// HyperParameterTuningJobName is a required field
16442	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
16443
16444	// The status of the tuning job.
16445	//
16446	// HyperParameterTuningJobStatus is a required field
16447	HyperParameterTuningJobStatus *string `type:"string" required:"true" enum:"HyperParameterTuningJobStatus"`
16448
16449	// The date and time that the tuning job was modified.
16450	LastModifiedTime *time.Time `type:"timestamp"`
16451
16452	// The ObjectiveStatusCounters object that specifies the numbers of training
16453	// jobs, categorized by objective metric status, that this tuning job launched.
16454	//
16455	// ObjectiveStatusCounters is a required field
16456	ObjectiveStatusCounters *ObjectiveStatusCounters `type:"structure" required:"true"`
16457
16458	// The ResourceLimits object that specifies the maximum number of training jobs
16459	// and parallel training jobs allowed for this tuning job.
16460	ResourceLimits *ResourceLimits `type:"structure"`
16461
16462	// Specifies the search strategy hyperparameter tuning uses to choose which
16463	// hyperparameters to use for each iteration. Currently, the only valid value
16464	// is Bayesian.
16465	//
16466	// Strategy is a required field
16467	Strategy *string `type:"string" required:"true" enum:"HyperParameterTuningJobStrategyType"`
16468
16469	// The TrainingJobStatusCounters object that specifies the numbers of training
16470	// jobs, categorized by status, that this tuning job launched.
16471	//
16472	// TrainingJobStatusCounters is a required field
16473	TrainingJobStatusCounters *TrainingJobStatusCounters `type:"structure" required:"true"`
16474}
16475
16476// String returns the string representation
16477func (s HyperParameterTuningJobSummary) String() string {
16478	return awsutil.Prettify(s)
16479}
16480
16481// GoString returns the string representation
16482func (s HyperParameterTuningJobSummary) GoString() string {
16483	return s.String()
16484}
16485
16486// SetCreationTime sets the CreationTime field's value.
16487func (s *HyperParameterTuningJobSummary) SetCreationTime(v time.Time) *HyperParameterTuningJobSummary {
16488	s.CreationTime = &v
16489	return s
16490}
16491
16492// SetHyperParameterTuningEndTime sets the HyperParameterTuningEndTime field's value.
16493func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningEndTime(v time.Time) *HyperParameterTuningJobSummary {
16494	s.HyperParameterTuningEndTime = &v
16495	return s
16496}
16497
16498// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
16499func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobArn(v string) *HyperParameterTuningJobSummary {
16500	s.HyperParameterTuningJobArn = &v
16501	return s
16502}
16503
16504// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
16505func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobName(v string) *HyperParameterTuningJobSummary {
16506	s.HyperParameterTuningJobName = &v
16507	return s
16508}
16509
16510// SetHyperParameterTuningJobStatus sets the HyperParameterTuningJobStatus field's value.
16511func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobStatus(v string) *HyperParameterTuningJobSummary {
16512	s.HyperParameterTuningJobStatus = &v
16513	return s
16514}
16515
16516// SetLastModifiedTime sets the LastModifiedTime field's value.
16517func (s *HyperParameterTuningJobSummary) SetLastModifiedTime(v time.Time) *HyperParameterTuningJobSummary {
16518	s.LastModifiedTime = &v
16519	return s
16520}
16521
16522// SetObjectiveStatusCounters sets the ObjectiveStatusCounters field's value.
16523func (s *HyperParameterTuningJobSummary) SetObjectiveStatusCounters(v *ObjectiveStatusCounters) *HyperParameterTuningJobSummary {
16524	s.ObjectiveStatusCounters = v
16525	return s
16526}
16527
16528// SetResourceLimits sets the ResourceLimits field's value.
16529func (s *HyperParameterTuningJobSummary) SetResourceLimits(v *ResourceLimits) *HyperParameterTuningJobSummary {
16530	s.ResourceLimits = v
16531	return s
16532}
16533
16534// SetStrategy sets the Strategy field's value.
16535func (s *HyperParameterTuningJobSummary) SetStrategy(v string) *HyperParameterTuningJobSummary {
16536	s.Strategy = &v
16537	return s
16538}
16539
16540// SetTrainingJobStatusCounters sets the TrainingJobStatusCounters field's value.
16541func (s *HyperParameterTuningJobSummary) SetTrainingJobStatusCounters(v *TrainingJobStatusCounters) *HyperParameterTuningJobSummary {
16542	s.TrainingJobStatusCounters = v
16543	return s
16544}
16545
16546// Specifies the configuration for a hyperparameter tuning job that uses one
16547// or more previous hyperparameter tuning jobs as a starting point. The results
16548// of previous tuning jobs are used to inform which combinations of hyperparameters
16549// to search over in the new tuning job.
16550//
16551// All training jobs launched by the new hyperparameter tuning job are evaluated
16552// by using the objective metric, and the training job that performs the best
16553// is compared to the best training jobs from the parent tuning jobs. From these,
16554// the training job that performs the best as measured by the objective metric
16555// is returned as the overall best training job.
16556//
16557// All training jobs launched by parent hyperparameter tuning jobs and the new
16558// hyperparameter tuning jobs count against the limit of training jobs for the
16559// tuning job.
16560type HyperParameterTuningJobWarmStartConfig struct {
16561	_ struct{} `type:"structure"`
16562
16563	// An array of hyperparameter tuning jobs that are used as the starting point
16564	// for the new hyperparameter tuning job. For more information about warm starting
16565	// a hyperparameter tuning job, see Using a Previous Hyperparameter Tuning Job
16566	// as a Starting Point (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-warm-start.html).
16567	//
16568	// Hyperparameter tuning jobs created before October 1, 2018 cannot be used
16569	// as parent jobs for warm start tuning jobs.
16570	//
16571	// ParentHyperParameterTuningJobs is a required field
16572	ParentHyperParameterTuningJobs []*ParentHyperParameterTuningJob `min:"1" type:"list" required:"true"`
16573
16574	// Specifies one of the following:
16575	//
16576	// IDENTICAL_DATA_AND_ALGORITHM
16577	//
16578	// The new hyperparameter tuning job uses the same input data and training image
16579	// as the parent tuning jobs. You can change the hyperparameter ranges to search
16580	// and the maximum number of training jobs that the hyperparameter tuning job
16581	// launches. You cannot use a new version of the training algorithm, unless
16582	// the changes in the new version do not affect the algorithm itself. For example,
16583	// changes that improve logging or adding support for a different data format
16584	// are allowed. You can also change hyperparameters from tunable to static,
16585	// and from static to tunable, but the total number of static plus tunable hyperparameters
16586	// must remain the same as it is in all parent jobs. The objective metric for
16587	// the new tuning job must be the same as for all parent jobs.
16588	//
16589	// TRANSFER_LEARNING
16590	//
16591	// The new hyperparameter tuning job can include input data, hyperparameter
16592	// ranges, maximum number of concurrent training jobs, and maximum number of
16593	// training jobs that are different than those of its parent hyperparameter
16594	// tuning jobs. The training image can also be a different version from the
16595	// version used in the parent hyperparameter tuning job. You can also change
16596	// hyperparameters from tunable to static, and from static to tunable, but the
16597	// total number of static plus tunable hyperparameters must remain the same
16598	// as it is in all parent jobs. The objective metric for the new tuning job
16599	// must be the same as for all parent jobs.
16600	//
16601	// WarmStartType is a required field
16602	WarmStartType *string `type:"string" required:"true" enum:"HyperParameterTuningJobWarmStartType"`
16603}
16604
16605// String returns the string representation
16606func (s HyperParameterTuningJobWarmStartConfig) String() string {
16607	return awsutil.Prettify(s)
16608}
16609
16610// GoString returns the string representation
16611func (s HyperParameterTuningJobWarmStartConfig) GoString() string {
16612	return s.String()
16613}
16614
16615// Validate inspects the fields of the type to determine if they are valid.
16616func (s *HyperParameterTuningJobWarmStartConfig) Validate() error {
16617	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobWarmStartConfig"}
16618	if s.ParentHyperParameterTuningJobs == nil {
16619		invalidParams.Add(request.NewErrParamRequired("ParentHyperParameterTuningJobs"))
16620	}
16621	if s.ParentHyperParameterTuningJobs != nil && len(s.ParentHyperParameterTuningJobs) < 1 {
16622		invalidParams.Add(request.NewErrParamMinLen("ParentHyperParameterTuningJobs", 1))
16623	}
16624	if s.WarmStartType == nil {
16625		invalidParams.Add(request.NewErrParamRequired("WarmStartType"))
16626	}
16627	if s.ParentHyperParameterTuningJobs != nil {
16628		for i, v := range s.ParentHyperParameterTuningJobs {
16629			if v == nil {
16630				continue
16631			}
16632			if err := v.Validate(); err != nil {
16633				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParentHyperParameterTuningJobs", i), err.(request.ErrInvalidParams))
16634			}
16635		}
16636	}
16637
16638	if invalidParams.Len() > 0 {
16639		return invalidParams
16640	}
16641	return nil
16642}
16643
16644// SetParentHyperParameterTuningJobs sets the ParentHyperParameterTuningJobs field's value.
16645func (s *HyperParameterTuningJobWarmStartConfig) SetParentHyperParameterTuningJobs(v []*ParentHyperParameterTuningJob) *HyperParameterTuningJobWarmStartConfig {
16646	s.ParentHyperParameterTuningJobs = v
16647	return s
16648}
16649
16650// SetWarmStartType sets the WarmStartType field's value.
16651func (s *HyperParameterTuningJobWarmStartConfig) SetWarmStartType(v string) *HyperParameterTuningJobWarmStartConfig {
16652	s.WarmStartType = &v
16653	return s
16654}
16655
16656// Defines how to perform inference generation after a training job is run.
16657type InferenceSpecification struct {
16658	_ struct{} `type:"structure"`
16659
16660	// The Amazon ECR registry path of the Docker image that contains the inference
16661	// code.
16662	//
16663	// Containers is a required field
16664	Containers []*ModelPackageContainerDefinition `min:"1" type:"list" required:"true"`
16665
16666	// The supported MIME types for the input data.
16667	//
16668	// SupportedContentTypes is a required field
16669	SupportedContentTypes []*string `type:"list" required:"true"`
16670
16671	// A list of the instance types that are used to generate inferences in real-time.
16672	//
16673	// SupportedRealtimeInferenceInstanceTypes is a required field
16674	SupportedRealtimeInferenceInstanceTypes []*string `type:"list" required:"true"`
16675
16676	// The supported MIME types for the output data.
16677	//
16678	// SupportedResponseMIMETypes is a required field
16679	SupportedResponseMIMETypes []*string `type:"list" required:"true"`
16680
16681	// A list of the instance types on which a transformation job can be run or
16682	// on which an endpoint can be deployed.
16683	//
16684	// SupportedTransformInstanceTypes is a required field
16685	SupportedTransformInstanceTypes []*string `min:"1" type:"list" required:"true"`
16686}
16687
16688// String returns the string representation
16689func (s InferenceSpecification) String() string {
16690	return awsutil.Prettify(s)
16691}
16692
16693// GoString returns the string representation
16694func (s InferenceSpecification) GoString() string {
16695	return s.String()
16696}
16697
16698// Validate inspects the fields of the type to determine if they are valid.
16699func (s *InferenceSpecification) Validate() error {
16700	invalidParams := request.ErrInvalidParams{Context: "InferenceSpecification"}
16701	if s.Containers == nil {
16702		invalidParams.Add(request.NewErrParamRequired("Containers"))
16703	}
16704	if s.Containers != nil && len(s.Containers) < 1 {
16705		invalidParams.Add(request.NewErrParamMinLen("Containers", 1))
16706	}
16707	if s.SupportedContentTypes == nil {
16708		invalidParams.Add(request.NewErrParamRequired("SupportedContentTypes"))
16709	}
16710	if s.SupportedRealtimeInferenceInstanceTypes == nil {
16711		invalidParams.Add(request.NewErrParamRequired("SupportedRealtimeInferenceInstanceTypes"))
16712	}
16713	if s.SupportedResponseMIMETypes == nil {
16714		invalidParams.Add(request.NewErrParamRequired("SupportedResponseMIMETypes"))
16715	}
16716	if s.SupportedTransformInstanceTypes == nil {
16717		invalidParams.Add(request.NewErrParamRequired("SupportedTransformInstanceTypes"))
16718	}
16719	if s.SupportedTransformInstanceTypes != nil && len(s.SupportedTransformInstanceTypes) < 1 {
16720		invalidParams.Add(request.NewErrParamMinLen("SupportedTransformInstanceTypes", 1))
16721	}
16722	if s.Containers != nil {
16723		for i, v := range s.Containers {
16724			if v == nil {
16725				continue
16726			}
16727			if err := v.Validate(); err != nil {
16728				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Containers", i), err.(request.ErrInvalidParams))
16729			}
16730		}
16731	}
16732
16733	if invalidParams.Len() > 0 {
16734		return invalidParams
16735	}
16736	return nil
16737}
16738
16739// SetContainers sets the Containers field's value.
16740func (s *InferenceSpecification) SetContainers(v []*ModelPackageContainerDefinition) *InferenceSpecification {
16741	s.Containers = v
16742	return s
16743}
16744
16745// SetSupportedContentTypes sets the SupportedContentTypes field's value.
16746func (s *InferenceSpecification) SetSupportedContentTypes(v []*string) *InferenceSpecification {
16747	s.SupportedContentTypes = v
16748	return s
16749}
16750
16751// SetSupportedRealtimeInferenceInstanceTypes sets the SupportedRealtimeInferenceInstanceTypes field's value.
16752func (s *InferenceSpecification) SetSupportedRealtimeInferenceInstanceTypes(v []*string) *InferenceSpecification {
16753	s.SupportedRealtimeInferenceInstanceTypes = v
16754	return s
16755}
16756
16757// SetSupportedResponseMIMETypes sets the SupportedResponseMIMETypes field's value.
16758func (s *InferenceSpecification) SetSupportedResponseMIMETypes(v []*string) *InferenceSpecification {
16759	s.SupportedResponseMIMETypes = v
16760	return s
16761}
16762
16763// SetSupportedTransformInstanceTypes sets the SupportedTransformInstanceTypes field's value.
16764func (s *InferenceSpecification) SetSupportedTransformInstanceTypes(v []*string) *InferenceSpecification {
16765	s.SupportedTransformInstanceTypes = v
16766	return s
16767}
16768
16769// Contains information about the location of input model artifacts, the name
16770// and shape of the expected data inputs, and the framework in which the model
16771// was trained.
16772type InputConfig struct {
16773	_ struct{} `type:"structure"`
16774
16775	// Specifies the name and shape of the expected data inputs for your trained
16776	// model with a JSON dictionary form. The data inputs are InputConfig$Framework
16777	// specific.
16778	//
16779	//    * TensorFlow: You must specify the name and shape (NHWC format) of the
16780	//    expected data inputs using a dictionary format for your trained model.
16781	//    The dictionary formats required for the console and CLI are different.
16782	//    Examples for one input: If using the console, {"input":[1,1024,1024,3]}
16783	//    If using the CLI, {\"input\":[1,1024,1024,3]} Examples for two inputs:
16784	//    If using the console, {"data1": [1,28,28,1], "data2":[1,28,28,1]} If using
16785	//    the CLI, {\"data1\": [1,28,28,1], \"data2\":[1,28,28,1]}
16786	//
16787	//    * MXNET/ONNX: You must specify the name and shape (NCHW format) of the
16788	//    expected data inputs in order using a dictionary format for your trained
16789	//    model. The dictionary formats required for the console and CLI are different.
16790	//    Examples for one input: If using the console, {"data":[1,3,1024,1024]}
16791	//    If using the CLI, {\"data\":[1,3,1024,1024]} Examples for two inputs:
16792	//    If using the console, {"var1": [1,1,28,28], "var2":[1,1,28,28]} If using
16793	//    the CLI, {\"var1\": [1,1,28,28], \"var2\":[1,1,28,28]}
16794	//
16795	//    * PyTorch: You can either specify the name and shape (NCHW format) of
16796	//    expected data inputs in order using a dictionary format for your trained
16797	//    model or you can specify the shape only using a list format. The dictionary
16798	//    formats required for the console and CLI are different. The list formats
16799	//    for the console and CLI are the same. Examples for one input in dictionary
16800	//    format: If using the console, {"input0":[1,3,224,224]} If using the CLI,
16801	//    {\"input0\":[1,3,224,224]} Example for one input in list format: [[1,3,224,224]]
16802	//    Examples for two inputs in dictionary format: If using the console, {"input0":[1,3,224,224],
16803	//    "input1":[1,3,224,224]} If using the CLI, {\"input0\":[1,3,224,224], \"input1\":[1,3,224,224]}
16804	//    Example for two inputs in list format: [[1,3,224,224], [1,3,224,224]]
16805	//
16806	//    * XGBOOST: input data name and shape are not needed.
16807	//
16808	// DataInputConfig is a required field
16809	DataInputConfig *string `min:"1" type:"string" required:"true"`
16810
16811	// Identifies the framework in which the model was trained. For example: TENSORFLOW.
16812	//
16813	// Framework is a required field
16814	Framework *string `type:"string" required:"true" enum:"Framework"`
16815
16816	// The S3 path where the model artifacts, which result from model training,
16817	// are stored. This path must point to a single gzip compressed tar archive
16818	// (.tar.gz suffix).
16819	//
16820	// S3Uri is a required field
16821	S3Uri *string `type:"string" required:"true"`
16822}
16823
16824// String returns the string representation
16825func (s InputConfig) String() string {
16826	return awsutil.Prettify(s)
16827}
16828
16829// GoString returns the string representation
16830func (s InputConfig) GoString() string {
16831	return s.String()
16832}
16833
16834// Validate inspects the fields of the type to determine if they are valid.
16835func (s *InputConfig) Validate() error {
16836	invalidParams := request.ErrInvalidParams{Context: "InputConfig"}
16837	if s.DataInputConfig == nil {
16838		invalidParams.Add(request.NewErrParamRequired("DataInputConfig"))
16839	}
16840	if s.DataInputConfig != nil && len(*s.DataInputConfig) < 1 {
16841		invalidParams.Add(request.NewErrParamMinLen("DataInputConfig", 1))
16842	}
16843	if s.Framework == nil {
16844		invalidParams.Add(request.NewErrParamRequired("Framework"))
16845	}
16846	if s.S3Uri == nil {
16847		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
16848	}
16849
16850	if invalidParams.Len() > 0 {
16851		return invalidParams
16852	}
16853	return nil
16854}
16855
16856// SetDataInputConfig sets the DataInputConfig field's value.
16857func (s *InputConfig) SetDataInputConfig(v string) *InputConfig {
16858	s.DataInputConfig = &v
16859	return s
16860}
16861
16862// SetFramework sets the Framework field's value.
16863func (s *InputConfig) SetFramework(v string) *InputConfig {
16864	s.Framework = &v
16865	return s
16866}
16867
16868// SetS3Uri sets the S3Uri field's value.
16869func (s *InputConfig) SetS3Uri(v string) *InputConfig {
16870	s.S3Uri = &v
16871	return s
16872}
16873
16874// For a hyperparameter of the integer type, specifies the range that a hyperparameter
16875// tuning job searches.
16876type IntegerParameterRange struct {
16877	_ struct{} `type:"structure"`
16878
16879	// The maximum value of the hyperparameter to search.
16880	//
16881	// MaxValue is a required field
16882	MaxValue *string `type:"string" required:"true"`
16883
16884	// The minimum value of the hyperparameter to search.
16885	//
16886	// MinValue is a required field
16887	MinValue *string `type:"string" required:"true"`
16888
16889	// The name of the hyperparameter to search.
16890	//
16891	// Name is a required field
16892	Name *string `type:"string" required:"true"`
16893
16894	// The scale that hyperparameter tuning uses to search the hyperparameter range.
16895	// For information about choosing a hyperparameter scale, see Hyperparameter
16896	// Scaling (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
16897	// One of the following values:
16898	//
16899	// Auto
16900	//
16901	// Amazon SageMaker hyperparameter tuning chooses the best scale for the hyperparameter.
16902	//
16903	// Linear
16904	//
16905	// Hyperparameter tuning searches the values in the hyperparameter range by
16906	// using a linear scale.
16907	//
16908	// Logarithmic
16909	//
16910	// Hyperparemeter tuning searches the values in the hyperparameter range by
16911	// using a logarithmic scale.
16912	//
16913	// Logarithmic scaling works only for ranges that have only values greater than
16914	// 0.
16915	ScalingType *string `type:"string" enum:"HyperParameterScalingType"`
16916}
16917
16918// String returns the string representation
16919func (s IntegerParameterRange) String() string {
16920	return awsutil.Prettify(s)
16921}
16922
16923// GoString returns the string representation
16924func (s IntegerParameterRange) GoString() string {
16925	return s.String()
16926}
16927
16928// Validate inspects the fields of the type to determine if they are valid.
16929func (s *IntegerParameterRange) Validate() error {
16930	invalidParams := request.ErrInvalidParams{Context: "IntegerParameterRange"}
16931	if s.MaxValue == nil {
16932		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
16933	}
16934	if s.MinValue == nil {
16935		invalidParams.Add(request.NewErrParamRequired("MinValue"))
16936	}
16937	if s.Name == nil {
16938		invalidParams.Add(request.NewErrParamRequired("Name"))
16939	}
16940
16941	if invalidParams.Len() > 0 {
16942		return invalidParams
16943	}
16944	return nil
16945}
16946
16947// SetMaxValue sets the MaxValue field's value.
16948func (s *IntegerParameterRange) SetMaxValue(v string) *IntegerParameterRange {
16949	s.MaxValue = &v
16950	return s
16951}
16952
16953// SetMinValue sets the MinValue field's value.
16954func (s *IntegerParameterRange) SetMinValue(v string) *IntegerParameterRange {
16955	s.MinValue = &v
16956	return s
16957}
16958
16959// SetName sets the Name field's value.
16960func (s *IntegerParameterRange) SetName(v string) *IntegerParameterRange {
16961	s.Name = &v
16962	return s
16963}
16964
16965// SetScalingType sets the ScalingType field's value.
16966func (s *IntegerParameterRange) SetScalingType(v string) *IntegerParameterRange {
16967	s.ScalingType = &v
16968	return s
16969}
16970
16971// Defines the possible values for an integer hyperparameter.
16972type IntegerParameterRangeSpecification struct {
16973	_ struct{} `type:"structure"`
16974
16975	// The maximum integer value allowed.
16976	//
16977	// MaxValue is a required field
16978	MaxValue *string `type:"string" required:"true"`
16979
16980	// The minimum integer value allowed.
16981	//
16982	// MinValue is a required field
16983	MinValue *string `type:"string" required:"true"`
16984}
16985
16986// String returns the string representation
16987func (s IntegerParameterRangeSpecification) String() string {
16988	return awsutil.Prettify(s)
16989}
16990
16991// GoString returns the string representation
16992func (s IntegerParameterRangeSpecification) GoString() string {
16993	return s.String()
16994}
16995
16996// Validate inspects the fields of the type to determine if they are valid.
16997func (s *IntegerParameterRangeSpecification) Validate() error {
16998	invalidParams := request.ErrInvalidParams{Context: "IntegerParameterRangeSpecification"}
16999	if s.MaxValue == nil {
17000		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
17001	}
17002	if s.MinValue == nil {
17003		invalidParams.Add(request.NewErrParamRequired("MinValue"))
17004	}
17005
17006	if invalidParams.Len() > 0 {
17007		return invalidParams
17008	}
17009	return nil
17010}
17011
17012// SetMaxValue sets the MaxValue field's value.
17013func (s *IntegerParameterRangeSpecification) SetMaxValue(v string) *IntegerParameterRangeSpecification {
17014	s.MaxValue = &v
17015	return s
17016}
17017
17018// SetMinValue sets the MinValue field's value.
17019func (s *IntegerParameterRangeSpecification) SetMinValue(v string) *IntegerParameterRangeSpecification {
17020	s.MinValue = &v
17021	return s
17022}
17023
17024// Provides a breakdown of the number of objects labeled.
17025type LabelCounters struct {
17026	_ struct{} `type:"structure"`
17027
17028	// The total number of objects that could not be labeled due to an error.
17029	FailedNonRetryableError *int64 `type:"integer"`
17030
17031	// The total number of objects labeled by a human worker.
17032	HumanLabeled *int64 `type:"integer"`
17033
17034	// The total number of objects labeled by automated data labeling.
17035	MachineLabeled *int64 `type:"integer"`
17036
17037	// The total number of objects labeled.
17038	TotalLabeled *int64 `type:"integer"`
17039
17040	// The total number of objects not yet labeled.
17041	Unlabeled *int64 `type:"integer"`
17042}
17043
17044// String returns the string representation
17045func (s LabelCounters) String() string {
17046	return awsutil.Prettify(s)
17047}
17048
17049// GoString returns the string representation
17050func (s LabelCounters) GoString() string {
17051	return s.String()
17052}
17053
17054// SetFailedNonRetryableError sets the FailedNonRetryableError field's value.
17055func (s *LabelCounters) SetFailedNonRetryableError(v int64) *LabelCounters {
17056	s.FailedNonRetryableError = &v
17057	return s
17058}
17059
17060// SetHumanLabeled sets the HumanLabeled field's value.
17061func (s *LabelCounters) SetHumanLabeled(v int64) *LabelCounters {
17062	s.HumanLabeled = &v
17063	return s
17064}
17065
17066// SetMachineLabeled sets the MachineLabeled field's value.
17067func (s *LabelCounters) SetMachineLabeled(v int64) *LabelCounters {
17068	s.MachineLabeled = &v
17069	return s
17070}
17071
17072// SetTotalLabeled sets the TotalLabeled field's value.
17073func (s *LabelCounters) SetTotalLabeled(v int64) *LabelCounters {
17074	s.TotalLabeled = &v
17075	return s
17076}
17077
17078// SetUnlabeled sets the Unlabeled field's value.
17079func (s *LabelCounters) SetUnlabeled(v int64) *LabelCounters {
17080	s.Unlabeled = &v
17081	return s
17082}
17083
17084// Provides counts for human-labeled tasks in the labeling job.
17085type LabelCountersForWorkteam struct {
17086	_ struct{} `type:"structure"`
17087
17088	// The total number of data objects labeled by a human worker.
17089	HumanLabeled *int64 `type:"integer"`
17090
17091	// The total number of data objects that need to be labeled by a human worker.
17092	PendingHuman *int64 `type:"integer"`
17093
17094	// The total number of tasks in the labeling job.
17095	Total *int64 `type:"integer"`
17096}
17097
17098// String returns the string representation
17099func (s LabelCountersForWorkteam) String() string {
17100	return awsutil.Prettify(s)
17101}
17102
17103// GoString returns the string representation
17104func (s LabelCountersForWorkteam) GoString() string {
17105	return s.String()
17106}
17107
17108// SetHumanLabeled sets the HumanLabeled field's value.
17109func (s *LabelCountersForWorkteam) SetHumanLabeled(v int64) *LabelCountersForWorkteam {
17110	s.HumanLabeled = &v
17111	return s
17112}
17113
17114// SetPendingHuman sets the PendingHuman field's value.
17115func (s *LabelCountersForWorkteam) SetPendingHuman(v int64) *LabelCountersForWorkteam {
17116	s.PendingHuman = &v
17117	return s
17118}
17119
17120// SetTotal sets the Total field's value.
17121func (s *LabelCountersForWorkteam) SetTotal(v int64) *LabelCountersForWorkteam {
17122	s.Total = &v
17123	return s
17124}
17125
17126// Provides configuration information for auto-labeling of your data objects.
17127// A LabelingJobAlgorithmsConfig object must be supplied in order to use auto-labeling.
17128type LabelingJobAlgorithmsConfig struct {
17129	_ struct{} `type:"structure"`
17130
17131	// At the end of an auto-label job Amazon SageMaker Ground Truth sends the Amazon
17132	// Resource Nam (ARN) of the final model used for auto-labeling. You can use
17133	// this model as the starting point for subsequent similar jobs by providing
17134	// the ARN of the model here.
17135	InitialActiveLearningModelArn *string `min:"20" type:"string"`
17136
17137	// Specifies the Amazon Resource Name (ARN) of the algorithm used for auto-labeling.
17138	// You must select one of the following ARNs:
17139	//
17140	//    * Image classification arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/image-classification
17141	//
17142	//    * Text classification arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/text-classification
17143	//
17144	//    * Object detection arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/object-detection
17145	//
17146	//    * Semantic Segmentation arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/semantic-segmentation
17147	//
17148	// LabelingJobAlgorithmSpecificationArn is a required field
17149	LabelingJobAlgorithmSpecificationArn *string `type:"string" required:"true"`
17150
17151	// Provides configuration information for a labeling job.
17152	LabelingJobResourceConfig *LabelingJobResourceConfig `type:"structure"`
17153}
17154
17155// String returns the string representation
17156func (s LabelingJobAlgorithmsConfig) String() string {
17157	return awsutil.Prettify(s)
17158}
17159
17160// GoString returns the string representation
17161func (s LabelingJobAlgorithmsConfig) GoString() string {
17162	return s.String()
17163}
17164
17165// Validate inspects the fields of the type to determine if they are valid.
17166func (s *LabelingJobAlgorithmsConfig) Validate() error {
17167	invalidParams := request.ErrInvalidParams{Context: "LabelingJobAlgorithmsConfig"}
17168	if s.InitialActiveLearningModelArn != nil && len(*s.InitialActiveLearningModelArn) < 20 {
17169		invalidParams.Add(request.NewErrParamMinLen("InitialActiveLearningModelArn", 20))
17170	}
17171	if s.LabelingJobAlgorithmSpecificationArn == nil {
17172		invalidParams.Add(request.NewErrParamRequired("LabelingJobAlgorithmSpecificationArn"))
17173	}
17174
17175	if invalidParams.Len() > 0 {
17176		return invalidParams
17177	}
17178	return nil
17179}
17180
17181// SetInitialActiveLearningModelArn sets the InitialActiveLearningModelArn field's value.
17182func (s *LabelingJobAlgorithmsConfig) SetInitialActiveLearningModelArn(v string) *LabelingJobAlgorithmsConfig {
17183	s.InitialActiveLearningModelArn = &v
17184	return s
17185}
17186
17187// SetLabelingJobAlgorithmSpecificationArn sets the LabelingJobAlgorithmSpecificationArn field's value.
17188func (s *LabelingJobAlgorithmsConfig) SetLabelingJobAlgorithmSpecificationArn(v string) *LabelingJobAlgorithmsConfig {
17189	s.LabelingJobAlgorithmSpecificationArn = &v
17190	return s
17191}
17192
17193// SetLabelingJobResourceConfig sets the LabelingJobResourceConfig field's value.
17194func (s *LabelingJobAlgorithmsConfig) SetLabelingJobResourceConfig(v *LabelingJobResourceConfig) *LabelingJobAlgorithmsConfig {
17195	s.LabelingJobResourceConfig = v
17196	return s
17197}
17198
17199// Attributes of the data specified by the customer. Use these to describe the
17200// data to be labeled.
17201type LabelingJobDataAttributes struct {
17202	_ struct{} `type:"structure"`
17203
17204	// Declares that your content is free of personally identifiable information
17205	// or adult content. Amazon SageMaker may restrict the Amazon Mechanical Turk
17206	// workers that can view your task based on this information.
17207	ContentClassifiers []*string `type:"list"`
17208}
17209
17210// String returns the string representation
17211func (s LabelingJobDataAttributes) String() string {
17212	return awsutil.Prettify(s)
17213}
17214
17215// GoString returns the string representation
17216func (s LabelingJobDataAttributes) GoString() string {
17217	return s.String()
17218}
17219
17220// SetContentClassifiers sets the ContentClassifiers field's value.
17221func (s *LabelingJobDataAttributes) SetContentClassifiers(v []*string) *LabelingJobDataAttributes {
17222	s.ContentClassifiers = v
17223	return s
17224}
17225
17226// Provides information about the location of input data.
17227type LabelingJobDataSource struct {
17228	_ struct{} `type:"structure"`
17229
17230	// The Amazon S3 location of the input data objects.
17231	//
17232	// S3DataSource is a required field
17233	S3DataSource *LabelingJobS3DataSource `type:"structure" required:"true"`
17234}
17235
17236// String returns the string representation
17237func (s LabelingJobDataSource) String() string {
17238	return awsutil.Prettify(s)
17239}
17240
17241// GoString returns the string representation
17242func (s LabelingJobDataSource) GoString() string {
17243	return s.String()
17244}
17245
17246// Validate inspects the fields of the type to determine if they are valid.
17247func (s *LabelingJobDataSource) Validate() error {
17248	invalidParams := request.ErrInvalidParams{Context: "LabelingJobDataSource"}
17249	if s.S3DataSource == nil {
17250		invalidParams.Add(request.NewErrParamRequired("S3DataSource"))
17251	}
17252	if s.S3DataSource != nil {
17253		if err := s.S3DataSource.Validate(); err != nil {
17254			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
17255		}
17256	}
17257
17258	if invalidParams.Len() > 0 {
17259		return invalidParams
17260	}
17261	return nil
17262}
17263
17264// SetS3DataSource sets the S3DataSource field's value.
17265func (s *LabelingJobDataSource) SetS3DataSource(v *LabelingJobS3DataSource) *LabelingJobDataSource {
17266	s.S3DataSource = v
17267	return s
17268}
17269
17270// Provides summary information for a work team.
17271type LabelingJobForWorkteamSummary struct {
17272	_ struct{} `type:"structure"`
17273
17274	// The date and time that the labeling job was created.
17275	//
17276	// CreationTime is a required field
17277	CreationTime *time.Time `type:"timestamp" required:"true"`
17278
17279	// A unique identifier for a labeling job. You can use this to refer to a specific
17280	// labeling job.
17281	//
17282	// JobReferenceCode is a required field
17283	JobReferenceCode *string `min:"1" type:"string" required:"true"`
17284
17285	// Provides information about the progress of a labeling job.
17286	LabelCounters *LabelCountersForWorkteam `type:"structure"`
17287
17288	// The name of the labeling job that the work team is assigned to.
17289	LabelingJobName *string `min:"1" type:"string"`
17290
17291	// The configured number of workers per data object.
17292	NumberOfHumanWorkersPerDataObject *int64 `min:"1" type:"integer"`
17293
17294	// WorkRequesterAccountId is a required field
17295	WorkRequesterAccountId *string `type:"string" required:"true"`
17296}
17297
17298// String returns the string representation
17299func (s LabelingJobForWorkteamSummary) String() string {
17300	return awsutil.Prettify(s)
17301}
17302
17303// GoString returns the string representation
17304func (s LabelingJobForWorkteamSummary) GoString() string {
17305	return s.String()
17306}
17307
17308// SetCreationTime sets the CreationTime field's value.
17309func (s *LabelingJobForWorkteamSummary) SetCreationTime(v time.Time) *LabelingJobForWorkteamSummary {
17310	s.CreationTime = &v
17311	return s
17312}
17313
17314// SetJobReferenceCode sets the JobReferenceCode field's value.
17315func (s *LabelingJobForWorkteamSummary) SetJobReferenceCode(v string) *LabelingJobForWorkteamSummary {
17316	s.JobReferenceCode = &v
17317	return s
17318}
17319
17320// SetLabelCounters sets the LabelCounters field's value.
17321func (s *LabelingJobForWorkteamSummary) SetLabelCounters(v *LabelCountersForWorkteam) *LabelingJobForWorkteamSummary {
17322	s.LabelCounters = v
17323	return s
17324}
17325
17326// SetLabelingJobName sets the LabelingJobName field's value.
17327func (s *LabelingJobForWorkteamSummary) SetLabelingJobName(v string) *LabelingJobForWorkteamSummary {
17328	s.LabelingJobName = &v
17329	return s
17330}
17331
17332// SetNumberOfHumanWorkersPerDataObject sets the NumberOfHumanWorkersPerDataObject field's value.
17333func (s *LabelingJobForWorkteamSummary) SetNumberOfHumanWorkersPerDataObject(v int64) *LabelingJobForWorkteamSummary {
17334	s.NumberOfHumanWorkersPerDataObject = &v
17335	return s
17336}
17337
17338// SetWorkRequesterAccountId sets the WorkRequesterAccountId field's value.
17339func (s *LabelingJobForWorkteamSummary) SetWorkRequesterAccountId(v string) *LabelingJobForWorkteamSummary {
17340	s.WorkRequesterAccountId = &v
17341	return s
17342}
17343
17344// Input configuration information for a labeling job.
17345type LabelingJobInputConfig struct {
17346	_ struct{} `type:"structure"`
17347
17348	// Attributes of the data specified by the customer.
17349	DataAttributes *LabelingJobDataAttributes `type:"structure"`
17350
17351	// The location of the input data.
17352	//
17353	// DataSource is a required field
17354	DataSource *LabelingJobDataSource `type:"structure" required:"true"`
17355}
17356
17357// String returns the string representation
17358func (s LabelingJobInputConfig) String() string {
17359	return awsutil.Prettify(s)
17360}
17361
17362// GoString returns the string representation
17363func (s LabelingJobInputConfig) GoString() string {
17364	return s.String()
17365}
17366
17367// Validate inspects the fields of the type to determine if they are valid.
17368func (s *LabelingJobInputConfig) Validate() error {
17369	invalidParams := request.ErrInvalidParams{Context: "LabelingJobInputConfig"}
17370	if s.DataSource == nil {
17371		invalidParams.Add(request.NewErrParamRequired("DataSource"))
17372	}
17373	if s.DataSource != nil {
17374		if err := s.DataSource.Validate(); err != nil {
17375			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
17376		}
17377	}
17378
17379	if invalidParams.Len() > 0 {
17380		return invalidParams
17381	}
17382	return nil
17383}
17384
17385// SetDataAttributes sets the DataAttributes field's value.
17386func (s *LabelingJobInputConfig) SetDataAttributes(v *LabelingJobDataAttributes) *LabelingJobInputConfig {
17387	s.DataAttributes = v
17388	return s
17389}
17390
17391// SetDataSource sets the DataSource field's value.
17392func (s *LabelingJobInputConfig) SetDataSource(v *LabelingJobDataSource) *LabelingJobInputConfig {
17393	s.DataSource = v
17394	return s
17395}
17396
17397// Specifies the location of the output produced by the labeling job.
17398type LabelingJobOutput struct {
17399	_ struct{} `type:"structure"`
17400
17401	// The Amazon Resource Name (ARN) for the most recent Amazon SageMaker model
17402	// trained as part of automated data labeling.
17403	FinalActiveLearningModelArn *string `min:"20" type:"string"`
17404
17405	// The Amazon S3 bucket location of the manifest file for labeled data.
17406	//
17407	// OutputDatasetS3Uri is a required field
17408	OutputDatasetS3Uri *string `type:"string" required:"true"`
17409}
17410
17411// String returns the string representation
17412func (s LabelingJobOutput) String() string {
17413	return awsutil.Prettify(s)
17414}
17415
17416// GoString returns the string representation
17417func (s LabelingJobOutput) GoString() string {
17418	return s.String()
17419}
17420
17421// SetFinalActiveLearningModelArn sets the FinalActiveLearningModelArn field's value.
17422func (s *LabelingJobOutput) SetFinalActiveLearningModelArn(v string) *LabelingJobOutput {
17423	s.FinalActiveLearningModelArn = &v
17424	return s
17425}
17426
17427// SetOutputDatasetS3Uri sets the OutputDatasetS3Uri field's value.
17428func (s *LabelingJobOutput) SetOutputDatasetS3Uri(v string) *LabelingJobOutput {
17429	s.OutputDatasetS3Uri = &v
17430	return s
17431}
17432
17433// Output configuration information for a labeling job.
17434type LabelingJobOutputConfig struct {
17435	_ struct{} `type:"structure"`
17436
17437	// The AWS Key Management Service ID of the key used to encrypt the output data,
17438	// if any.
17439	//
17440	// If you use a KMS key ID or an alias of your master key, the Amazon SageMaker
17441	// execution role must include permissions to call kms:Encrypt. If you don't
17442	// provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon
17443	// S3 for your role's account. Amazon SageMaker uses server-side encryption
17444	// with KMS-managed keys for LabelingJobOutputConfig. If you use a bucket policy
17445	// with an s3:PutObject permission that only allows objects with server-side
17446	// encryption, set the condition key of s3:x-amz-server-side-encryption to "aws:kms".
17447	// For more information, see KMS-Managed Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
17448	// in the Amazon Simple Storage Service Developer Guide.
17449	//
17450	// The KMS key policy must grant permission to the IAM role that you specify
17451	// in your CreateLabelingJob request. For more information, see Using Key Policies
17452	// in AWS KMS (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)
17453	// in the AWS Key Management Service Developer Guide.
17454	KmsKeyId *string `type:"string"`
17455
17456	// The Amazon S3 location to write output data.
17457	//
17458	// S3OutputPath is a required field
17459	S3OutputPath *string `type:"string" required:"true"`
17460}
17461
17462// String returns the string representation
17463func (s LabelingJobOutputConfig) String() string {
17464	return awsutil.Prettify(s)
17465}
17466
17467// GoString returns the string representation
17468func (s LabelingJobOutputConfig) GoString() string {
17469	return s.String()
17470}
17471
17472// Validate inspects the fields of the type to determine if they are valid.
17473func (s *LabelingJobOutputConfig) Validate() error {
17474	invalidParams := request.ErrInvalidParams{Context: "LabelingJobOutputConfig"}
17475	if s.S3OutputPath == nil {
17476		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
17477	}
17478
17479	if invalidParams.Len() > 0 {
17480		return invalidParams
17481	}
17482	return nil
17483}
17484
17485// SetKmsKeyId sets the KmsKeyId field's value.
17486func (s *LabelingJobOutputConfig) SetKmsKeyId(v string) *LabelingJobOutputConfig {
17487	s.KmsKeyId = &v
17488	return s
17489}
17490
17491// SetS3OutputPath sets the S3OutputPath field's value.
17492func (s *LabelingJobOutputConfig) SetS3OutputPath(v string) *LabelingJobOutputConfig {
17493	s.S3OutputPath = &v
17494	return s
17495}
17496
17497// Provides configuration information for labeling jobs.
17498type LabelingJobResourceConfig struct {
17499	_ struct{} `type:"structure"`
17500
17501	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
17502	// encrypt data on the storage volume attached to the ML compute instance(s)
17503	// that run the training job. The VolumeKmsKeyId can be any of the following
17504	// formats:
17505	//
17506	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
17507	//
17508	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
17509	VolumeKmsKeyId *string `type:"string"`
17510}
17511
17512// String returns the string representation
17513func (s LabelingJobResourceConfig) String() string {
17514	return awsutil.Prettify(s)
17515}
17516
17517// GoString returns the string representation
17518func (s LabelingJobResourceConfig) GoString() string {
17519	return s.String()
17520}
17521
17522// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
17523func (s *LabelingJobResourceConfig) SetVolumeKmsKeyId(v string) *LabelingJobResourceConfig {
17524	s.VolumeKmsKeyId = &v
17525	return s
17526}
17527
17528// The Amazon S3 location of the input data objects.
17529type LabelingJobS3DataSource struct {
17530	_ struct{} `type:"structure"`
17531
17532	// The Amazon S3 location of the manifest file that describes the input data
17533	// objects.
17534	//
17535	// ManifestS3Uri is a required field
17536	ManifestS3Uri *string `type:"string" required:"true"`
17537}
17538
17539// String returns the string representation
17540func (s LabelingJobS3DataSource) String() string {
17541	return awsutil.Prettify(s)
17542}
17543
17544// GoString returns the string representation
17545func (s LabelingJobS3DataSource) GoString() string {
17546	return s.String()
17547}
17548
17549// Validate inspects the fields of the type to determine if they are valid.
17550func (s *LabelingJobS3DataSource) Validate() error {
17551	invalidParams := request.ErrInvalidParams{Context: "LabelingJobS3DataSource"}
17552	if s.ManifestS3Uri == nil {
17553		invalidParams.Add(request.NewErrParamRequired("ManifestS3Uri"))
17554	}
17555
17556	if invalidParams.Len() > 0 {
17557		return invalidParams
17558	}
17559	return nil
17560}
17561
17562// SetManifestS3Uri sets the ManifestS3Uri field's value.
17563func (s *LabelingJobS3DataSource) SetManifestS3Uri(v string) *LabelingJobS3DataSource {
17564	s.ManifestS3Uri = &v
17565	return s
17566}
17567
17568// A set of conditions for stopping a labeling job. If any of the conditions
17569// are met, the job is automatically stopped. You can use these conditions to
17570// control the cost of data labeling.
17571type LabelingJobStoppingConditions struct {
17572	_ struct{} `type:"structure"`
17573
17574	// The maximum number of objects that can be labeled by human workers.
17575	MaxHumanLabeledObjectCount *int64 `min:"1" type:"integer"`
17576
17577	// The maximum number of input data objects that should be labeled.
17578	MaxPercentageOfInputDatasetLabeled *int64 `min:"1" type:"integer"`
17579}
17580
17581// String returns the string representation
17582func (s LabelingJobStoppingConditions) String() string {
17583	return awsutil.Prettify(s)
17584}
17585
17586// GoString returns the string representation
17587func (s LabelingJobStoppingConditions) GoString() string {
17588	return s.String()
17589}
17590
17591// Validate inspects the fields of the type to determine if they are valid.
17592func (s *LabelingJobStoppingConditions) Validate() error {
17593	invalidParams := request.ErrInvalidParams{Context: "LabelingJobStoppingConditions"}
17594	if s.MaxHumanLabeledObjectCount != nil && *s.MaxHumanLabeledObjectCount < 1 {
17595		invalidParams.Add(request.NewErrParamMinValue("MaxHumanLabeledObjectCount", 1))
17596	}
17597	if s.MaxPercentageOfInputDatasetLabeled != nil && *s.MaxPercentageOfInputDatasetLabeled < 1 {
17598		invalidParams.Add(request.NewErrParamMinValue("MaxPercentageOfInputDatasetLabeled", 1))
17599	}
17600
17601	if invalidParams.Len() > 0 {
17602		return invalidParams
17603	}
17604	return nil
17605}
17606
17607// SetMaxHumanLabeledObjectCount sets the MaxHumanLabeledObjectCount field's value.
17608func (s *LabelingJobStoppingConditions) SetMaxHumanLabeledObjectCount(v int64) *LabelingJobStoppingConditions {
17609	s.MaxHumanLabeledObjectCount = &v
17610	return s
17611}
17612
17613// SetMaxPercentageOfInputDatasetLabeled sets the MaxPercentageOfInputDatasetLabeled field's value.
17614func (s *LabelingJobStoppingConditions) SetMaxPercentageOfInputDatasetLabeled(v int64) *LabelingJobStoppingConditions {
17615	s.MaxPercentageOfInputDatasetLabeled = &v
17616	return s
17617}
17618
17619// Provides summary information about a labeling job.
17620type LabelingJobSummary struct {
17621	_ struct{} `type:"structure"`
17622
17623	// The Amazon Resource Name (ARN) of the Lambda function used to consolidate
17624	// the annotations from individual workers into a label for a data object. For
17625	// more information, see Annotation Consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html).
17626	AnnotationConsolidationLambdaArn *string `type:"string"`
17627
17628	// The date and time that the job was created (timestamp).
17629	//
17630	// CreationTime is a required field
17631	CreationTime *time.Time `type:"timestamp" required:"true"`
17632
17633	// If the LabelingJobStatus field is Failed, this field contains a description
17634	// of the error.
17635	FailureReason *string `type:"string"`
17636
17637	// Input configuration for the labeling job.
17638	InputConfig *LabelingJobInputConfig `type:"structure"`
17639
17640	// Counts showing the progress of the labeling job.
17641	//
17642	// LabelCounters is a required field
17643	LabelCounters *LabelCounters `type:"structure" required:"true"`
17644
17645	// The Amazon Resource Name (ARN) assigned to the labeling job when it was created.
17646	//
17647	// LabelingJobArn is a required field
17648	LabelingJobArn *string `type:"string" required:"true"`
17649
17650	// The name of the labeling job.
17651	//
17652	// LabelingJobName is a required field
17653	LabelingJobName *string `min:"1" type:"string" required:"true"`
17654
17655	// The location of the output produced by the labeling job.
17656	LabelingJobOutput *LabelingJobOutput `type:"structure"`
17657
17658	// The current status of the labeling job.
17659	//
17660	// LabelingJobStatus is a required field
17661	LabelingJobStatus *string `type:"string" required:"true" enum:"LabelingJobStatus"`
17662
17663	// The date and time that the job was last modified (timestamp).
17664	//
17665	// LastModifiedTime is a required field
17666	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
17667
17668	// The Amazon Resource Name (ARN) of a Lambda function. The function is run
17669	// before each data object is sent to a worker.
17670	//
17671	// PreHumanTaskLambdaArn is a required field
17672	PreHumanTaskLambdaArn *string `type:"string" required:"true"`
17673
17674	// The Amazon Resource Name (ARN) of the work team assigned to the job.
17675	//
17676	// WorkteamArn is a required field
17677	WorkteamArn *string `type:"string" required:"true"`
17678}
17679
17680// String returns the string representation
17681func (s LabelingJobSummary) String() string {
17682	return awsutil.Prettify(s)
17683}
17684
17685// GoString returns the string representation
17686func (s LabelingJobSummary) GoString() string {
17687	return s.String()
17688}
17689
17690// SetAnnotationConsolidationLambdaArn sets the AnnotationConsolidationLambdaArn field's value.
17691func (s *LabelingJobSummary) SetAnnotationConsolidationLambdaArn(v string) *LabelingJobSummary {
17692	s.AnnotationConsolidationLambdaArn = &v
17693	return s
17694}
17695
17696// SetCreationTime sets the CreationTime field's value.
17697func (s *LabelingJobSummary) SetCreationTime(v time.Time) *LabelingJobSummary {
17698	s.CreationTime = &v
17699	return s
17700}
17701
17702// SetFailureReason sets the FailureReason field's value.
17703func (s *LabelingJobSummary) SetFailureReason(v string) *LabelingJobSummary {
17704	s.FailureReason = &v
17705	return s
17706}
17707
17708// SetInputConfig sets the InputConfig field's value.
17709func (s *LabelingJobSummary) SetInputConfig(v *LabelingJobInputConfig) *LabelingJobSummary {
17710	s.InputConfig = v
17711	return s
17712}
17713
17714// SetLabelCounters sets the LabelCounters field's value.
17715func (s *LabelingJobSummary) SetLabelCounters(v *LabelCounters) *LabelingJobSummary {
17716	s.LabelCounters = v
17717	return s
17718}
17719
17720// SetLabelingJobArn sets the LabelingJobArn field's value.
17721func (s *LabelingJobSummary) SetLabelingJobArn(v string) *LabelingJobSummary {
17722	s.LabelingJobArn = &v
17723	return s
17724}
17725
17726// SetLabelingJobName sets the LabelingJobName field's value.
17727func (s *LabelingJobSummary) SetLabelingJobName(v string) *LabelingJobSummary {
17728	s.LabelingJobName = &v
17729	return s
17730}
17731
17732// SetLabelingJobOutput sets the LabelingJobOutput field's value.
17733func (s *LabelingJobSummary) SetLabelingJobOutput(v *LabelingJobOutput) *LabelingJobSummary {
17734	s.LabelingJobOutput = v
17735	return s
17736}
17737
17738// SetLabelingJobStatus sets the LabelingJobStatus field's value.
17739func (s *LabelingJobSummary) SetLabelingJobStatus(v string) *LabelingJobSummary {
17740	s.LabelingJobStatus = &v
17741	return s
17742}
17743
17744// SetLastModifiedTime sets the LastModifiedTime field's value.
17745func (s *LabelingJobSummary) SetLastModifiedTime(v time.Time) *LabelingJobSummary {
17746	s.LastModifiedTime = &v
17747	return s
17748}
17749
17750// SetPreHumanTaskLambdaArn sets the PreHumanTaskLambdaArn field's value.
17751func (s *LabelingJobSummary) SetPreHumanTaskLambdaArn(v string) *LabelingJobSummary {
17752	s.PreHumanTaskLambdaArn = &v
17753	return s
17754}
17755
17756// SetWorkteamArn sets the WorkteamArn field's value.
17757func (s *LabelingJobSummary) SetWorkteamArn(v string) *LabelingJobSummary {
17758	s.WorkteamArn = &v
17759	return s
17760}
17761
17762type ListAlgorithmsInput struct {
17763	_ struct{} `type:"structure"`
17764
17765	// A filter that returns only algorithms created after the specified time (timestamp).
17766	CreationTimeAfter *time.Time `type:"timestamp"`
17767
17768	// A filter that returns only algorithms created before the specified time (timestamp).
17769	CreationTimeBefore *time.Time `type:"timestamp"`
17770
17771	// The maximum number of algorithms to return in the response.
17772	MaxResults *int64 `min:"1" type:"integer"`
17773
17774	// A string in the algorithm name. This filter returns only algorithms whose
17775	// name contains the specified string.
17776	NameContains *string `type:"string"`
17777
17778	// If the response to a previous ListAlgorithms request was truncated, the response
17779	// includes a NextToken. To retrieve the next set of algorithms, use the token
17780	// in the next request.
17781	NextToken *string `type:"string"`
17782
17783	// The parameter by which to sort the results. The default is CreationTime.
17784	SortBy *string `type:"string" enum:"AlgorithmSortBy"`
17785
17786	// The sort order for the results. The default is Ascending.
17787	SortOrder *string `type:"string" enum:"SortOrder"`
17788}
17789
17790// String returns the string representation
17791func (s ListAlgorithmsInput) String() string {
17792	return awsutil.Prettify(s)
17793}
17794
17795// GoString returns the string representation
17796func (s ListAlgorithmsInput) GoString() string {
17797	return s.String()
17798}
17799
17800// Validate inspects the fields of the type to determine if they are valid.
17801func (s *ListAlgorithmsInput) Validate() error {
17802	invalidParams := request.ErrInvalidParams{Context: "ListAlgorithmsInput"}
17803	if s.MaxResults != nil && *s.MaxResults < 1 {
17804		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
17805	}
17806
17807	if invalidParams.Len() > 0 {
17808		return invalidParams
17809	}
17810	return nil
17811}
17812
17813// SetCreationTimeAfter sets the CreationTimeAfter field's value.
17814func (s *ListAlgorithmsInput) SetCreationTimeAfter(v time.Time) *ListAlgorithmsInput {
17815	s.CreationTimeAfter = &v
17816	return s
17817}
17818
17819// SetCreationTimeBefore sets the CreationTimeBefore field's value.
17820func (s *ListAlgorithmsInput) SetCreationTimeBefore(v time.Time) *ListAlgorithmsInput {
17821	s.CreationTimeBefore = &v
17822	return s
17823}
17824
17825// SetMaxResults sets the MaxResults field's value.
17826func (s *ListAlgorithmsInput) SetMaxResults(v int64) *ListAlgorithmsInput {
17827	s.MaxResults = &v
17828	return s
17829}
17830
17831// SetNameContains sets the NameContains field's value.
17832func (s *ListAlgorithmsInput) SetNameContains(v string) *ListAlgorithmsInput {
17833	s.NameContains = &v
17834	return s
17835}
17836
17837// SetNextToken sets the NextToken field's value.
17838func (s *ListAlgorithmsInput) SetNextToken(v string) *ListAlgorithmsInput {
17839	s.NextToken = &v
17840	return s
17841}
17842
17843// SetSortBy sets the SortBy field's value.
17844func (s *ListAlgorithmsInput) SetSortBy(v string) *ListAlgorithmsInput {
17845	s.SortBy = &v
17846	return s
17847}
17848
17849// SetSortOrder sets the SortOrder field's value.
17850func (s *ListAlgorithmsInput) SetSortOrder(v string) *ListAlgorithmsInput {
17851	s.SortOrder = &v
17852	return s
17853}
17854
17855type ListAlgorithmsOutput struct {
17856	_ struct{} `type:"structure"`
17857
17858	// >An array of AlgorithmSummary objects, each of which lists an algorithm.
17859	//
17860	// AlgorithmSummaryList is a required field
17861	AlgorithmSummaryList []*AlgorithmSummary `type:"list" required:"true"`
17862
17863	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
17864	// the next set of algorithms, use it in the subsequent request.
17865	NextToken *string `type:"string"`
17866}
17867
17868// String returns the string representation
17869func (s ListAlgorithmsOutput) String() string {
17870	return awsutil.Prettify(s)
17871}
17872
17873// GoString returns the string representation
17874func (s ListAlgorithmsOutput) GoString() string {
17875	return s.String()
17876}
17877
17878// SetAlgorithmSummaryList sets the AlgorithmSummaryList field's value.
17879func (s *ListAlgorithmsOutput) SetAlgorithmSummaryList(v []*AlgorithmSummary) *ListAlgorithmsOutput {
17880	s.AlgorithmSummaryList = v
17881	return s
17882}
17883
17884// SetNextToken sets the NextToken field's value.
17885func (s *ListAlgorithmsOutput) SetNextToken(v string) *ListAlgorithmsOutput {
17886	s.NextToken = &v
17887	return s
17888}
17889
17890type ListCodeRepositoriesInput struct {
17891	_ struct{} `type:"structure"`
17892
17893	// A filter that returns only Git repositories that were created after the specified
17894	// time.
17895	CreationTimeAfter *time.Time `type:"timestamp"`
17896
17897	// A filter that returns only Git repositories that were created before the
17898	// specified time.
17899	CreationTimeBefore *time.Time `type:"timestamp"`
17900
17901	// A filter that returns only Git repositories that were last modified after
17902	// the specified time.
17903	LastModifiedTimeAfter *time.Time `type:"timestamp"`
17904
17905	// A filter that returns only Git repositories that were last modified before
17906	// the specified time.
17907	LastModifiedTimeBefore *time.Time `type:"timestamp"`
17908
17909	// The maximum number of Git repositories to return in the response.
17910	MaxResults *int64 `min:"1" type:"integer"`
17911
17912	// A string in the Git repositories name. This filter returns only repositories
17913	// whose name contains the specified string.
17914	NameContains *string `type:"string"`
17915
17916	// If the result of a ListCodeRepositoriesOutput request was truncated, the
17917	// response includes a NextToken. To get the next set of Git repositories, use
17918	// the token in the next request.
17919	NextToken *string `type:"string"`
17920
17921	// The field to sort results by. The default is Name.
17922	SortBy *string `type:"string" enum:"CodeRepositorySortBy"`
17923
17924	// The sort order for results. The default is Ascending.
17925	SortOrder *string `type:"string" enum:"CodeRepositorySortOrder"`
17926}
17927
17928// String returns the string representation
17929func (s ListCodeRepositoriesInput) String() string {
17930	return awsutil.Prettify(s)
17931}
17932
17933// GoString returns the string representation
17934func (s ListCodeRepositoriesInput) GoString() string {
17935	return s.String()
17936}
17937
17938// Validate inspects the fields of the type to determine if they are valid.
17939func (s *ListCodeRepositoriesInput) Validate() error {
17940	invalidParams := request.ErrInvalidParams{Context: "ListCodeRepositoriesInput"}
17941	if s.MaxResults != nil && *s.MaxResults < 1 {
17942		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
17943	}
17944
17945	if invalidParams.Len() > 0 {
17946		return invalidParams
17947	}
17948	return nil
17949}
17950
17951// SetCreationTimeAfter sets the CreationTimeAfter field's value.
17952func (s *ListCodeRepositoriesInput) SetCreationTimeAfter(v time.Time) *ListCodeRepositoriesInput {
17953	s.CreationTimeAfter = &v
17954	return s
17955}
17956
17957// SetCreationTimeBefore sets the CreationTimeBefore field's value.
17958func (s *ListCodeRepositoriesInput) SetCreationTimeBefore(v time.Time) *ListCodeRepositoriesInput {
17959	s.CreationTimeBefore = &v
17960	return s
17961}
17962
17963// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
17964func (s *ListCodeRepositoriesInput) SetLastModifiedTimeAfter(v time.Time) *ListCodeRepositoriesInput {
17965	s.LastModifiedTimeAfter = &v
17966	return s
17967}
17968
17969// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
17970func (s *ListCodeRepositoriesInput) SetLastModifiedTimeBefore(v time.Time) *ListCodeRepositoriesInput {
17971	s.LastModifiedTimeBefore = &v
17972	return s
17973}
17974
17975// SetMaxResults sets the MaxResults field's value.
17976func (s *ListCodeRepositoriesInput) SetMaxResults(v int64) *ListCodeRepositoriesInput {
17977	s.MaxResults = &v
17978	return s
17979}
17980
17981// SetNameContains sets the NameContains field's value.
17982func (s *ListCodeRepositoriesInput) SetNameContains(v string) *ListCodeRepositoriesInput {
17983	s.NameContains = &v
17984	return s
17985}
17986
17987// SetNextToken sets the NextToken field's value.
17988func (s *ListCodeRepositoriesInput) SetNextToken(v string) *ListCodeRepositoriesInput {
17989	s.NextToken = &v
17990	return s
17991}
17992
17993// SetSortBy sets the SortBy field's value.
17994func (s *ListCodeRepositoriesInput) SetSortBy(v string) *ListCodeRepositoriesInput {
17995	s.SortBy = &v
17996	return s
17997}
17998
17999// SetSortOrder sets the SortOrder field's value.
18000func (s *ListCodeRepositoriesInput) SetSortOrder(v string) *ListCodeRepositoriesInput {
18001	s.SortOrder = &v
18002	return s
18003}
18004
18005type ListCodeRepositoriesOutput struct {
18006	_ struct{} `type:"structure"`
18007
18008	// Gets a list of summaries of the Git repositories. Each summary specifies
18009	// the following values for the repository:
18010	//
18011	//    * Name
18012	//
18013	//    * Amazon Resource Name (ARN)
18014	//
18015	//    * Creation time
18016	//
18017	//    * Last modified time
18018	//
18019	//    * Configuration information, including the URL location of the repository
18020	//    and the ARN of the AWS Secrets Manager secret that contains the credentials
18021	//    used to access the repository.
18022	//
18023	// CodeRepositorySummaryList is a required field
18024	CodeRepositorySummaryList []*CodeRepositorySummary `type:"list" required:"true"`
18025
18026	// If the result of a ListCodeRepositoriesOutput request was truncated, the
18027	// response includes a NextToken. To get the next set of Git repositories, use
18028	// the token in the next request.
18029	NextToken *string `type:"string"`
18030}
18031
18032// String returns the string representation
18033func (s ListCodeRepositoriesOutput) String() string {
18034	return awsutil.Prettify(s)
18035}
18036
18037// GoString returns the string representation
18038func (s ListCodeRepositoriesOutput) GoString() string {
18039	return s.String()
18040}
18041
18042// SetCodeRepositorySummaryList sets the CodeRepositorySummaryList field's value.
18043func (s *ListCodeRepositoriesOutput) SetCodeRepositorySummaryList(v []*CodeRepositorySummary) *ListCodeRepositoriesOutput {
18044	s.CodeRepositorySummaryList = v
18045	return s
18046}
18047
18048// SetNextToken sets the NextToken field's value.
18049func (s *ListCodeRepositoriesOutput) SetNextToken(v string) *ListCodeRepositoriesOutput {
18050	s.NextToken = &v
18051	return s
18052}
18053
18054type ListCompilationJobsInput struct {
18055	_ struct{} `type:"structure"`
18056
18057	// A filter that returns the model compilation jobs that were created after
18058	// a specified time.
18059	CreationTimeAfter *time.Time `type:"timestamp"`
18060
18061	// A filter that returns the model compilation jobs that were created before
18062	// a specified time.
18063	CreationTimeBefore *time.Time `type:"timestamp"`
18064
18065	// A filter that returns the model compilation jobs that were modified after
18066	// a specified time.
18067	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18068
18069	// A filter that returns the model compilation jobs that were modified before
18070	// a specified time.
18071	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18072
18073	// The maximum number of model compilation jobs to return in the response.
18074	MaxResults *int64 `min:"1" type:"integer"`
18075
18076	// A filter that returns the model compilation jobs whose name contains a specified
18077	// string.
18078	NameContains *string `type:"string"`
18079
18080	// If the result of the previous ListCompilationJobs request was truncated,
18081	// the response includes a NextToken. To retrieve the next set of model compilation
18082	// jobs, use the token in the next request.
18083	NextToken *string `type:"string"`
18084
18085	// The field by which to sort results. The default is CreationTime.
18086	SortBy *string `type:"string" enum:"ListCompilationJobsSortBy"`
18087
18088	// The sort order for results. The default is Ascending.
18089	SortOrder *string `type:"string" enum:"SortOrder"`
18090
18091	// A filter that retrieves model compilation jobs with a specific DescribeCompilationJobResponse$CompilationJobStatus
18092	// status.
18093	StatusEquals *string `type:"string" enum:"CompilationJobStatus"`
18094}
18095
18096// String returns the string representation
18097func (s ListCompilationJobsInput) String() string {
18098	return awsutil.Prettify(s)
18099}
18100
18101// GoString returns the string representation
18102func (s ListCompilationJobsInput) GoString() string {
18103	return s.String()
18104}
18105
18106// Validate inspects the fields of the type to determine if they are valid.
18107func (s *ListCompilationJobsInput) Validate() error {
18108	invalidParams := request.ErrInvalidParams{Context: "ListCompilationJobsInput"}
18109	if s.MaxResults != nil && *s.MaxResults < 1 {
18110		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18111	}
18112
18113	if invalidParams.Len() > 0 {
18114		return invalidParams
18115	}
18116	return nil
18117}
18118
18119// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18120func (s *ListCompilationJobsInput) SetCreationTimeAfter(v time.Time) *ListCompilationJobsInput {
18121	s.CreationTimeAfter = &v
18122	return s
18123}
18124
18125// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18126func (s *ListCompilationJobsInput) SetCreationTimeBefore(v time.Time) *ListCompilationJobsInput {
18127	s.CreationTimeBefore = &v
18128	return s
18129}
18130
18131// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18132func (s *ListCompilationJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListCompilationJobsInput {
18133	s.LastModifiedTimeAfter = &v
18134	return s
18135}
18136
18137// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18138func (s *ListCompilationJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListCompilationJobsInput {
18139	s.LastModifiedTimeBefore = &v
18140	return s
18141}
18142
18143// SetMaxResults sets the MaxResults field's value.
18144func (s *ListCompilationJobsInput) SetMaxResults(v int64) *ListCompilationJobsInput {
18145	s.MaxResults = &v
18146	return s
18147}
18148
18149// SetNameContains sets the NameContains field's value.
18150func (s *ListCompilationJobsInput) SetNameContains(v string) *ListCompilationJobsInput {
18151	s.NameContains = &v
18152	return s
18153}
18154
18155// SetNextToken sets the NextToken field's value.
18156func (s *ListCompilationJobsInput) SetNextToken(v string) *ListCompilationJobsInput {
18157	s.NextToken = &v
18158	return s
18159}
18160
18161// SetSortBy sets the SortBy field's value.
18162func (s *ListCompilationJobsInput) SetSortBy(v string) *ListCompilationJobsInput {
18163	s.SortBy = &v
18164	return s
18165}
18166
18167// SetSortOrder sets the SortOrder field's value.
18168func (s *ListCompilationJobsInput) SetSortOrder(v string) *ListCompilationJobsInput {
18169	s.SortOrder = &v
18170	return s
18171}
18172
18173// SetStatusEquals sets the StatusEquals field's value.
18174func (s *ListCompilationJobsInput) SetStatusEquals(v string) *ListCompilationJobsInput {
18175	s.StatusEquals = &v
18176	return s
18177}
18178
18179type ListCompilationJobsOutput struct {
18180	_ struct{} `type:"structure"`
18181
18182	// An array of CompilationJobSummary objects, each describing a model compilation
18183	// job.
18184	//
18185	// CompilationJobSummaries is a required field
18186	CompilationJobSummaries []*CompilationJobSummary `type:"list" required:"true"`
18187
18188	// If the response is truncated, Amazon SageMaker returns this NextToken. To
18189	// retrieve the next set of model compilation jobs, use this token in the next
18190	// request.
18191	NextToken *string `type:"string"`
18192}
18193
18194// String returns the string representation
18195func (s ListCompilationJobsOutput) String() string {
18196	return awsutil.Prettify(s)
18197}
18198
18199// GoString returns the string representation
18200func (s ListCompilationJobsOutput) GoString() string {
18201	return s.String()
18202}
18203
18204// SetCompilationJobSummaries sets the CompilationJobSummaries field's value.
18205func (s *ListCompilationJobsOutput) SetCompilationJobSummaries(v []*CompilationJobSummary) *ListCompilationJobsOutput {
18206	s.CompilationJobSummaries = v
18207	return s
18208}
18209
18210// SetNextToken sets the NextToken field's value.
18211func (s *ListCompilationJobsOutput) SetNextToken(v string) *ListCompilationJobsOutput {
18212	s.NextToken = &v
18213	return s
18214}
18215
18216type ListEndpointConfigsInput struct {
18217	_ struct{} `type:"structure"`
18218
18219	// A filter that returns only endpoint configurations with a creation time greater
18220	// than or equal to the specified time (timestamp).
18221	CreationTimeAfter *time.Time `type:"timestamp"`
18222
18223	// A filter that returns only endpoint configurations created before the specified
18224	// time (timestamp).
18225	CreationTimeBefore *time.Time `type:"timestamp"`
18226
18227	// The maximum number of training jobs to return in the response.
18228	MaxResults *int64 `min:"1" type:"integer"`
18229
18230	// A string in the endpoint configuration name. This filter returns only endpoint
18231	// configurations whose name contains the specified string.
18232	NameContains *string `type:"string"`
18233
18234	// If the result of the previous ListEndpointConfig request was truncated, the
18235	// response includes a NextToken. To retrieve the next set of endpoint configurations,
18236	// use the token in the next request.
18237	NextToken *string `type:"string"`
18238
18239	// The field to sort results by. The default is CreationTime.
18240	SortBy *string `type:"string" enum:"EndpointConfigSortKey"`
18241
18242	// The sort order for results. The default is Descending.
18243	SortOrder *string `type:"string" enum:"OrderKey"`
18244}
18245
18246// String returns the string representation
18247func (s ListEndpointConfigsInput) String() string {
18248	return awsutil.Prettify(s)
18249}
18250
18251// GoString returns the string representation
18252func (s ListEndpointConfigsInput) GoString() string {
18253	return s.String()
18254}
18255
18256// Validate inspects the fields of the type to determine if they are valid.
18257func (s *ListEndpointConfigsInput) Validate() error {
18258	invalidParams := request.ErrInvalidParams{Context: "ListEndpointConfigsInput"}
18259	if s.MaxResults != nil && *s.MaxResults < 1 {
18260		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18261	}
18262
18263	if invalidParams.Len() > 0 {
18264		return invalidParams
18265	}
18266	return nil
18267}
18268
18269// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18270func (s *ListEndpointConfigsInput) SetCreationTimeAfter(v time.Time) *ListEndpointConfigsInput {
18271	s.CreationTimeAfter = &v
18272	return s
18273}
18274
18275// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18276func (s *ListEndpointConfigsInput) SetCreationTimeBefore(v time.Time) *ListEndpointConfigsInput {
18277	s.CreationTimeBefore = &v
18278	return s
18279}
18280
18281// SetMaxResults sets the MaxResults field's value.
18282func (s *ListEndpointConfigsInput) SetMaxResults(v int64) *ListEndpointConfigsInput {
18283	s.MaxResults = &v
18284	return s
18285}
18286
18287// SetNameContains sets the NameContains field's value.
18288func (s *ListEndpointConfigsInput) SetNameContains(v string) *ListEndpointConfigsInput {
18289	s.NameContains = &v
18290	return s
18291}
18292
18293// SetNextToken sets the NextToken field's value.
18294func (s *ListEndpointConfigsInput) SetNextToken(v string) *ListEndpointConfigsInput {
18295	s.NextToken = &v
18296	return s
18297}
18298
18299// SetSortBy sets the SortBy field's value.
18300func (s *ListEndpointConfigsInput) SetSortBy(v string) *ListEndpointConfigsInput {
18301	s.SortBy = &v
18302	return s
18303}
18304
18305// SetSortOrder sets the SortOrder field's value.
18306func (s *ListEndpointConfigsInput) SetSortOrder(v string) *ListEndpointConfigsInput {
18307	s.SortOrder = &v
18308	return s
18309}
18310
18311type ListEndpointConfigsOutput struct {
18312	_ struct{} `type:"structure"`
18313
18314	// An array of endpoint configurations.
18315	//
18316	// EndpointConfigs is a required field
18317	EndpointConfigs []*EndpointConfigSummary `type:"list" required:"true"`
18318
18319	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18320	// the next set of endpoint configurations, use it in the subsequent request
18321	NextToken *string `type:"string"`
18322}
18323
18324// String returns the string representation
18325func (s ListEndpointConfigsOutput) String() string {
18326	return awsutil.Prettify(s)
18327}
18328
18329// GoString returns the string representation
18330func (s ListEndpointConfigsOutput) GoString() string {
18331	return s.String()
18332}
18333
18334// SetEndpointConfigs sets the EndpointConfigs field's value.
18335func (s *ListEndpointConfigsOutput) SetEndpointConfigs(v []*EndpointConfigSummary) *ListEndpointConfigsOutput {
18336	s.EndpointConfigs = v
18337	return s
18338}
18339
18340// SetNextToken sets the NextToken field's value.
18341func (s *ListEndpointConfigsOutput) SetNextToken(v string) *ListEndpointConfigsOutput {
18342	s.NextToken = &v
18343	return s
18344}
18345
18346type ListEndpointsInput struct {
18347	_ struct{} `type:"structure"`
18348
18349	// A filter that returns only endpoints with a creation time greater than or
18350	// equal to the specified time (timestamp).
18351	CreationTimeAfter *time.Time `type:"timestamp"`
18352
18353	// A filter that returns only endpoints that were created before the specified
18354	// time (timestamp).
18355	CreationTimeBefore *time.Time `type:"timestamp"`
18356
18357	// A filter that returns only endpoints that were modified after the specified
18358	// timestamp.
18359	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18360
18361	// A filter that returns only endpoints that were modified before the specified
18362	// timestamp.
18363	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18364
18365	// The maximum number of endpoints to return in the response.
18366	MaxResults *int64 `min:"1" type:"integer"`
18367
18368	// A string in endpoint names. This filter returns only endpoints whose name
18369	// contains the specified string.
18370	NameContains *string `type:"string"`
18371
18372	// If the result of a ListEndpoints request was truncated, the response includes
18373	// a NextToken. To retrieve the next set of endpoints, use the token in the
18374	// next request.
18375	NextToken *string `type:"string"`
18376
18377	// Sorts the list of results. The default is CreationTime.
18378	SortBy *string `type:"string" enum:"EndpointSortKey"`
18379
18380	// The sort order for results. The default is Descending.
18381	SortOrder *string `type:"string" enum:"OrderKey"`
18382
18383	// A filter that returns only endpoints with the specified status.
18384	StatusEquals *string `type:"string" enum:"EndpointStatus"`
18385}
18386
18387// String returns the string representation
18388func (s ListEndpointsInput) String() string {
18389	return awsutil.Prettify(s)
18390}
18391
18392// GoString returns the string representation
18393func (s ListEndpointsInput) GoString() string {
18394	return s.String()
18395}
18396
18397// Validate inspects the fields of the type to determine if they are valid.
18398func (s *ListEndpointsInput) Validate() error {
18399	invalidParams := request.ErrInvalidParams{Context: "ListEndpointsInput"}
18400	if s.MaxResults != nil && *s.MaxResults < 1 {
18401		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18402	}
18403
18404	if invalidParams.Len() > 0 {
18405		return invalidParams
18406	}
18407	return nil
18408}
18409
18410// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18411func (s *ListEndpointsInput) SetCreationTimeAfter(v time.Time) *ListEndpointsInput {
18412	s.CreationTimeAfter = &v
18413	return s
18414}
18415
18416// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18417func (s *ListEndpointsInput) SetCreationTimeBefore(v time.Time) *ListEndpointsInput {
18418	s.CreationTimeBefore = &v
18419	return s
18420}
18421
18422// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18423func (s *ListEndpointsInput) SetLastModifiedTimeAfter(v time.Time) *ListEndpointsInput {
18424	s.LastModifiedTimeAfter = &v
18425	return s
18426}
18427
18428// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18429func (s *ListEndpointsInput) SetLastModifiedTimeBefore(v time.Time) *ListEndpointsInput {
18430	s.LastModifiedTimeBefore = &v
18431	return s
18432}
18433
18434// SetMaxResults sets the MaxResults field's value.
18435func (s *ListEndpointsInput) SetMaxResults(v int64) *ListEndpointsInput {
18436	s.MaxResults = &v
18437	return s
18438}
18439
18440// SetNameContains sets the NameContains field's value.
18441func (s *ListEndpointsInput) SetNameContains(v string) *ListEndpointsInput {
18442	s.NameContains = &v
18443	return s
18444}
18445
18446// SetNextToken sets the NextToken field's value.
18447func (s *ListEndpointsInput) SetNextToken(v string) *ListEndpointsInput {
18448	s.NextToken = &v
18449	return s
18450}
18451
18452// SetSortBy sets the SortBy field's value.
18453func (s *ListEndpointsInput) SetSortBy(v string) *ListEndpointsInput {
18454	s.SortBy = &v
18455	return s
18456}
18457
18458// SetSortOrder sets the SortOrder field's value.
18459func (s *ListEndpointsInput) SetSortOrder(v string) *ListEndpointsInput {
18460	s.SortOrder = &v
18461	return s
18462}
18463
18464// SetStatusEquals sets the StatusEquals field's value.
18465func (s *ListEndpointsInput) SetStatusEquals(v string) *ListEndpointsInput {
18466	s.StatusEquals = &v
18467	return s
18468}
18469
18470type ListEndpointsOutput struct {
18471	_ struct{} `type:"structure"`
18472
18473	// An array or endpoint objects.
18474	//
18475	// Endpoints is a required field
18476	Endpoints []*EndpointSummary `type:"list" required:"true"`
18477
18478	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18479	// the next set of training jobs, use it in the subsequent request.
18480	NextToken *string `type:"string"`
18481}
18482
18483// String returns the string representation
18484func (s ListEndpointsOutput) String() string {
18485	return awsutil.Prettify(s)
18486}
18487
18488// GoString returns the string representation
18489func (s ListEndpointsOutput) GoString() string {
18490	return s.String()
18491}
18492
18493// SetEndpoints sets the Endpoints field's value.
18494func (s *ListEndpointsOutput) SetEndpoints(v []*EndpointSummary) *ListEndpointsOutput {
18495	s.Endpoints = v
18496	return s
18497}
18498
18499// SetNextToken sets the NextToken field's value.
18500func (s *ListEndpointsOutput) SetNextToken(v string) *ListEndpointsOutput {
18501	s.NextToken = &v
18502	return s
18503}
18504
18505type ListHyperParameterTuningJobsInput struct {
18506	_ struct{} `type:"structure"`
18507
18508	// A filter that returns only tuning jobs that were created after the specified
18509	// time.
18510	CreationTimeAfter *time.Time `type:"timestamp"`
18511
18512	// A filter that returns only tuning jobs that were created before the specified
18513	// time.
18514	CreationTimeBefore *time.Time `type:"timestamp"`
18515
18516	// A filter that returns only tuning jobs that were modified after the specified
18517	// time.
18518	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18519
18520	// A filter that returns only tuning jobs that were modified before the specified
18521	// time.
18522	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18523
18524	// The maximum number of tuning jobs to return. The default value is 10.
18525	MaxResults *int64 `min:"1" type:"integer"`
18526
18527	// A string in the tuning job name. This filter returns only tuning jobs whose
18528	// name contains the specified string.
18529	NameContains *string `type:"string"`
18530
18531	// If the result of the previous ListHyperParameterTuningJobs request was truncated,
18532	// the response includes a NextToken. To retrieve the next set of tuning jobs,
18533	// use the token in the next request.
18534	NextToken *string `type:"string"`
18535
18536	// The field to sort results by. The default is Name.
18537	SortBy *string `type:"string" enum:"HyperParameterTuningJobSortByOptions"`
18538
18539	// The sort order for results. The default is Ascending.
18540	SortOrder *string `type:"string" enum:"SortOrder"`
18541
18542	// A filter that returns only tuning jobs with the specified status.
18543	StatusEquals *string `type:"string" enum:"HyperParameterTuningJobStatus"`
18544}
18545
18546// String returns the string representation
18547func (s ListHyperParameterTuningJobsInput) String() string {
18548	return awsutil.Prettify(s)
18549}
18550
18551// GoString returns the string representation
18552func (s ListHyperParameterTuningJobsInput) GoString() string {
18553	return s.String()
18554}
18555
18556// Validate inspects the fields of the type to determine if they are valid.
18557func (s *ListHyperParameterTuningJobsInput) Validate() error {
18558	invalidParams := request.ErrInvalidParams{Context: "ListHyperParameterTuningJobsInput"}
18559	if s.MaxResults != nil && *s.MaxResults < 1 {
18560		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18561	}
18562
18563	if invalidParams.Len() > 0 {
18564		return invalidParams
18565	}
18566	return nil
18567}
18568
18569// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18570func (s *ListHyperParameterTuningJobsInput) SetCreationTimeAfter(v time.Time) *ListHyperParameterTuningJobsInput {
18571	s.CreationTimeAfter = &v
18572	return s
18573}
18574
18575// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18576func (s *ListHyperParameterTuningJobsInput) SetCreationTimeBefore(v time.Time) *ListHyperParameterTuningJobsInput {
18577	s.CreationTimeBefore = &v
18578	return s
18579}
18580
18581// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18582func (s *ListHyperParameterTuningJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListHyperParameterTuningJobsInput {
18583	s.LastModifiedTimeAfter = &v
18584	return s
18585}
18586
18587// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18588func (s *ListHyperParameterTuningJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListHyperParameterTuningJobsInput {
18589	s.LastModifiedTimeBefore = &v
18590	return s
18591}
18592
18593// SetMaxResults sets the MaxResults field's value.
18594func (s *ListHyperParameterTuningJobsInput) SetMaxResults(v int64) *ListHyperParameterTuningJobsInput {
18595	s.MaxResults = &v
18596	return s
18597}
18598
18599// SetNameContains sets the NameContains field's value.
18600func (s *ListHyperParameterTuningJobsInput) SetNameContains(v string) *ListHyperParameterTuningJobsInput {
18601	s.NameContains = &v
18602	return s
18603}
18604
18605// SetNextToken sets the NextToken field's value.
18606func (s *ListHyperParameterTuningJobsInput) SetNextToken(v string) *ListHyperParameterTuningJobsInput {
18607	s.NextToken = &v
18608	return s
18609}
18610
18611// SetSortBy sets the SortBy field's value.
18612func (s *ListHyperParameterTuningJobsInput) SetSortBy(v string) *ListHyperParameterTuningJobsInput {
18613	s.SortBy = &v
18614	return s
18615}
18616
18617// SetSortOrder sets the SortOrder field's value.
18618func (s *ListHyperParameterTuningJobsInput) SetSortOrder(v string) *ListHyperParameterTuningJobsInput {
18619	s.SortOrder = &v
18620	return s
18621}
18622
18623// SetStatusEquals sets the StatusEquals field's value.
18624func (s *ListHyperParameterTuningJobsInput) SetStatusEquals(v string) *ListHyperParameterTuningJobsInput {
18625	s.StatusEquals = &v
18626	return s
18627}
18628
18629type ListHyperParameterTuningJobsOutput struct {
18630	_ struct{} `type:"structure"`
18631
18632	// A list of HyperParameterTuningJobSummary objects that describe the tuning
18633	// jobs that the ListHyperParameterTuningJobs request returned.
18634	//
18635	// HyperParameterTuningJobSummaries is a required field
18636	HyperParameterTuningJobSummaries []*HyperParameterTuningJobSummary `type:"list" required:"true"`
18637
18638	// If the result of this ListHyperParameterTuningJobs request was truncated,
18639	// the response includes a NextToken. To retrieve the next set of tuning jobs,
18640	// use the token in the next request.
18641	NextToken *string `type:"string"`
18642}
18643
18644// String returns the string representation
18645func (s ListHyperParameterTuningJobsOutput) String() string {
18646	return awsutil.Prettify(s)
18647}
18648
18649// GoString returns the string representation
18650func (s ListHyperParameterTuningJobsOutput) GoString() string {
18651	return s.String()
18652}
18653
18654// SetHyperParameterTuningJobSummaries sets the HyperParameterTuningJobSummaries field's value.
18655func (s *ListHyperParameterTuningJobsOutput) SetHyperParameterTuningJobSummaries(v []*HyperParameterTuningJobSummary) *ListHyperParameterTuningJobsOutput {
18656	s.HyperParameterTuningJobSummaries = v
18657	return s
18658}
18659
18660// SetNextToken sets the NextToken field's value.
18661func (s *ListHyperParameterTuningJobsOutput) SetNextToken(v string) *ListHyperParameterTuningJobsOutput {
18662	s.NextToken = &v
18663	return s
18664}
18665
18666type ListLabelingJobsForWorkteamInput struct {
18667	_ struct{} `type:"structure"`
18668
18669	// A filter that returns only labeling jobs created after the specified time
18670	// (timestamp).
18671	CreationTimeAfter *time.Time `type:"timestamp"`
18672
18673	// A filter that returns only labeling jobs created before the specified time
18674	// (timestamp).
18675	CreationTimeBefore *time.Time `type:"timestamp"`
18676
18677	// A filter the limits jobs to only the ones whose job reference code contains
18678	// the specified string.
18679	JobReferenceCodeContains *string `min:"1" type:"string"`
18680
18681	// The maximum number of labeling jobs to return in each page of the response.
18682	MaxResults *int64 `min:"1" type:"integer"`
18683
18684	// If the result of the previous ListLabelingJobsForWorkteam request was truncated,
18685	// the response includes a NextToken. To retrieve the next set of labeling jobs,
18686	// use the token in the next request.
18687	NextToken *string `type:"string"`
18688
18689	// The field to sort results by. The default is CreationTime.
18690	SortBy *string `type:"string" enum:"ListLabelingJobsForWorkteamSortByOptions"`
18691
18692	// The sort order for results. The default is Ascending.
18693	SortOrder *string `type:"string" enum:"SortOrder"`
18694
18695	// The Amazon Resource Name (ARN) of the work team for which you want to see
18696	// labeling jobs for.
18697	//
18698	// WorkteamArn is a required field
18699	WorkteamArn *string `type:"string" required:"true"`
18700}
18701
18702// String returns the string representation
18703func (s ListLabelingJobsForWorkteamInput) String() string {
18704	return awsutil.Prettify(s)
18705}
18706
18707// GoString returns the string representation
18708func (s ListLabelingJobsForWorkteamInput) GoString() string {
18709	return s.String()
18710}
18711
18712// Validate inspects the fields of the type to determine if they are valid.
18713func (s *ListLabelingJobsForWorkteamInput) Validate() error {
18714	invalidParams := request.ErrInvalidParams{Context: "ListLabelingJobsForWorkteamInput"}
18715	if s.JobReferenceCodeContains != nil && len(*s.JobReferenceCodeContains) < 1 {
18716		invalidParams.Add(request.NewErrParamMinLen("JobReferenceCodeContains", 1))
18717	}
18718	if s.MaxResults != nil && *s.MaxResults < 1 {
18719		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18720	}
18721	if s.WorkteamArn == nil {
18722		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
18723	}
18724
18725	if invalidParams.Len() > 0 {
18726		return invalidParams
18727	}
18728	return nil
18729}
18730
18731// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18732func (s *ListLabelingJobsForWorkteamInput) SetCreationTimeAfter(v time.Time) *ListLabelingJobsForWorkteamInput {
18733	s.CreationTimeAfter = &v
18734	return s
18735}
18736
18737// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18738func (s *ListLabelingJobsForWorkteamInput) SetCreationTimeBefore(v time.Time) *ListLabelingJobsForWorkteamInput {
18739	s.CreationTimeBefore = &v
18740	return s
18741}
18742
18743// SetJobReferenceCodeContains sets the JobReferenceCodeContains field's value.
18744func (s *ListLabelingJobsForWorkteamInput) SetJobReferenceCodeContains(v string) *ListLabelingJobsForWorkteamInput {
18745	s.JobReferenceCodeContains = &v
18746	return s
18747}
18748
18749// SetMaxResults sets the MaxResults field's value.
18750func (s *ListLabelingJobsForWorkteamInput) SetMaxResults(v int64) *ListLabelingJobsForWorkteamInput {
18751	s.MaxResults = &v
18752	return s
18753}
18754
18755// SetNextToken sets the NextToken field's value.
18756func (s *ListLabelingJobsForWorkteamInput) SetNextToken(v string) *ListLabelingJobsForWorkteamInput {
18757	s.NextToken = &v
18758	return s
18759}
18760
18761// SetSortBy sets the SortBy field's value.
18762func (s *ListLabelingJobsForWorkteamInput) SetSortBy(v string) *ListLabelingJobsForWorkteamInput {
18763	s.SortBy = &v
18764	return s
18765}
18766
18767// SetSortOrder sets the SortOrder field's value.
18768func (s *ListLabelingJobsForWorkteamInput) SetSortOrder(v string) *ListLabelingJobsForWorkteamInput {
18769	s.SortOrder = &v
18770	return s
18771}
18772
18773// SetWorkteamArn sets the WorkteamArn field's value.
18774func (s *ListLabelingJobsForWorkteamInput) SetWorkteamArn(v string) *ListLabelingJobsForWorkteamInput {
18775	s.WorkteamArn = &v
18776	return s
18777}
18778
18779type ListLabelingJobsForWorkteamOutput struct {
18780	_ struct{} `type:"structure"`
18781
18782	// An array of LabelingJobSummary objects, each describing a labeling job.
18783	//
18784	// LabelingJobSummaryList is a required field
18785	LabelingJobSummaryList []*LabelingJobForWorkteamSummary `type:"list" required:"true"`
18786
18787	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18788	// the next set of labeling jobs, use it in the subsequent request.
18789	NextToken *string `type:"string"`
18790}
18791
18792// String returns the string representation
18793func (s ListLabelingJobsForWorkteamOutput) String() string {
18794	return awsutil.Prettify(s)
18795}
18796
18797// GoString returns the string representation
18798func (s ListLabelingJobsForWorkteamOutput) GoString() string {
18799	return s.String()
18800}
18801
18802// SetLabelingJobSummaryList sets the LabelingJobSummaryList field's value.
18803func (s *ListLabelingJobsForWorkteamOutput) SetLabelingJobSummaryList(v []*LabelingJobForWorkteamSummary) *ListLabelingJobsForWorkteamOutput {
18804	s.LabelingJobSummaryList = v
18805	return s
18806}
18807
18808// SetNextToken sets the NextToken field's value.
18809func (s *ListLabelingJobsForWorkteamOutput) SetNextToken(v string) *ListLabelingJobsForWorkteamOutput {
18810	s.NextToken = &v
18811	return s
18812}
18813
18814type ListLabelingJobsInput struct {
18815	_ struct{} `type:"structure"`
18816
18817	// A filter that returns only labeling jobs created after the specified time
18818	// (timestamp).
18819	CreationTimeAfter *time.Time `type:"timestamp"`
18820
18821	// A filter that returns only labeling jobs created before the specified time
18822	// (timestamp).
18823	CreationTimeBefore *time.Time `type:"timestamp"`
18824
18825	// A filter that returns only labeling jobs modified after the specified time
18826	// (timestamp).
18827	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18828
18829	// A filter that returns only labeling jobs modified before the specified time
18830	// (timestamp).
18831	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18832
18833	// The maximum number of labeling jobs to return in each page of the response.
18834	MaxResults *int64 `min:"1" type:"integer"`
18835
18836	// A string in the labeling job name. This filter returns only labeling jobs
18837	// whose name contains the specified string.
18838	NameContains *string `type:"string"`
18839
18840	// If the result of the previous ListLabelingJobs request was truncated, the
18841	// response includes a NextToken. To retrieve the next set of labeling jobs,
18842	// use the token in the next request.
18843	NextToken *string `type:"string"`
18844
18845	// The field to sort results by. The default is CreationTime.
18846	SortBy *string `type:"string" enum:"SortBy"`
18847
18848	// The sort order for results. The default is Ascending.
18849	SortOrder *string `type:"string" enum:"SortOrder"`
18850
18851	// A filter that retrieves only labeling jobs with a specific status.
18852	StatusEquals *string `type:"string" enum:"LabelingJobStatus"`
18853}
18854
18855// String returns the string representation
18856func (s ListLabelingJobsInput) String() string {
18857	return awsutil.Prettify(s)
18858}
18859
18860// GoString returns the string representation
18861func (s ListLabelingJobsInput) GoString() string {
18862	return s.String()
18863}
18864
18865// Validate inspects the fields of the type to determine if they are valid.
18866func (s *ListLabelingJobsInput) Validate() error {
18867	invalidParams := request.ErrInvalidParams{Context: "ListLabelingJobsInput"}
18868	if s.MaxResults != nil && *s.MaxResults < 1 {
18869		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18870	}
18871
18872	if invalidParams.Len() > 0 {
18873		return invalidParams
18874	}
18875	return nil
18876}
18877
18878// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18879func (s *ListLabelingJobsInput) SetCreationTimeAfter(v time.Time) *ListLabelingJobsInput {
18880	s.CreationTimeAfter = &v
18881	return s
18882}
18883
18884// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18885func (s *ListLabelingJobsInput) SetCreationTimeBefore(v time.Time) *ListLabelingJobsInput {
18886	s.CreationTimeBefore = &v
18887	return s
18888}
18889
18890// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18891func (s *ListLabelingJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListLabelingJobsInput {
18892	s.LastModifiedTimeAfter = &v
18893	return s
18894}
18895
18896// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18897func (s *ListLabelingJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListLabelingJobsInput {
18898	s.LastModifiedTimeBefore = &v
18899	return s
18900}
18901
18902// SetMaxResults sets the MaxResults field's value.
18903func (s *ListLabelingJobsInput) SetMaxResults(v int64) *ListLabelingJobsInput {
18904	s.MaxResults = &v
18905	return s
18906}
18907
18908// SetNameContains sets the NameContains field's value.
18909func (s *ListLabelingJobsInput) SetNameContains(v string) *ListLabelingJobsInput {
18910	s.NameContains = &v
18911	return s
18912}
18913
18914// SetNextToken sets the NextToken field's value.
18915func (s *ListLabelingJobsInput) SetNextToken(v string) *ListLabelingJobsInput {
18916	s.NextToken = &v
18917	return s
18918}
18919
18920// SetSortBy sets the SortBy field's value.
18921func (s *ListLabelingJobsInput) SetSortBy(v string) *ListLabelingJobsInput {
18922	s.SortBy = &v
18923	return s
18924}
18925
18926// SetSortOrder sets the SortOrder field's value.
18927func (s *ListLabelingJobsInput) SetSortOrder(v string) *ListLabelingJobsInput {
18928	s.SortOrder = &v
18929	return s
18930}
18931
18932// SetStatusEquals sets the StatusEquals field's value.
18933func (s *ListLabelingJobsInput) SetStatusEquals(v string) *ListLabelingJobsInput {
18934	s.StatusEquals = &v
18935	return s
18936}
18937
18938type ListLabelingJobsOutput struct {
18939	_ struct{} `type:"structure"`
18940
18941	// An array of LabelingJobSummary objects, each describing a labeling job.
18942	LabelingJobSummaryList []*LabelingJobSummary `type:"list"`
18943
18944	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18945	// the next set of labeling jobs, use it in the subsequent request.
18946	NextToken *string `type:"string"`
18947}
18948
18949// String returns the string representation
18950func (s ListLabelingJobsOutput) String() string {
18951	return awsutil.Prettify(s)
18952}
18953
18954// GoString returns the string representation
18955func (s ListLabelingJobsOutput) GoString() string {
18956	return s.String()
18957}
18958
18959// SetLabelingJobSummaryList sets the LabelingJobSummaryList field's value.
18960func (s *ListLabelingJobsOutput) SetLabelingJobSummaryList(v []*LabelingJobSummary) *ListLabelingJobsOutput {
18961	s.LabelingJobSummaryList = v
18962	return s
18963}
18964
18965// SetNextToken sets the NextToken field's value.
18966func (s *ListLabelingJobsOutput) SetNextToken(v string) *ListLabelingJobsOutput {
18967	s.NextToken = &v
18968	return s
18969}
18970
18971type ListModelPackagesInput struct {
18972	_ struct{} `type:"structure"`
18973
18974	// A filter that returns only model packages created after the specified time
18975	// (timestamp).
18976	CreationTimeAfter *time.Time `type:"timestamp"`
18977
18978	// A filter that returns only model packages created before the specified time
18979	// (timestamp).
18980	CreationTimeBefore *time.Time `type:"timestamp"`
18981
18982	// The maximum number of model packages to return in the response.
18983	MaxResults *int64 `min:"1" type:"integer"`
18984
18985	// A string in the model package name. This filter returns only model packages
18986	// whose name contains the specified string.
18987	NameContains *string `type:"string"`
18988
18989	// If the response to a previous ListModelPackages request was truncated, the
18990	// response includes a NextToken. To retrieve the next set of model packages,
18991	// use the token in the next request.
18992	NextToken *string `type:"string"`
18993
18994	// The parameter by which to sort the results. The default is CreationTime.
18995	SortBy *string `type:"string" enum:"ModelPackageSortBy"`
18996
18997	// The sort order for the results. The default is Ascending.
18998	SortOrder *string `type:"string" enum:"SortOrder"`
18999}
19000
19001// String returns the string representation
19002func (s ListModelPackagesInput) String() string {
19003	return awsutil.Prettify(s)
19004}
19005
19006// GoString returns the string representation
19007func (s ListModelPackagesInput) GoString() string {
19008	return s.String()
19009}
19010
19011// Validate inspects the fields of the type to determine if they are valid.
19012func (s *ListModelPackagesInput) Validate() error {
19013	invalidParams := request.ErrInvalidParams{Context: "ListModelPackagesInput"}
19014	if s.MaxResults != nil && *s.MaxResults < 1 {
19015		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19016	}
19017
19018	if invalidParams.Len() > 0 {
19019		return invalidParams
19020	}
19021	return nil
19022}
19023
19024// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19025func (s *ListModelPackagesInput) SetCreationTimeAfter(v time.Time) *ListModelPackagesInput {
19026	s.CreationTimeAfter = &v
19027	return s
19028}
19029
19030// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19031func (s *ListModelPackagesInput) SetCreationTimeBefore(v time.Time) *ListModelPackagesInput {
19032	s.CreationTimeBefore = &v
19033	return s
19034}
19035
19036// SetMaxResults sets the MaxResults field's value.
19037func (s *ListModelPackagesInput) SetMaxResults(v int64) *ListModelPackagesInput {
19038	s.MaxResults = &v
19039	return s
19040}
19041
19042// SetNameContains sets the NameContains field's value.
19043func (s *ListModelPackagesInput) SetNameContains(v string) *ListModelPackagesInput {
19044	s.NameContains = &v
19045	return s
19046}
19047
19048// SetNextToken sets the NextToken field's value.
19049func (s *ListModelPackagesInput) SetNextToken(v string) *ListModelPackagesInput {
19050	s.NextToken = &v
19051	return s
19052}
19053
19054// SetSortBy sets the SortBy field's value.
19055func (s *ListModelPackagesInput) SetSortBy(v string) *ListModelPackagesInput {
19056	s.SortBy = &v
19057	return s
19058}
19059
19060// SetSortOrder sets the SortOrder field's value.
19061func (s *ListModelPackagesInput) SetSortOrder(v string) *ListModelPackagesInput {
19062	s.SortOrder = &v
19063	return s
19064}
19065
19066type ListModelPackagesOutput struct {
19067	_ struct{} `type:"structure"`
19068
19069	// An array of ModelPackageSummary objects, each of which lists a model package.
19070	//
19071	// ModelPackageSummaryList is a required field
19072	ModelPackageSummaryList []*ModelPackageSummary `type:"list" required:"true"`
19073
19074	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19075	// the next set of model packages, use it in the subsequent request.
19076	NextToken *string `type:"string"`
19077}
19078
19079// String returns the string representation
19080func (s ListModelPackagesOutput) String() string {
19081	return awsutil.Prettify(s)
19082}
19083
19084// GoString returns the string representation
19085func (s ListModelPackagesOutput) GoString() string {
19086	return s.String()
19087}
19088
19089// SetModelPackageSummaryList sets the ModelPackageSummaryList field's value.
19090func (s *ListModelPackagesOutput) SetModelPackageSummaryList(v []*ModelPackageSummary) *ListModelPackagesOutput {
19091	s.ModelPackageSummaryList = v
19092	return s
19093}
19094
19095// SetNextToken sets the NextToken field's value.
19096func (s *ListModelPackagesOutput) SetNextToken(v string) *ListModelPackagesOutput {
19097	s.NextToken = &v
19098	return s
19099}
19100
19101type ListModelsInput struct {
19102	_ struct{} `type:"structure"`
19103
19104	// A filter that returns only models with a creation time greater than or equal
19105	// to the specified time (timestamp).
19106	CreationTimeAfter *time.Time `type:"timestamp"`
19107
19108	// A filter that returns only models created before the specified time (timestamp).
19109	CreationTimeBefore *time.Time `type:"timestamp"`
19110
19111	// The maximum number of models to return in the response.
19112	MaxResults *int64 `min:"1" type:"integer"`
19113
19114	// A string in the training job name. This filter returns only models in the
19115	// training job whose name contains the specified string.
19116	NameContains *string `type:"string"`
19117
19118	// If the response to a previous ListModels request was truncated, the response
19119	// includes a NextToken. To retrieve the next set of models, use the token in
19120	// the next request.
19121	NextToken *string `type:"string"`
19122
19123	// Sorts the list of results. The default is CreationTime.
19124	SortBy *string `type:"string" enum:"ModelSortKey"`
19125
19126	// The sort order for results. The default is Descending.
19127	SortOrder *string `type:"string" enum:"OrderKey"`
19128}
19129
19130// String returns the string representation
19131func (s ListModelsInput) String() string {
19132	return awsutil.Prettify(s)
19133}
19134
19135// GoString returns the string representation
19136func (s ListModelsInput) GoString() string {
19137	return s.String()
19138}
19139
19140// Validate inspects the fields of the type to determine if they are valid.
19141func (s *ListModelsInput) Validate() error {
19142	invalidParams := request.ErrInvalidParams{Context: "ListModelsInput"}
19143	if s.MaxResults != nil && *s.MaxResults < 1 {
19144		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19145	}
19146
19147	if invalidParams.Len() > 0 {
19148		return invalidParams
19149	}
19150	return nil
19151}
19152
19153// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19154func (s *ListModelsInput) SetCreationTimeAfter(v time.Time) *ListModelsInput {
19155	s.CreationTimeAfter = &v
19156	return s
19157}
19158
19159// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19160func (s *ListModelsInput) SetCreationTimeBefore(v time.Time) *ListModelsInput {
19161	s.CreationTimeBefore = &v
19162	return s
19163}
19164
19165// SetMaxResults sets the MaxResults field's value.
19166func (s *ListModelsInput) SetMaxResults(v int64) *ListModelsInput {
19167	s.MaxResults = &v
19168	return s
19169}
19170
19171// SetNameContains sets the NameContains field's value.
19172func (s *ListModelsInput) SetNameContains(v string) *ListModelsInput {
19173	s.NameContains = &v
19174	return s
19175}
19176
19177// SetNextToken sets the NextToken field's value.
19178func (s *ListModelsInput) SetNextToken(v string) *ListModelsInput {
19179	s.NextToken = &v
19180	return s
19181}
19182
19183// SetSortBy sets the SortBy field's value.
19184func (s *ListModelsInput) SetSortBy(v string) *ListModelsInput {
19185	s.SortBy = &v
19186	return s
19187}
19188
19189// SetSortOrder sets the SortOrder field's value.
19190func (s *ListModelsInput) SetSortOrder(v string) *ListModelsInput {
19191	s.SortOrder = &v
19192	return s
19193}
19194
19195type ListModelsOutput struct {
19196	_ struct{} `type:"structure"`
19197
19198	// An array of ModelSummary objects, each of which lists a model.
19199	//
19200	// Models is a required field
19201	Models []*ModelSummary `type:"list" required:"true"`
19202
19203	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19204	// the next set of models, use it in the subsequent request.
19205	NextToken *string `type:"string"`
19206}
19207
19208// String returns the string representation
19209func (s ListModelsOutput) String() string {
19210	return awsutil.Prettify(s)
19211}
19212
19213// GoString returns the string representation
19214func (s ListModelsOutput) GoString() string {
19215	return s.String()
19216}
19217
19218// SetModels sets the Models field's value.
19219func (s *ListModelsOutput) SetModels(v []*ModelSummary) *ListModelsOutput {
19220	s.Models = v
19221	return s
19222}
19223
19224// SetNextToken sets the NextToken field's value.
19225func (s *ListModelsOutput) SetNextToken(v string) *ListModelsOutput {
19226	s.NextToken = &v
19227	return s
19228}
19229
19230type ListNotebookInstanceLifecycleConfigsInput struct {
19231	_ struct{} `type:"structure"`
19232
19233	// A filter that returns only lifecycle configurations that were created after
19234	// the specified time (timestamp).
19235	CreationTimeAfter *time.Time `type:"timestamp"`
19236
19237	// A filter that returns only lifecycle configurations that were created before
19238	// the specified time (timestamp).
19239	CreationTimeBefore *time.Time `type:"timestamp"`
19240
19241	// A filter that returns only lifecycle configurations that were modified after
19242	// the specified time (timestamp).
19243	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19244
19245	// A filter that returns only lifecycle configurations that were modified before
19246	// the specified time (timestamp).
19247	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19248
19249	// The maximum number of lifecycle configurations to return in the response.
19250	MaxResults *int64 `min:"1" type:"integer"`
19251
19252	// A string in the lifecycle configuration name. This filter returns only lifecycle
19253	// configurations whose name contains the specified string.
19254	NameContains *string `type:"string"`
19255
19256	// If the result of a ListNotebookInstanceLifecycleConfigs request was truncated,
19257	// the response includes a NextToken. To get the next set of lifecycle configurations,
19258	// use the token in the next request.
19259	NextToken *string `type:"string"`
19260
19261	// Sorts the list of results. The default is CreationTime.
19262	SortBy *string `type:"string" enum:"NotebookInstanceLifecycleConfigSortKey"`
19263
19264	// The sort order for results.
19265	SortOrder *string `type:"string" enum:"NotebookInstanceLifecycleConfigSortOrder"`
19266}
19267
19268// String returns the string representation
19269func (s ListNotebookInstanceLifecycleConfigsInput) String() string {
19270	return awsutil.Prettify(s)
19271}
19272
19273// GoString returns the string representation
19274func (s ListNotebookInstanceLifecycleConfigsInput) GoString() string {
19275	return s.String()
19276}
19277
19278// Validate inspects the fields of the type to determine if they are valid.
19279func (s *ListNotebookInstanceLifecycleConfigsInput) Validate() error {
19280	invalidParams := request.ErrInvalidParams{Context: "ListNotebookInstanceLifecycleConfigsInput"}
19281	if s.MaxResults != nil && *s.MaxResults < 1 {
19282		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19283	}
19284
19285	if invalidParams.Len() > 0 {
19286		return invalidParams
19287	}
19288	return nil
19289}
19290
19291// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19292func (s *ListNotebookInstanceLifecycleConfigsInput) SetCreationTimeAfter(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19293	s.CreationTimeAfter = &v
19294	return s
19295}
19296
19297// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19298func (s *ListNotebookInstanceLifecycleConfigsInput) SetCreationTimeBefore(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19299	s.CreationTimeBefore = &v
19300	return s
19301}
19302
19303// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19304func (s *ListNotebookInstanceLifecycleConfigsInput) SetLastModifiedTimeAfter(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19305	s.LastModifiedTimeAfter = &v
19306	return s
19307}
19308
19309// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19310func (s *ListNotebookInstanceLifecycleConfigsInput) SetLastModifiedTimeBefore(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19311	s.LastModifiedTimeBefore = &v
19312	return s
19313}
19314
19315// SetMaxResults sets the MaxResults field's value.
19316func (s *ListNotebookInstanceLifecycleConfigsInput) SetMaxResults(v int64) *ListNotebookInstanceLifecycleConfigsInput {
19317	s.MaxResults = &v
19318	return s
19319}
19320
19321// SetNameContains sets the NameContains field's value.
19322func (s *ListNotebookInstanceLifecycleConfigsInput) SetNameContains(v string) *ListNotebookInstanceLifecycleConfigsInput {
19323	s.NameContains = &v
19324	return s
19325}
19326
19327// SetNextToken sets the NextToken field's value.
19328func (s *ListNotebookInstanceLifecycleConfigsInput) SetNextToken(v string) *ListNotebookInstanceLifecycleConfigsInput {
19329	s.NextToken = &v
19330	return s
19331}
19332
19333// SetSortBy sets the SortBy field's value.
19334func (s *ListNotebookInstanceLifecycleConfigsInput) SetSortBy(v string) *ListNotebookInstanceLifecycleConfigsInput {
19335	s.SortBy = &v
19336	return s
19337}
19338
19339// SetSortOrder sets the SortOrder field's value.
19340func (s *ListNotebookInstanceLifecycleConfigsInput) SetSortOrder(v string) *ListNotebookInstanceLifecycleConfigsInput {
19341	s.SortOrder = &v
19342	return s
19343}
19344
19345type ListNotebookInstanceLifecycleConfigsOutput struct {
19346	_ struct{} `type:"structure"`
19347
19348	// If the response is truncated, Amazon SageMaker returns this token. To get
19349	// the next set of lifecycle configurations, use it in the next request.
19350	NextToken *string `type:"string"`
19351
19352	// An array of NotebookInstanceLifecycleConfiguration objects, each listing
19353	// a lifecycle configuration.
19354	NotebookInstanceLifecycleConfigs []*NotebookInstanceLifecycleConfigSummary `type:"list"`
19355}
19356
19357// String returns the string representation
19358func (s ListNotebookInstanceLifecycleConfigsOutput) String() string {
19359	return awsutil.Prettify(s)
19360}
19361
19362// GoString returns the string representation
19363func (s ListNotebookInstanceLifecycleConfigsOutput) GoString() string {
19364	return s.String()
19365}
19366
19367// SetNextToken sets the NextToken field's value.
19368func (s *ListNotebookInstanceLifecycleConfigsOutput) SetNextToken(v string) *ListNotebookInstanceLifecycleConfigsOutput {
19369	s.NextToken = &v
19370	return s
19371}
19372
19373// SetNotebookInstanceLifecycleConfigs sets the NotebookInstanceLifecycleConfigs field's value.
19374func (s *ListNotebookInstanceLifecycleConfigsOutput) SetNotebookInstanceLifecycleConfigs(v []*NotebookInstanceLifecycleConfigSummary) *ListNotebookInstanceLifecycleConfigsOutput {
19375	s.NotebookInstanceLifecycleConfigs = v
19376	return s
19377}
19378
19379type ListNotebookInstancesInput struct {
19380	_ struct{} `type:"structure"`
19381
19382	// A filter that returns only notebook instances with associated with the specified
19383	// git repository.
19384	AdditionalCodeRepositoryEquals *string `min:"1" type:"string"`
19385
19386	// A filter that returns only notebook instances that were created after the
19387	// specified time (timestamp).
19388	CreationTimeAfter *time.Time `type:"timestamp"`
19389
19390	// A filter that returns only notebook instances that were created before the
19391	// specified time (timestamp).
19392	CreationTimeBefore *time.Time `type:"timestamp"`
19393
19394	// A string in the name or URL of a Git repository associated with this notebook
19395	// instance. This filter returns only notebook instances associated with a git
19396	// repository with a name that contains the specified string.
19397	DefaultCodeRepositoryContains *string `type:"string"`
19398
19399	// A filter that returns only notebook instances that were modified after the
19400	// specified time (timestamp).
19401	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19402
19403	// A filter that returns only notebook instances that were modified before the
19404	// specified time (timestamp).
19405	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19406
19407	// The maximum number of notebook instances to return.
19408	MaxResults *int64 `min:"1" type:"integer"`
19409
19410	// A string in the notebook instances' name. This filter returns only notebook
19411	// instances whose name contains the specified string.
19412	NameContains *string `type:"string"`
19413
19414	// If the previous call to the ListNotebookInstances is truncated, the response
19415	// includes a NextToken. You can use this token in your subsequent ListNotebookInstances
19416	// request to fetch the next set of notebook instances.
19417	//
19418	// You might specify a filter or a sort order in your request. When response
19419	// is truncated, you must use the same values for the filer and sort order in
19420	// the next request.
19421	NextToken *string `type:"string"`
19422
19423	// A string in the name of a notebook instances lifecycle configuration associated
19424	// with this notebook instance. This filter returns only notebook instances
19425	// associated with a lifecycle configuration with a name that contains the specified
19426	// string.
19427	NotebookInstanceLifecycleConfigNameContains *string `type:"string"`
19428
19429	// The field to sort results by. The default is Name.
19430	SortBy *string `type:"string" enum:"NotebookInstanceSortKey"`
19431
19432	// The sort order for results.
19433	SortOrder *string `type:"string" enum:"NotebookInstanceSortOrder"`
19434
19435	// A filter that returns only notebook instances with the specified status.
19436	StatusEquals *string `type:"string" enum:"NotebookInstanceStatus"`
19437}
19438
19439// String returns the string representation
19440func (s ListNotebookInstancesInput) String() string {
19441	return awsutil.Prettify(s)
19442}
19443
19444// GoString returns the string representation
19445func (s ListNotebookInstancesInput) GoString() string {
19446	return s.String()
19447}
19448
19449// Validate inspects the fields of the type to determine if they are valid.
19450func (s *ListNotebookInstancesInput) Validate() error {
19451	invalidParams := request.ErrInvalidParams{Context: "ListNotebookInstancesInput"}
19452	if s.AdditionalCodeRepositoryEquals != nil && len(*s.AdditionalCodeRepositoryEquals) < 1 {
19453		invalidParams.Add(request.NewErrParamMinLen("AdditionalCodeRepositoryEquals", 1))
19454	}
19455	if s.MaxResults != nil && *s.MaxResults < 1 {
19456		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19457	}
19458
19459	if invalidParams.Len() > 0 {
19460		return invalidParams
19461	}
19462	return nil
19463}
19464
19465// SetAdditionalCodeRepositoryEquals sets the AdditionalCodeRepositoryEquals field's value.
19466func (s *ListNotebookInstancesInput) SetAdditionalCodeRepositoryEquals(v string) *ListNotebookInstancesInput {
19467	s.AdditionalCodeRepositoryEquals = &v
19468	return s
19469}
19470
19471// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19472func (s *ListNotebookInstancesInput) SetCreationTimeAfter(v time.Time) *ListNotebookInstancesInput {
19473	s.CreationTimeAfter = &v
19474	return s
19475}
19476
19477// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19478func (s *ListNotebookInstancesInput) SetCreationTimeBefore(v time.Time) *ListNotebookInstancesInput {
19479	s.CreationTimeBefore = &v
19480	return s
19481}
19482
19483// SetDefaultCodeRepositoryContains sets the DefaultCodeRepositoryContains field's value.
19484func (s *ListNotebookInstancesInput) SetDefaultCodeRepositoryContains(v string) *ListNotebookInstancesInput {
19485	s.DefaultCodeRepositoryContains = &v
19486	return s
19487}
19488
19489// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19490func (s *ListNotebookInstancesInput) SetLastModifiedTimeAfter(v time.Time) *ListNotebookInstancesInput {
19491	s.LastModifiedTimeAfter = &v
19492	return s
19493}
19494
19495// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19496func (s *ListNotebookInstancesInput) SetLastModifiedTimeBefore(v time.Time) *ListNotebookInstancesInput {
19497	s.LastModifiedTimeBefore = &v
19498	return s
19499}
19500
19501// SetMaxResults sets the MaxResults field's value.
19502func (s *ListNotebookInstancesInput) SetMaxResults(v int64) *ListNotebookInstancesInput {
19503	s.MaxResults = &v
19504	return s
19505}
19506
19507// SetNameContains sets the NameContains field's value.
19508func (s *ListNotebookInstancesInput) SetNameContains(v string) *ListNotebookInstancesInput {
19509	s.NameContains = &v
19510	return s
19511}
19512
19513// SetNextToken sets the NextToken field's value.
19514func (s *ListNotebookInstancesInput) SetNextToken(v string) *ListNotebookInstancesInput {
19515	s.NextToken = &v
19516	return s
19517}
19518
19519// SetNotebookInstanceLifecycleConfigNameContains sets the NotebookInstanceLifecycleConfigNameContains field's value.
19520func (s *ListNotebookInstancesInput) SetNotebookInstanceLifecycleConfigNameContains(v string) *ListNotebookInstancesInput {
19521	s.NotebookInstanceLifecycleConfigNameContains = &v
19522	return s
19523}
19524
19525// SetSortBy sets the SortBy field's value.
19526func (s *ListNotebookInstancesInput) SetSortBy(v string) *ListNotebookInstancesInput {
19527	s.SortBy = &v
19528	return s
19529}
19530
19531// SetSortOrder sets the SortOrder field's value.
19532func (s *ListNotebookInstancesInput) SetSortOrder(v string) *ListNotebookInstancesInput {
19533	s.SortOrder = &v
19534	return s
19535}
19536
19537// SetStatusEquals sets the StatusEquals field's value.
19538func (s *ListNotebookInstancesInput) SetStatusEquals(v string) *ListNotebookInstancesInput {
19539	s.StatusEquals = &v
19540	return s
19541}
19542
19543type ListNotebookInstancesOutput struct {
19544	_ struct{} `type:"structure"`
19545
19546	// If the response to the previous ListNotebookInstances request was truncated,
19547	// Amazon SageMaker returns this token. To retrieve the next set of notebook
19548	// instances, use the token in the next request.
19549	NextToken *string `type:"string"`
19550
19551	// An array of NotebookInstanceSummary objects, one for each notebook instance.
19552	NotebookInstances []*NotebookInstanceSummary `type:"list"`
19553}
19554
19555// String returns the string representation
19556func (s ListNotebookInstancesOutput) String() string {
19557	return awsutil.Prettify(s)
19558}
19559
19560// GoString returns the string representation
19561func (s ListNotebookInstancesOutput) GoString() string {
19562	return s.String()
19563}
19564
19565// SetNextToken sets the NextToken field's value.
19566func (s *ListNotebookInstancesOutput) SetNextToken(v string) *ListNotebookInstancesOutput {
19567	s.NextToken = &v
19568	return s
19569}
19570
19571// SetNotebookInstances sets the NotebookInstances field's value.
19572func (s *ListNotebookInstancesOutput) SetNotebookInstances(v []*NotebookInstanceSummary) *ListNotebookInstancesOutput {
19573	s.NotebookInstances = v
19574	return s
19575}
19576
19577type ListSubscribedWorkteamsInput struct {
19578	_ struct{} `type:"structure"`
19579
19580	// The maximum number of work teams to return in each page of the response.
19581	MaxResults *int64 `min:"1" type:"integer"`
19582
19583	// A string in the work team name. This filter returns only work teams whose
19584	// name contains the specified string.
19585	NameContains *string `min:"1" type:"string"`
19586
19587	// If the result of the previous ListSubscribedWorkteams request was truncated,
19588	// the response includes a NextToken. To retrieve the next set of labeling jobs,
19589	// use the token in the next request.
19590	NextToken *string `type:"string"`
19591}
19592
19593// String returns the string representation
19594func (s ListSubscribedWorkteamsInput) String() string {
19595	return awsutil.Prettify(s)
19596}
19597
19598// GoString returns the string representation
19599func (s ListSubscribedWorkteamsInput) GoString() string {
19600	return s.String()
19601}
19602
19603// Validate inspects the fields of the type to determine if they are valid.
19604func (s *ListSubscribedWorkteamsInput) Validate() error {
19605	invalidParams := request.ErrInvalidParams{Context: "ListSubscribedWorkteamsInput"}
19606	if s.MaxResults != nil && *s.MaxResults < 1 {
19607		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19608	}
19609	if s.NameContains != nil && len(*s.NameContains) < 1 {
19610		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
19611	}
19612
19613	if invalidParams.Len() > 0 {
19614		return invalidParams
19615	}
19616	return nil
19617}
19618
19619// SetMaxResults sets the MaxResults field's value.
19620func (s *ListSubscribedWorkteamsInput) SetMaxResults(v int64) *ListSubscribedWorkteamsInput {
19621	s.MaxResults = &v
19622	return s
19623}
19624
19625// SetNameContains sets the NameContains field's value.
19626func (s *ListSubscribedWorkteamsInput) SetNameContains(v string) *ListSubscribedWorkteamsInput {
19627	s.NameContains = &v
19628	return s
19629}
19630
19631// SetNextToken sets the NextToken field's value.
19632func (s *ListSubscribedWorkteamsInput) SetNextToken(v string) *ListSubscribedWorkteamsInput {
19633	s.NextToken = &v
19634	return s
19635}
19636
19637type ListSubscribedWorkteamsOutput struct {
19638	_ struct{} `type:"structure"`
19639
19640	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19641	// the next set of work teams, use it in the subsequent request.
19642	NextToken *string `type:"string"`
19643
19644	// An array of Workteam objects, each describing a work team.
19645	//
19646	// SubscribedWorkteams is a required field
19647	SubscribedWorkteams []*SubscribedWorkteam `type:"list" required:"true"`
19648}
19649
19650// String returns the string representation
19651func (s ListSubscribedWorkteamsOutput) String() string {
19652	return awsutil.Prettify(s)
19653}
19654
19655// GoString returns the string representation
19656func (s ListSubscribedWorkteamsOutput) GoString() string {
19657	return s.String()
19658}
19659
19660// SetNextToken sets the NextToken field's value.
19661func (s *ListSubscribedWorkteamsOutput) SetNextToken(v string) *ListSubscribedWorkteamsOutput {
19662	s.NextToken = &v
19663	return s
19664}
19665
19666// SetSubscribedWorkteams sets the SubscribedWorkteams field's value.
19667func (s *ListSubscribedWorkteamsOutput) SetSubscribedWorkteams(v []*SubscribedWorkteam) *ListSubscribedWorkteamsOutput {
19668	s.SubscribedWorkteams = v
19669	return s
19670}
19671
19672type ListTagsInput struct {
19673	_ struct{} `type:"structure"`
19674
19675	// Maximum number of tags to return.
19676	MaxResults *int64 `min:"50" type:"integer"`
19677
19678	// If the response to the previous ListTags request is truncated, Amazon SageMaker
19679	// returns this token. To retrieve the next set of tags, use it in the subsequent
19680	// request.
19681	NextToken *string `type:"string"`
19682
19683	// The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve.
19684	//
19685	// ResourceArn is a required field
19686	ResourceArn *string `type:"string" required:"true"`
19687}
19688
19689// String returns the string representation
19690func (s ListTagsInput) String() string {
19691	return awsutil.Prettify(s)
19692}
19693
19694// GoString returns the string representation
19695func (s ListTagsInput) GoString() string {
19696	return s.String()
19697}
19698
19699// Validate inspects the fields of the type to determine if they are valid.
19700func (s *ListTagsInput) Validate() error {
19701	invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
19702	if s.MaxResults != nil && *s.MaxResults < 50 {
19703		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
19704	}
19705	if s.ResourceArn == nil {
19706		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
19707	}
19708
19709	if invalidParams.Len() > 0 {
19710		return invalidParams
19711	}
19712	return nil
19713}
19714
19715// SetMaxResults sets the MaxResults field's value.
19716func (s *ListTagsInput) SetMaxResults(v int64) *ListTagsInput {
19717	s.MaxResults = &v
19718	return s
19719}
19720
19721// SetNextToken sets the NextToken field's value.
19722func (s *ListTagsInput) SetNextToken(v string) *ListTagsInput {
19723	s.NextToken = &v
19724	return s
19725}
19726
19727// SetResourceArn sets the ResourceArn field's value.
19728func (s *ListTagsInput) SetResourceArn(v string) *ListTagsInput {
19729	s.ResourceArn = &v
19730	return s
19731}
19732
19733type ListTagsOutput struct {
19734	_ struct{} `type:"structure"`
19735
19736	// If response is truncated, Amazon SageMaker includes a token in the response.
19737	// You can use this token in your subsequent request to fetch next set of tokens.
19738	NextToken *string `type:"string"`
19739
19740	// An array of Tag objects, each with a tag key and a value.
19741	Tags []*Tag `type:"list"`
19742}
19743
19744// String returns the string representation
19745func (s ListTagsOutput) String() string {
19746	return awsutil.Prettify(s)
19747}
19748
19749// GoString returns the string representation
19750func (s ListTagsOutput) GoString() string {
19751	return s.String()
19752}
19753
19754// SetNextToken sets the NextToken field's value.
19755func (s *ListTagsOutput) SetNextToken(v string) *ListTagsOutput {
19756	s.NextToken = &v
19757	return s
19758}
19759
19760// SetTags sets the Tags field's value.
19761func (s *ListTagsOutput) SetTags(v []*Tag) *ListTagsOutput {
19762	s.Tags = v
19763	return s
19764}
19765
19766type ListTrainingJobsForHyperParameterTuningJobInput struct {
19767	_ struct{} `type:"structure"`
19768
19769	// The name of the tuning job whose training jobs you want to list.
19770	//
19771	// HyperParameterTuningJobName is a required field
19772	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
19773
19774	// The maximum number of training jobs to return. The default value is 10.
19775	MaxResults *int64 `min:"1" type:"integer"`
19776
19777	// If the result of the previous ListTrainingJobsForHyperParameterTuningJob
19778	// request was truncated, the response includes a NextToken. To retrieve the
19779	// next set of training jobs, use the token in the next request.
19780	NextToken *string `type:"string"`
19781
19782	// The field to sort results by. The default is Name.
19783	//
19784	// If the value of this field is FinalObjectiveMetricValue, any training jobs
19785	// that did not return an objective metric are not listed.
19786	SortBy *string `type:"string" enum:"TrainingJobSortByOptions"`
19787
19788	// The sort order for results. The default is Ascending.
19789	SortOrder *string `type:"string" enum:"SortOrder"`
19790
19791	// A filter that returns only training jobs with the specified status.
19792	StatusEquals *string `type:"string" enum:"TrainingJobStatus"`
19793}
19794
19795// String returns the string representation
19796func (s ListTrainingJobsForHyperParameterTuningJobInput) String() string {
19797	return awsutil.Prettify(s)
19798}
19799
19800// GoString returns the string representation
19801func (s ListTrainingJobsForHyperParameterTuningJobInput) GoString() string {
19802	return s.String()
19803}
19804
19805// Validate inspects the fields of the type to determine if they are valid.
19806func (s *ListTrainingJobsForHyperParameterTuningJobInput) Validate() error {
19807	invalidParams := request.ErrInvalidParams{Context: "ListTrainingJobsForHyperParameterTuningJobInput"}
19808	if s.HyperParameterTuningJobName == nil {
19809		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
19810	}
19811	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
19812		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
19813	}
19814	if s.MaxResults != nil && *s.MaxResults < 1 {
19815		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19816	}
19817
19818	if invalidParams.Len() > 0 {
19819		return invalidParams
19820	}
19821	return nil
19822}
19823
19824// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
19825func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19826	s.HyperParameterTuningJobName = &v
19827	return s
19828}
19829
19830// SetMaxResults sets the MaxResults field's value.
19831func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetMaxResults(v int64) *ListTrainingJobsForHyperParameterTuningJobInput {
19832	s.MaxResults = &v
19833	return s
19834}
19835
19836// SetNextToken sets the NextToken field's value.
19837func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetNextToken(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19838	s.NextToken = &v
19839	return s
19840}
19841
19842// SetSortBy sets the SortBy field's value.
19843func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetSortBy(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19844	s.SortBy = &v
19845	return s
19846}
19847
19848// SetSortOrder sets the SortOrder field's value.
19849func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetSortOrder(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19850	s.SortOrder = &v
19851	return s
19852}
19853
19854// SetStatusEquals sets the StatusEquals field's value.
19855func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetStatusEquals(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19856	s.StatusEquals = &v
19857	return s
19858}
19859
19860type ListTrainingJobsForHyperParameterTuningJobOutput struct {
19861	_ struct{} `type:"structure"`
19862
19863	// If the result of this ListTrainingJobsForHyperParameterTuningJob request
19864	// was truncated, the response includes a NextToken. To retrieve the next set
19865	// of training jobs, use the token in the next request.
19866	NextToken *string `type:"string"`
19867
19868	// A list of TrainingJobSummary objects that describe the training jobs that
19869	// the ListTrainingJobsForHyperParameterTuningJob request returned.
19870	//
19871	// TrainingJobSummaries is a required field
19872	TrainingJobSummaries []*HyperParameterTrainingJobSummary `type:"list" required:"true"`
19873}
19874
19875// String returns the string representation
19876func (s ListTrainingJobsForHyperParameterTuningJobOutput) String() string {
19877	return awsutil.Prettify(s)
19878}
19879
19880// GoString returns the string representation
19881func (s ListTrainingJobsForHyperParameterTuningJobOutput) GoString() string {
19882	return s.String()
19883}
19884
19885// SetNextToken sets the NextToken field's value.
19886func (s *ListTrainingJobsForHyperParameterTuningJobOutput) SetNextToken(v string) *ListTrainingJobsForHyperParameterTuningJobOutput {
19887	s.NextToken = &v
19888	return s
19889}
19890
19891// SetTrainingJobSummaries sets the TrainingJobSummaries field's value.
19892func (s *ListTrainingJobsForHyperParameterTuningJobOutput) SetTrainingJobSummaries(v []*HyperParameterTrainingJobSummary) *ListTrainingJobsForHyperParameterTuningJobOutput {
19893	s.TrainingJobSummaries = v
19894	return s
19895}
19896
19897type ListTrainingJobsInput struct {
19898	_ struct{} `type:"structure"`
19899
19900	// A filter that returns only training jobs created after the specified time
19901	// (timestamp).
19902	CreationTimeAfter *time.Time `type:"timestamp"`
19903
19904	// A filter that returns only training jobs created before the specified time
19905	// (timestamp).
19906	CreationTimeBefore *time.Time `type:"timestamp"`
19907
19908	// A filter that returns only training jobs modified after the specified time
19909	// (timestamp).
19910	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19911
19912	// A filter that returns only training jobs modified before the specified time
19913	// (timestamp).
19914	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19915
19916	// The maximum number of training jobs to return in the response.
19917	MaxResults *int64 `min:"1" type:"integer"`
19918
19919	// A string in the training job name. This filter returns only training jobs
19920	// whose name contains the specified string.
19921	NameContains *string `type:"string"`
19922
19923	// If the result of the previous ListTrainingJobs request was truncated, the
19924	// response includes a NextToken. To retrieve the next set of training jobs,
19925	// use the token in the next request.
19926	NextToken *string `type:"string"`
19927
19928	// The field to sort results by. The default is CreationTime.
19929	SortBy *string `type:"string" enum:"SortBy"`
19930
19931	// The sort order for results. The default is Ascending.
19932	SortOrder *string `type:"string" enum:"SortOrder"`
19933
19934	// A filter that retrieves only training jobs with a specific status.
19935	StatusEquals *string `type:"string" enum:"TrainingJobStatus"`
19936}
19937
19938// String returns the string representation
19939func (s ListTrainingJobsInput) String() string {
19940	return awsutil.Prettify(s)
19941}
19942
19943// GoString returns the string representation
19944func (s ListTrainingJobsInput) GoString() string {
19945	return s.String()
19946}
19947
19948// Validate inspects the fields of the type to determine if they are valid.
19949func (s *ListTrainingJobsInput) Validate() error {
19950	invalidParams := request.ErrInvalidParams{Context: "ListTrainingJobsInput"}
19951	if s.MaxResults != nil && *s.MaxResults < 1 {
19952		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19953	}
19954
19955	if invalidParams.Len() > 0 {
19956		return invalidParams
19957	}
19958	return nil
19959}
19960
19961// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19962func (s *ListTrainingJobsInput) SetCreationTimeAfter(v time.Time) *ListTrainingJobsInput {
19963	s.CreationTimeAfter = &v
19964	return s
19965}
19966
19967// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19968func (s *ListTrainingJobsInput) SetCreationTimeBefore(v time.Time) *ListTrainingJobsInput {
19969	s.CreationTimeBefore = &v
19970	return s
19971}
19972
19973// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19974func (s *ListTrainingJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListTrainingJobsInput {
19975	s.LastModifiedTimeAfter = &v
19976	return s
19977}
19978
19979// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19980func (s *ListTrainingJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListTrainingJobsInput {
19981	s.LastModifiedTimeBefore = &v
19982	return s
19983}
19984
19985// SetMaxResults sets the MaxResults field's value.
19986func (s *ListTrainingJobsInput) SetMaxResults(v int64) *ListTrainingJobsInput {
19987	s.MaxResults = &v
19988	return s
19989}
19990
19991// SetNameContains sets the NameContains field's value.
19992func (s *ListTrainingJobsInput) SetNameContains(v string) *ListTrainingJobsInput {
19993	s.NameContains = &v
19994	return s
19995}
19996
19997// SetNextToken sets the NextToken field's value.
19998func (s *ListTrainingJobsInput) SetNextToken(v string) *ListTrainingJobsInput {
19999	s.NextToken = &v
20000	return s
20001}
20002
20003// SetSortBy sets the SortBy field's value.
20004func (s *ListTrainingJobsInput) SetSortBy(v string) *ListTrainingJobsInput {
20005	s.SortBy = &v
20006	return s
20007}
20008
20009// SetSortOrder sets the SortOrder field's value.
20010func (s *ListTrainingJobsInput) SetSortOrder(v string) *ListTrainingJobsInput {
20011	s.SortOrder = &v
20012	return s
20013}
20014
20015// SetStatusEquals sets the StatusEquals field's value.
20016func (s *ListTrainingJobsInput) SetStatusEquals(v string) *ListTrainingJobsInput {
20017	s.StatusEquals = &v
20018	return s
20019}
20020
20021type ListTrainingJobsOutput struct {
20022	_ struct{} `type:"structure"`
20023
20024	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20025	// the next set of training jobs, use it in the subsequent request.
20026	NextToken *string `type:"string"`
20027
20028	// An array of TrainingJobSummary objects, each listing a training job.
20029	//
20030	// TrainingJobSummaries is a required field
20031	TrainingJobSummaries []*TrainingJobSummary `type:"list" required:"true"`
20032}
20033
20034// String returns the string representation
20035func (s ListTrainingJobsOutput) String() string {
20036	return awsutil.Prettify(s)
20037}
20038
20039// GoString returns the string representation
20040func (s ListTrainingJobsOutput) GoString() string {
20041	return s.String()
20042}
20043
20044// SetNextToken sets the NextToken field's value.
20045func (s *ListTrainingJobsOutput) SetNextToken(v string) *ListTrainingJobsOutput {
20046	s.NextToken = &v
20047	return s
20048}
20049
20050// SetTrainingJobSummaries sets the TrainingJobSummaries field's value.
20051func (s *ListTrainingJobsOutput) SetTrainingJobSummaries(v []*TrainingJobSummary) *ListTrainingJobsOutput {
20052	s.TrainingJobSummaries = v
20053	return s
20054}
20055
20056type ListTransformJobsInput struct {
20057	_ struct{} `type:"structure"`
20058
20059	// A filter that returns only transform jobs created after the specified time.
20060	CreationTimeAfter *time.Time `type:"timestamp"`
20061
20062	// A filter that returns only transform jobs created before the specified time.
20063	CreationTimeBefore *time.Time `type:"timestamp"`
20064
20065	// A filter that returns only transform jobs modified after the specified time.
20066	LastModifiedTimeAfter *time.Time `type:"timestamp"`
20067
20068	// A filter that returns only transform jobs modified before the specified time.
20069	LastModifiedTimeBefore *time.Time `type:"timestamp"`
20070
20071	// The maximum number of transform jobs to return in the response. The default
20072	// value is 10.
20073	MaxResults *int64 `min:"1" type:"integer"`
20074
20075	// A string in the transform job name. This filter returns only transform jobs
20076	// whose name contains the specified string.
20077	NameContains *string `type:"string"`
20078
20079	// If the result of the previous ListTransformJobs request was truncated, the
20080	// response includes a NextToken. To retrieve the next set of transform jobs,
20081	// use the token in the next request.
20082	NextToken *string `type:"string"`
20083
20084	// The field to sort results by. The default is CreationTime.
20085	SortBy *string `type:"string" enum:"SortBy"`
20086
20087	// The sort order for results. The default is Descending.
20088	SortOrder *string `type:"string" enum:"SortOrder"`
20089
20090	// A filter that retrieves only transform jobs with a specific status.
20091	StatusEquals *string `type:"string" enum:"TransformJobStatus"`
20092}
20093
20094// String returns the string representation
20095func (s ListTransformJobsInput) String() string {
20096	return awsutil.Prettify(s)
20097}
20098
20099// GoString returns the string representation
20100func (s ListTransformJobsInput) GoString() string {
20101	return s.String()
20102}
20103
20104// Validate inspects the fields of the type to determine if they are valid.
20105func (s *ListTransformJobsInput) Validate() error {
20106	invalidParams := request.ErrInvalidParams{Context: "ListTransformJobsInput"}
20107	if s.MaxResults != nil && *s.MaxResults < 1 {
20108		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
20109	}
20110
20111	if invalidParams.Len() > 0 {
20112		return invalidParams
20113	}
20114	return nil
20115}
20116
20117// SetCreationTimeAfter sets the CreationTimeAfter field's value.
20118func (s *ListTransformJobsInput) SetCreationTimeAfter(v time.Time) *ListTransformJobsInput {
20119	s.CreationTimeAfter = &v
20120	return s
20121}
20122
20123// SetCreationTimeBefore sets the CreationTimeBefore field's value.
20124func (s *ListTransformJobsInput) SetCreationTimeBefore(v time.Time) *ListTransformJobsInput {
20125	s.CreationTimeBefore = &v
20126	return s
20127}
20128
20129// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
20130func (s *ListTransformJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListTransformJobsInput {
20131	s.LastModifiedTimeAfter = &v
20132	return s
20133}
20134
20135// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
20136func (s *ListTransformJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListTransformJobsInput {
20137	s.LastModifiedTimeBefore = &v
20138	return s
20139}
20140
20141// SetMaxResults sets the MaxResults field's value.
20142func (s *ListTransformJobsInput) SetMaxResults(v int64) *ListTransformJobsInput {
20143	s.MaxResults = &v
20144	return s
20145}
20146
20147// SetNameContains sets the NameContains field's value.
20148func (s *ListTransformJobsInput) SetNameContains(v string) *ListTransformJobsInput {
20149	s.NameContains = &v
20150	return s
20151}
20152
20153// SetNextToken sets the NextToken field's value.
20154func (s *ListTransformJobsInput) SetNextToken(v string) *ListTransformJobsInput {
20155	s.NextToken = &v
20156	return s
20157}
20158
20159// SetSortBy sets the SortBy field's value.
20160func (s *ListTransformJobsInput) SetSortBy(v string) *ListTransformJobsInput {
20161	s.SortBy = &v
20162	return s
20163}
20164
20165// SetSortOrder sets the SortOrder field's value.
20166func (s *ListTransformJobsInput) SetSortOrder(v string) *ListTransformJobsInput {
20167	s.SortOrder = &v
20168	return s
20169}
20170
20171// SetStatusEquals sets the StatusEquals field's value.
20172func (s *ListTransformJobsInput) SetStatusEquals(v string) *ListTransformJobsInput {
20173	s.StatusEquals = &v
20174	return s
20175}
20176
20177type ListTransformJobsOutput struct {
20178	_ struct{} `type:"structure"`
20179
20180	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20181	// the next set of transform jobs, use it in the next request.
20182	NextToken *string `type:"string"`
20183
20184	// An array of TransformJobSummary objects.
20185	//
20186	// TransformJobSummaries is a required field
20187	TransformJobSummaries []*TransformJobSummary `type:"list" required:"true"`
20188}
20189
20190// String returns the string representation
20191func (s ListTransformJobsOutput) String() string {
20192	return awsutil.Prettify(s)
20193}
20194
20195// GoString returns the string representation
20196func (s ListTransformJobsOutput) GoString() string {
20197	return s.String()
20198}
20199
20200// SetNextToken sets the NextToken field's value.
20201func (s *ListTransformJobsOutput) SetNextToken(v string) *ListTransformJobsOutput {
20202	s.NextToken = &v
20203	return s
20204}
20205
20206// SetTransformJobSummaries sets the TransformJobSummaries field's value.
20207func (s *ListTransformJobsOutput) SetTransformJobSummaries(v []*TransformJobSummary) *ListTransformJobsOutput {
20208	s.TransformJobSummaries = v
20209	return s
20210}
20211
20212type ListWorkteamsInput struct {
20213	_ struct{} `type:"structure"`
20214
20215	// The maximum number of work teams to return in each page of the response.
20216	MaxResults *int64 `min:"1" type:"integer"`
20217
20218	// A string in the work team's name. This filter returns only work teams whose
20219	// name contains the specified string.
20220	NameContains *string `min:"1" type:"string"`
20221
20222	// If the result of the previous ListWorkteams request was truncated, the response
20223	// includes a NextToken. To retrieve the next set of labeling jobs, use the
20224	// token in the next request.
20225	NextToken *string `type:"string"`
20226
20227	// The field to sort results by. The default is CreationTime.
20228	SortBy *string `type:"string" enum:"ListWorkteamsSortByOptions"`
20229
20230	// The sort order for results. The default is Ascending.
20231	SortOrder *string `type:"string" enum:"SortOrder"`
20232}
20233
20234// String returns the string representation
20235func (s ListWorkteamsInput) String() string {
20236	return awsutil.Prettify(s)
20237}
20238
20239// GoString returns the string representation
20240func (s ListWorkteamsInput) GoString() string {
20241	return s.String()
20242}
20243
20244// Validate inspects the fields of the type to determine if they are valid.
20245func (s *ListWorkteamsInput) Validate() error {
20246	invalidParams := request.ErrInvalidParams{Context: "ListWorkteamsInput"}
20247	if s.MaxResults != nil && *s.MaxResults < 1 {
20248		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
20249	}
20250	if s.NameContains != nil && len(*s.NameContains) < 1 {
20251		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
20252	}
20253
20254	if invalidParams.Len() > 0 {
20255		return invalidParams
20256	}
20257	return nil
20258}
20259
20260// SetMaxResults sets the MaxResults field's value.
20261func (s *ListWorkteamsInput) SetMaxResults(v int64) *ListWorkteamsInput {
20262	s.MaxResults = &v
20263	return s
20264}
20265
20266// SetNameContains sets the NameContains field's value.
20267func (s *ListWorkteamsInput) SetNameContains(v string) *ListWorkteamsInput {
20268	s.NameContains = &v
20269	return s
20270}
20271
20272// SetNextToken sets the NextToken field's value.
20273func (s *ListWorkteamsInput) SetNextToken(v string) *ListWorkteamsInput {
20274	s.NextToken = &v
20275	return s
20276}
20277
20278// SetSortBy sets the SortBy field's value.
20279func (s *ListWorkteamsInput) SetSortBy(v string) *ListWorkteamsInput {
20280	s.SortBy = &v
20281	return s
20282}
20283
20284// SetSortOrder sets the SortOrder field's value.
20285func (s *ListWorkteamsInput) SetSortOrder(v string) *ListWorkteamsInput {
20286	s.SortOrder = &v
20287	return s
20288}
20289
20290type ListWorkteamsOutput struct {
20291	_ struct{} `type:"structure"`
20292
20293	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20294	// the next set of work teams, use it in the subsequent request.
20295	NextToken *string `type:"string"`
20296
20297	// An array of Workteam objects, each describing a work team.
20298	//
20299	// Workteams is a required field
20300	Workteams []*Workteam `type:"list" required:"true"`
20301}
20302
20303// String returns the string representation
20304func (s ListWorkteamsOutput) String() string {
20305	return awsutil.Prettify(s)
20306}
20307
20308// GoString returns the string representation
20309func (s ListWorkteamsOutput) GoString() string {
20310	return s.String()
20311}
20312
20313// SetNextToken sets the NextToken field's value.
20314func (s *ListWorkteamsOutput) SetNextToken(v string) *ListWorkteamsOutput {
20315	s.NextToken = &v
20316	return s
20317}
20318
20319// SetWorkteams sets the Workteams field's value.
20320func (s *ListWorkteamsOutput) SetWorkteams(v []*Workteam) *ListWorkteamsOutput {
20321	s.Workteams = v
20322	return s
20323}
20324
20325// Defines the Amazon Cognito user group that is part of a work team.
20326type MemberDefinition struct {
20327	_ struct{} `type:"structure"`
20328
20329	// The Amazon Cognito user group that is part of the work team.
20330	CognitoMemberDefinition *CognitoMemberDefinition `type:"structure"`
20331}
20332
20333// String returns the string representation
20334func (s MemberDefinition) String() string {
20335	return awsutil.Prettify(s)
20336}
20337
20338// GoString returns the string representation
20339func (s MemberDefinition) GoString() string {
20340	return s.String()
20341}
20342
20343// Validate inspects the fields of the type to determine if they are valid.
20344func (s *MemberDefinition) Validate() error {
20345	invalidParams := request.ErrInvalidParams{Context: "MemberDefinition"}
20346	if s.CognitoMemberDefinition != nil {
20347		if err := s.CognitoMemberDefinition.Validate(); err != nil {
20348			invalidParams.AddNested("CognitoMemberDefinition", err.(request.ErrInvalidParams))
20349		}
20350	}
20351
20352	if invalidParams.Len() > 0 {
20353		return invalidParams
20354	}
20355	return nil
20356}
20357
20358// SetCognitoMemberDefinition sets the CognitoMemberDefinition field's value.
20359func (s *MemberDefinition) SetCognitoMemberDefinition(v *CognitoMemberDefinition) *MemberDefinition {
20360	s.CognitoMemberDefinition = v
20361	return s
20362}
20363
20364// The name, value, and date and time of a metric that was emitted to Amazon
20365// CloudWatch.
20366type MetricData struct {
20367	_ struct{} `type:"structure"`
20368
20369	// The name of the metric.
20370	MetricName *string `min:"1" type:"string"`
20371
20372	// The date and time that the algorithm emitted the metric.
20373	Timestamp *time.Time `type:"timestamp"`
20374
20375	// The value of the metric.
20376	Value *float64 `type:"float"`
20377}
20378
20379// String returns the string representation
20380func (s MetricData) String() string {
20381	return awsutil.Prettify(s)
20382}
20383
20384// GoString returns the string representation
20385func (s MetricData) GoString() string {
20386	return s.String()
20387}
20388
20389// SetMetricName sets the MetricName field's value.
20390func (s *MetricData) SetMetricName(v string) *MetricData {
20391	s.MetricName = &v
20392	return s
20393}
20394
20395// SetTimestamp sets the Timestamp field's value.
20396func (s *MetricData) SetTimestamp(v time.Time) *MetricData {
20397	s.Timestamp = &v
20398	return s
20399}
20400
20401// SetValue sets the Value field's value.
20402func (s *MetricData) SetValue(v float64) *MetricData {
20403	s.Value = &v
20404	return s
20405}
20406
20407// Specifies a metric that the training algorithm writes to stderr or stdout
20408// . Amazon SageMakerhyperparameter tuning captures all defined metrics. You
20409// specify one metric that a hyperparameter tuning job uses as its objective
20410// metric to choose the best training job.
20411type MetricDefinition struct {
20412	_ struct{} `type:"structure"`
20413
20414	// The name of the metric.
20415	//
20416	// Name is a required field
20417	Name *string `min:"1" type:"string" required:"true"`
20418
20419	// A regular expression that searches the output of a training job and gets
20420	// the value of the metric. For more information about using regular expressions
20421	// to define metrics, see Defining Objective Metrics (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html).
20422	//
20423	// Regex is a required field
20424	Regex *string `min:"1" type:"string" required:"true"`
20425}
20426
20427// String returns the string representation
20428func (s MetricDefinition) String() string {
20429	return awsutil.Prettify(s)
20430}
20431
20432// GoString returns the string representation
20433func (s MetricDefinition) GoString() string {
20434	return s.String()
20435}
20436
20437// Validate inspects the fields of the type to determine if they are valid.
20438func (s *MetricDefinition) Validate() error {
20439	invalidParams := request.ErrInvalidParams{Context: "MetricDefinition"}
20440	if s.Name == nil {
20441		invalidParams.Add(request.NewErrParamRequired("Name"))
20442	}
20443	if s.Name != nil && len(*s.Name) < 1 {
20444		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
20445	}
20446	if s.Regex == nil {
20447		invalidParams.Add(request.NewErrParamRequired("Regex"))
20448	}
20449	if s.Regex != nil && len(*s.Regex) < 1 {
20450		invalidParams.Add(request.NewErrParamMinLen("Regex", 1))
20451	}
20452
20453	if invalidParams.Len() > 0 {
20454		return invalidParams
20455	}
20456	return nil
20457}
20458
20459// SetName sets the Name field's value.
20460func (s *MetricDefinition) SetName(v string) *MetricDefinition {
20461	s.Name = &v
20462	return s
20463}
20464
20465// SetRegex sets the Regex field's value.
20466func (s *MetricDefinition) SetRegex(v string) *MetricDefinition {
20467	s.Regex = &v
20468	return s
20469}
20470
20471// Provides information about the location that is configured for storing model
20472// artifacts.
20473type ModelArtifacts struct {
20474	_ struct{} `type:"structure"`
20475
20476	// The path of the S3 object that contains the model artifacts. For example,
20477	// s3://bucket-name/keynameprefix/model.tar.gz.
20478	//
20479	// S3ModelArtifacts is a required field
20480	S3ModelArtifacts *string `type:"string" required:"true"`
20481}
20482
20483// String returns the string representation
20484func (s ModelArtifacts) String() string {
20485	return awsutil.Prettify(s)
20486}
20487
20488// GoString returns the string representation
20489func (s ModelArtifacts) GoString() string {
20490	return s.String()
20491}
20492
20493// SetS3ModelArtifacts sets the S3ModelArtifacts field's value.
20494func (s *ModelArtifacts) SetS3ModelArtifacts(v string) *ModelArtifacts {
20495	s.S3ModelArtifacts = &v
20496	return s
20497}
20498
20499// Describes the Docker container for the model package.
20500type ModelPackageContainerDefinition struct {
20501	_ struct{} `type:"structure"`
20502
20503	// The DNS host name for the Docker container.
20504	ContainerHostname *string `type:"string"`
20505
20506	// The Amazon EC2 Container Registry (Amazon ECR) path where inference code
20507	// is stored.
20508	//
20509	// If you are using your own custom algorithm instead of an algorithm provided
20510	// by Amazon SageMaker, the inference code must meet Amazon SageMaker requirements.
20511	// Amazon SageMaker supports both registry/repository[:tag] and registry/repository[@digest]
20512	// image path formats. For more information, see Using Your Own Algorithms with
20513	// Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
20514	//
20515	// Image is a required field
20516	Image *string `type:"string" required:"true"`
20517
20518	// An MD5 hash of the training algorithm that identifies the Docker image used
20519	// for training.
20520	ImageDigest *string `type:"string"`
20521
20522	// The Amazon S3 path where the model artifacts, which result from model training,
20523	// are stored. This path must point to a single gzip compressed tar archive
20524	// (.tar.gz suffix).
20525	ModelDataUrl *string `type:"string"`
20526
20527	// The AWS Marketplace product ID of the model package.
20528	ProductId *string `type:"string"`
20529}
20530
20531// String returns the string representation
20532func (s ModelPackageContainerDefinition) String() string {
20533	return awsutil.Prettify(s)
20534}
20535
20536// GoString returns the string representation
20537func (s ModelPackageContainerDefinition) GoString() string {
20538	return s.String()
20539}
20540
20541// Validate inspects the fields of the type to determine if they are valid.
20542func (s *ModelPackageContainerDefinition) Validate() error {
20543	invalidParams := request.ErrInvalidParams{Context: "ModelPackageContainerDefinition"}
20544	if s.Image == nil {
20545		invalidParams.Add(request.NewErrParamRequired("Image"))
20546	}
20547
20548	if invalidParams.Len() > 0 {
20549		return invalidParams
20550	}
20551	return nil
20552}
20553
20554// SetContainerHostname sets the ContainerHostname field's value.
20555func (s *ModelPackageContainerDefinition) SetContainerHostname(v string) *ModelPackageContainerDefinition {
20556	s.ContainerHostname = &v
20557	return s
20558}
20559
20560// SetImage sets the Image field's value.
20561func (s *ModelPackageContainerDefinition) SetImage(v string) *ModelPackageContainerDefinition {
20562	s.Image = &v
20563	return s
20564}
20565
20566// SetImageDigest sets the ImageDigest field's value.
20567func (s *ModelPackageContainerDefinition) SetImageDigest(v string) *ModelPackageContainerDefinition {
20568	s.ImageDigest = &v
20569	return s
20570}
20571
20572// SetModelDataUrl sets the ModelDataUrl field's value.
20573func (s *ModelPackageContainerDefinition) SetModelDataUrl(v string) *ModelPackageContainerDefinition {
20574	s.ModelDataUrl = &v
20575	return s
20576}
20577
20578// SetProductId sets the ProductId field's value.
20579func (s *ModelPackageContainerDefinition) SetProductId(v string) *ModelPackageContainerDefinition {
20580	s.ProductId = &v
20581	return s
20582}
20583
20584// Specifies the validation and image scan statuses of the model package.
20585type ModelPackageStatusDetails struct {
20586	_ struct{} `type:"structure"`
20587
20588	// The status of the scan of the Docker image container for the model package.
20589	ImageScanStatuses []*ModelPackageStatusItem `type:"list"`
20590
20591	// The validation status of the model package.
20592	//
20593	// ValidationStatuses is a required field
20594	ValidationStatuses []*ModelPackageStatusItem `type:"list" required:"true"`
20595}
20596
20597// String returns the string representation
20598func (s ModelPackageStatusDetails) String() string {
20599	return awsutil.Prettify(s)
20600}
20601
20602// GoString returns the string representation
20603func (s ModelPackageStatusDetails) GoString() string {
20604	return s.String()
20605}
20606
20607// SetImageScanStatuses sets the ImageScanStatuses field's value.
20608func (s *ModelPackageStatusDetails) SetImageScanStatuses(v []*ModelPackageStatusItem) *ModelPackageStatusDetails {
20609	s.ImageScanStatuses = v
20610	return s
20611}
20612
20613// SetValidationStatuses sets the ValidationStatuses field's value.
20614func (s *ModelPackageStatusDetails) SetValidationStatuses(v []*ModelPackageStatusItem) *ModelPackageStatusDetails {
20615	s.ValidationStatuses = v
20616	return s
20617}
20618
20619// Represents the overall status of a model package.
20620type ModelPackageStatusItem struct {
20621	_ struct{} `type:"structure"`
20622
20623	// if the overall status is Failed, the reason for the failure.
20624	FailureReason *string `type:"string"`
20625
20626	// The name of the model package for which the overall status is being reported.
20627	//
20628	// Name is a required field
20629	Name *string `min:"1" type:"string" required:"true"`
20630
20631	// The current status.
20632	//
20633	// Status is a required field
20634	Status *string `type:"string" required:"true" enum:"DetailedModelPackageStatus"`
20635}
20636
20637// String returns the string representation
20638func (s ModelPackageStatusItem) String() string {
20639	return awsutil.Prettify(s)
20640}
20641
20642// GoString returns the string representation
20643func (s ModelPackageStatusItem) GoString() string {
20644	return s.String()
20645}
20646
20647// SetFailureReason sets the FailureReason field's value.
20648func (s *ModelPackageStatusItem) SetFailureReason(v string) *ModelPackageStatusItem {
20649	s.FailureReason = &v
20650	return s
20651}
20652
20653// SetName sets the Name field's value.
20654func (s *ModelPackageStatusItem) SetName(v string) *ModelPackageStatusItem {
20655	s.Name = &v
20656	return s
20657}
20658
20659// SetStatus sets the Status field's value.
20660func (s *ModelPackageStatusItem) SetStatus(v string) *ModelPackageStatusItem {
20661	s.Status = &v
20662	return s
20663}
20664
20665// Provides summary information about a model package.
20666type ModelPackageSummary struct {
20667	_ struct{} `type:"structure"`
20668
20669	// A timestamp that shows when the model package was created.
20670	//
20671	// CreationTime is a required field
20672	CreationTime *time.Time `type:"timestamp" required:"true"`
20673
20674	// The Amazon Resource Name (ARN) of the model package.
20675	//
20676	// ModelPackageArn is a required field
20677	ModelPackageArn *string `min:"1" type:"string" required:"true"`
20678
20679	// A brief description of the model package.
20680	ModelPackageDescription *string `type:"string"`
20681
20682	// The name of the model package.
20683	//
20684	// ModelPackageName is a required field
20685	ModelPackageName *string `min:"1" type:"string" required:"true"`
20686
20687	// The overall status of the model package.
20688	//
20689	// ModelPackageStatus is a required field
20690	ModelPackageStatus *string `type:"string" required:"true" enum:"ModelPackageStatus"`
20691}
20692
20693// String returns the string representation
20694func (s ModelPackageSummary) String() string {
20695	return awsutil.Prettify(s)
20696}
20697
20698// GoString returns the string representation
20699func (s ModelPackageSummary) GoString() string {
20700	return s.String()
20701}
20702
20703// SetCreationTime sets the CreationTime field's value.
20704func (s *ModelPackageSummary) SetCreationTime(v time.Time) *ModelPackageSummary {
20705	s.CreationTime = &v
20706	return s
20707}
20708
20709// SetModelPackageArn sets the ModelPackageArn field's value.
20710func (s *ModelPackageSummary) SetModelPackageArn(v string) *ModelPackageSummary {
20711	s.ModelPackageArn = &v
20712	return s
20713}
20714
20715// SetModelPackageDescription sets the ModelPackageDescription field's value.
20716func (s *ModelPackageSummary) SetModelPackageDescription(v string) *ModelPackageSummary {
20717	s.ModelPackageDescription = &v
20718	return s
20719}
20720
20721// SetModelPackageName sets the ModelPackageName field's value.
20722func (s *ModelPackageSummary) SetModelPackageName(v string) *ModelPackageSummary {
20723	s.ModelPackageName = &v
20724	return s
20725}
20726
20727// SetModelPackageStatus sets the ModelPackageStatus field's value.
20728func (s *ModelPackageSummary) SetModelPackageStatus(v string) *ModelPackageSummary {
20729	s.ModelPackageStatus = &v
20730	return s
20731}
20732
20733// Contains data, such as the inputs and targeted instance types that are used
20734// in the process of validating the model package.
20735//
20736// The data provided in the validation profile is made available to your buyers
20737// on AWS Marketplace.
20738type ModelPackageValidationProfile struct {
20739	_ struct{} `type:"structure"`
20740
20741	// The name of the profile for the model package.
20742	//
20743	// ProfileName is a required field
20744	ProfileName *string `min:"1" type:"string" required:"true"`
20745
20746	// The TransformJobDefinition object that describes the transform job used for
20747	// the validation of the model package.
20748	//
20749	// TransformJobDefinition is a required field
20750	TransformJobDefinition *TransformJobDefinition `type:"structure" required:"true"`
20751}
20752
20753// String returns the string representation
20754func (s ModelPackageValidationProfile) String() string {
20755	return awsutil.Prettify(s)
20756}
20757
20758// GoString returns the string representation
20759func (s ModelPackageValidationProfile) GoString() string {
20760	return s.String()
20761}
20762
20763// Validate inspects the fields of the type to determine if they are valid.
20764func (s *ModelPackageValidationProfile) Validate() error {
20765	invalidParams := request.ErrInvalidParams{Context: "ModelPackageValidationProfile"}
20766	if s.ProfileName == nil {
20767		invalidParams.Add(request.NewErrParamRequired("ProfileName"))
20768	}
20769	if s.ProfileName != nil && len(*s.ProfileName) < 1 {
20770		invalidParams.Add(request.NewErrParamMinLen("ProfileName", 1))
20771	}
20772	if s.TransformJobDefinition == nil {
20773		invalidParams.Add(request.NewErrParamRequired("TransformJobDefinition"))
20774	}
20775	if s.TransformJobDefinition != nil {
20776		if err := s.TransformJobDefinition.Validate(); err != nil {
20777			invalidParams.AddNested("TransformJobDefinition", err.(request.ErrInvalidParams))
20778		}
20779	}
20780
20781	if invalidParams.Len() > 0 {
20782		return invalidParams
20783	}
20784	return nil
20785}
20786
20787// SetProfileName sets the ProfileName field's value.
20788func (s *ModelPackageValidationProfile) SetProfileName(v string) *ModelPackageValidationProfile {
20789	s.ProfileName = &v
20790	return s
20791}
20792
20793// SetTransformJobDefinition sets the TransformJobDefinition field's value.
20794func (s *ModelPackageValidationProfile) SetTransformJobDefinition(v *TransformJobDefinition) *ModelPackageValidationProfile {
20795	s.TransformJobDefinition = v
20796	return s
20797}
20798
20799// Specifies batch transform jobs that Amazon SageMaker runs to validate your
20800// model package.
20801type ModelPackageValidationSpecification struct {
20802	_ struct{} `type:"structure"`
20803
20804	// An array of ModelPackageValidationProfile objects, each of which specifies
20805	// a batch transform job that Amazon SageMaker runs to validate your model package.
20806	//
20807	// ValidationProfiles is a required field
20808	ValidationProfiles []*ModelPackageValidationProfile `min:"1" type:"list" required:"true"`
20809
20810	// The IAM roles to be used for the validation of the model package.
20811	//
20812	// ValidationRole is a required field
20813	ValidationRole *string `min:"20" type:"string" required:"true"`
20814}
20815
20816// String returns the string representation
20817func (s ModelPackageValidationSpecification) String() string {
20818	return awsutil.Prettify(s)
20819}
20820
20821// GoString returns the string representation
20822func (s ModelPackageValidationSpecification) GoString() string {
20823	return s.String()
20824}
20825
20826// Validate inspects the fields of the type to determine if they are valid.
20827func (s *ModelPackageValidationSpecification) Validate() error {
20828	invalidParams := request.ErrInvalidParams{Context: "ModelPackageValidationSpecification"}
20829	if s.ValidationProfiles == nil {
20830		invalidParams.Add(request.NewErrParamRequired("ValidationProfiles"))
20831	}
20832	if s.ValidationProfiles != nil && len(s.ValidationProfiles) < 1 {
20833		invalidParams.Add(request.NewErrParamMinLen("ValidationProfiles", 1))
20834	}
20835	if s.ValidationRole == nil {
20836		invalidParams.Add(request.NewErrParamRequired("ValidationRole"))
20837	}
20838	if s.ValidationRole != nil && len(*s.ValidationRole) < 20 {
20839		invalidParams.Add(request.NewErrParamMinLen("ValidationRole", 20))
20840	}
20841	if s.ValidationProfiles != nil {
20842		for i, v := range s.ValidationProfiles {
20843			if v == nil {
20844				continue
20845			}
20846			if err := v.Validate(); err != nil {
20847				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ValidationProfiles", i), err.(request.ErrInvalidParams))
20848			}
20849		}
20850	}
20851
20852	if invalidParams.Len() > 0 {
20853		return invalidParams
20854	}
20855	return nil
20856}
20857
20858// SetValidationProfiles sets the ValidationProfiles field's value.
20859func (s *ModelPackageValidationSpecification) SetValidationProfiles(v []*ModelPackageValidationProfile) *ModelPackageValidationSpecification {
20860	s.ValidationProfiles = v
20861	return s
20862}
20863
20864// SetValidationRole sets the ValidationRole field's value.
20865func (s *ModelPackageValidationSpecification) SetValidationRole(v string) *ModelPackageValidationSpecification {
20866	s.ValidationRole = &v
20867	return s
20868}
20869
20870// Provides summary information about a model.
20871type ModelSummary struct {
20872	_ struct{} `type:"structure"`
20873
20874	// A timestamp that indicates when the model was created.
20875	//
20876	// CreationTime is a required field
20877	CreationTime *time.Time `type:"timestamp" required:"true"`
20878
20879	// The Amazon Resource Name (ARN) of the model.
20880	//
20881	// ModelArn is a required field
20882	ModelArn *string `min:"20" type:"string" required:"true"`
20883
20884	// The name of the model that you want a summary for.
20885	//
20886	// ModelName is a required field
20887	ModelName *string `type:"string" required:"true"`
20888}
20889
20890// String returns the string representation
20891func (s ModelSummary) String() string {
20892	return awsutil.Prettify(s)
20893}
20894
20895// GoString returns the string representation
20896func (s ModelSummary) GoString() string {
20897	return s.String()
20898}
20899
20900// SetCreationTime sets the CreationTime field's value.
20901func (s *ModelSummary) SetCreationTime(v time.Time) *ModelSummary {
20902	s.CreationTime = &v
20903	return s
20904}
20905
20906// SetModelArn sets the ModelArn field's value.
20907func (s *ModelSummary) SetModelArn(v string) *ModelSummary {
20908	s.ModelArn = &v
20909	return s
20910}
20911
20912// SetModelName sets the ModelName field's value.
20913func (s *ModelSummary) SetModelName(v string) *ModelSummary {
20914	s.ModelName = &v
20915	return s
20916}
20917
20918// Defines a list of NestedFilters objects. To satisfy the conditions specified
20919// in the NestedFilters call, a resource must satisfy the conditions of all
20920// of the filters.
20921//
20922// For example, you could define a NestedFilters using the training job's InputDataConfig
20923// property to filter on Channel objects.
20924//
20925// A NestedFilters object contains multiple filters. For example, to find all
20926// training jobs whose name contains train and that have cat/data in their S3Uri
20927// (specified in InputDataConfig), you need to create a NestedFilters object
20928// that specifies the InputDataConfig property with the following Filter objects:
20929//
20930//    * '{Name:"InputDataConfig.ChannelName", "Operator":"EQUALS", "Value":"train"}',
20931//
20932//    * '{Name:"InputDataConfig.DataSource.S3DataSource.S3Uri", "Operator":"CONTAINS",
20933//    "Value":"cat/data"}'
20934type NestedFilters struct {
20935	_ struct{} `type:"structure"`
20936
20937	// A list of filters. Each filter acts on a property. Filters must contain at
20938	// least one Filters value. For example, a NestedFilters call might include
20939	// a filter on the PropertyName parameter of the InputDataConfig property: InputDataConfig.DataSource.S3DataSource.S3Uri.
20940	//
20941	// Filters is a required field
20942	Filters []*Filter `min:"1" type:"list" required:"true"`
20943
20944	// The name of the property to use in the nested filters. The value must match
20945	// a listed property name, such as InputDataConfig .
20946	//
20947	// NestedPropertyName is a required field
20948	NestedPropertyName *string `min:"1" type:"string" required:"true"`
20949}
20950
20951// String returns the string representation
20952func (s NestedFilters) String() string {
20953	return awsutil.Prettify(s)
20954}
20955
20956// GoString returns the string representation
20957func (s NestedFilters) GoString() string {
20958	return s.String()
20959}
20960
20961// Validate inspects the fields of the type to determine if they are valid.
20962func (s *NestedFilters) Validate() error {
20963	invalidParams := request.ErrInvalidParams{Context: "NestedFilters"}
20964	if s.Filters == nil {
20965		invalidParams.Add(request.NewErrParamRequired("Filters"))
20966	}
20967	if s.Filters != nil && len(s.Filters) < 1 {
20968		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
20969	}
20970	if s.NestedPropertyName == nil {
20971		invalidParams.Add(request.NewErrParamRequired("NestedPropertyName"))
20972	}
20973	if s.NestedPropertyName != nil && len(*s.NestedPropertyName) < 1 {
20974		invalidParams.Add(request.NewErrParamMinLen("NestedPropertyName", 1))
20975	}
20976	if s.Filters != nil {
20977		for i, v := range s.Filters {
20978			if v == nil {
20979				continue
20980			}
20981			if err := v.Validate(); err != nil {
20982				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
20983			}
20984		}
20985	}
20986
20987	if invalidParams.Len() > 0 {
20988		return invalidParams
20989	}
20990	return nil
20991}
20992
20993// SetFilters sets the Filters field's value.
20994func (s *NestedFilters) SetFilters(v []*Filter) *NestedFilters {
20995	s.Filters = v
20996	return s
20997}
20998
20999// SetNestedPropertyName sets the NestedPropertyName field's value.
21000func (s *NestedFilters) SetNestedPropertyName(v string) *NestedFilters {
21001	s.NestedPropertyName = &v
21002	return s
21003}
21004
21005// Provides a summary of a notebook instance lifecycle configuration.
21006type NotebookInstanceLifecycleConfigSummary struct {
21007	_ struct{} `type:"structure"`
21008
21009	// A timestamp that tells when the lifecycle configuration was created.
21010	CreationTime *time.Time `type:"timestamp"`
21011
21012	// A timestamp that tells when the lifecycle configuration was last modified.
21013	LastModifiedTime *time.Time `type:"timestamp"`
21014
21015	// The Amazon Resource Name (ARN) of the lifecycle configuration.
21016	//
21017	// NotebookInstanceLifecycleConfigArn is a required field
21018	NotebookInstanceLifecycleConfigArn *string `type:"string" required:"true"`
21019
21020	// The name of the lifecycle configuration.
21021	//
21022	// NotebookInstanceLifecycleConfigName is a required field
21023	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
21024}
21025
21026// String returns the string representation
21027func (s NotebookInstanceLifecycleConfigSummary) String() string {
21028	return awsutil.Prettify(s)
21029}
21030
21031// GoString returns the string representation
21032func (s NotebookInstanceLifecycleConfigSummary) GoString() string {
21033	return s.String()
21034}
21035
21036// SetCreationTime sets the CreationTime field's value.
21037func (s *NotebookInstanceLifecycleConfigSummary) SetCreationTime(v time.Time) *NotebookInstanceLifecycleConfigSummary {
21038	s.CreationTime = &v
21039	return s
21040}
21041
21042// SetLastModifiedTime sets the LastModifiedTime field's value.
21043func (s *NotebookInstanceLifecycleConfigSummary) SetLastModifiedTime(v time.Time) *NotebookInstanceLifecycleConfigSummary {
21044	s.LastModifiedTime = &v
21045	return s
21046}
21047
21048// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
21049func (s *NotebookInstanceLifecycleConfigSummary) SetNotebookInstanceLifecycleConfigArn(v string) *NotebookInstanceLifecycleConfigSummary {
21050	s.NotebookInstanceLifecycleConfigArn = &v
21051	return s
21052}
21053
21054// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
21055func (s *NotebookInstanceLifecycleConfigSummary) SetNotebookInstanceLifecycleConfigName(v string) *NotebookInstanceLifecycleConfigSummary {
21056	s.NotebookInstanceLifecycleConfigName = &v
21057	return s
21058}
21059
21060// Contains the notebook instance lifecycle configuration script.
21061//
21062// Each lifecycle configuration script has a limit of 16384 characters.
21063//
21064// The value of the $PATH environment variable that is available to both scripts
21065// is /sbin:bin:/usr/sbin:/usr/bin.
21066//
21067// View CloudWatch Logs for notebook instance lifecycle configurations in log
21068// group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook].
21069//
21070// Lifecycle configuration scripts cannot run for longer than 5 minutes. If
21071// a script runs for longer than 5 minutes, it fails and the notebook instance
21072// is not created or started.
21073//
21074// For information about notebook instance lifestyle configurations, see Step
21075// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
21076type NotebookInstanceLifecycleHook struct {
21077	_ struct{} `type:"structure"`
21078
21079	// A base64-encoded string that contains a shell script for a notebook instance
21080	// lifecycle configuration.
21081	Content *string `min:"1" type:"string"`
21082}
21083
21084// String returns the string representation
21085func (s NotebookInstanceLifecycleHook) String() string {
21086	return awsutil.Prettify(s)
21087}
21088
21089// GoString returns the string representation
21090func (s NotebookInstanceLifecycleHook) GoString() string {
21091	return s.String()
21092}
21093
21094// Validate inspects the fields of the type to determine if they are valid.
21095func (s *NotebookInstanceLifecycleHook) Validate() error {
21096	invalidParams := request.ErrInvalidParams{Context: "NotebookInstanceLifecycleHook"}
21097	if s.Content != nil && len(*s.Content) < 1 {
21098		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
21099	}
21100
21101	if invalidParams.Len() > 0 {
21102		return invalidParams
21103	}
21104	return nil
21105}
21106
21107// SetContent sets the Content field's value.
21108func (s *NotebookInstanceLifecycleHook) SetContent(v string) *NotebookInstanceLifecycleHook {
21109	s.Content = &v
21110	return s
21111}
21112
21113// Provides summary information for an Amazon SageMaker notebook instance.
21114type NotebookInstanceSummary struct {
21115	_ struct{} `type:"structure"`
21116
21117	// An array of up to three Git repositories associated with the notebook instance.
21118	// These can be either the names of Git repositories stored as resources in
21119	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
21120	// or in any other Git repository. These repositories are cloned at the same
21121	// level as the default repository of your notebook instance. For more information,
21122	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
21123	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
21124	AdditionalCodeRepositories []*string `type:"list"`
21125
21126	// A timestamp that shows when the notebook instance was created.
21127	CreationTime *time.Time `type:"timestamp"`
21128
21129	// The Git repository associated with the notebook instance as its default code
21130	// repository. This can be either the name of a Git repository stored as a resource
21131	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
21132	// or in any other Git repository. When you open a notebook instance, it opens
21133	// in the directory that contains this repository. For more information, see
21134	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
21135	DefaultCodeRepository *string `min:"1" type:"string"`
21136
21137	// The type of ML compute instance that the notebook instance is running on.
21138	InstanceType *string `type:"string" enum:"InstanceType"`
21139
21140	// A timestamp that shows when the notebook instance was last modified.
21141	LastModifiedTime *time.Time `type:"timestamp"`
21142
21143	// The Amazon Resource Name (ARN) of the notebook instance.
21144	//
21145	// NotebookInstanceArn is a required field
21146	NotebookInstanceArn *string `type:"string" required:"true"`
21147
21148	// The name of a notebook instance lifecycle configuration associated with this
21149	// notebook instance.
21150	//
21151	// For information about notebook instance lifestyle configurations, see Step
21152	// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
21153	NotebookInstanceLifecycleConfigName *string `type:"string"`
21154
21155	// The name of the notebook instance that you want a summary for.
21156	//
21157	// NotebookInstanceName is a required field
21158	NotebookInstanceName *string `type:"string" required:"true"`
21159
21160	// The status of the notebook instance.
21161	NotebookInstanceStatus *string `type:"string" enum:"NotebookInstanceStatus"`
21162
21163	// The URL that you use to connect to the Jupyter instance running in your notebook
21164	// instance.
21165	Url *string `type:"string"`
21166}
21167
21168// String returns the string representation
21169func (s NotebookInstanceSummary) String() string {
21170	return awsutil.Prettify(s)
21171}
21172
21173// GoString returns the string representation
21174func (s NotebookInstanceSummary) GoString() string {
21175	return s.String()
21176}
21177
21178// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
21179func (s *NotebookInstanceSummary) SetAdditionalCodeRepositories(v []*string) *NotebookInstanceSummary {
21180	s.AdditionalCodeRepositories = v
21181	return s
21182}
21183
21184// SetCreationTime sets the CreationTime field's value.
21185func (s *NotebookInstanceSummary) SetCreationTime(v time.Time) *NotebookInstanceSummary {
21186	s.CreationTime = &v
21187	return s
21188}
21189
21190// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
21191func (s *NotebookInstanceSummary) SetDefaultCodeRepository(v string) *NotebookInstanceSummary {
21192	s.DefaultCodeRepository = &v
21193	return s
21194}
21195
21196// SetInstanceType sets the InstanceType field's value.
21197func (s *NotebookInstanceSummary) SetInstanceType(v string) *NotebookInstanceSummary {
21198	s.InstanceType = &v
21199	return s
21200}
21201
21202// SetLastModifiedTime sets the LastModifiedTime field's value.
21203func (s *NotebookInstanceSummary) SetLastModifiedTime(v time.Time) *NotebookInstanceSummary {
21204	s.LastModifiedTime = &v
21205	return s
21206}
21207
21208// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
21209func (s *NotebookInstanceSummary) SetNotebookInstanceArn(v string) *NotebookInstanceSummary {
21210	s.NotebookInstanceArn = &v
21211	return s
21212}
21213
21214// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
21215func (s *NotebookInstanceSummary) SetNotebookInstanceLifecycleConfigName(v string) *NotebookInstanceSummary {
21216	s.NotebookInstanceLifecycleConfigName = &v
21217	return s
21218}
21219
21220// SetNotebookInstanceName sets the NotebookInstanceName field's value.
21221func (s *NotebookInstanceSummary) SetNotebookInstanceName(v string) *NotebookInstanceSummary {
21222	s.NotebookInstanceName = &v
21223	return s
21224}
21225
21226// SetNotebookInstanceStatus sets the NotebookInstanceStatus field's value.
21227func (s *NotebookInstanceSummary) SetNotebookInstanceStatus(v string) *NotebookInstanceSummary {
21228	s.NotebookInstanceStatus = &v
21229	return s
21230}
21231
21232// SetUrl sets the Url field's value.
21233func (s *NotebookInstanceSummary) SetUrl(v string) *NotebookInstanceSummary {
21234	s.Url = &v
21235	return s
21236}
21237
21238// Configures SNS notifications of available or expiring work items for work
21239// teams.
21240type NotificationConfiguration struct {
21241	_ struct{} `type:"structure"`
21242
21243	// The ARN for the SNS topic to which notifications should be published.
21244	NotificationTopicArn *string `type:"string"`
21245}
21246
21247// String returns the string representation
21248func (s NotificationConfiguration) String() string {
21249	return awsutil.Prettify(s)
21250}
21251
21252// GoString returns the string representation
21253func (s NotificationConfiguration) GoString() string {
21254	return s.String()
21255}
21256
21257// SetNotificationTopicArn sets the NotificationTopicArn field's value.
21258func (s *NotificationConfiguration) SetNotificationTopicArn(v string) *NotificationConfiguration {
21259	s.NotificationTopicArn = &v
21260	return s
21261}
21262
21263// Specifies the number of training jobs that this hyperparameter tuning job
21264// launched, categorized by the status of their objective metric. The objective
21265// metric status shows whether the final objective metric for the training job
21266// has been evaluated by the tuning job and used in the hyperparameter tuning
21267// process.
21268type ObjectiveStatusCounters struct {
21269	_ struct{} `type:"structure"`
21270
21271	// The number of training jobs whose final objective metric was not evaluated
21272	// and used in the hyperparameter tuning process. This typically occurs when
21273	// the training job failed or did not emit an objective metric.
21274	Failed *int64 `type:"integer"`
21275
21276	// The number of training jobs that are in progress and pending evaluation of
21277	// their final objective metric.
21278	Pending *int64 `type:"integer"`
21279
21280	// The number of training jobs whose final objective metric was evaluated by
21281	// the hyperparameter tuning job and used in the hyperparameter tuning process.
21282	Succeeded *int64 `type:"integer"`
21283}
21284
21285// String returns the string representation
21286func (s ObjectiveStatusCounters) String() string {
21287	return awsutil.Prettify(s)
21288}
21289
21290// GoString returns the string representation
21291func (s ObjectiveStatusCounters) GoString() string {
21292	return s.String()
21293}
21294
21295// SetFailed sets the Failed field's value.
21296func (s *ObjectiveStatusCounters) SetFailed(v int64) *ObjectiveStatusCounters {
21297	s.Failed = &v
21298	return s
21299}
21300
21301// SetPending sets the Pending field's value.
21302func (s *ObjectiveStatusCounters) SetPending(v int64) *ObjectiveStatusCounters {
21303	s.Pending = &v
21304	return s
21305}
21306
21307// SetSucceeded sets the Succeeded field's value.
21308func (s *ObjectiveStatusCounters) SetSucceeded(v int64) *ObjectiveStatusCounters {
21309	s.Succeeded = &v
21310	return s
21311}
21312
21313// Contains information about the output location for the compiled model and
21314// the device (target) that the model runs on.
21315type OutputConfig struct {
21316	_ struct{} `type:"structure"`
21317
21318	// Identifies the S3 path where you want Amazon SageMaker to store the model
21319	// artifacts. For example, s3://bucket-name/key-name-prefix.
21320	//
21321	// S3OutputLocation is a required field
21322	S3OutputLocation *string `type:"string" required:"true"`
21323
21324	// Identifies the device that you want to run your model on after it has been
21325	// compiled. For example: ml_c5.
21326	//
21327	// TargetDevice is a required field
21328	TargetDevice *string `type:"string" required:"true" enum:"TargetDevice"`
21329}
21330
21331// String returns the string representation
21332func (s OutputConfig) String() string {
21333	return awsutil.Prettify(s)
21334}
21335
21336// GoString returns the string representation
21337func (s OutputConfig) GoString() string {
21338	return s.String()
21339}
21340
21341// Validate inspects the fields of the type to determine if they are valid.
21342func (s *OutputConfig) Validate() error {
21343	invalidParams := request.ErrInvalidParams{Context: "OutputConfig"}
21344	if s.S3OutputLocation == nil {
21345		invalidParams.Add(request.NewErrParamRequired("S3OutputLocation"))
21346	}
21347	if s.TargetDevice == nil {
21348		invalidParams.Add(request.NewErrParamRequired("TargetDevice"))
21349	}
21350
21351	if invalidParams.Len() > 0 {
21352		return invalidParams
21353	}
21354	return nil
21355}
21356
21357// SetS3OutputLocation sets the S3OutputLocation field's value.
21358func (s *OutputConfig) SetS3OutputLocation(v string) *OutputConfig {
21359	s.S3OutputLocation = &v
21360	return s
21361}
21362
21363// SetTargetDevice sets the TargetDevice field's value.
21364func (s *OutputConfig) SetTargetDevice(v string) *OutputConfig {
21365	s.TargetDevice = &v
21366	return s
21367}
21368
21369// Provides information about how to store model training results (model artifacts).
21370type OutputDataConfig struct {
21371	_ struct{} `type:"structure"`
21372
21373	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
21374	// encrypt the model artifacts at rest using Amazon S3 server-side encryption.
21375	// The KmsKeyId can be any of the following formats:
21376	//
21377	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
21378	//
21379	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
21380	//
21381	//    * // KMS Key Alias "alias/ExampleAlias"
21382	//
21383	//    * // Amazon Resource Name (ARN) of a KMS Key Alias "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
21384	//
21385	// If you use a KMS key ID or an alias of your master key, the Amazon SageMaker
21386	// execution role must include permissions to call kms:Encrypt. If you don't
21387	// provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon
21388	// S3 for your role's account. Amazon SageMaker uses server-side encryption
21389	// with KMS-managed keys for OutputDataConfig. If you use a bucket policy with
21390	// an s3:PutObject permission that only allows objects with server-side encryption,
21391	// set the condition key of s3:x-amz-server-side-encryption to "aws:kms". For
21392	// more information, see KMS-Managed Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
21393	// in the Amazon Simple Storage Service Developer Guide.
21394	//
21395	// The KMS key policy must grant permission to the IAM role that you specify
21396	// in your CreateTrainingJob, CreateTransformJob, or CreateHyperParameterTuningJob
21397	// requests. For more information, see Using Key Policies in AWS KMS (https://docs.aws.amazon.com/http:/docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)
21398	// in the AWS Key Management Service Developer Guide.
21399	KmsKeyId *string `type:"string"`
21400
21401	// Identifies the S3 path where you want Amazon SageMaker to store the model
21402	// artifacts. For example, s3://bucket-name/key-name-prefix.
21403	//
21404	// S3OutputPath is a required field
21405	S3OutputPath *string `type:"string" required:"true"`
21406}
21407
21408// String returns the string representation
21409func (s OutputDataConfig) String() string {
21410	return awsutil.Prettify(s)
21411}
21412
21413// GoString returns the string representation
21414func (s OutputDataConfig) GoString() string {
21415	return s.String()
21416}
21417
21418// Validate inspects the fields of the type to determine if they are valid.
21419func (s *OutputDataConfig) Validate() error {
21420	invalidParams := request.ErrInvalidParams{Context: "OutputDataConfig"}
21421	if s.S3OutputPath == nil {
21422		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
21423	}
21424
21425	if invalidParams.Len() > 0 {
21426		return invalidParams
21427	}
21428	return nil
21429}
21430
21431// SetKmsKeyId sets the KmsKeyId field's value.
21432func (s *OutputDataConfig) SetKmsKeyId(v string) *OutputDataConfig {
21433	s.KmsKeyId = &v
21434	return s
21435}
21436
21437// SetS3OutputPath sets the S3OutputPath field's value.
21438func (s *OutputDataConfig) SetS3OutputPath(v string) *OutputDataConfig {
21439	s.S3OutputPath = &v
21440	return s
21441}
21442
21443// Defines the possible values for categorical, continuous, and integer hyperparameters
21444// to be used by an algorithm.
21445type ParameterRange struct {
21446	_ struct{} `type:"structure"`
21447
21448	// A CategoricalParameterRangeSpecification object that defines the possible
21449	// values for a categorical hyperparameter.
21450	CategoricalParameterRangeSpecification *CategoricalParameterRangeSpecification `type:"structure"`
21451
21452	// A ContinuousParameterRangeSpecification object that defines the possible
21453	// values for a continuous hyperparameter.
21454	ContinuousParameterRangeSpecification *ContinuousParameterRangeSpecification `type:"structure"`
21455
21456	// A IntegerParameterRangeSpecification object that defines the possible values
21457	// for an integer hyperparameter.
21458	IntegerParameterRangeSpecification *IntegerParameterRangeSpecification `type:"structure"`
21459}
21460
21461// String returns the string representation
21462func (s ParameterRange) String() string {
21463	return awsutil.Prettify(s)
21464}
21465
21466// GoString returns the string representation
21467func (s ParameterRange) GoString() string {
21468	return s.String()
21469}
21470
21471// Validate inspects the fields of the type to determine if they are valid.
21472func (s *ParameterRange) Validate() error {
21473	invalidParams := request.ErrInvalidParams{Context: "ParameterRange"}
21474	if s.CategoricalParameterRangeSpecification != nil {
21475		if err := s.CategoricalParameterRangeSpecification.Validate(); err != nil {
21476			invalidParams.AddNested("CategoricalParameterRangeSpecification", err.(request.ErrInvalidParams))
21477		}
21478	}
21479	if s.ContinuousParameterRangeSpecification != nil {
21480		if err := s.ContinuousParameterRangeSpecification.Validate(); err != nil {
21481			invalidParams.AddNested("ContinuousParameterRangeSpecification", err.(request.ErrInvalidParams))
21482		}
21483	}
21484	if s.IntegerParameterRangeSpecification != nil {
21485		if err := s.IntegerParameterRangeSpecification.Validate(); err != nil {
21486			invalidParams.AddNested("IntegerParameterRangeSpecification", err.(request.ErrInvalidParams))
21487		}
21488	}
21489
21490	if invalidParams.Len() > 0 {
21491		return invalidParams
21492	}
21493	return nil
21494}
21495
21496// SetCategoricalParameterRangeSpecification sets the CategoricalParameterRangeSpecification field's value.
21497func (s *ParameterRange) SetCategoricalParameterRangeSpecification(v *CategoricalParameterRangeSpecification) *ParameterRange {
21498	s.CategoricalParameterRangeSpecification = v
21499	return s
21500}
21501
21502// SetContinuousParameterRangeSpecification sets the ContinuousParameterRangeSpecification field's value.
21503func (s *ParameterRange) SetContinuousParameterRangeSpecification(v *ContinuousParameterRangeSpecification) *ParameterRange {
21504	s.ContinuousParameterRangeSpecification = v
21505	return s
21506}
21507
21508// SetIntegerParameterRangeSpecification sets the IntegerParameterRangeSpecification field's value.
21509func (s *ParameterRange) SetIntegerParameterRangeSpecification(v *IntegerParameterRangeSpecification) *ParameterRange {
21510	s.IntegerParameterRangeSpecification = v
21511	return s
21512}
21513
21514// Specifies ranges of integer, continuous, and categorical hyperparameters
21515// that a hyperparameter tuning job searches. The hyperparameter tuning job
21516// launches training jobs with hyperparameter values within these ranges to
21517// find the combination of values that result in the training job with the best
21518// performance as measured by the objective metric of the hyperparameter tuning
21519// job.
21520//
21521// You can specify a maximum of 20 hyperparameters that a hyperparameter tuning
21522// job can search over. Every possible value of a categorical parameter range
21523// counts against this limit.
21524type ParameterRanges struct {
21525	_ struct{} `type:"structure"`
21526
21527	// The array of CategoricalParameterRange objects that specify ranges of categorical
21528	// hyperparameters that a hyperparameter tuning job searches.
21529	CategoricalParameterRanges []*CategoricalParameterRange `type:"list"`
21530
21531	// The array of ContinuousParameterRange objects that specify ranges of continuous
21532	// hyperparameters that a hyperparameter tuning job searches.
21533	ContinuousParameterRanges []*ContinuousParameterRange `type:"list"`
21534
21535	// The array of IntegerParameterRange objects that specify ranges of integer
21536	// hyperparameters that a hyperparameter tuning job searches.
21537	IntegerParameterRanges []*IntegerParameterRange `type:"list"`
21538}
21539
21540// String returns the string representation
21541func (s ParameterRanges) String() string {
21542	return awsutil.Prettify(s)
21543}
21544
21545// GoString returns the string representation
21546func (s ParameterRanges) GoString() string {
21547	return s.String()
21548}
21549
21550// Validate inspects the fields of the type to determine if they are valid.
21551func (s *ParameterRanges) Validate() error {
21552	invalidParams := request.ErrInvalidParams{Context: "ParameterRanges"}
21553	if s.CategoricalParameterRanges != nil {
21554		for i, v := range s.CategoricalParameterRanges {
21555			if v == nil {
21556				continue
21557			}
21558			if err := v.Validate(); err != nil {
21559				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CategoricalParameterRanges", i), err.(request.ErrInvalidParams))
21560			}
21561		}
21562	}
21563	if s.ContinuousParameterRanges != nil {
21564		for i, v := range s.ContinuousParameterRanges {
21565			if v == nil {
21566				continue
21567			}
21568			if err := v.Validate(); err != nil {
21569				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContinuousParameterRanges", i), err.(request.ErrInvalidParams))
21570			}
21571		}
21572	}
21573	if s.IntegerParameterRanges != nil {
21574		for i, v := range s.IntegerParameterRanges {
21575			if v == nil {
21576				continue
21577			}
21578			if err := v.Validate(); err != nil {
21579				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "IntegerParameterRanges", i), err.(request.ErrInvalidParams))
21580			}
21581		}
21582	}
21583
21584	if invalidParams.Len() > 0 {
21585		return invalidParams
21586	}
21587	return nil
21588}
21589
21590// SetCategoricalParameterRanges sets the CategoricalParameterRanges field's value.
21591func (s *ParameterRanges) SetCategoricalParameterRanges(v []*CategoricalParameterRange) *ParameterRanges {
21592	s.CategoricalParameterRanges = v
21593	return s
21594}
21595
21596// SetContinuousParameterRanges sets the ContinuousParameterRanges field's value.
21597func (s *ParameterRanges) SetContinuousParameterRanges(v []*ContinuousParameterRange) *ParameterRanges {
21598	s.ContinuousParameterRanges = v
21599	return s
21600}
21601
21602// SetIntegerParameterRanges sets the IntegerParameterRanges field's value.
21603func (s *ParameterRanges) SetIntegerParameterRanges(v []*IntegerParameterRange) *ParameterRanges {
21604	s.IntegerParameterRanges = v
21605	return s
21606}
21607
21608// A previously completed or stopped hyperparameter tuning job to be used as
21609// a starting point for a new hyperparameter tuning job.
21610type ParentHyperParameterTuningJob struct {
21611	_ struct{} `type:"structure"`
21612
21613	// The name of the hyperparameter tuning job to be used as a starting point
21614	// for a new hyperparameter tuning job.
21615	HyperParameterTuningJobName *string `min:"1" type:"string"`
21616}
21617
21618// String returns the string representation
21619func (s ParentHyperParameterTuningJob) String() string {
21620	return awsutil.Prettify(s)
21621}
21622
21623// GoString returns the string representation
21624func (s ParentHyperParameterTuningJob) GoString() string {
21625	return s.String()
21626}
21627
21628// Validate inspects the fields of the type to determine if they are valid.
21629func (s *ParentHyperParameterTuningJob) Validate() error {
21630	invalidParams := request.ErrInvalidParams{Context: "ParentHyperParameterTuningJob"}
21631	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
21632		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
21633	}
21634
21635	if invalidParams.Len() > 0 {
21636		return invalidParams
21637	}
21638	return nil
21639}
21640
21641// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
21642func (s *ParentHyperParameterTuningJob) SetHyperParameterTuningJobName(v string) *ParentHyperParameterTuningJob {
21643	s.HyperParameterTuningJobName = &v
21644	return s
21645}
21646
21647// Identifies a model that you want to host and the resources to deploy for
21648// hosting it. If you are deploying multiple models, tell Amazon SageMaker how
21649// to distribute traffic among the models by specifying variant weights.
21650type ProductionVariant struct {
21651	_ struct{} `type:"structure"`
21652
21653	// The size of the Elastic Inference (EI) instance to use for the production
21654	// variant. EI instances provide on-demand GPU computing for inference. For
21655	// more information, see Using Elastic Inference in Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html).
21656	AcceleratorType *string `type:"string" enum:"ProductionVariantAcceleratorType"`
21657
21658	// Number of instances to launch initially.
21659	//
21660	// InitialInstanceCount is a required field
21661	InitialInstanceCount *int64 `min:"1" type:"integer" required:"true"`
21662
21663	// Determines initial traffic distribution among all of the models that you
21664	// specify in the endpoint configuration. The traffic to a production variant
21665	// is determined by the ratio of the VariantWeight to the sum of all VariantWeight
21666	// values across all ProductionVariants. If unspecified, it defaults to 1.0.
21667	InitialVariantWeight *float64 `type:"float"`
21668
21669	// The ML compute instance type.
21670	//
21671	// InstanceType is a required field
21672	InstanceType *string `type:"string" required:"true" enum:"ProductionVariantInstanceType"`
21673
21674	// The name of the model that you want to host. This is the name that you specified
21675	// when creating the model.
21676	//
21677	// ModelName is a required field
21678	ModelName *string `type:"string" required:"true"`
21679
21680	// The name of the production variant.
21681	//
21682	// VariantName is a required field
21683	VariantName *string `type:"string" required:"true"`
21684}
21685
21686// String returns the string representation
21687func (s ProductionVariant) String() string {
21688	return awsutil.Prettify(s)
21689}
21690
21691// GoString returns the string representation
21692func (s ProductionVariant) GoString() string {
21693	return s.String()
21694}
21695
21696// Validate inspects the fields of the type to determine if they are valid.
21697func (s *ProductionVariant) Validate() error {
21698	invalidParams := request.ErrInvalidParams{Context: "ProductionVariant"}
21699	if s.InitialInstanceCount == nil {
21700		invalidParams.Add(request.NewErrParamRequired("InitialInstanceCount"))
21701	}
21702	if s.InitialInstanceCount != nil && *s.InitialInstanceCount < 1 {
21703		invalidParams.Add(request.NewErrParamMinValue("InitialInstanceCount", 1))
21704	}
21705	if s.InstanceType == nil {
21706		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
21707	}
21708	if s.ModelName == nil {
21709		invalidParams.Add(request.NewErrParamRequired("ModelName"))
21710	}
21711	if s.VariantName == nil {
21712		invalidParams.Add(request.NewErrParamRequired("VariantName"))
21713	}
21714
21715	if invalidParams.Len() > 0 {
21716		return invalidParams
21717	}
21718	return nil
21719}
21720
21721// SetAcceleratorType sets the AcceleratorType field's value.
21722func (s *ProductionVariant) SetAcceleratorType(v string) *ProductionVariant {
21723	s.AcceleratorType = &v
21724	return s
21725}
21726
21727// SetInitialInstanceCount sets the InitialInstanceCount field's value.
21728func (s *ProductionVariant) SetInitialInstanceCount(v int64) *ProductionVariant {
21729	s.InitialInstanceCount = &v
21730	return s
21731}
21732
21733// SetInitialVariantWeight sets the InitialVariantWeight field's value.
21734func (s *ProductionVariant) SetInitialVariantWeight(v float64) *ProductionVariant {
21735	s.InitialVariantWeight = &v
21736	return s
21737}
21738
21739// SetInstanceType sets the InstanceType field's value.
21740func (s *ProductionVariant) SetInstanceType(v string) *ProductionVariant {
21741	s.InstanceType = &v
21742	return s
21743}
21744
21745// SetModelName sets the ModelName field's value.
21746func (s *ProductionVariant) SetModelName(v string) *ProductionVariant {
21747	s.ModelName = &v
21748	return s
21749}
21750
21751// SetVariantName sets the VariantName field's value.
21752func (s *ProductionVariant) SetVariantName(v string) *ProductionVariant {
21753	s.VariantName = &v
21754	return s
21755}
21756
21757// Describes weight and capacities for a production variant associated with
21758// an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities
21759// API and the endpoint status is Updating, you get different desired and current
21760// values.
21761type ProductionVariantSummary struct {
21762	_ struct{} `type:"structure"`
21763
21764	// The number of instances associated with the variant.
21765	CurrentInstanceCount *int64 `min:"1" type:"integer"`
21766
21767	// The weight associated with the variant.
21768	CurrentWeight *float64 `type:"float"`
21769
21770	// An array of DeployedImage objects that specify the Amazon EC2 Container Registry
21771	// paths of the inference images deployed on instances of this ProductionVariant.
21772	DeployedImages []*DeployedImage `type:"list"`
21773
21774	// The number of instances requested in the UpdateEndpointWeightsAndCapacities
21775	// request.
21776	DesiredInstanceCount *int64 `min:"1" type:"integer"`
21777
21778	// The requested weight, as specified in the UpdateEndpointWeightsAndCapacities
21779	// request.
21780	DesiredWeight *float64 `type:"float"`
21781
21782	// The name of the variant.
21783	//
21784	// VariantName is a required field
21785	VariantName *string `type:"string" required:"true"`
21786}
21787
21788// String returns the string representation
21789func (s ProductionVariantSummary) String() string {
21790	return awsutil.Prettify(s)
21791}
21792
21793// GoString returns the string representation
21794func (s ProductionVariantSummary) GoString() string {
21795	return s.String()
21796}
21797
21798// SetCurrentInstanceCount sets the CurrentInstanceCount field's value.
21799func (s *ProductionVariantSummary) SetCurrentInstanceCount(v int64) *ProductionVariantSummary {
21800	s.CurrentInstanceCount = &v
21801	return s
21802}
21803
21804// SetCurrentWeight sets the CurrentWeight field's value.
21805func (s *ProductionVariantSummary) SetCurrentWeight(v float64) *ProductionVariantSummary {
21806	s.CurrentWeight = &v
21807	return s
21808}
21809
21810// SetDeployedImages sets the DeployedImages field's value.
21811func (s *ProductionVariantSummary) SetDeployedImages(v []*DeployedImage) *ProductionVariantSummary {
21812	s.DeployedImages = v
21813	return s
21814}
21815
21816// SetDesiredInstanceCount sets the DesiredInstanceCount field's value.
21817func (s *ProductionVariantSummary) SetDesiredInstanceCount(v int64) *ProductionVariantSummary {
21818	s.DesiredInstanceCount = &v
21819	return s
21820}
21821
21822// SetDesiredWeight sets the DesiredWeight field's value.
21823func (s *ProductionVariantSummary) SetDesiredWeight(v float64) *ProductionVariantSummary {
21824	s.DesiredWeight = &v
21825	return s
21826}
21827
21828// SetVariantName sets the VariantName field's value.
21829func (s *ProductionVariantSummary) SetVariantName(v string) *ProductionVariantSummary {
21830	s.VariantName = &v
21831	return s
21832}
21833
21834// A type of SuggestionQuery. A suggestion query for retrieving property names
21835// that match the specified hint.
21836type PropertyNameQuery struct {
21837	_ struct{} `type:"structure"`
21838
21839	// Text that is part of a property's name. The property names of hyperparameter,
21840	// metric, and tag key names that begin with the specified text in the PropertyNameHint.
21841	//
21842	// PropertyNameHint is a required field
21843	PropertyNameHint *string `type:"string" required:"true"`
21844}
21845
21846// String returns the string representation
21847func (s PropertyNameQuery) String() string {
21848	return awsutil.Prettify(s)
21849}
21850
21851// GoString returns the string representation
21852func (s PropertyNameQuery) GoString() string {
21853	return s.String()
21854}
21855
21856// Validate inspects the fields of the type to determine if they are valid.
21857func (s *PropertyNameQuery) Validate() error {
21858	invalidParams := request.ErrInvalidParams{Context: "PropertyNameQuery"}
21859	if s.PropertyNameHint == nil {
21860		invalidParams.Add(request.NewErrParamRequired("PropertyNameHint"))
21861	}
21862
21863	if invalidParams.Len() > 0 {
21864		return invalidParams
21865	}
21866	return nil
21867}
21868
21869// SetPropertyNameHint sets the PropertyNameHint field's value.
21870func (s *PropertyNameQuery) SetPropertyNameHint(v string) *PropertyNameQuery {
21871	s.PropertyNameHint = &v
21872	return s
21873}
21874
21875// A property name returned from a GetSearchSuggestions call that specifies
21876// a value in the PropertyNameQuery field.
21877type PropertyNameSuggestion struct {
21878	_ struct{} `type:"structure"`
21879
21880	// A suggested property name based on what you entered in the search textbox
21881	// in the Amazon SageMaker console.
21882	PropertyName *string `min:"1" type:"string"`
21883}
21884
21885// String returns the string representation
21886func (s PropertyNameSuggestion) String() string {
21887	return awsutil.Prettify(s)
21888}
21889
21890// GoString returns the string representation
21891func (s PropertyNameSuggestion) GoString() string {
21892	return s.String()
21893}
21894
21895// SetPropertyName sets the PropertyName field's value.
21896func (s *PropertyNameSuggestion) SetPropertyName(v string) *PropertyNameSuggestion {
21897	s.PropertyName = &v
21898	return s
21899}
21900
21901// Defines the amount of money paid to an Amazon Mechanical Turk worker for
21902// each task performed.
21903//
21904// Use one of the following prices for bounding box tasks. Prices are in US
21905// dollars and should be based on the complexity of the task; the longer it
21906// takes in your initial testing, the more you should offer.
21907//
21908//    * 0.036
21909//
21910//    * 0.048
21911//
21912//    * 0.060
21913//
21914//    * 0.072
21915//
21916//    * 0.120
21917//
21918//    * 0.240
21919//
21920//    * 0.360
21921//
21922//    * 0.480
21923//
21924//    * 0.600
21925//
21926//    * 0.720
21927//
21928//    * 0.840
21929//
21930//    * 0.960
21931//
21932//    * 1.080
21933//
21934//    * 1.200
21935//
21936// Use one of the following prices for image classification, text classification,
21937// and custom tasks. Prices are in US dollars.
21938//
21939//    * 0.012
21940//
21941//    * 0.024
21942//
21943//    * 0.036
21944//
21945//    * 0.048
21946//
21947//    * 0.060
21948//
21949//    * 0.072
21950//
21951//    * 0.120
21952//
21953//    * 0.240
21954//
21955//    * 0.360
21956//
21957//    * 0.480
21958//
21959//    * 0.600
21960//
21961//    * 0.720
21962//
21963//    * 0.840
21964//
21965//    * 0.960
21966//
21967//    * 1.080
21968//
21969//    * 1.200
21970//
21971// Use one of the following prices for semantic segmentation tasks. Prices are
21972// in US dollars.
21973//
21974//    * 0.840
21975//
21976//    * 0.960
21977//
21978//    * 1.080
21979//
21980//    * 1.200
21981type PublicWorkforceTaskPrice struct {
21982	_ struct{} `type:"structure"`
21983
21984	// Defines the amount of money paid to an Amazon Mechanical Turk worker in United
21985	// States dollars.
21986	AmountInUsd *USD `type:"structure"`
21987}
21988
21989// String returns the string representation
21990func (s PublicWorkforceTaskPrice) String() string {
21991	return awsutil.Prettify(s)
21992}
21993
21994// GoString returns the string representation
21995func (s PublicWorkforceTaskPrice) GoString() string {
21996	return s.String()
21997}
21998
21999// SetAmountInUsd sets the AmountInUsd field's value.
22000func (s *PublicWorkforceTaskPrice) SetAmountInUsd(v *USD) *PublicWorkforceTaskPrice {
22001	s.AmountInUsd = v
22002	return s
22003}
22004
22005type RenderUiTemplateInput struct {
22006	_ struct{} `type:"structure"`
22007
22008	// The Amazon Resource Name (ARN) that has access to the S3 objects that are
22009	// used by the template.
22010	//
22011	// RoleArn is a required field
22012	RoleArn *string `min:"20" type:"string" required:"true"`
22013
22014	// A RenderableTask object containing a representative task to render.
22015	//
22016	// Task is a required field
22017	Task *RenderableTask `type:"structure" required:"true"`
22018
22019	// A Template object containing the worker UI template to render.
22020	//
22021	// UiTemplate is a required field
22022	UiTemplate *UiTemplate `type:"structure" required:"true"`
22023}
22024
22025// String returns the string representation
22026func (s RenderUiTemplateInput) String() string {
22027	return awsutil.Prettify(s)
22028}
22029
22030// GoString returns the string representation
22031func (s RenderUiTemplateInput) GoString() string {
22032	return s.String()
22033}
22034
22035// Validate inspects the fields of the type to determine if they are valid.
22036func (s *RenderUiTemplateInput) Validate() error {
22037	invalidParams := request.ErrInvalidParams{Context: "RenderUiTemplateInput"}
22038	if s.RoleArn == nil {
22039		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
22040	}
22041	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
22042		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
22043	}
22044	if s.Task == nil {
22045		invalidParams.Add(request.NewErrParamRequired("Task"))
22046	}
22047	if s.UiTemplate == nil {
22048		invalidParams.Add(request.NewErrParamRequired("UiTemplate"))
22049	}
22050	if s.Task != nil {
22051		if err := s.Task.Validate(); err != nil {
22052			invalidParams.AddNested("Task", err.(request.ErrInvalidParams))
22053		}
22054	}
22055	if s.UiTemplate != nil {
22056		if err := s.UiTemplate.Validate(); err != nil {
22057			invalidParams.AddNested("UiTemplate", err.(request.ErrInvalidParams))
22058		}
22059	}
22060
22061	if invalidParams.Len() > 0 {
22062		return invalidParams
22063	}
22064	return nil
22065}
22066
22067// SetRoleArn sets the RoleArn field's value.
22068func (s *RenderUiTemplateInput) SetRoleArn(v string) *RenderUiTemplateInput {
22069	s.RoleArn = &v
22070	return s
22071}
22072
22073// SetTask sets the Task field's value.
22074func (s *RenderUiTemplateInput) SetTask(v *RenderableTask) *RenderUiTemplateInput {
22075	s.Task = v
22076	return s
22077}
22078
22079// SetUiTemplate sets the UiTemplate field's value.
22080func (s *RenderUiTemplateInput) SetUiTemplate(v *UiTemplate) *RenderUiTemplateInput {
22081	s.UiTemplate = v
22082	return s
22083}
22084
22085type RenderUiTemplateOutput struct {
22086	_ struct{} `type:"structure"`
22087
22088	// A list of one or more RenderingError objects if any were encountered while
22089	// rendering the template. If there were no errors, the list is empty.
22090	//
22091	// Errors is a required field
22092	Errors []*RenderingError `type:"list" required:"true"`
22093
22094	// A Liquid template that renders the HTML for the worker UI.
22095	//
22096	// RenderedContent is a required field
22097	RenderedContent *string `type:"string" required:"true"`
22098}
22099
22100// String returns the string representation
22101func (s RenderUiTemplateOutput) String() string {
22102	return awsutil.Prettify(s)
22103}
22104
22105// GoString returns the string representation
22106func (s RenderUiTemplateOutput) GoString() string {
22107	return s.String()
22108}
22109
22110// SetErrors sets the Errors field's value.
22111func (s *RenderUiTemplateOutput) SetErrors(v []*RenderingError) *RenderUiTemplateOutput {
22112	s.Errors = v
22113	return s
22114}
22115
22116// SetRenderedContent sets the RenderedContent field's value.
22117func (s *RenderUiTemplateOutput) SetRenderedContent(v string) *RenderUiTemplateOutput {
22118	s.RenderedContent = &v
22119	return s
22120}
22121
22122// Contains input values for a task.
22123type RenderableTask struct {
22124	_ struct{} `type:"structure"`
22125
22126	// A JSON object that contains values for the variables defined in the template.
22127	// It is made available to the template under the substitution variable task.input.
22128	// For example, if you define a variable task.input.text in your template, you
22129	// can supply the variable in the JSON object as "text": "sample text".
22130	//
22131	// Input is a required field
22132	Input *string `min:"2" type:"string" required:"true"`
22133}
22134
22135// String returns the string representation
22136func (s RenderableTask) String() string {
22137	return awsutil.Prettify(s)
22138}
22139
22140// GoString returns the string representation
22141func (s RenderableTask) GoString() string {
22142	return s.String()
22143}
22144
22145// Validate inspects the fields of the type to determine if they are valid.
22146func (s *RenderableTask) Validate() error {
22147	invalidParams := request.ErrInvalidParams{Context: "RenderableTask"}
22148	if s.Input == nil {
22149		invalidParams.Add(request.NewErrParamRequired("Input"))
22150	}
22151	if s.Input != nil && len(*s.Input) < 2 {
22152		invalidParams.Add(request.NewErrParamMinLen("Input", 2))
22153	}
22154
22155	if invalidParams.Len() > 0 {
22156		return invalidParams
22157	}
22158	return nil
22159}
22160
22161// SetInput sets the Input field's value.
22162func (s *RenderableTask) SetInput(v string) *RenderableTask {
22163	s.Input = &v
22164	return s
22165}
22166
22167// A description of an error that occurred while rendering the template.
22168type RenderingError struct {
22169	_ struct{} `type:"structure"`
22170
22171	// A unique identifier for a specific class of errors.
22172	//
22173	// Code is a required field
22174	Code *string `type:"string" required:"true"`
22175
22176	// A human-readable message describing the error.
22177	//
22178	// Message is a required field
22179	Message *string `type:"string" required:"true"`
22180}
22181
22182// String returns the string representation
22183func (s RenderingError) String() string {
22184	return awsutil.Prettify(s)
22185}
22186
22187// GoString returns the string representation
22188func (s RenderingError) GoString() string {
22189	return s.String()
22190}
22191
22192// SetCode sets the Code field's value.
22193func (s *RenderingError) SetCode(v string) *RenderingError {
22194	s.Code = &v
22195	return s
22196}
22197
22198// SetMessage sets the Message field's value.
22199func (s *RenderingError) SetMessage(v string) *RenderingError {
22200	s.Message = &v
22201	return s
22202}
22203
22204// Describes the resources, including ML compute instances and ML storage volumes,
22205// to use for model training.
22206type ResourceConfig struct {
22207	_ struct{} `type:"structure"`
22208
22209	// The number of ML compute instances to use. For distributed training, provide
22210	// a value greater than 1.
22211	//
22212	// InstanceCount is a required field
22213	InstanceCount *int64 `min:"1" type:"integer" required:"true"`
22214
22215	// The ML compute instance type.
22216	//
22217	// InstanceType is a required field
22218	InstanceType *string `type:"string" required:"true" enum:"TrainingInstanceType"`
22219
22220	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
22221	// encrypt data on the storage volume attached to the ML compute instance(s)
22222	// that run the training job. The VolumeKmsKeyId can be any of the following
22223	// formats:
22224	//
22225	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
22226	//
22227	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
22228	VolumeKmsKeyId *string `type:"string"`
22229
22230	// The size of the ML storage volume that you want to provision.
22231	//
22232	// ML storage volumes store model artifacts and incremental states. Training
22233	// algorithms might also use the ML storage volume for scratch space. If you
22234	// want to store the training data in the ML storage volume, choose File as
22235	// the TrainingInputMode in the algorithm specification.
22236	//
22237	// You must specify sufficient ML storage for your scenario.
22238	//
22239	// Amazon SageMaker supports only the General Purpose SSD (gp2) ML storage volume
22240	// type.
22241	//
22242	// VolumeSizeInGB is a required field
22243	VolumeSizeInGB *int64 `min:"1" type:"integer" required:"true"`
22244}
22245
22246// String returns the string representation
22247func (s ResourceConfig) String() string {
22248	return awsutil.Prettify(s)
22249}
22250
22251// GoString returns the string representation
22252func (s ResourceConfig) GoString() string {
22253	return s.String()
22254}
22255
22256// Validate inspects the fields of the type to determine if they are valid.
22257func (s *ResourceConfig) Validate() error {
22258	invalidParams := request.ErrInvalidParams{Context: "ResourceConfig"}
22259	if s.InstanceCount == nil {
22260		invalidParams.Add(request.NewErrParamRequired("InstanceCount"))
22261	}
22262	if s.InstanceCount != nil && *s.InstanceCount < 1 {
22263		invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1))
22264	}
22265	if s.InstanceType == nil {
22266		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
22267	}
22268	if s.VolumeSizeInGB == nil {
22269		invalidParams.Add(request.NewErrParamRequired("VolumeSizeInGB"))
22270	}
22271	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 1 {
22272		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 1))
22273	}
22274
22275	if invalidParams.Len() > 0 {
22276		return invalidParams
22277	}
22278	return nil
22279}
22280
22281// SetInstanceCount sets the InstanceCount field's value.
22282func (s *ResourceConfig) SetInstanceCount(v int64) *ResourceConfig {
22283	s.InstanceCount = &v
22284	return s
22285}
22286
22287// SetInstanceType sets the InstanceType field's value.
22288func (s *ResourceConfig) SetInstanceType(v string) *ResourceConfig {
22289	s.InstanceType = &v
22290	return s
22291}
22292
22293// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
22294func (s *ResourceConfig) SetVolumeKmsKeyId(v string) *ResourceConfig {
22295	s.VolumeKmsKeyId = &v
22296	return s
22297}
22298
22299// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
22300func (s *ResourceConfig) SetVolumeSizeInGB(v int64) *ResourceConfig {
22301	s.VolumeSizeInGB = &v
22302	return s
22303}
22304
22305// Specifies the maximum number of training jobs and parallel training jobs
22306// that a hyperparameter tuning job can launch.
22307type ResourceLimits struct {
22308	_ struct{} `type:"structure"`
22309
22310	// The maximum number of training jobs that a hyperparameter tuning job can
22311	// launch.
22312	//
22313	// MaxNumberOfTrainingJobs is a required field
22314	MaxNumberOfTrainingJobs *int64 `min:"1" type:"integer" required:"true"`
22315
22316	// The maximum number of concurrent training jobs that a hyperparameter tuning
22317	// job can launch.
22318	//
22319	// MaxParallelTrainingJobs is a required field
22320	MaxParallelTrainingJobs *int64 `min:"1" type:"integer" required:"true"`
22321}
22322
22323// String returns the string representation
22324func (s ResourceLimits) String() string {
22325	return awsutil.Prettify(s)
22326}
22327
22328// GoString returns the string representation
22329func (s ResourceLimits) GoString() string {
22330	return s.String()
22331}
22332
22333// Validate inspects the fields of the type to determine if they are valid.
22334func (s *ResourceLimits) Validate() error {
22335	invalidParams := request.ErrInvalidParams{Context: "ResourceLimits"}
22336	if s.MaxNumberOfTrainingJobs == nil {
22337		invalidParams.Add(request.NewErrParamRequired("MaxNumberOfTrainingJobs"))
22338	}
22339	if s.MaxNumberOfTrainingJobs != nil && *s.MaxNumberOfTrainingJobs < 1 {
22340		invalidParams.Add(request.NewErrParamMinValue("MaxNumberOfTrainingJobs", 1))
22341	}
22342	if s.MaxParallelTrainingJobs == nil {
22343		invalidParams.Add(request.NewErrParamRequired("MaxParallelTrainingJobs"))
22344	}
22345	if s.MaxParallelTrainingJobs != nil && *s.MaxParallelTrainingJobs < 1 {
22346		invalidParams.Add(request.NewErrParamMinValue("MaxParallelTrainingJobs", 1))
22347	}
22348
22349	if invalidParams.Len() > 0 {
22350		return invalidParams
22351	}
22352	return nil
22353}
22354
22355// SetMaxNumberOfTrainingJobs sets the MaxNumberOfTrainingJobs field's value.
22356func (s *ResourceLimits) SetMaxNumberOfTrainingJobs(v int64) *ResourceLimits {
22357	s.MaxNumberOfTrainingJobs = &v
22358	return s
22359}
22360
22361// SetMaxParallelTrainingJobs sets the MaxParallelTrainingJobs field's value.
22362func (s *ResourceLimits) SetMaxParallelTrainingJobs(v int64) *ResourceLimits {
22363	s.MaxParallelTrainingJobs = &v
22364	return s
22365}
22366
22367// Describes the S3 data source.
22368type S3DataSource struct {
22369	_ struct{} `type:"structure"`
22370
22371	// A list of one or more attribute names to use that are found in a specified
22372	// augmented manifest file.
22373	AttributeNames []*string `type:"list"`
22374
22375	// If you want Amazon SageMaker to replicate the entire dataset on each ML compute
22376	// instance that is launched for model training, specify FullyReplicated.
22377	//
22378	// If you want Amazon SageMaker to replicate a subset of data on each ML compute
22379	// instance that is launched for model training, specify ShardedByS3Key. If
22380	// there are n ML compute instances launched for a training job, each instance
22381	// gets approximately 1/n of the number of S3 objects. In this case, model training
22382	// on each machine uses only the subset of training data.
22383	//
22384	// Don't choose more ML compute instances for training than available S3 objects.
22385	// If you do, some nodes won't get any data and you will pay for nodes that
22386	// aren't getting any training data. This applies in both File and Pipe modes.
22387	// Keep this in mind when developing algorithms.
22388	//
22389	// In distributed training, where you use multiple ML compute EC2 instances,
22390	// you might choose ShardedByS3Key. If the algorithm requires copying training
22391	// data to the ML storage volume (when TrainingInputMode is set to File), this
22392	// copies 1/n of the number of objects.
22393	S3DataDistributionType *string `type:"string" enum:"S3DataDistribution"`
22394
22395	// If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker
22396	// uses all objects that match the specified key name prefix for model training.
22397	//
22398	// If you choose ManifestFile, S3Uri identifies an object that is a manifest
22399	// file containing a list of object keys that you want Amazon SageMaker to use
22400	// for model training.
22401	//
22402	// If you choose AugmentedManifestFile, S3Uri identifies an object that is an
22403	// augmented manifest file in JSON lines format. This file contains the data
22404	// you want to use for model training. AugmentedManifestFile can only be used
22405	// if the Channel's input mode is Pipe.
22406	//
22407	// S3DataType is a required field
22408	S3DataType *string `type:"string" required:"true" enum:"S3DataType"`
22409
22410	// Depending on the value specified for the S3DataType, identifies either a
22411	// key name prefix or a manifest. For example:
22412	//
22413	//    * A key name prefix might look like this: s3://bucketname/exampleprefix.
22414	//
22415	//    * A manifest might look like this: s3://bucketname/example.manifest The
22416	//    manifest is an S3 object which is a JSON file with the following format:
22417	//    [ {"prefix": "s3://customer_bucket/some/prefix/"}, "relative/path/to/custdata-1",
22418	//    "relative/path/custdata-2", ... ] The preceding JSON matches the following
22419	//    s3Uris: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 s3://customer_bucket/some/prefix/relative/path/custdata-2
22420	//    ... The complete set of s3uris in this manifest is the input data for
22421	//    the channel for this datasource. The object that each s3uris points to
22422	//    must be readable by the IAM role that Amazon SageMaker uses to perform
22423	//    tasks on your behalf.
22424	//
22425	// S3Uri is a required field
22426	S3Uri *string `type:"string" required:"true"`
22427}
22428
22429// String returns the string representation
22430func (s S3DataSource) String() string {
22431	return awsutil.Prettify(s)
22432}
22433
22434// GoString returns the string representation
22435func (s S3DataSource) GoString() string {
22436	return s.String()
22437}
22438
22439// Validate inspects the fields of the type to determine if they are valid.
22440func (s *S3DataSource) Validate() error {
22441	invalidParams := request.ErrInvalidParams{Context: "S3DataSource"}
22442	if s.S3DataType == nil {
22443		invalidParams.Add(request.NewErrParamRequired("S3DataType"))
22444	}
22445	if s.S3Uri == nil {
22446		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
22447	}
22448
22449	if invalidParams.Len() > 0 {
22450		return invalidParams
22451	}
22452	return nil
22453}
22454
22455// SetAttributeNames sets the AttributeNames field's value.
22456func (s *S3DataSource) SetAttributeNames(v []*string) *S3DataSource {
22457	s.AttributeNames = v
22458	return s
22459}
22460
22461// SetS3DataDistributionType sets the S3DataDistributionType field's value.
22462func (s *S3DataSource) SetS3DataDistributionType(v string) *S3DataSource {
22463	s.S3DataDistributionType = &v
22464	return s
22465}
22466
22467// SetS3DataType sets the S3DataType field's value.
22468func (s *S3DataSource) SetS3DataType(v string) *S3DataSource {
22469	s.S3DataType = &v
22470	return s
22471}
22472
22473// SetS3Uri sets the S3Uri field's value.
22474func (s *S3DataSource) SetS3Uri(v string) *S3DataSource {
22475	s.S3Uri = &v
22476	return s
22477}
22478
22479// A multi-expression that searches for the specified resource or resources
22480// in a search. All resource objects that satisfy the expression's condition
22481// are included in the search results. You must specify at least one subexpression,
22482// filter, or nested filter. A SearchExpression can contain up to twenty elements.
22483//
22484// A SearchExpression contains the following components:
22485//
22486//    * A list of Filter objects. Each filter defines a simple Boolean expression
22487//    comprised of a resource property name, Boolean operator, and value.
22488//
22489//    * A list of NestedFilter objects. Each nested filter defines a list of
22490//    Boolean expressions using a list of resource properties. A nested filter
22491//    is satisfied if a single object in the list satisfies all Boolean expressions.
22492//
22493//    * A list of SearchExpression objects. A search expression object can be
22494//    nested in a list of search expression objects.
22495//
22496//    * A Boolean operator: And or Or.
22497type SearchExpression struct {
22498	_ struct{} `type:"structure"`
22499
22500	// A list of filter objects.
22501	Filters []*Filter `min:"1" type:"list"`
22502
22503	// A list of nested filter objects.
22504	NestedFilters []*NestedFilters `min:"1" type:"list"`
22505
22506	// A Boolean operator used to evaluate the search expression. If you want every
22507	// conditional statement in all lists to be satisfied for the entire search
22508	// expression to be true, specify And. If only a single conditional statement
22509	// needs to be true for the entire search expression to be true, specify Or.
22510	// The default value is And.
22511	Operator *string `type:"string" enum:"BooleanOperator"`
22512
22513	// A list of search expression objects.
22514	SubExpressions []*SearchExpression `min:"1" type:"list"`
22515}
22516
22517// String returns the string representation
22518func (s SearchExpression) String() string {
22519	return awsutil.Prettify(s)
22520}
22521
22522// GoString returns the string representation
22523func (s SearchExpression) GoString() string {
22524	return s.String()
22525}
22526
22527// Validate inspects the fields of the type to determine if they are valid.
22528func (s *SearchExpression) Validate() error {
22529	invalidParams := request.ErrInvalidParams{Context: "SearchExpression"}
22530	if s.Filters != nil && len(s.Filters) < 1 {
22531		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
22532	}
22533	if s.NestedFilters != nil && len(s.NestedFilters) < 1 {
22534		invalidParams.Add(request.NewErrParamMinLen("NestedFilters", 1))
22535	}
22536	if s.SubExpressions != nil && len(s.SubExpressions) < 1 {
22537		invalidParams.Add(request.NewErrParamMinLen("SubExpressions", 1))
22538	}
22539	if s.Filters != nil {
22540		for i, v := range s.Filters {
22541			if v == nil {
22542				continue
22543			}
22544			if err := v.Validate(); err != nil {
22545				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
22546			}
22547		}
22548	}
22549	if s.NestedFilters != nil {
22550		for i, v := range s.NestedFilters {
22551			if v == nil {
22552				continue
22553			}
22554			if err := v.Validate(); err != nil {
22555				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NestedFilters", i), err.(request.ErrInvalidParams))
22556			}
22557		}
22558	}
22559	if s.SubExpressions != nil {
22560		for i, v := range s.SubExpressions {
22561			if v == nil {
22562				continue
22563			}
22564			if err := v.Validate(); err != nil {
22565				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubExpressions", i), err.(request.ErrInvalidParams))
22566			}
22567		}
22568	}
22569
22570	if invalidParams.Len() > 0 {
22571		return invalidParams
22572	}
22573	return nil
22574}
22575
22576// SetFilters sets the Filters field's value.
22577func (s *SearchExpression) SetFilters(v []*Filter) *SearchExpression {
22578	s.Filters = v
22579	return s
22580}
22581
22582// SetNestedFilters sets the NestedFilters field's value.
22583func (s *SearchExpression) SetNestedFilters(v []*NestedFilters) *SearchExpression {
22584	s.NestedFilters = v
22585	return s
22586}
22587
22588// SetOperator sets the Operator field's value.
22589func (s *SearchExpression) SetOperator(v string) *SearchExpression {
22590	s.Operator = &v
22591	return s
22592}
22593
22594// SetSubExpressions sets the SubExpressions field's value.
22595func (s *SearchExpression) SetSubExpressions(v []*SearchExpression) *SearchExpression {
22596	s.SubExpressions = v
22597	return s
22598}
22599
22600type SearchInput struct {
22601	_ struct{} `type:"structure"`
22602
22603	// The maximum number of results to return in a SearchResponse.
22604	MaxResults *int64 `min:"1" type:"integer"`
22605
22606	// If more than MaxResults resource objects match the specified SearchExpression,
22607	// the SearchResponse includes a NextToken. The NextToken can be passed to the
22608	// next SearchRequest to continue retrieving results for the specified SearchExpression
22609	// and Sort parameters.
22610	NextToken *string `type:"string"`
22611
22612	// The name of the Amazon SageMaker resource to search for. Currently, the only
22613	// valid Resource value is TrainingJob.
22614	//
22615	// Resource is a required field
22616	Resource *string `type:"string" required:"true" enum:"ResourceType"`
22617
22618	// A Boolean conditional statement. Resource objects must satisfy this condition
22619	// to be included in search results. You must provide at least one subexpression,
22620	// filter, or nested filter. The maximum number of recursive SubExpressions,
22621	// NestedFilters, and Filters that can be included in a SearchExpression object
22622	// is 50.
22623	SearchExpression *SearchExpression `type:"structure"`
22624
22625	// The name of the resource property used to sort the SearchResults. The default
22626	// is LastModifiedTime.
22627	SortBy *string `min:"1" type:"string"`
22628
22629	// How SearchResults are ordered. Valid values are Ascending or Descending.
22630	// The default is Descending.
22631	SortOrder *string `type:"string" enum:"SearchSortOrder"`
22632}
22633
22634// String returns the string representation
22635func (s SearchInput) String() string {
22636	return awsutil.Prettify(s)
22637}
22638
22639// GoString returns the string representation
22640func (s SearchInput) GoString() string {
22641	return s.String()
22642}
22643
22644// Validate inspects the fields of the type to determine if they are valid.
22645func (s *SearchInput) Validate() error {
22646	invalidParams := request.ErrInvalidParams{Context: "SearchInput"}
22647	if s.MaxResults != nil && *s.MaxResults < 1 {
22648		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
22649	}
22650	if s.Resource == nil {
22651		invalidParams.Add(request.NewErrParamRequired("Resource"))
22652	}
22653	if s.SortBy != nil && len(*s.SortBy) < 1 {
22654		invalidParams.Add(request.NewErrParamMinLen("SortBy", 1))
22655	}
22656	if s.SearchExpression != nil {
22657		if err := s.SearchExpression.Validate(); err != nil {
22658			invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams))
22659		}
22660	}
22661
22662	if invalidParams.Len() > 0 {
22663		return invalidParams
22664	}
22665	return nil
22666}
22667
22668// SetMaxResults sets the MaxResults field's value.
22669func (s *SearchInput) SetMaxResults(v int64) *SearchInput {
22670	s.MaxResults = &v
22671	return s
22672}
22673
22674// SetNextToken sets the NextToken field's value.
22675func (s *SearchInput) SetNextToken(v string) *SearchInput {
22676	s.NextToken = &v
22677	return s
22678}
22679
22680// SetResource sets the Resource field's value.
22681func (s *SearchInput) SetResource(v string) *SearchInput {
22682	s.Resource = &v
22683	return s
22684}
22685
22686// SetSearchExpression sets the SearchExpression field's value.
22687func (s *SearchInput) SetSearchExpression(v *SearchExpression) *SearchInput {
22688	s.SearchExpression = v
22689	return s
22690}
22691
22692// SetSortBy sets the SortBy field's value.
22693func (s *SearchInput) SetSortBy(v string) *SearchInput {
22694	s.SortBy = &v
22695	return s
22696}
22697
22698// SetSortOrder sets the SortOrder field's value.
22699func (s *SearchInput) SetSortOrder(v string) *SearchInput {
22700	s.SortOrder = &v
22701	return s
22702}
22703
22704type SearchOutput struct {
22705	_ struct{} `type:"structure"`
22706
22707	// If the result of the previous Search request was truncated, the response
22708	// includes a NextToken. To retrieve the next set of results, use the token
22709	// in the next request.
22710	NextToken *string `type:"string"`
22711
22712	// A list of SearchResult objects.
22713	Results []*SearchRecord `type:"list"`
22714}
22715
22716// String returns the string representation
22717func (s SearchOutput) String() string {
22718	return awsutil.Prettify(s)
22719}
22720
22721// GoString returns the string representation
22722func (s SearchOutput) GoString() string {
22723	return s.String()
22724}
22725
22726// SetNextToken sets the NextToken field's value.
22727func (s *SearchOutput) SetNextToken(v string) *SearchOutput {
22728	s.NextToken = &v
22729	return s
22730}
22731
22732// SetResults sets the Results field's value.
22733func (s *SearchOutput) SetResults(v []*SearchRecord) *SearchOutput {
22734	s.Results = v
22735	return s
22736}
22737
22738// An individual search result record that contains a single resource object.
22739type SearchRecord struct {
22740	_ struct{} `type:"structure"`
22741
22742	// A TrainingJob object that is returned as part of a Search request.
22743	TrainingJob *TrainingJob `type:"structure"`
22744}
22745
22746// String returns the string representation
22747func (s SearchRecord) String() string {
22748	return awsutil.Prettify(s)
22749}
22750
22751// GoString returns the string representation
22752func (s SearchRecord) GoString() string {
22753	return s.String()
22754}
22755
22756// SetTrainingJob sets the TrainingJob field's value.
22757func (s *SearchRecord) SetTrainingJob(v *TrainingJob) *SearchRecord {
22758	s.TrainingJob = v
22759	return s
22760}
22761
22762// An array element of DescribeTrainingJobResponse$SecondaryStatusTransitions.
22763// It provides additional details about a status that the training job has transitioned
22764// through. A training job can be in one of several states, for example, starting,
22765// downloading, training, or uploading. Within each state, there are a number
22766// of intermediate states. For example, within the starting state, Amazon SageMaker
22767// could be starting the training job or launching the ML instances. These transitional
22768// states are referred to as the job's secondary status.
22769type SecondaryStatusTransition struct {
22770	_ struct{} `type:"structure"`
22771
22772	// A timestamp that shows when the training job transitioned out of this secondary
22773	// status state into another secondary status state or when the training job
22774	// has ended.
22775	EndTime *time.Time `type:"timestamp"`
22776
22777	// A timestamp that shows when the training job transitioned to the current
22778	// secondary status state.
22779	//
22780	// StartTime is a required field
22781	StartTime *time.Time `type:"timestamp" required:"true"`
22782
22783	// Contains a secondary status information from a training job.
22784	//
22785	// Status might be one of the following secondary statuses:
22786	//
22787	// InProgress
22788	//
22789	//    * Starting - Starting the training job.
22790	//
22791	//    * Downloading - An optional stage for algorithms that support File training
22792	//    input mode. It indicates that data is being downloaded to the ML storage
22793	//    volumes.
22794	//
22795	//    * Training - Training is in progress.
22796	//
22797	//    * Uploading - Training is complete and the model artifacts are being uploaded
22798	//    to the S3 location.
22799	//
22800	// Completed
22801	//
22802	//    * Completed - The training job has completed.
22803	//
22804	// Failed
22805	//
22806	//    * Failed - The training job has failed. The reason for the failure is
22807	//    returned in the FailureReason field of DescribeTrainingJobResponse.
22808	//
22809	// Stopped
22810	//
22811	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
22812	//    allowed runtime.
22813	//
22814	//    * Stopped - The training job has stopped.
22815	//
22816	// Stopping
22817	//
22818	//    * Stopping - Stopping the training job.
22819	//
22820	// We no longer support the following secondary statuses:
22821	//
22822	//    * LaunchingMLInstances
22823	//
22824	//    * PreparingTrainingStack
22825	//
22826	//    * DownloadingTrainingImage
22827	//
22828	// Status is a required field
22829	Status *string `type:"string" required:"true" enum:"SecondaryStatus"`
22830
22831	// A detailed description of the progress within a secondary status.
22832	//
22833	// Amazon SageMaker provides secondary statuses and status messages that apply
22834	// to each of them:
22835	//
22836	// Starting
22837	//
22838	//    * Starting the training job.
22839	//
22840	//    * Launching requested ML instances.
22841	//
22842	//    * Insufficient capacity error from EC2 while launching instances, retrying!
22843	//
22844	//    * Launched instance was unhealthy, replacing it!
22845	//
22846	//    * Preparing the instances for training.
22847	//
22848	// Training
22849	//
22850	//    * Downloading the training image.
22851	//
22852	//    * Training image download completed. Training in progress.
22853	//
22854	// Status messages are subject to change. Therefore, we recommend not including
22855	// them in code that programmatically initiates actions. For examples, don't
22856	// use status messages in if statements.
22857	//
22858	// To have an overview of your training job's progress, view TrainingJobStatus
22859	// and SecondaryStatus in DescribeTrainingJob, and StatusMessage together. For
22860	// example, at the start of a training job, you might see the following:
22861	//
22862	//    * TrainingJobStatus - InProgress
22863	//
22864	//    * SecondaryStatus - Training
22865	//
22866	//    * StatusMessage - Downloading the training image
22867	StatusMessage *string `type:"string"`
22868}
22869
22870// String returns the string representation
22871func (s SecondaryStatusTransition) String() string {
22872	return awsutil.Prettify(s)
22873}
22874
22875// GoString returns the string representation
22876func (s SecondaryStatusTransition) GoString() string {
22877	return s.String()
22878}
22879
22880// SetEndTime sets the EndTime field's value.
22881func (s *SecondaryStatusTransition) SetEndTime(v time.Time) *SecondaryStatusTransition {
22882	s.EndTime = &v
22883	return s
22884}
22885
22886// SetStartTime sets the StartTime field's value.
22887func (s *SecondaryStatusTransition) SetStartTime(v time.Time) *SecondaryStatusTransition {
22888	s.StartTime = &v
22889	return s
22890}
22891
22892// SetStatus sets the Status field's value.
22893func (s *SecondaryStatusTransition) SetStatus(v string) *SecondaryStatusTransition {
22894	s.Status = &v
22895	return s
22896}
22897
22898// SetStatusMessage sets the StatusMessage field's value.
22899func (s *SecondaryStatusTransition) SetStatusMessage(v string) *SecondaryStatusTransition {
22900	s.StatusMessage = &v
22901	return s
22902}
22903
22904// A configuration for a shuffle option for input data in a channel. If you
22905// use S3Prefix for S3DataType, the results of the S3 key prefix matches are
22906// shuffled. If you use ManifestFile, the order of the S3 object references
22907// in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order
22908// of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling
22909// order is determined using the Seed value.
22910//
22911// For Pipe input mode, shuffling is done at the start of every epoch. With
22912// large datasets, this ensures that the order of the training data is different
22913// for each epoch, and it helps reduce bias and possible overfitting. In a multi-node
22914// training job when ShuffleConfig is combined with S3DataDistributionType of
22915// ShardedByS3Key, the data is shuffled across nodes so that the content sent
22916// to a particular node on the first epoch might be sent to a different node
22917// on the second epoch.
22918type ShuffleConfig struct {
22919	_ struct{} `type:"structure"`
22920
22921	// Determines the shuffling order in ShuffleConfig value.
22922	//
22923	// Seed is a required field
22924	Seed *int64 `type:"long" required:"true"`
22925}
22926
22927// String returns the string representation
22928func (s ShuffleConfig) String() string {
22929	return awsutil.Prettify(s)
22930}
22931
22932// GoString returns the string representation
22933func (s ShuffleConfig) GoString() string {
22934	return s.String()
22935}
22936
22937// Validate inspects the fields of the type to determine if they are valid.
22938func (s *ShuffleConfig) Validate() error {
22939	invalidParams := request.ErrInvalidParams{Context: "ShuffleConfig"}
22940	if s.Seed == nil {
22941		invalidParams.Add(request.NewErrParamRequired("Seed"))
22942	}
22943
22944	if invalidParams.Len() > 0 {
22945		return invalidParams
22946	}
22947	return nil
22948}
22949
22950// SetSeed sets the Seed field's value.
22951func (s *ShuffleConfig) SetSeed(v int64) *ShuffleConfig {
22952	s.Seed = &v
22953	return s
22954}
22955
22956// Specifies an algorithm that was used to create the model package. The algorithm
22957// must be either an algorithm resource in your Amazon SageMaker account or
22958// an algorithm in AWS Marketplace that you are subscribed to.
22959type SourceAlgorithm struct {
22960	_ struct{} `type:"structure"`
22961
22962	// The name of an algorithm that was used to create the model package. The algorithm
22963	// must be either an algorithm resource in your Amazon SageMaker account or
22964	// an algorithm in AWS Marketplace that you are subscribed to.
22965	//
22966	// AlgorithmName is a required field
22967	AlgorithmName *string `min:"1" type:"string" required:"true"`
22968
22969	// The Amazon S3 path where the model artifacts, which result from model training,
22970	// are stored. This path must point to a single gzip compressed tar archive
22971	// (.tar.gz suffix).
22972	ModelDataUrl *string `type:"string"`
22973}
22974
22975// String returns the string representation
22976func (s SourceAlgorithm) String() string {
22977	return awsutil.Prettify(s)
22978}
22979
22980// GoString returns the string representation
22981func (s SourceAlgorithm) GoString() string {
22982	return s.String()
22983}
22984
22985// Validate inspects the fields of the type to determine if they are valid.
22986func (s *SourceAlgorithm) Validate() error {
22987	invalidParams := request.ErrInvalidParams{Context: "SourceAlgorithm"}
22988	if s.AlgorithmName == nil {
22989		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
22990	}
22991	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
22992		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
22993	}
22994
22995	if invalidParams.Len() > 0 {
22996		return invalidParams
22997	}
22998	return nil
22999}
23000
23001// SetAlgorithmName sets the AlgorithmName field's value.
23002func (s *SourceAlgorithm) SetAlgorithmName(v string) *SourceAlgorithm {
23003	s.AlgorithmName = &v
23004	return s
23005}
23006
23007// SetModelDataUrl sets the ModelDataUrl field's value.
23008func (s *SourceAlgorithm) SetModelDataUrl(v string) *SourceAlgorithm {
23009	s.ModelDataUrl = &v
23010	return s
23011}
23012
23013// A list of algorithms that were used to create a model package.
23014type SourceAlgorithmSpecification struct {
23015	_ struct{} `type:"structure"`
23016
23017	// A list of the algorithms that were used to create a model package.
23018	//
23019	// SourceAlgorithms is a required field
23020	SourceAlgorithms []*SourceAlgorithm `min:"1" type:"list" required:"true"`
23021}
23022
23023// String returns the string representation
23024func (s SourceAlgorithmSpecification) String() string {
23025	return awsutil.Prettify(s)
23026}
23027
23028// GoString returns the string representation
23029func (s SourceAlgorithmSpecification) GoString() string {
23030	return s.String()
23031}
23032
23033// Validate inspects the fields of the type to determine if they are valid.
23034func (s *SourceAlgorithmSpecification) Validate() error {
23035	invalidParams := request.ErrInvalidParams{Context: "SourceAlgorithmSpecification"}
23036	if s.SourceAlgorithms == nil {
23037		invalidParams.Add(request.NewErrParamRequired("SourceAlgorithms"))
23038	}
23039	if s.SourceAlgorithms != nil && len(s.SourceAlgorithms) < 1 {
23040		invalidParams.Add(request.NewErrParamMinLen("SourceAlgorithms", 1))
23041	}
23042	if s.SourceAlgorithms != nil {
23043		for i, v := range s.SourceAlgorithms {
23044			if v == nil {
23045				continue
23046			}
23047			if err := v.Validate(); err != nil {
23048				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SourceAlgorithms", i), err.(request.ErrInvalidParams))
23049			}
23050		}
23051	}
23052
23053	if invalidParams.Len() > 0 {
23054		return invalidParams
23055	}
23056	return nil
23057}
23058
23059// SetSourceAlgorithms sets the SourceAlgorithms field's value.
23060func (s *SourceAlgorithmSpecification) SetSourceAlgorithms(v []*SourceAlgorithm) *SourceAlgorithmSpecification {
23061	s.SourceAlgorithms = v
23062	return s
23063}
23064
23065type StartNotebookInstanceInput struct {
23066	_ struct{} `type:"structure"`
23067
23068	// The name of the notebook instance to start.
23069	//
23070	// NotebookInstanceName is a required field
23071	NotebookInstanceName *string `type:"string" required:"true"`
23072}
23073
23074// String returns the string representation
23075func (s StartNotebookInstanceInput) String() string {
23076	return awsutil.Prettify(s)
23077}
23078
23079// GoString returns the string representation
23080func (s StartNotebookInstanceInput) GoString() string {
23081	return s.String()
23082}
23083
23084// Validate inspects the fields of the type to determine if they are valid.
23085func (s *StartNotebookInstanceInput) Validate() error {
23086	invalidParams := request.ErrInvalidParams{Context: "StartNotebookInstanceInput"}
23087	if s.NotebookInstanceName == nil {
23088		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
23089	}
23090
23091	if invalidParams.Len() > 0 {
23092		return invalidParams
23093	}
23094	return nil
23095}
23096
23097// SetNotebookInstanceName sets the NotebookInstanceName field's value.
23098func (s *StartNotebookInstanceInput) SetNotebookInstanceName(v string) *StartNotebookInstanceInput {
23099	s.NotebookInstanceName = &v
23100	return s
23101}
23102
23103type StartNotebookInstanceOutput struct {
23104	_ struct{} `type:"structure"`
23105}
23106
23107// String returns the string representation
23108func (s StartNotebookInstanceOutput) String() string {
23109	return awsutil.Prettify(s)
23110}
23111
23112// GoString returns the string representation
23113func (s StartNotebookInstanceOutput) GoString() string {
23114	return s.String()
23115}
23116
23117type StopCompilationJobInput struct {
23118	_ struct{} `type:"structure"`
23119
23120	// The name of the model compilation job to stop.
23121	//
23122	// CompilationJobName is a required field
23123	CompilationJobName *string `min:"1" type:"string" required:"true"`
23124}
23125
23126// String returns the string representation
23127func (s StopCompilationJobInput) String() string {
23128	return awsutil.Prettify(s)
23129}
23130
23131// GoString returns the string representation
23132func (s StopCompilationJobInput) GoString() string {
23133	return s.String()
23134}
23135
23136// Validate inspects the fields of the type to determine if they are valid.
23137func (s *StopCompilationJobInput) Validate() error {
23138	invalidParams := request.ErrInvalidParams{Context: "StopCompilationJobInput"}
23139	if s.CompilationJobName == nil {
23140		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
23141	}
23142	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
23143		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
23144	}
23145
23146	if invalidParams.Len() > 0 {
23147		return invalidParams
23148	}
23149	return nil
23150}
23151
23152// SetCompilationJobName sets the CompilationJobName field's value.
23153func (s *StopCompilationJobInput) SetCompilationJobName(v string) *StopCompilationJobInput {
23154	s.CompilationJobName = &v
23155	return s
23156}
23157
23158type StopCompilationJobOutput struct {
23159	_ struct{} `type:"structure"`
23160}
23161
23162// String returns the string representation
23163func (s StopCompilationJobOutput) String() string {
23164	return awsutil.Prettify(s)
23165}
23166
23167// GoString returns the string representation
23168func (s StopCompilationJobOutput) GoString() string {
23169	return s.String()
23170}
23171
23172type StopHyperParameterTuningJobInput struct {
23173	_ struct{} `type:"structure"`
23174
23175	// The name of the tuning job to stop.
23176	//
23177	// HyperParameterTuningJobName is a required field
23178	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
23179}
23180
23181// String returns the string representation
23182func (s StopHyperParameterTuningJobInput) String() string {
23183	return awsutil.Prettify(s)
23184}
23185
23186// GoString returns the string representation
23187func (s StopHyperParameterTuningJobInput) GoString() string {
23188	return s.String()
23189}
23190
23191// Validate inspects the fields of the type to determine if they are valid.
23192func (s *StopHyperParameterTuningJobInput) Validate() error {
23193	invalidParams := request.ErrInvalidParams{Context: "StopHyperParameterTuningJobInput"}
23194	if s.HyperParameterTuningJobName == nil {
23195		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
23196	}
23197	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
23198		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
23199	}
23200
23201	if invalidParams.Len() > 0 {
23202		return invalidParams
23203	}
23204	return nil
23205}
23206
23207// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
23208func (s *StopHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *StopHyperParameterTuningJobInput {
23209	s.HyperParameterTuningJobName = &v
23210	return s
23211}
23212
23213type StopHyperParameterTuningJobOutput struct {
23214	_ struct{} `type:"structure"`
23215}
23216
23217// String returns the string representation
23218func (s StopHyperParameterTuningJobOutput) String() string {
23219	return awsutil.Prettify(s)
23220}
23221
23222// GoString returns the string representation
23223func (s StopHyperParameterTuningJobOutput) GoString() string {
23224	return s.String()
23225}
23226
23227type StopLabelingJobInput struct {
23228	_ struct{} `type:"structure"`
23229
23230	// The name of the labeling job to stop.
23231	//
23232	// LabelingJobName is a required field
23233	LabelingJobName *string `min:"1" type:"string" required:"true"`
23234}
23235
23236// String returns the string representation
23237func (s StopLabelingJobInput) String() string {
23238	return awsutil.Prettify(s)
23239}
23240
23241// GoString returns the string representation
23242func (s StopLabelingJobInput) GoString() string {
23243	return s.String()
23244}
23245
23246// Validate inspects the fields of the type to determine if they are valid.
23247func (s *StopLabelingJobInput) Validate() error {
23248	invalidParams := request.ErrInvalidParams{Context: "StopLabelingJobInput"}
23249	if s.LabelingJobName == nil {
23250		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
23251	}
23252	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
23253		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
23254	}
23255
23256	if invalidParams.Len() > 0 {
23257		return invalidParams
23258	}
23259	return nil
23260}
23261
23262// SetLabelingJobName sets the LabelingJobName field's value.
23263func (s *StopLabelingJobInput) SetLabelingJobName(v string) *StopLabelingJobInput {
23264	s.LabelingJobName = &v
23265	return s
23266}
23267
23268type StopLabelingJobOutput struct {
23269	_ struct{} `type:"structure"`
23270}
23271
23272// String returns the string representation
23273func (s StopLabelingJobOutput) String() string {
23274	return awsutil.Prettify(s)
23275}
23276
23277// GoString returns the string representation
23278func (s StopLabelingJobOutput) GoString() string {
23279	return s.String()
23280}
23281
23282type StopNotebookInstanceInput struct {
23283	_ struct{} `type:"structure"`
23284
23285	// The name of the notebook instance to terminate.
23286	//
23287	// NotebookInstanceName is a required field
23288	NotebookInstanceName *string `type:"string" required:"true"`
23289}
23290
23291// String returns the string representation
23292func (s StopNotebookInstanceInput) String() string {
23293	return awsutil.Prettify(s)
23294}
23295
23296// GoString returns the string representation
23297func (s StopNotebookInstanceInput) GoString() string {
23298	return s.String()
23299}
23300
23301// Validate inspects the fields of the type to determine if they are valid.
23302func (s *StopNotebookInstanceInput) Validate() error {
23303	invalidParams := request.ErrInvalidParams{Context: "StopNotebookInstanceInput"}
23304	if s.NotebookInstanceName == nil {
23305		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
23306	}
23307
23308	if invalidParams.Len() > 0 {
23309		return invalidParams
23310	}
23311	return nil
23312}
23313
23314// SetNotebookInstanceName sets the NotebookInstanceName field's value.
23315func (s *StopNotebookInstanceInput) SetNotebookInstanceName(v string) *StopNotebookInstanceInput {
23316	s.NotebookInstanceName = &v
23317	return s
23318}
23319
23320type StopNotebookInstanceOutput struct {
23321	_ struct{} `type:"structure"`
23322}
23323
23324// String returns the string representation
23325func (s StopNotebookInstanceOutput) String() string {
23326	return awsutil.Prettify(s)
23327}
23328
23329// GoString returns the string representation
23330func (s StopNotebookInstanceOutput) GoString() string {
23331	return s.String()
23332}
23333
23334type StopTrainingJobInput struct {
23335	_ struct{} `type:"structure"`
23336
23337	// The name of the training job to stop.
23338	//
23339	// TrainingJobName is a required field
23340	TrainingJobName *string `min:"1" type:"string" required:"true"`
23341}
23342
23343// String returns the string representation
23344func (s StopTrainingJobInput) String() string {
23345	return awsutil.Prettify(s)
23346}
23347
23348// GoString returns the string representation
23349func (s StopTrainingJobInput) GoString() string {
23350	return s.String()
23351}
23352
23353// Validate inspects the fields of the type to determine if they are valid.
23354func (s *StopTrainingJobInput) Validate() error {
23355	invalidParams := request.ErrInvalidParams{Context: "StopTrainingJobInput"}
23356	if s.TrainingJobName == nil {
23357		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
23358	}
23359	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
23360		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
23361	}
23362
23363	if invalidParams.Len() > 0 {
23364		return invalidParams
23365	}
23366	return nil
23367}
23368
23369// SetTrainingJobName sets the TrainingJobName field's value.
23370func (s *StopTrainingJobInput) SetTrainingJobName(v string) *StopTrainingJobInput {
23371	s.TrainingJobName = &v
23372	return s
23373}
23374
23375type StopTrainingJobOutput struct {
23376	_ struct{} `type:"structure"`
23377}
23378
23379// String returns the string representation
23380func (s StopTrainingJobOutput) String() string {
23381	return awsutil.Prettify(s)
23382}
23383
23384// GoString returns the string representation
23385func (s StopTrainingJobOutput) GoString() string {
23386	return s.String()
23387}
23388
23389type StopTransformJobInput struct {
23390	_ struct{} `type:"structure"`
23391
23392	// The name of the transform job to stop.
23393	//
23394	// TransformJobName is a required field
23395	TransformJobName *string `min:"1" type:"string" required:"true"`
23396}
23397
23398// String returns the string representation
23399func (s StopTransformJobInput) String() string {
23400	return awsutil.Prettify(s)
23401}
23402
23403// GoString returns the string representation
23404func (s StopTransformJobInput) GoString() string {
23405	return s.String()
23406}
23407
23408// Validate inspects the fields of the type to determine if they are valid.
23409func (s *StopTransformJobInput) Validate() error {
23410	invalidParams := request.ErrInvalidParams{Context: "StopTransformJobInput"}
23411	if s.TransformJobName == nil {
23412		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
23413	}
23414	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
23415		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
23416	}
23417
23418	if invalidParams.Len() > 0 {
23419		return invalidParams
23420	}
23421	return nil
23422}
23423
23424// SetTransformJobName sets the TransformJobName field's value.
23425func (s *StopTransformJobInput) SetTransformJobName(v string) *StopTransformJobInput {
23426	s.TransformJobName = &v
23427	return s
23428}
23429
23430type StopTransformJobOutput struct {
23431	_ struct{} `type:"structure"`
23432}
23433
23434// String returns the string representation
23435func (s StopTransformJobOutput) String() string {
23436	return awsutil.Prettify(s)
23437}
23438
23439// GoString returns the string representation
23440func (s StopTransformJobOutput) GoString() string {
23441	return s.String()
23442}
23443
23444// Specifies a limit to how long a model training or compilation job can run.
23445// It also specifies how long you are willing to wait for a managed spot training
23446// job to complete. When the job reaches the time limit, Amazon SageMaker ends
23447// the training or compilation job. Use this API to cap model training costs.
23448//
23449// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
23450// delays job termination for 120 seconds. Algorithms can use this 120-second
23451// window to save the model artifacts, so the results of training are not lost.
23452//
23453// The training algorithms provided by Amazon SageMaker automatically save the
23454// intermediate results of a model training job when possible. This attempt
23455// to save artifacts is only a best effort case as model might not be in a state
23456// from which it can be saved. For example, if training has just started, the
23457// model might not be ready to save. When saved, this intermediate data is a
23458// valid model artifact. You can use it to create a model with CreateModel.
23459//
23460// The Neural Topic Model (NTM) currently does not support saving intermediate
23461// model artifacts. When training NTMs, make sure that the maximum runtime is
23462// sufficient for the training job to complete.
23463type StoppingCondition struct {
23464	_ struct{} `type:"structure"`
23465
23466	// The maximum length of time, in seconds, that the training or compilation
23467	// job can run. If job does not complete during this time, Amazon SageMaker
23468	// ends the job. If value is not specified, default value is 1 day. The maximum
23469	// value is 28 days.
23470	MaxRuntimeInSeconds *int64 `min:"1" type:"integer"`
23471
23472	// The maximum length of time, in seconds, how long you are willing to wait
23473	// for a managed spot training job to complete. It is the amount of time spent
23474	// waiting for Spot capacity plus the amount of time the training job runs.
23475	// It must be equal to or greater than MaxRuntimeInSeconds.
23476	MaxWaitTimeInSeconds *int64 `min:"1" type:"integer"`
23477}
23478
23479// String returns the string representation
23480func (s StoppingCondition) String() string {
23481	return awsutil.Prettify(s)
23482}
23483
23484// GoString returns the string representation
23485func (s StoppingCondition) GoString() string {
23486	return s.String()
23487}
23488
23489// Validate inspects the fields of the type to determine if they are valid.
23490func (s *StoppingCondition) Validate() error {
23491	invalidParams := request.ErrInvalidParams{Context: "StoppingCondition"}
23492	if s.MaxRuntimeInSeconds != nil && *s.MaxRuntimeInSeconds < 1 {
23493		invalidParams.Add(request.NewErrParamMinValue("MaxRuntimeInSeconds", 1))
23494	}
23495	if s.MaxWaitTimeInSeconds != nil && *s.MaxWaitTimeInSeconds < 1 {
23496		invalidParams.Add(request.NewErrParamMinValue("MaxWaitTimeInSeconds", 1))
23497	}
23498
23499	if invalidParams.Len() > 0 {
23500		return invalidParams
23501	}
23502	return nil
23503}
23504
23505// SetMaxRuntimeInSeconds sets the MaxRuntimeInSeconds field's value.
23506func (s *StoppingCondition) SetMaxRuntimeInSeconds(v int64) *StoppingCondition {
23507	s.MaxRuntimeInSeconds = &v
23508	return s
23509}
23510
23511// SetMaxWaitTimeInSeconds sets the MaxWaitTimeInSeconds field's value.
23512func (s *StoppingCondition) SetMaxWaitTimeInSeconds(v int64) *StoppingCondition {
23513	s.MaxWaitTimeInSeconds = &v
23514	return s
23515}
23516
23517// Describes a work team of a vendor that does the a labelling job.
23518type SubscribedWorkteam struct {
23519	_ struct{} `type:"structure"`
23520
23521	ListingId *string `type:"string"`
23522
23523	// The description of the vendor from the Amazon Marketplace.
23524	MarketplaceDescription *string `min:"1" type:"string"`
23525
23526	// The title of the service provided by the vendor in the Amazon Marketplace.
23527	MarketplaceTitle *string `min:"1" type:"string"`
23528
23529	// The name of the vendor in the Amazon Marketplace.
23530	SellerName *string `type:"string"`
23531
23532	// The Amazon Resource Name (ARN) of the vendor that you have subscribed.
23533	//
23534	// WorkteamArn is a required field
23535	WorkteamArn *string `type:"string" required:"true"`
23536}
23537
23538// String returns the string representation
23539func (s SubscribedWorkteam) String() string {
23540	return awsutil.Prettify(s)
23541}
23542
23543// GoString returns the string representation
23544func (s SubscribedWorkteam) GoString() string {
23545	return s.String()
23546}
23547
23548// SetListingId sets the ListingId field's value.
23549func (s *SubscribedWorkteam) SetListingId(v string) *SubscribedWorkteam {
23550	s.ListingId = &v
23551	return s
23552}
23553
23554// SetMarketplaceDescription sets the MarketplaceDescription field's value.
23555func (s *SubscribedWorkteam) SetMarketplaceDescription(v string) *SubscribedWorkteam {
23556	s.MarketplaceDescription = &v
23557	return s
23558}
23559
23560// SetMarketplaceTitle sets the MarketplaceTitle field's value.
23561func (s *SubscribedWorkteam) SetMarketplaceTitle(v string) *SubscribedWorkteam {
23562	s.MarketplaceTitle = &v
23563	return s
23564}
23565
23566// SetSellerName sets the SellerName field's value.
23567func (s *SubscribedWorkteam) SetSellerName(v string) *SubscribedWorkteam {
23568	s.SellerName = &v
23569	return s
23570}
23571
23572// SetWorkteamArn sets the WorkteamArn field's value.
23573func (s *SubscribedWorkteam) SetWorkteamArn(v string) *SubscribedWorkteam {
23574	s.WorkteamArn = &v
23575	return s
23576}
23577
23578// Limits the property names that are included in the response.
23579type SuggestionQuery struct {
23580	_ struct{} `type:"structure"`
23581
23582	// A type of SuggestionQuery. Defines a property name hint. Only property names
23583	// that match the specified hint are included in the response.
23584	PropertyNameQuery *PropertyNameQuery `type:"structure"`
23585}
23586
23587// String returns the string representation
23588func (s SuggestionQuery) String() string {
23589	return awsutil.Prettify(s)
23590}
23591
23592// GoString returns the string representation
23593func (s SuggestionQuery) GoString() string {
23594	return s.String()
23595}
23596
23597// Validate inspects the fields of the type to determine if they are valid.
23598func (s *SuggestionQuery) Validate() error {
23599	invalidParams := request.ErrInvalidParams{Context: "SuggestionQuery"}
23600	if s.PropertyNameQuery != nil {
23601		if err := s.PropertyNameQuery.Validate(); err != nil {
23602			invalidParams.AddNested("PropertyNameQuery", err.(request.ErrInvalidParams))
23603		}
23604	}
23605
23606	if invalidParams.Len() > 0 {
23607		return invalidParams
23608	}
23609	return nil
23610}
23611
23612// SetPropertyNameQuery sets the PropertyNameQuery field's value.
23613func (s *SuggestionQuery) SetPropertyNameQuery(v *PropertyNameQuery) *SuggestionQuery {
23614	s.PropertyNameQuery = v
23615	return s
23616}
23617
23618// Describes a tag.
23619type Tag struct {
23620	_ struct{} `type:"structure"`
23621
23622	// The tag key.
23623	//
23624	// Key is a required field
23625	Key *string `min:"1" type:"string" required:"true"`
23626
23627	// The tag value.
23628	//
23629	// Value is a required field
23630	Value *string `type:"string" required:"true"`
23631}
23632
23633// String returns the string representation
23634func (s Tag) String() string {
23635	return awsutil.Prettify(s)
23636}
23637
23638// GoString returns the string representation
23639func (s Tag) GoString() string {
23640	return s.String()
23641}
23642
23643// Validate inspects the fields of the type to determine if they are valid.
23644func (s *Tag) Validate() error {
23645	invalidParams := request.ErrInvalidParams{Context: "Tag"}
23646	if s.Key == nil {
23647		invalidParams.Add(request.NewErrParamRequired("Key"))
23648	}
23649	if s.Key != nil && len(*s.Key) < 1 {
23650		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
23651	}
23652	if s.Value == nil {
23653		invalidParams.Add(request.NewErrParamRequired("Value"))
23654	}
23655
23656	if invalidParams.Len() > 0 {
23657		return invalidParams
23658	}
23659	return nil
23660}
23661
23662// SetKey sets the Key field's value.
23663func (s *Tag) SetKey(v string) *Tag {
23664	s.Key = &v
23665	return s
23666}
23667
23668// SetValue sets the Value field's value.
23669func (s *Tag) SetValue(v string) *Tag {
23670	s.Value = &v
23671	return s
23672}
23673
23674// Contains information about a training job.
23675type TrainingJob struct {
23676	_ struct{} `type:"structure"`
23677
23678	// Information about the algorithm used for training, and algorithm metadata.
23679	AlgorithmSpecification *AlgorithmSpecification `type:"structure"`
23680
23681	// A timestamp that indicates when the training job was created.
23682	CreationTime *time.Time `type:"timestamp"`
23683
23684	// To encrypt all communications between ML compute instances in distributed
23685	// training, choose True. Encryption provides greater security for distributed
23686	// training, but training might take longer. How long it takes depends on the
23687	// amount of communication between compute instances, especially if you use
23688	// a deep learning algorithm in distributed training.
23689	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
23690
23691	// If the TrainingJob was created with network isolation, the value is set to
23692	// true. If network isolation is enabled, nodes can't communicate beyond the
23693	// VPC they run in.
23694	EnableNetworkIsolation *bool `type:"boolean"`
23695
23696	// If the training job failed, the reason it failed.
23697	FailureReason *string `type:"string"`
23698
23699	// A list of final metric values that are set when the training job completes.
23700	// Used only if the training job was configured to use metrics.
23701	FinalMetricDataList []*MetricData `type:"list"`
23702
23703	// Algorithm-specific parameters.
23704	HyperParameters map[string]*string `type:"map"`
23705
23706	// An array of Channel objects that describes each data input channel.
23707	InputDataConfig []*Channel `min:"1" type:"list"`
23708
23709	// The Amazon Resource Name (ARN) of the labeling job.
23710	LabelingJobArn *string `type:"string"`
23711
23712	// A timestamp that indicates when the status of the training job was last modified.
23713	LastModifiedTime *time.Time `type:"timestamp"`
23714
23715	// Information about the Amazon S3 location that is configured for storing model
23716	// artifacts.
23717	ModelArtifacts *ModelArtifacts `type:"structure"`
23718
23719	// The S3 path where model artifacts that you configured when creating the job
23720	// are stored. Amazon SageMaker creates subfolders for model artifacts.
23721	OutputDataConfig *OutputDataConfig `type:"structure"`
23722
23723	// Resources, including ML compute instances and ML storage volumes, that are
23724	// configured for model training.
23725	ResourceConfig *ResourceConfig `type:"structure"`
23726
23727	// The AWS Identity and Access Management (IAM) role configured for the training
23728	// job.
23729	RoleArn *string `min:"20" type:"string"`
23730
23731	// Provides detailed information about the state of the training job. For detailed
23732	// information about the secondary status of the training job, see StatusMessage
23733	// under SecondaryStatusTransition.
23734	//
23735	// Amazon SageMaker provides primary statuses and secondary statuses that apply
23736	// to each of them:
23737	//
23738	// InProgress
23739	//
23740	//    * Starting - Starting the training job.
23741	//
23742	//    * Downloading - An optional stage for algorithms that support File training
23743	//    input mode. It indicates that data is being downloaded to the ML storage
23744	//    volumes.
23745	//
23746	//    * Training - Training is in progress.
23747	//
23748	//    * Uploading - Training is complete and the model artifacts are being uploaded
23749	//    to the S3 location.
23750	//
23751	// Completed
23752	//
23753	//    * Completed - The training job has completed.
23754	//
23755	// Failed
23756	//
23757	//    * Failed - The training job has failed. The reason for the failure is
23758	//    returned in the FailureReason field of DescribeTrainingJobResponse.
23759	//
23760	// Stopped
23761	//
23762	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
23763	//    allowed runtime.
23764	//
23765	//    * Stopped - The training job has stopped.
23766	//
23767	// Stopping
23768	//
23769	//    * Stopping - Stopping the training job.
23770	//
23771	// Valid values for SecondaryStatus are subject to change.
23772	//
23773	// We no longer support the following secondary statuses:
23774	//
23775	//    * LaunchingMLInstances
23776	//
23777	//    * PreparingTrainingStack
23778	//
23779	//    * DownloadingTrainingImage
23780	SecondaryStatus *string `type:"string" enum:"SecondaryStatus"`
23781
23782	// A history of all of the secondary statuses that the training job has transitioned
23783	// through.
23784	SecondaryStatusTransitions []*SecondaryStatusTransition `type:"list"`
23785
23786	// Specifies a limit to how long a model training job can run. When the job
23787	// reaches the time limit, Amazon SageMaker ends the training job. Use this
23788	// API to cap model training costs.
23789	//
23790	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
23791	// delays job termination for 120 seconds. Algorithms can use this 120-second
23792	// window to save the model artifacts, so the results of training are not lost.
23793	StoppingCondition *StoppingCondition `type:"structure"`
23794
23795	// An array of key-value pairs. For more information, see Using Cost Allocation
23796	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
23797	// in the AWS Billing and Cost Management User Guide.
23798	Tags []*Tag `type:"list"`
23799
23800	// Indicates the time when the training job ends on training instances. You
23801	// are billed for the time interval between the value of TrainingStartTime and
23802	// this time. For successful jobs and stopped jobs, this is the time after model
23803	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
23804	// detects a job failure.
23805	TrainingEndTime *time.Time `type:"timestamp"`
23806
23807	// The Amazon Resource Name (ARN) of the training job.
23808	TrainingJobArn *string `type:"string"`
23809
23810	// The name of the training job.
23811	TrainingJobName *string `min:"1" type:"string"`
23812
23813	// The status of the training job.
23814	//
23815	// Training job statuses are:
23816	//
23817	//    * InProgress - The training is in progress.
23818	//
23819	//    * Completed - The training job has completed.
23820	//
23821	//    * Failed - The training job has failed. To see the reason for the failure,
23822	//    see the FailureReason field in the response to a DescribeTrainingJobResponse
23823	//    call.
23824	//
23825	//    * Stopping - The training job is stopping.
23826	//
23827	//    * Stopped - The training job has stopped.
23828	//
23829	// For more detailed information, see SecondaryStatus.
23830	TrainingJobStatus *string `type:"string" enum:"TrainingJobStatus"`
23831
23832	// Indicates the time when the training job starts on training instances. You
23833	// are billed for the time interval between this time and the value of TrainingEndTime.
23834	// The start time in CloudWatch Logs might be later than this time. The difference
23835	// is due to the time it takes to download the training data and to the size
23836	// of the training container.
23837	TrainingStartTime *time.Time `type:"timestamp"`
23838
23839	// The Amazon Resource Name (ARN) of the associated hyperparameter tuning job
23840	// if the training job was launched by a hyperparameter tuning job.
23841	TuningJobArn *string `type:"string"`
23842
23843	// A VpcConfig object that specifies the VPC that this training job has access
23844	// to. For more information, see Protect Training Jobs by Using an Amazon Virtual
23845	// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
23846	VpcConfig *VpcConfig `type:"structure"`
23847}
23848
23849// String returns the string representation
23850func (s TrainingJob) String() string {
23851	return awsutil.Prettify(s)
23852}
23853
23854// GoString returns the string representation
23855func (s TrainingJob) GoString() string {
23856	return s.String()
23857}
23858
23859// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
23860func (s *TrainingJob) SetAlgorithmSpecification(v *AlgorithmSpecification) *TrainingJob {
23861	s.AlgorithmSpecification = v
23862	return s
23863}
23864
23865// SetCreationTime sets the CreationTime field's value.
23866func (s *TrainingJob) SetCreationTime(v time.Time) *TrainingJob {
23867	s.CreationTime = &v
23868	return s
23869}
23870
23871// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
23872func (s *TrainingJob) SetEnableInterContainerTrafficEncryption(v bool) *TrainingJob {
23873	s.EnableInterContainerTrafficEncryption = &v
23874	return s
23875}
23876
23877// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
23878func (s *TrainingJob) SetEnableNetworkIsolation(v bool) *TrainingJob {
23879	s.EnableNetworkIsolation = &v
23880	return s
23881}
23882
23883// SetFailureReason sets the FailureReason field's value.
23884func (s *TrainingJob) SetFailureReason(v string) *TrainingJob {
23885	s.FailureReason = &v
23886	return s
23887}
23888
23889// SetFinalMetricDataList sets the FinalMetricDataList field's value.
23890func (s *TrainingJob) SetFinalMetricDataList(v []*MetricData) *TrainingJob {
23891	s.FinalMetricDataList = v
23892	return s
23893}
23894
23895// SetHyperParameters sets the HyperParameters field's value.
23896func (s *TrainingJob) SetHyperParameters(v map[string]*string) *TrainingJob {
23897	s.HyperParameters = v
23898	return s
23899}
23900
23901// SetInputDataConfig sets the InputDataConfig field's value.
23902func (s *TrainingJob) SetInputDataConfig(v []*Channel) *TrainingJob {
23903	s.InputDataConfig = v
23904	return s
23905}
23906
23907// SetLabelingJobArn sets the LabelingJobArn field's value.
23908func (s *TrainingJob) SetLabelingJobArn(v string) *TrainingJob {
23909	s.LabelingJobArn = &v
23910	return s
23911}
23912
23913// SetLastModifiedTime sets the LastModifiedTime field's value.
23914func (s *TrainingJob) SetLastModifiedTime(v time.Time) *TrainingJob {
23915	s.LastModifiedTime = &v
23916	return s
23917}
23918
23919// SetModelArtifacts sets the ModelArtifacts field's value.
23920func (s *TrainingJob) SetModelArtifacts(v *ModelArtifacts) *TrainingJob {
23921	s.ModelArtifacts = v
23922	return s
23923}
23924
23925// SetOutputDataConfig sets the OutputDataConfig field's value.
23926func (s *TrainingJob) SetOutputDataConfig(v *OutputDataConfig) *TrainingJob {
23927	s.OutputDataConfig = v
23928	return s
23929}
23930
23931// SetResourceConfig sets the ResourceConfig field's value.
23932func (s *TrainingJob) SetResourceConfig(v *ResourceConfig) *TrainingJob {
23933	s.ResourceConfig = v
23934	return s
23935}
23936
23937// SetRoleArn sets the RoleArn field's value.
23938func (s *TrainingJob) SetRoleArn(v string) *TrainingJob {
23939	s.RoleArn = &v
23940	return s
23941}
23942
23943// SetSecondaryStatus sets the SecondaryStatus field's value.
23944func (s *TrainingJob) SetSecondaryStatus(v string) *TrainingJob {
23945	s.SecondaryStatus = &v
23946	return s
23947}
23948
23949// SetSecondaryStatusTransitions sets the SecondaryStatusTransitions field's value.
23950func (s *TrainingJob) SetSecondaryStatusTransitions(v []*SecondaryStatusTransition) *TrainingJob {
23951	s.SecondaryStatusTransitions = v
23952	return s
23953}
23954
23955// SetStoppingCondition sets the StoppingCondition field's value.
23956func (s *TrainingJob) SetStoppingCondition(v *StoppingCondition) *TrainingJob {
23957	s.StoppingCondition = v
23958	return s
23959}
23960
23961// SetTags sets the Tags field's value.
23962func (s *TrainingJob) SetTags(v []*Tag) *TrainingJob {
23963	s.Tags = v
23964	return s
23965}
23966
23967// SetTrainingEndTime sets the TrainingEndTime field's value.
23968func (s *TrainingJob) SetTrainingEndTime(v time.Time) *TrainingJob {
23969	s.TrainingEndTime = &v
23970	return s
23971}
23972
23973// SetTrainingJobArn sets the TrainingJobArn field's value.
23974func (s *TrainingJob) SetTrainingJobArn(v string) *TrainingJob {
23975	s.TrainingJobArn = &v
23976	return s
23977}
23978
23979// SetTrainingJobName sets the TrainingJobName field's value.
23980func (s *TrainingJob) SetTrainingJobName(v string) *TrainingJob {
23981	s.TrainingJobName = &v
23982	return s
23983}
23984
23985// SetTrainingJobStatus sets the TrainingJobStatus field's value.
23986func (s *TrainingJob) SetTrainingJobStatus(v string) *TrainingJob {
23987	s.TrainingJobStatus = &v
23988	return s
23989}
23990
23991// SetTrainingStartTime sets the TrainingStartTime field's value.
23992func (s *TrainingJob) SetTrainingStartTime(v time.Time) *TrainingJob {
23993	s.TrainingStartTime = &v
23994	return s
23995}
23996
23997// SetTuningJobArn sets the TuningJobArn field's value.
23998func (s *TrainingJob) SetTuningJobArn(v string) *TrainingJob {
23999	s.TuningJobArn = &v
24000	return s
24001}
24002
24003// SetVpcConfig sets the VpcConfig field's value.
24004func (s *TrainingJob) SetVpcConfig(v *VpcConfig) *TrainingJob {
24005	s.VpcConfig = v
24006	return s
24007}
24008
24009// Defines the input needed to run a training job using the algorithm.
24010type TrainingJobDefinition struct {
24011	_ struct{} `type:"structure"`
24012
24013	// The hyperparameters used for the training job.
24014	HyperParameters map[string]*string `type:"map"`
24015
24016	// An array of Channel objects, each of which specifies an input source.
24017	//
24018	// InputDataConfig is a required field
24019	InputDataConfig []*Channel `min:"1" type:"list" required:"true"`
24020
24021	// the path to the S3 bucket where you want to store model artifacts. Amazon
24022	// SageMaker creates subfolders for the artifacts.
24023	//
24024	// OutputDataConfig is a required field
24025	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
24026
24027	// The resources, including the ML compute instances and ML storage volumes,
24028	// to use for model training.
24029	//
24030	// ResourceConfig is a required field
24031	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
24032
24033	// Specifies a limit to how long a model training job can run. When the job
24034	// reaches the time limit, Amazon SageMaker ends the training job. Use this
24035	// API to cap model training costs.
24036	//
24037	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
24038	// delays job termination for 120 seconds. Algorithms can use this 120-second
24039	// window to save the model artifacts.
24040	//
24041	// StoppingCondition is a required field
24042	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
24043
24044	// The input mode used by the algorithm for the training job. For the input
24045	// modes that Amazon SageMaker algorithms support, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
24046	//
24047	// If an algorithm supports the File input mode, Amazon SageMaker downloads
24048	// the training data from S3 to the provisioned ML storage Volume, and mounts
24049	// the directory to docker volume for training container. If an algorithm supports
24050	// the Pipe input mode, Amazon SageMaker streams data directly from S3 to the
24051	// container.
24052	//
24053	// TrainingInputMode is a required field
24054	TrainingInputMode *string `type:"string" required:"true" enum:"TrainingInputMode"`
24055}
24056
24057// String returns the string representation
24058func (s TrainingJobDefinition) String() string {
24059	return awsutil.Prettify(s)
24060}
24061
24062// GoString returns the string representation
24063func (s TrainingJobDefinition) GoString() string {
24064	return s.String()
24065}
24066
24067// Validate inspects the fields of the type to determine if they are valid.
24068func (s *TrainingJobDefinition) Validate() error {
24069	invalidParams := request.ErrInvalidParams{Context: "TrainingJobDefinition"}
24070	if s.InputDataConfig == nil {
24071		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
24072	}
24073	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
24074		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
24075	}
24076	if s.OutputDataConfig == nil {
24077		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
24078	}
24079	if s.ResourceConfig == nil {
24080		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
24081	}
24082	if s.StoppingCondition == nil {
24083		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
24084	}
24085	if s.TrainingInputMode == nil {
24086		invalidParams.Add(request.NewErrParamRequired("TrainingInputMode"))
24087	}
24088	if s.InputDataConfig != nil {
24089		for i, v := range s.InputDataConfig {
24090			if v == nil {
24091				continue
24092			}
24093			if err := v.Validate(); err != nil {
24094				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
24095			}
24096		}
24097	}
24098	if s.OutputDataConfig != nil {
24099		if err := s.OutputDataConfig.Validate(); err != nil {
24100			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
24101		}
24102	}
24103	if s.ResourceConfig != nil {
24104		if err := s.ResourceConfig.Validate(); err != nil {
24105			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
24106		}
24107	}
24108	if s.StoppingCondition != nil {
24109		if err := s.StoppingCondition.Validate(); err != nil {
24110			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
24111		}
24112	}
24113
24114	if invalidParams.Len() > 0 {
24115		return invalidParams
24116	}
24117	return nil
24118}
24119
24120// SetHyperParameters sets the HyperParameters field's value.
24121func (s *TrainingJobDefinition) SetHyperParameters(v map[string]*string) *TrainingJobDefinition {
24122	s.HyperParameters = v
24123	return s
24124}
24125
24126// SetInputDataConfig sets the InputDataConfig field's value.
24127func (s *TrainingJobDefinition) SetInputDataConfig(v []*Channel) *TrainingJobDefinition {
24128	s.InputDataConfig = v
24129	return s
24130}
24131
24132// SetOutputDataConfig sets the OutputDataConfig field's value.
24133func (s *TrainingJobDefinition) SetOutputDataConfig(v *OutputDataConfig) *TrainingJobDefinition {
24134	s.OutputDataConfig = v
24135	return s
24136}
24137
24138// SetResourceConfig sets the ResourceConfig field's value.
24139func (s *TrainingJobDefinition) SetResourceConfig(v *ResourceConfig) *TrainingJobDefinition {
24140	s.ResourceConfig = v
24141	return s
24142}
24143
24144// SetStoppingCondition sets the StoppingCondition field's value.
24145func (s *TrainingJobDefinition) SetStoppingCondition(v *StoppingCondition) *TrainingJobDefinition {
24146	s.StoppingCondition = v
24147	return s
24148}
24149
24150// SetTrainingInputMode sets the TrainingInputMode field's value.
24151func (s *TrainingJobDefinition) SetTrainingInputMode(v string) *TrainingJobDefinition {
24152	s.TrainingInputMode = &v
24153	return s
24154}
24155
24156// The numbers of training jobs launched by a hyperparameter tuning job, categorized
24157// by status.
24158type TrainingJobStatusCounters struct {
24159	_ struct{} `type:"structure"`
24160
24161	// The number of completed training jobs launched by the hyperparameter tuning
24162	// job.
24163	Completed *int64 `type:"integer"`
24164
24165	// The number of in-progress training jobs launched by a hyperparameter tuning
24166	// job.
24167	InProgress *int64 `type:"integer"`
24168
24169	// The number of training jobs that failed and can't be retried. A failed training
24170	// job can't be retried if it failed because a client error occurred.
24171	NonRetryableError *int64 `type:"integer"`
24172
24173	// The number of training jobs that failed, but can be retried. A failed training
24174	// job can be retried only if it failed because an internal service error occurred.
24175	RetryableError *int64 `type:"integer"`
24176
24177	// The number of training jobs launched by a hyperparameter tuning job that
24178	// were manually stopped.
24179	Stopped *int64 `type:"integer"`
24180}
24181
24182// String returns the string representation
24183func (s TrainingJobStatusCounters) String() string {
24184	return awsutil.Prettify(s)
24185}
24186
24187// GoString returns the string representation
24188func (s TrainingJobStatusCounters) GoString() string {
24189	return s.String()
24190}
24191
24192// SetCompleted sets the Completed field's value.
24193func (s *TrainingJobStatusCounters) SetCompleted(v int64) *TrainingJobStatusCounters {
24194	s.Completed = &v
24195	return s
24196}
24197
24198// SetInProgress sets the InProgress field's value.
24199func (s *TrainingJobStatusCounters) SetInProgress(v int64) *TrainingJobStatusCounters {
24200	s.InProgress = &v
24201	return s
24202}
24203
24204// SetNonRetryableError sets the NonRetryableError field's value.
24205func (s *TrainingJobStatusCounters) SetNonRetryableError(v int64) *TrainingJobStatusCounters {
24206	s.NonRetryableError = &v
24207	return s
24208}
24209
24210// SetRetryableError sets the RetryableError field's value.
24211func (s *TrainingJobStatusCounters) SetRetryableError(v int64) *TrainingJobStatusCounters {
24212	s.RetryableError = &v
24213	return s
24214}
24215
24216// SetStopped sets the Stopped field's value.
24217func (s *TrainingJobStatusCounters) SetStopped(v int64) *TrainingJobStatusCounters {
24218	s.Stopped = &v
24219	return s
24220}
24221
24222// Provides summary information about a training job.
24223type TrainingJobSummary struct {
24224	_ struct{} `type:"structure"`
24225
24226	// A timestamp that shows when the training job was created.
24227	//
24228	// CreationTime is a required field
24229	CreationTime *time.Time `type:"timestamp" required:"true"`
24230
24231	// Timestamp when the training job was last modified.
24232	LastModifiedTime *time.Time `type:"timestamp"`
24233
24234	// A timestamp that shows when the training job ended. This field is set only
24235	// if the training job has one of the terminal statuses (Completed, Failed,
24236	// or Stopped).
24237	TrainingEndTime *time.Time `type:"timestamp"`
24238
24239	// The Amazon Resource Name (ARN) of the training job.
24240	//
24241	// TrainingJobArn is a required field
24242	TrainingJobArn *string `type:"string" required:"true"`
24243
24244	// The name of the training job that you want a summary for.
24245	//
24246	// TrainingJobName is a required field
24247	TrainingJobName *string `min:"1" type:"string" required:"true"`
24248
24249	// The status of the training job.
24250	//
24251	// TrainingJobStatus is a required field
24252	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
24253}
24254
24255// String returns the string representation
24256func (s TrainingJobSummary) String() string {
24257	return awsutil.Prettify(s)
24258}
24259
24260// GoString returns the string representation
24261func (s TrainingJobSummary) GoString() string {
24262	return s.String()
24263}
24264
24265// SetCreationTime sets the CreationTime field's value.
24266func (s *TrainingJobSummary) SetCreationTime(v time.Time) *TrainingJobSummary {
24267	s.CreationTime = &v
24268	return s
24269}
24270
24271// SetLastModifiedTime sets the LastModifiedTime field's value.
24272func (s *TrainingJobSummary) SetLastModifiedTime(v time.Time) *TrainingJobSummary {
24273	s.LastModifiedTime = &v
24274	return s
24275}
24276
24277// SetTrainingEndTime sets the TrainingEndTime field's value.
24278func (s *TrainingJobSummary) SetTrainingEndTime(v time.Time) *TrainingJobSummary {
24279	s.TrainingEndTime = &v
24280	return s
24281}
24282
24283// SetTrainingJobArn sets the TrainingJobArn field's value.
24284func (s *TrainingJobSummary) SetTrainingJobArn(v string) *TrainingJobSummary {
24285	s.TrainingJobArn = &v
24286	return s
24287}
24288
24289// SetTrainingJobName sets the TrainingJobName field's value.
24290func (s *TrainingJobSummary) SetTrainingJobName(v string) *TrainingJobSummary {
24291	s.TrainingJobName = &v
24292	return s
24293}
24294
24295// SetTrainingJobStatus sets the TrainingJobStatus field's value.
24296func (s *TrainingJobSummary) SetTrainingJobStatus(v string) *TrainingJobSummary {
24297	s.TrainingJobStatus = &v
24298	return s
24299}
24300
24301// Defines how the algorithm is used for a training job.
24302type TrainingSpecification struct {
24303	_ struct{} `type:"structure"`
24304
24305	// A list of MetricDefinition objects, which are used for parsing metrics generated
24306	// by the algorithm.
24307	MetricDefinitions []*MetricDefinition `type:"list"`
24308
24309	// A list of the HyperParameterSpecification objects, that define the supported
24310	// hyperparameters. This is required if the algorithm supports automatic model
24311	// tuning.>
24312	SupportedHyperParameters []*HyperParameterSpecification `type:"list"`
24313
24314	// A list of the instance types that this algorithm can use for training.
24315	//
24316	// SupportedTrainingInstanceTypes is a required field
24317	SupportedTrainingInstanceTypes []*string `type:"list" required:"true"`
24318
24319	// A list of the metrics that the algorithm emits that can be used as the objective
24320	// metric in a hyperparameter tuning job.
24321	SupportedTuningJobObjectiveMetrics []*HyperParameterTuningJobObjective `type:"list"`
24322
24323	// Indicates whether the algorithm supports distributed training. If set to
24324	// false, buyers can’t request more than one instance during training.
24325	SupportsDistributedTraining *bool `type:"boolean"`
24326
24327	// A list of ChannelSpecification objects, which specify the input sources to
24328	// be used by the algorithm.
24329	//
24330	// TrainingChannels is a required field
24331	TrainingChannels []*ChannelSpecification `min:"1" type:"list" required:"true"`
24332
24333	// The Amazon ECR registry path of the Docker image that contains the training
24334	// algorithm.
24335	//
24336	// TrainingImage is a required field
24337	TrainingImage *string `type:"string" required:"true"`
24338
24339	// An MD5 hash of the training algorithm that identifies the Docker image used
24340	// for training.
24341	TrainingImageDigest *string `type:"string"`
24342}
24343
24344// String returns the string representation
24345func (s TrainingSpecification) String() string {
24346	return awsutil.Prettify(s)
24347}
24348
24349// GoString returns the string representation
24350func (s TrainingSpecification) GoString() string {
24351	return s.String()
24352}
24353
24354// Validate inspects the fields of the type to determine if they are valid.
24355func (s *TrainingSpecification) Validate() error {
24356	invalidParams := request.ErrInvalidParams{Context: "TrainingSpecification"}
24357	if s.SupportedTrainingInstanceTypes == nil {
24358		invalidParams.Add(request.NewErrParamRequired("SupportedTrainingInstanceTypes"))
24359	}
24360	if s.TrainingChannels == nil {
24361		invalidParams.Add(request.NewErrParamRequired("TrainingChannels"))
24362	}
24363	if s.TrainingChannels != nil && len(s.TrainingChannels) < 1 {
24364		invalidParams.Add(request.NewErrParamMinLen("TrainingChannels", 1))
24365	}
24366	if s.TrainingImage == nil {
24367		invalidParams.Add(request.NewErrParamRequired("TrainingImage"))
24368	}
24369	if s.MetricDefinitions != nil {
24370		for i, v := range s.MetricDefinitions {
24371			if v == nil {
24372				continue
24373			}
24374			if err := v.Validate(); err != nil {
24375				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricDefinitions", i), err.(request.ErrInvalidParams))
24376			}
24377		}
24378	}
24379	if s.SupportedHyperParameters != nil {
24380		for i, v := range s.SupportedHyperParameters {
24381			if v == nil {
24382				continue
24383			}
24384			if err := v.Validate(); err != nil {
24385				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SupportedHyperParameters", i), err.(request.ErrInvalidParams))
24386			}
24387		}
24388	}
24389	if s.SupportedTuningJobObjectiveMetrics != nil {
24390		for i, v := range s.SupportedTuningJobObjectiveMetrics {
24391			if v == nil {
24392				continue
24393			}
24394			if err := v.Validate(); err != nil {
24395				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SupportedTuningJobObjectiveMetrics", i), err.(request.ErrInvalidParams))
24396			}
24397		}
24398	}
24399	if s.TrainingChannels != nil {
24400		for i, v := range s.TrainingChannels {
24401			if v == nil {
24402				continue
24403			}
24404			if err := v.Validate(); err != nil {
24405				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrainingChannels", i), err.(request.ErrInvalidParams))
24406			}
24407		}
24408	}
24409
24410	if invalidParams.Len() > 0 {
24411		return invalidParams
24412	}
24413	return nil
24414}
24415
24416// SetMetricDefinitions sets the MetricDefinitions field's value.
24417func (s *TrainingSpecification) SetMetricDefinitions(v []*MetricDefinition) *TrainingSpecification {
24418	s.MetricDefinitions = v
24419	return s
24420}
24421
24422// SetSupportedHyperParameters sets the SupportedHyperParameters field's value.
24423func (s *TrainingSpecification) SetSupportedHyperParameters(v []*HyperParameterSpecification) *TrainingSpecification {
24424	s.SupportedHyperParameters = v
24425	return s
24426}
24427
24428// SetSupportedTrainingInstanceTypes sets the SupportedTrainingInstanceTypes field's value.
24429func (s *TrainingSpecification) SetSupportedTrainingInstanceTypes(v []*string) *TrainingSpecification {
24430	s.SupportedTrainingInstanceTypes = v
24431	return s
24432}
24433
24434// SetSupportedTuningJobObjectiveMetrics sets the SupportedTuningJobObjectiveMetrics field's value.
24435func (s *TrainingSpecification) SetSupportedTuningJobObjectiveMetrics(v []*HyperParameterTuningJobObjective) *TrainingSpecification {
24436	s.SupportedTuningJobObjectiveMetrics = v
24437	return s
24438}
24439
24440// SetSupportsDistributedTraining sets the SupportsDistributedTraining field's value.
24441func (s *TrainingSpecification) SetSupportsDistributedTraining(v bool) *TrainingSpecification {
24442	s.SupportsDistributedTraining = &v
24443	return s
24444}
24445
24446// SetTrainingChannels sets the TrainingChannels field's value.
24447func (s *TrainingSpecification) SetTrainingChannels(v []*ChannelSpecification) *TrainingSpecification {
24448	s.TrainingChannels = v
24449	return s
24450}
24451
24452// SetTrainingImage sets the TrainingImage field's value.
24453func (s *TrainingSpecification) SetTrainingImage(v string) *TrainingSpecification {
24454	s.TrainingImage = &v
24455	return s
24456}
24457
24458// SetTrainingImageDigest sets the TrainingImageDigest field's value.
24459func (s *TrainingSpecification) SetTrainingImageDigest(v string) *TrainingSpecification {
24460	s.TrainingImageDigest = &v
24461	return s
24462}
24463
24464// Describes the location of the channel data.
24465type TransformDataSource struct {
24466	_ struct{} `type:"structure"`
24467
24468	// The S3 location of the data source that is associated with a channel.
24469	//
24470	// S3DataSource is a required field
24471	S3DataSource *TransformS3DataSource `type:"structure" required:"true"`
24472}
24473
24474// String returns the string representation
24475func (s TransformDataSource) String() string {
24476	return awsutil.Prettify(s)
24477}
24478
24479// GoString returns the string representation
24480func (s TransformDataSource) GoString() string {
24481	return s.String()
24482}
24483
24484// Validate inspects the fields of the type to determine if they are valid.
24485func (s *TransformDataSource) Validate() error {
24486	invalidParams := request.ErrInvalidParams{Context: "TransformDataSource"}
24487	if s.S3DataSource == nil {
24488		invalidParams.Add(request.NewErrParamRequired("S3DataSource"))
24489	}
24490	if s.S3DataSource != nil {
24491		if err := s.S3DataSource.Validate(); err != nil {
24492			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
24493		}
24494	}
24495
24496	if invalidParams.Len() > 0 {
24497		return invalidParams
24498	}
24499	return nil
24500}
24501
24502// SetS3DataSource sets the S3DataSource field's value.
24503func (s *TransformDataSource) SetS3DataSource(v *TransformS3DataSource) *TransformDataSource {
24504	s.S3DataSource = v
24505	return s
24506}
24507
24508// Describes the input source of a transform job and the way the transform job
24509// consumes it.
24510type TransformInput struct {
24511	_ struct{} `type:"structure"`
24512
24513	// If your transform data is compressed, specify the compression type. Amazon
24514	// SageMaker automatically decompresses the data for the transform job accordingly.
24515	// The default value is None.
24516	CompressionType *string `type:"string" enum:"CompressionType"`
24517
24518	// The multipurpose internet mail extension (MIME) type of the data. Amazon
24519	// SageMaker uses the MIME type with each http call to transfer data to the
24520	// transform job.
24521	ContentType *string `type:"string"`
24522
24523	// Describes the location of the channel data, which is, the S3 location of
24524	// the input data that the model can consume.
24525	//
24526	// DataSource is a required field
24527	DataSource *TransformDataSource `type:"structure" required:"true"`
24528
24529	// The method to use to split the transform job's data files into smaller batches.
24530	// Splitting is necessary when the total size of each object is too large to
24531	// fit in a single request. You can also use data splitting to improve performance
24532	// by processing multiple concurrent mini-batches. The default value for SplitType
24533	// is None, which indicates that input data files are not split, and request
24534	// payloads contain the entire contents of an input object. Set the value of
24535	// this parameter to Line to split records on a newline character boundary.
24536	// SplitType also supports a number of record-oriented binary data formats.
24537	//
24538	// When splitting is enabled, the size of a mini-batch depends on the values
24539	// of the BatchStrategy and MaxPayloadInMB parameters. When the value of BatchStrategy
24540	// is MultiRecord, Amazon SageMaker sends the maximum number of records in each
24541	// request, up to the MaxPayloadInMB limit. If the value of BatchStrategy is
24542	// SingleRecord, Amazon SageMaker sends individual records in each request.
24543	//
24544	// Some data formats represent a record as a binary payload wrapped with extra
24545	// padding bytes. When splitting is applied to a binary data format, padding
24546	// is removed if the value of BatchStrategy is set to SingleRecord. Padding
24547	// is not removed if the value of BatchStrategy is set to MultiRecord.
24548	//
24549	// For more information about the RecordIO, see Data Format (http://mxnet.io/architecture/note_data_loading.html#data-format)
24550	// in the MXNet documentation. For more information about the TFRecord, see
24551	// Consuming TFRecord data (https://www.tensorflow.org/guide/datasets#consuming_tfrecord_data)
24552	// in the TensorFlow documentation.
24553	SplitType *string `type:"string" enum:"SplitType"`
24554}
24555
24556// String returns the string representation
24557func (s TransformInput) String() string {
24558	return awsutil.Prettify(s)
24559}
24560
24561// GoString returns the string representation
24562func (s TransformInput) GoString() string {
24563	return s.String()
24564}
24565
24566// Validate inspects the fields of the type to determine if they are valid.
24567func (s *TransformInput) Validate() error {
24568	invalidParams := request.ErrInvalidParams{Context: "TransformInput"}
24569	if s.DataSource == nil {
24570		invalidParams.Add(request.NewErrParamRequired("DataSource"))
24571	}
24572	if s.DataSource != nil {
24573		if err := s.DataSource.Validate(); err != nil {
24574			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
24575		}
24576	}
24577
24578	if invalidParams.Len() > 0 {
24579		return invalidParams
24580	}
24581	return nil
24582}
24583
24584// SetCompressionType sets the CompressionType field's value.
24585func (s *TransformInput) SetCompressionType(v string) *TransformInput {
24586	s.CompressionType = &v
24587	return s
24588}
24589
24590// SetContentType sets the ContentType field's value.
24591func (s *TransformInput) SetContentType(v string) *TransformInput {
24592	s.ContentType = &v
24593	return s
24594}
24595
24596// SetDataSource sets the DataSource field's value.
24597func (s *TransformInput) SetDataSource(v *TransformDataSource) *TransformInput {
24598	s.DataSource = v
24599	return s
24600}
24601
24602// SetSplitType sets the SplitType field's value.
24603func (s *TransformInput) SetSplitType(v string) *TransformInput {
24604	s.SplitType = &v
24605	return s
24606}
24607
24608// Defines the input needed to run a transform job using the inference specification
24609// specified in the algorithm.
24610type TransformJobDefinition struct {
24611	_ struct{} `type:"structure"`
24612
24613	// A string that determines the number of records included in a single mini-batch.
24614	//
24615	// SingleRecord means only one record is used per mini-batch. MultiRecord means
24616	// a mini-batch is set to contain as many records that can fit within the MaxPayloadInMB
24617	// limit.
24618	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
24619
24620	// The environment variables to set in the Docker container. We support up to
24621	// 16 key and values entries in the map.
24622	Environment map[string]*string `type:"map"`
24623
24624	// The maximum number of parallel requests that can be sent to each instance
24625	// in a transform job. The default value is 1.
24626	MaxConcurrentTransforms *int64 `type:"integer"`
24627
24628	// The maximum payload size allowed, in MB. A payload is the data portion of
24629	// a record (without metadata).
24630	MaxPayloadInMB *int64 `type:"integer"`
24631
24632	// A description of the input source and the way the transform job consumes
24633	// it.
24634	//
24635	// TransformInput is a required field
24636	TransformInput *TransformInput `type:"structure" required:"true"`
24637
24638	// Identifies the Amazon S3 location where you want Amazon SageMaker to save
24639	// the results from the transform job.
24640	//
24641	// TransformOutput is a required field
24642	TransformOutput *TransformOutput `type:"structure" required:"true"`
24643
24644	// Identifies the ML compute instances for the transform job.
24645	//
24646	// TransformResources is a required field
24647	TransformResources *TransformResources `type:"structure" required:"true"`
24648}
24649
24650// String returns the string representation
24651func (s TransformJobDefinition) String() string {
24652	return awsutil.Prettify(s)
24653}
24654
24655// GoString returns the string representation
24656func (s TransformJobDefinition) GoString() string {
24657	return s.String()
24658}
24659
24660// Validate inspects the fields of the type to determine if they are valid.
24661func (s *TransformJobDefinition) Validate() error {
24662	invalidParams := request.ErrInvalidParams{Context: "TransformJobDefinition"}
24663	if s.TransformInput == nil {
24664		invalidParams.Add(request.NewErrParamRequired("TransformInput"))
24665	}
24666	if s.TransformOutput == nil {
24667		invalidParams.Add(request.NewErrParamRequired("TransformOutput"))
24668	}
24669	if s.TransformResources == nil {
24670		invalidParams.Add(request.NewErrParamRequired("TransformResources"))
24671	}
24672	if s.TransformInput != nil {
24673		if err := s.TransformInput.Validate(); err != nil {
24674			invalidParams.AddNested("TransformInput", err.(request.ErrInvalidParams))
24675		}
24676	}
24677	if s.TransformOutput != nil {
24678		if err := s.TransformOutput.Validate(); err != nil {
24679			invalidParams.AddNested("TransformOutput", err.(request.ErrInvalidParams))
24680		}
24681	}
24682	if s.TransformResources != nil {
24683		if err := s.TransformResources.Validate(); err != nil {
24684			invalidParams.AddNested("TransformResources", err.(request.ErrInvalidParams))
24685		}
24686	}
24687
24688	if invalidParams.Len() > 0 {
24689		return invalidParams
24690	}
24691	return nil
24692}
24693
24694// SetBatchStrategy sets the BatchStrategy field's value.
24695func (s *TransformJobDefinition) SetBatchStrategy(v string) *TransformJobDefinition {
24696	s.BatchStrategy = &v
24697	return s
24698}
24699
24700// SetEnvironment sets the Environment field's value.
24701func (s *TransformJobDefinition) SetEnvironment(v map[string]*string) *TransformJobDefinition {
24702	s.Environment = v
24703	return s
24704}
24705
24706// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
24707func (s *TransformJobDefinition) SetMaxConcurrentTransforms(v int64) *TransformJobDefinition {
24708	s.MaxConcurrentTransforms = &v
24709	return s
24710}
24711
24712// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
24713func (s *TransformJobDefinition) SetMaxPayloadInMB(v int64) *TransformJobDefinition {
24714	s.MaxPayloadInMB = &v
24715	return s
24716}
24717
24718// SetTransformInput sets the TransformInput field's value.
24719func (s *TransformJobDefinition) SetTransformInput(v *TransformInput) *TransformJobDefinition {
24720	s.TransformInput = v
24721	return s
24722}
24723
24724// SetTransformOutput sets the TransformOutput field's value.
24725func (s *TransformJobDefinition) SetTransformOutput(v *TransformOutput) *TransformJobDefinition {
24726	s.TransformOutput = v
24727	return s
24728}
24729
24730// SetTransformResources sets the TransformResources field's value.
24731func (s *TransformJobDefinition) SetTransformResources(v *TransformResources) *TransformJobDefinition {
24732	s.TransformResources = v
24733	return s
24734}
24735
24736// Provides a summary of a transform job. Multiple TransformJobSummary objects
24737// are returned as a list after in response to a ListTransformJobs call.
24738type TransformJobSummary struct {
24739	_ struct{} `type:"structure"`
24740
24741	// A timestamp that shows when the transform Job was created.
24742	//
24743	// CreationTime is a required field
24744	CreationTime *time.Time `type:"timestamp" required:"true"`
24745
24746	// If the transform job failed, the reason it failed.
24747	FailureReason *string `type:"string"`
24748
24749	// Indicates when the transform job was last modified.
24750	LastModifiedTime *time.Time `type:"timestamp"`
24751
24752	// Indicates when the transform job ends on compute instances. For successful
24753	// jobs and stopped jobs, this is the exact time recorded after the results
24754	// are uploaded. For failed jobs, this is when Amazon SageMaker detected that
24755	// the job failed.
24756	TransformEndTime *time.Time `type:"timestamp"`
24757
24758	// The Amazon Resource Name (ARN) of the transform job.
24759	//
24760	// TransformJobArn is a required field
24761	TransformJobArn *string `type:"string" required:"true"`
24762
24763	// The name of the transform job.
24764	//
24765	// TransformJobName is a required field
24766	TransformJobName *string `min:"1" type:"string" required:"true"`
24767
24768	// The status of the transform job.
24769	//
24770	// TransformJobStatus is a required field
24771	TransformJobStatus *string `type:"string" required:"true" enum:"TransformJobStatus"`
24772}
24773
24774// String returns the string representation
24775func (s TransformJobSummary) String() string {
24776	return awsutil.Prettify(s)
24777}
24778
24779// GoString returns the string representation
24780func (s TransformJobSummary) GoString() string {
24781	return s.String()
24782}
24783
24784// SetCreationTime sets the CreationTime field's value.
24785func (s *TransformJobSummary) SetCreationTime(v time.Time) *TransformJobSummary {
24786	s.CreationTime = &v
24787	return s
24788}
24789
24790// SetFailureReason sets the FailureReason field's value.
24791func (s *TransformJobSummary) SetFailureReason(v string) *TransformJobSummary {
24792	s.FailureReason = &v
24793	return s
24794}
24795
24796// SetLastModifiedTime sets the LastModifiedTime field's value.
24797func (s *TransformJobSummary) SetLastModifiedTime(v time.Time) *TransformJobSummary {
24798	s.LastModifiedTime = &v
24799	return s
24800}
24801
24802// SetTransformEndTime sets the TransformEndTime field's value.
24803func (s *TransformJobSummary) SetTransformEndTime(v time.Time) *TransformJobSummary {
24804	s.TransformEndTime = &v
24805	return s
24806}
24807
24808// SetTransformJobArn sets the TransformJobArn field's value.
24809func (s *TransformJobSummary) SetTransformJobArn(v string) *TransformJobSummary {
24810	s.TransformJobArn = &v
24811	return s
24812}
24813
24814// SetTransformJobName sets the TransformJobName field's value.
24815func (s *TransformJobSummary) SetTransformJobName(v string) *TransformJobSummary {
24816	s.TransformJobName = &v
24817	return s
24818}
24819
24820// SetTransformJobStatus sets the TransformJobStatus field's value.
24821func (s *TransformJobSummary) SetTransformJobStatus(v string) *TransformJobSummary {
24822	s.TransformJobStatus = &v
24823	return s
24824}
24825
24826// Describes the results of a transform job.
24827type TransformOutput struct {
24828	_ struct{} `type:"structure"`
24829
24830	// The MIME type used to specify the output data. Amazon SageMaker uses the
24831	// MIME type with each http call to transfer data from the transform job.
24832	Accept *string `type:"string"`
24833
24834	// Defines how to assemble the results of the transform job as a single S3 object.
24835	// Choose a format that is most convenient to you. To concatenate the results
24836	// in binary format, specify None. To add a newline character at the end of
24837	// every transformed record, specify Line.
24838	AssembleWith *string `type:"string" enum:"AssemblyType"`
24839
24840	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
24841	// encrypt the model artifacts at rest using Amazon S3 server-side encryption.
24842	// The KmsKeyId can be any of the following formats:
24843	//
24844	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
24845	//
24846	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
24847	//
24848	//    * // KMS Key Alias "alias/ExampleAlias"
24849	//
24850	//    * // Amazon Resource Name (ARN) of a KMS Key Alias "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
24851	//
24852	// If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS
24853	// key for Amazon S3 for your role's account. For more information, see KMS-Managed
24854	// Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
24855	// in the Amazon Simple Storage Service Developer Guide.
24856	//
24857	// The KMS key policy must grant permission to the IAM role that you specify
24858	// in your CreateTramsformJob request. For more information, see Using Key Policies
24859	// in AWS KMS (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)
24860	// in the AWS Key Management Service Developer Guide.
24861	KmsKeyId *string `type:"string"`
24862
24863	// The Amazon S3 path where you want Amazon SageMaker to store the results of
24864	// the transform job. For example, s3://bucket-name/key-name-prefix.
24865	//
24866	// For every S3 object used as input for the transform job, batch transform
24867	// stores the transformed data with an .out suffix in a corresponding subfolder
24868	// in the location in the output prefix. For example, for the input data stored
24869	// at s3://bucket-name/input-name-prefix/dataset01/data.csv, batch transform
24870	// stores the transformed data at s3://bucket-name/output-name-prefix/input-name-prefix/data.csv.out.
24871	// Batch transform doesn't upload partially processed objects. For an input
24872	// S3 object that contains multiple records, it creates an .out file only if
24873	// the transform job succeeds on the entire file. When the input contains multiple
24874	// S3 objects, the batch transform job processes the listed S3 objects and uploads
24875	// only the output for successfully processed objects. If any object fails in
24876	// the transform job batch transform marks the job as failed to prompt investigation.
24877	//
24878	// S3OutputPath is a required field
24879	S3OutputPath *string `type:"string" required:"true"`
24880}
24881
24882// String returns the string representation
24883func (s TransformOutput) String() string {
24884	return awsutil.Prettify(s)
24885}
24886
24887// GoString returns the string representation
24888func (s TransformOutput) GoString() string {
24889	return s.String()
24890}
24891
24892// Validate inspects the fields of the type to determine if they are valid.
24893func (s *TransformOutput) Validate() error {
24894	invalidParams := request.ErrInvalidParams{Context: "TransformOutput"}
24895	if s.S3OutputPath == nil {
24896		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
24897	}
24898
24899	if invalidParams.Len() > 0 {
24900		return invalidParams
24901	}
24902	return nil
24903}
24904
24905// SetAccept sets the Accept field's value.
24906func (s *TransformOutput) SetAccept(v string) *TransformOutput {
24907	s.Accept = &v
24908	return s
24909}
24910
24911// SetAssembleWith sets the AssembleWith field's value.
24912func (s *TransformOutput) SetAssembleWith(v string) *TransformOutput {
24913	s.AssembleWith = &v
24914	return s
24915}
24916
24917// SetKmsKeyId sets the KmsKeyId field's value.
24918func (s *TransformOutput) SetKmsKeyId(v string) *TransformOutput {
24919	s.KmsKeyId = &v
24920	return s
24921}
24922
24923// SetS3OutputPath sets the S3OutputPath field's value.
24924func (s *TransformOutput) SetS3OutputPath(v string) *TransformOutput {
24925	s.S3OutputPath = &v
24926	return s
24927}
24928
24929// Describes the resources, including ML instance types and ML instance count,
24930// to use for transform job.
24931type TransformResources struct {
24932	_ struct{} `type:"structure"`
24933
24934	// The number of ML compute instances to use in the transform job. For distributed
24935	// transform jobs, specify a value greater than 1. The default value is 1.
24936	//
24937	// InstanceCount is a required field
24938	InstanceCount *int64 `min:"1" type:"integer" required:"true"`
24939
24940	// The ML compute instance type for the transform job. If you are using built-in
24941	// algorithms to transform moderately sized datasets, we recommend using ml.m4.xlarge
24942	// or ml.m5.large instance types.
24943	//
24944	// InstanceType is a required field
24945	InstanceType *string `type:"string" required:"true" enum:"TransformInstanceType"`
24946
24947	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
24948	// encrypt data on the storage volume attached to the ML compute instance(s)
24949	// that run the batch transform job. The VolumeKmsKeyId can be any of the following
24950	// formats:
24951	//
24952	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
24953	//
24954	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
24955	VolumeKmsKeyId *string `type:"string"`
24956}
24957
24958// String returns the string representation
24959func (s TransformResources) String() string {
24960	return awsutil.Prettify(s)
24961}
24962
24963// GoString returns the string representation
24964func (s TransformResources) GoString() string {
24965	return s.String()
24966}
24967
24968// Validate inspects the fields of the type to determine if they are valid.
24969func (s *TransformResources) Validate() error {
24970	invalidParams := request.ErrInvalidParams{Context: "TransformResources"}
24971	if s.InstanceCount == nil {
24972		invalidParams.Add(request.NewErrParamRequired("InstanceCount"))
24973	}
24974	if s.InstanceCount != nil && *s.InstanceCount < 1 {
24975		invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1))
24976	}
24977	if s.InstanceType == nil {
24978		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
24979	}
24980
24981	if invalidParams.Len() > 0 {
24982		return invalidParams
24983	}
24984	return nil
24985}
24986
24987// SetInstanceCount sets the InstanceCount field's value.
24988func (s *TransformResources) SetInstanceCount(v int64) *TransformResources {
24989	s.InstanceCount = &v
24990	return s
24991}
24992
24993// SetInstanceType sets the InstanceType field's value.
24994func (s *TransformResources) SetInstanceType(v string) *TransformResources {
24995	s.InstanceType = &v
24996	return s
24997}
24998
24999// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
25000func (s *TransformResources) SetVolumeKmsKeyId(v string) *TransformResources {
25001	s.VolumeKmsKeyId = &v
25002	return s
25003}
25004
25005// Describes the S3 data source.
25006type TransformS3DataSource struct {
25007	_ struct{} `type:"structure"`
25008
25009	// If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker
25010	// uses all objects with the specified key name prefix for batch transform.
25011	//
25012	// If you choose ManifestFile, S3Uri identifies an object that is a manifest
25013	// file containing a list of object keys that you want Amazon SageMaker to use
25014	// for batch transform.
25015	//
25016	// The following values are compatible: ManifestFile, S3Prefix
25017	//
25018	// The following value is not compatible: AugmentedManifestFile
25019	//
25020	// S3DataType is a required field
25021	S3DataType *string `type:"string" required:"true" enum:"S3DataType"`
25022
25023	// Depending on the value specified for the S3DataType, identifies either a
25024	// key name prefix or a manifest. For example:
25025	//
25026	//    * A key name prefix might look like this: s3://bucketname/exampleprefix.
25027	//
25028	//    * A manifest might look like this: s3://bucketname/example.manifest The
25029	//    manifest is an S3 object which is a JSON file with the following format:
25030	//    [ {"prefix": "s3://customer_bucket/some/prefix/"}, "relative/path/to/custdata-1",
25031	//    "relative/path/custdata-2", ... ] The preceding JSON matches the following
25032	//    S3Uris: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 s3://customer_bucket/some/prefix/relative/path/custdata-1
25033	//    ... The complete set of S3Uris in this manifest constitutes the input
25034	//    data for the channel for this datasource. The object that each S3Uris
25035	//    points to must be readable by the IAM role that Amazon SageMaker uses
25036	//    to perform tasks on your behalf.
25037	//
25038	// S3Uri is a required field
25039	S3Uri *string `type:"string" required:"true"`
25040}
25041
25042// String returns the string representation
25043func (s TransformS3DataSource) String() string {
25044	return awsutil.Prettify(s)
25045}
25046
25047// GoString returns the string representation
25048func (s TransformS3DataSource) GoString() string {
25049	return s.String()
25050}
25051
25052// Validate inspects the fields of the type to determine if they are valid.
25053func (s *TransformS3DataSource) Validate() error {
25054	invalidParams := request.ErrInvalidParams{Context: "TransformS3DataSource"}
25055	if s.S3DataType == nil {
25056		invalidParams.Add(request.NewErrParamRequired("S3DataType"))
25057	}
25058	if s.S3Uri == nil {
25059		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
25060	}
25061
25062	if invalidParams.Len() > 0 {
25063		return invalidParams
25064	}
25065	return nil
25066}
25067
25068// SetS3DataType sets the S3DataType field's value.
25069func (s *TransformS3DataSource) SetS3DataType(v string) *TransformS3DataSource {
25070	s.S3DataType = &v
25071	return s
25072}
25073
25074// SetS3Uri sets the S3Uri field's value.
25075func (s *TransformS3DataSource) SetS3Uri(v string) *TransformS3DataSource {
25076	s.S3Uri = &v
25077	return s
25078}
25079
25080// Represents an amount of money in United States dollars/
25081type USD struct {
25082	_ struct{} `type:"structure"`
25083
25084	// The fractional portion, in cents, of the amount.
25085	Cents *int64 `type:"integer"`
25086
25087	// The whole number of dollars in the amount.
25088	Dollars *int64 `type:"integer"`
25089
25090	// Fractions of a cent, in tenths.
25091	TenthFractionsOfACent *int64 `type:"integer"`
25092}
25093
25094// String returns the string representation
25095func (s USD) String() string {
25096	return awsutil.Prettify(s)
25097}
25098
25099// GoString returns the string representation
25100func (s USD) GoString() string {
25101	return s.String()
25102}
25103
25104// SetCents sets the Cents field's value.
25105func (s *USD) SetCents(v int64) *USD {
25106	s.Cents = &v
25107	return s
25108}
25109
25110// SetDollars sets the Dollars field's value.
25111func (s *USD) SetDollars(v int64) *USD {
25112	s.Dollars = &v
25113	return s
25114}
25115
25116// SetTenthFractionsOfACent sets the TenthFractionsOfACent field's value.
25117func (s *USD) SetTenthFractionsOfACent(v int64) *USD {
25118	s.TenthFractionsOfACent = &v
25119	return s
25120}
25121
25122// Provided configuration information for the worker UI for a labeling job.
25123type UiConfig struct {
25124	_ struct{} `type:"structure"`
25125
25126	// The Amazon S3 bucket location of the UI template. For more information about
25127	// the contents of a UI template, see Creating Your Custom Labeling Task Template
25128	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step2.html).
25129	//
25130	// UiTemplateS3Uri is a required field
25131	UiTemplateS3Uri *string `type:"string" required:"true"`
25132}
25133
25134// String returns the string representation
25135func (s UiConfig) String() string {
25136	return awsutil.Prettify(s)
25137}
25138
25139// GoString returns the string representation
25140func (s UiConfig) GoString() string {
25141	return s.String()
25142}
25143
25144// Validate inspects the fields of the type to determine if they are valid.
25145func (s *UiConfig) Validate() error {
25146	invalidParams := request.ErrInvalidParams{Context: "UiConfig"}
25147	if s.UiTemplateS3Uri == nil {
25148		invalidParams.Add(request.NewErrParamRequired("UiTemplateS3Uri"))
25149	}
25150
25151	if invalidParams.Len() > 0 {
25152		return invalidParams
25153	}
25154	return nil
25155}
25156
25157// SetUiTemplateS3Uri sets the UiTemplateS3Uri field's value.
25158func (s *UiConfig) SetUiTemplateS3Uri(v string) *UiConfig {
25159	s.UiTemplateS3Uri = &v
25160	return s
25161}
25162
25163// The Liquid template for the worker user interface.
25164type UiTemplate struct {
25165	_ struct{} `type:"structure"`
25166
25167	// The content of the Liquid template for the worker user interface.
25168	//
25169	// Content is a required field
25170	Content *string `min:"1" type:"string" required:"true"`
25171}
25172
25173// String returns the string representation
25174func (s UiTemplate) String() string {
25175	return awsutil.Prettify(s)
25176}
25177
25178// GoString returns the string representation
25179func (s UiTemplate) GoString() string {
25180	return s.String()
25181}
25182
25183// Validate inspects the fields of the type to determine if they are valid.
25184func (s *UiTemplate) Validate() error {
25185	invalidParams := request.ErrInvalidParams{Context: "UiTemplate"}
25186	if s.Content == nil {
25187		invalidParams.Add(request.NewErrParamRequired("Content"))
25188	}
25189	if s.Content != nil && len(*s.Content) < 1 {
25190		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
25191	}
25192
25193	if invalidParams.Len() > 0 {
25194		return invalidParams
25195	}
25196	return nil
25197}
25198
25199// SetContent sets the Content field's value.
25200func (s *UiTemplate) SetContent(v string) *UiTemplate {
25201	s.Content = &v
25202	return s
25203}
25204
25205type UpdateCodeRepositoryInput struct {
25206	_ struct{} `type:"structure"`
25207
25208	// The name of the Git repository to update.
25209	//
25210	// CodeRepositoryName is a required field
25211	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
25212
25213	// The configuration of the git repository, including the URL and the Amazon
25214	// Resource Name (ARN) of the AWS Secrets Manager secret that contains the credentials
25215	// used to access the repository. The secret must have a staging label of AWSCURRENT
25216	// and must be in the following format:
25217	//
25218	// {"username": UserName, "password": Password}
25219	GitConfig *GitConfigForUpdate `type:"structure"`
25220}
25221
25222// String returns the string representation
25223func (s UpdateCodeRepositoryInput) String() string {
25224	return awsutil.Prettify(s)
25225}
25226
25227// GoString returns the string representation
25228func (s UpdateCodeRepositoryInput) GoString() string {
25229	return s.String()
25230}
25231
25232// Validate inspects the fields of the type to determine if they are valid.
25233func (s *UpdateCodeRepositoryInput) Validate() error {
25234	invalidParams := request.ErrInvalidParams{Context: "UpdateCodeRepositoryInput"}
25235	if s.CodeRepositoryName == nil {
25236		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
25237	}
25238	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
25239		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
25240	}
25241	if s.GitConfig != nil {
25242		if err := s.GitConfig.Validate(); err != nil {
25243			invalidParams.AddNested("GitConfig", err.(request.ErrInvalidParams))
25244		}
25245	}
25246
25247	if invalidParams.Len() > 0 {
25248		return invalidParams
25249	}
25250	return nil
25251}
25252
25253// SetCodeRepositoryName sets the CodeRepositoryName field's value.
25254func (s *UpdateCodeRepositoryInput) SetCodeRepositoryName(v string) *UpdateCodeRepositoryInput {
25255	s.CodeRepositoryName = &v
25256	return s
25257}
25258
25259// SetGitConfig sets the GitConfig field's value.
25260func (s *UpdateCodeRepositoryInput) SetGitConfig(v *GitConfigForUpdate) *UpdateCodeRepositoryInput {
25261	s.GitConfig = v
25262	return s
25263}
25264
25265type UpdateCodeRepositoryOutput struct {
25266	_ struct{} `type:"structure"`
25267
25268	// The ARN of the Git repository.
25269	//
25270	// CodeRepositoryArn is a required field
25271	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
25272}
25273
25274// String returns the string representation
25275func (s UpdateCodeRepositoryOutput) String() string {
25276	return awsutil.Prettify(s)
25277}
25278
25279// GoString returns the string representation
25280func (s UpdateCodeRepositoryOutput) GoString() string {
25281	return s.String()
25282}
25283
25284// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
25285func (s *UpdateCodeRepositoryOutput) SetCodeRepositoryArn(v string) *UpdateCodeRepositoryOutput {
25286	s.CodeRepositoryArn = &v
25287	return s
25288}
25289
25290type UpdateEndpointInput struct {
25291	_ struct{} `type:"structure"`
25292
25293	// The name of the new endpoint configuration.
25294	//
25295	// EndpointConfigName is a required field
25296	EndpointConfigName *string `type:"string" required:"true"`
25297
25298	// The name of the endpoint whose configuration you want to update.
25299	//
25300	// EndpointName is a required field
25301	EndpointName *string `type:"string" required:"true"`
25302}
25303
25304// String returns the string representation
25305func (s UpdateEndpointInput) String() string {
25306	return awsutil.Prettify(s)
25307}
25308
25309// GoString returns the string representation
25310func (s UpdateEndpointInput) GoString() string {
25311	return s.String()
25312}
25313
25314// Validate inspects the fields of the type to determine if they are valid.
25315func (s *UpdateEndpointInput) Validate() error {
25316	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
25317	if s.EndpointConfigName == nil {
25318		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
25319	}
25320	if s.EndpointName == nil {
25321		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
25322	}
25323
25324	if invalidParams.Len() > 0 {
25325		return invalidParams
25326	}
25327	return nil
25328}
25329
25330// SetEndpointConfigName sets the EndpointConfigName field's value.
25331func (s *UpdateEndpointInput) SetEndpointConfigName(v string) *UpdateEndpointInput {
25332	s.EndpointConfigName = &v
25333	return s
25334}
25335
25336// SetEndpointName sets the EndpointName field's value.
25337func (s *UpdateEndpointInput) SetEndpointName(v string) *UpdateEndpointInput {
25338	s.EndpointName = &v
25339	return s
25340}
25341
25342type UpdateEndpointOutput struct {
25343	_ struct{} `type:"structure"`
25344
25345	// The Amazon Resource Name (ARN) of the endpoint.
25346	//
25347	// EndpointArn is a required field
25348	EndpointArn *string `min:"20" type:"string" required:"true"`
25349}
25350
25351// String returns the string representation
25352func (s UpdateEndpointOutput) String() string {
25353	return awsutil.Prettify(s)
25354}
25355
25356// GoString returns the string representation
25357func (s UpdateEndpointOutput) GoString() string {
25358	return s.String()
25359}
25360
25361// SetEndpointArn sets the EndpointArn field's value.
25362func (s *UpdateEndpointOutput) SetEndpointArn(v string) *UpdateEndpointOutput {
25363	s.EndpointArn = &v
25364	return s
25365}
25366
25367type UpdateEndpointWeightsAndCapacitiesInput struct {
25368	_ struct{} `type:"structure"`
25369
25370	// An object that provides new capacity and weight values for a variant.
25371	//
25372	// DesiredWeightsAndCapacities is a required field
25373	DesiredWeightsAndCapacities []*DesiredWeightAndCapacity `min:"1" type:"list" required:"true"`
25374
25375	// The name of an existing Amazon SageMaker endpoint.
25376	//
25377	// EndpointName is a required field
25378	EndpointName *string `type:"string" required:"true"`
25379}
25380
25381// String returns the string representation
25382func (s UpdateEndpointWeightsAndCapacitiesInput) String() string {
25383	return awsutil.Prettify(s)
25384}
25385
25386// GoString returns the string representation
25387func (s UpdateEndpointWeightsAndCapacitiesInput) GoString() string {
25388	return s.String()
25389}
25390
25391// Validate inspects the fields of the type to determine if they are valid.
25392func (s *UpdateEndpointWeightsAndCapacitiesInput) Validate() error {
25393	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointWeightsAndCapacitiesInput"}
25394	if s.DesiredWeightsAndCapacities == nil {
25395		invalidParams.Add(request.NewErrParamRequired("DesiredWeightsAndCapacities"))
25396	}
25397	if s.DesiredWeightsAndCapacities != nil && len(s.DesiredWeightsAndCapacities) < 1 {
25398		invalidParams.Add(request.NewErrParamMinLen("DesiredWeightsAndCapacities", 1))
25399	}
25400	if s.EndpointName == nil {
25401		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
25402	}
25403	if s.DesiredWeightsAndCapacities != nil {
25404		for i, v := range s.DesiredWeightsAndCapacities {
25405			if v == nil {
25406				continue
25407			}
25408			if err := v.Validate(); err != nil {
25409				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DesiredWeightsAndCapacities", i), err.(request.ErrInvalidParams))
25410			}
25411		}
25412	}
25413
25414	if invalidParams.Len() > 0 {
25415		return invalidParams
25416	}
25417	return nil
25418}
25419
25420// SetDesiredWeightsAndCapacities sets the DesiredWeightsAndCapacities field's value.
25421func (s *UpdateEndpointWeightsAndCapacitiesInput) SetDesiredWeightsAndCapacities(v []*DesiredWeightAndCapacity) *UpdateEndpointWeightsAndCapacitiesInput {
25422	s.DesiredWeightsAndCapacities = v
25423	return s
25424}
25425
25426// SetEndpointName sets the EndpointName field's value.
25427func (s *UpdateEndpointWeightsAndCapacitiesInput) SetEndpointName(v string) *UpdateEndpointWeightsAndCapacitiesInput {
25428	s.EndpointName = &v
25429	return s
25430}
25431
25432type UpdateEndpointWeightsAndCapacitiesOutput struct {
25433	_ struct{} `type:"structure"`
25434
25435	// The Amazon Resource Name (ARN) of the updated endpoint.
25436	//
25437	// EndpointArn is a required field
25438	EndpointArn *string `min:"20" type:"string" required:"true"`
25439}
25440
25441// String returns the string representation
25442func (s UpdateEndpointWeightsAndCapacitiesOutput) String() string {
25443	return awsutil.Prettify(s)
25444}
25445
25446// GoString returns the string representation
25447func (s UpdateEndpointWeightsAndCapacitiesOutput) GoString() string {
25448	return s.String()
25449}
25450
25451// SetEndpointArn sets the EndpointArn field's value.
25452func (s *UpdateEndpointWeightsAndCapacitiesOutput) SetEndpointArn(v string) *UpdateEndpointWeightsAndCapacitiesOutput {
25453	s.EndpointArn = &v
25454	return s
25455}
25456
25457type UpdateNotebookInstanceInput struct {
25458	_ struct{} `type:"structure"`
25459
25460	// A list of the Elastic Inference (EI) instance types to associate with this
25461	// notebook instance. Currently only one EI instance type can be associated
25462	// with a notebook instance. For more information, see Using Elastic Inference
25463	// in Amazon SageMaker (sagemaker/latest/dg/ei.html).
25464	AcceleratorTypes []*string `type:"list"`
25465
25466	// An array of up to three Git repositories to associate with the notebook instance.
25467	// These can be either the names of Git repositories stored as resources in
25468	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
25469	// or in any other Git repository. These repositories are cloned at the same
25470	// level as the default repository of your notebook instance. For more information,
25471	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
25472	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
25473	AdditionalCodeRepositories []*string `type:"list"`
25474
25475	// The Git repository to associate with the notebook instance as its default
25476	// code repository. This can be either the name of a Git repository stored as
25477	// a resource in your account, or the URL of a Git repository in AWS CodeCommit
25478	// (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or
25479	// in any other Git repository. When you open a notebook instance, it opens
25480	// in the directory that contains this repository. For more information, see
25481	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
25482	DefaultCodeRepository *string `min:"1" type:"string"`
25483
25484	// A list of the Elastic Inference (EI) instance types to remove from this notebook
25485	// instance. This operation is idempotent. If you specify an accelerator type
25486	// that is not associated with the notebook instance when you call this method,
25487	// it does not throw an error.
25488	DisassociateAcceleratorTypes *bool `type:"boolean"`
25489
25490	// A list of names or URLs of the default Git repositories to remove from this
25491	// notebook instance. This operation is idempotent. If you specify a Git repository
25492	// that is not associated with the notebook instance when you call this method,
25493	// it does not throw an error.
25494	DisassociateAdditionalCodeRepositories *bool `type:"boolean"`
25495
25496	// The name or URL of the default Git repository to remove from this notebook
25497	// instance. This operation is idempotent. If you specify a Git repository that
25498	// is not associated with the notebook instance when you call this method, it
25499	// does not throw an error.
25500	DisassociateDefaultCodeRepository *bool `type:"boolean"`
25501
25502	// Set to true to remove the notebook instance lifecycle configuration currently
25503	// associated with the notebook instance. This operation is idempotent. If you
25504	// specify a lifecycle configuration that is not associated with the notebook
25505	// instance when you call this method, it does not throw an error.
25506	DisassociateLifecycleConfig *bool `type:"boolean"`
25507
25508	// The Amazon ML compute instance type.
25509	InstanceType *string `type:"string" enum:"InstanceType"`
25510
25511	// The name of a lifecycle configuration to associate with the notebook instance.
25512	// For information about lifestyle configurations, see Step 2.1: (Optional)
25513	// Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
25514	LifecycleConfigName *string `type:"string"`
25515
25516	// The name of the notebook instance to update.
25517	//
25518	// NotebookInstanceName is a required field
25519	NotebookInstanceName *string `type:"string" required:"true"`
25520
25521	// The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker can
25522	// assume to access the notebook instance. For more information, see Amazon
25523	// SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
25524	//
25525	// To be able to pass this role to Amazon SageMaker, the caller of this API
25526	// must have the iam:PassRole permission.
25527	RoleArn *string `min:"20" type:"string"`
25528
25529	// Whether root access is enabled or disabled for users of the notebook instance.
25530	// The default value is Enabled.
25531	//
25532	// If you set this to Disabled, users don't have root access on the notebook
25533	// instance, but lifecycle configuration scripts still run with root permissions.
25534	RootAccess *string `type:"string" enum:"RootAccess"`
25535
25536	// The size, in GB, of the ML storage volume to attach to the notebook instance.
25537	// The default value is 5 GB. ML storage volumes are encrypted, so Amazon SageMaker
25538	// can't determine the amount of available free space on the volume. Because
25539	// of this, you can increase the volume size when you update a notebook instance,
25540	// but you can't decrease the volume size. If you want to decrease the size
25541	// of the ML storage volume in use, create a new notebook instance with the
25542	// desired size.
25543	VolumeSizeInGB *int64 `min:"5" type:"integer"`
25544}
25545
25546// String returns the string representation
25547func (s UpdateNotebookInstanceInput) String() string {
25548	return awsutil.Prettify(s)
25549}
25550
25551// GoString returns the string representation
25552func (s UpdateNotebookInstanceInput) GoString() string {
25553	return s.String()
25554}
25555
25556// Validate inspects the fields of the type to determine if they are valid.
25557func (s *UpdateNotebookInstanceInput) Validate() error {
25558	invalidParams := request.ErrInvalidParams{Context: "UpdateNotebookInstanceInput"}
25559	if s.DefaultCodeRepository != nil && len(*s.DefaultCodeRepository) < 1 {
25560		invalidParams.Add(request.NewErrParamMinLen("DefaultCodeRepository", 1))
25561	}
25562	if s.NotebookInstanceName == nil {
25563		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
25564	}
25565	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
25566		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
25567	}
25568	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 5 {
25569		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 5))
25570	}
25571
25572	if invalidParams.Len() > 0 {
25573		return invalidParams
25574	}
25575	return nil
25576}
25577
25578// SetAcceleratorTypes sets the AcceleratorTypes field's value.
25579func (s *UpdateNotebookInstanceInput) SetAcceleratorTypes(v []*string) *UpdateNotebookInstanceInput {
25580	s.AcceleratorTypes = v
25581	return s
25582}
25583
25584// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
25585func (s *UpdateNotebookInstanceInput) SetAdditionalCodeRepositories(v []*string) *UpdateNotebookInstanceInput {
25586	s.AdditionalCodeRepositories = v
25587	return s
25588}
25589
25590// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
25591func (s *UpdateNotebookInstanceInput) SetDefaultCodeRepository(v string) *UpdateNotebookInstanceInput {
25592	s.DefaultCodeRepository = &v
25593	return s
25594}
25595
25596// SetDisassociateAcceleratorTypes sets the DisassociateAcceleratorTypes field's value.
25597func (s *UpdateNotebookInstanceInput) SetDisassociateAcceleratorTypes(v bool) *UpdateNotebookInstanceInput {
25598	s.DisassociateAcceleratorTypes = &v
25599	return s
25600}
25601
25602// SetDisassociateAdditionalCodeRepositories sets the DisassociateAdditionalCodeRepositories field's value.
25603func (s *UpdateNotebookInstanceInput) SetDisassociateAdditionalCodeRepositories(v bool) *UpdateNotebookInstanceInput {
25604	s.DisassociateAdditionalCodeRepositories = &v
25605	return s
25606}
25607
25608// SetDisassociateDefaultCodeRepository sets the DisassociateDefaultCodeRepository field's value.
25609func (s *UpdateNotebookInstanceInput) SetDisassociateDefaultCodeRepository(v bool) *UpdateNotebookInstanceInput {
25610	s.DisassociateDefaultCodeRepository = &v
25611	return s
25612}
25613
25614// SetDisassociateLifecycleConfig sets the DisassociateLifecycleConfig field's value.
25615func (s *UpdateNotebookInstanceInput) SetDisassociateLifecycleConfig(v bool) *UpdateNotebookInstanceInput {
25616	s.DisassociateLifecycleConfig = &v
25617	return s
25618}
25619
25620// SetInstanceType sets the InstanceType field's value.
25621func (s *UpdateNotebookInstanceInput) SetInstanceType(v string) *UpdateNotebookInstanceInput {
25622	s.InstanceType = &v
25623	return s
25624}
25625
25626// SetLifecycleConfigName sets the LifecycleConfigName field's value.
25627func (s *UpdateNotebookInstanceInput) SetLifecycleConfigName(v string) *UpdateNotebookInstanceInput {
25628	s.LifecycleConfigName = &v
25629	return s
25630}
25631
25632// SetNotebookInstanceName sets the NotebookInstanceName field's value.
25633func (s *UpdateNotebookInstanceInput) SetNotebookInstanceName(v string) *UpdateNotebookInstanceInput {
25634	s.NotebookInstanceName = &v
25635	return s
25636}
25637
25638// SetRoleArn sets the RoleArn field's value.
25639func (s *UpdateNotebookInstanceInput) SetRoleArn(v string) *UpdateNotebookInstanceInput {
25640	s.RoleArn = &v
25641	return s
25642}
25643
25644// SetRootAccess sets the RootAccess field's value.
25645func (s *UpdateNotebookInstanceInput) SetRootAccess(v string) *UpdateNotebookInstanceInput {
25646	s.RootAccess = &v
25647	return s
25648}
25649
25650// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
25651func (s *UpdateNotebookInstanceInput) SetVolumeSizeInGB(v int64) *UpdateNotebookInstanceInput {
25652	s.VolumeSizeInGB = &v
25653	return s
25654}
25655
25656type UpdateNotebookInstanceLifecycleConfigInput struct {
25657	_ struct{} `type:"structure"`
25658
25659	// The name of the lifecycle configuration.
25660	//
25661	// NotebookInstanceLifecycleConfigName is a required field
25662	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
25663
25664	// The shell script that runs only once, when you create a notebook instance.
25665	// The shell script must be a base64-encoded string.
25666	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
25667
25668	// The shell script that runs every time you start a notebook instance, including
25669	// when you create the notebook instance. The shell script must be a base64-encoded
25670	// string.
25671	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
25672}
25673
25674// String returns the string representation
25675func (s UpdateNotebookInstanceLifecycleConfigInput) String() string {
25676	return awsutil.Prettify(s)
25677}
25678
25679// GoString returns the string representation
25680func (s UpdateNotebookInstanceLifecycleConfigInput) GoString() string {
25681	return s.String()
25682}
25683
25684// Validate inspects the fields of the type to determine if they are valid.
25685func (s *UpdateNotebookInstanceLifecycleConfigInput) Validate() error {
25686	invalidParams := request.ErrInvalidParams{Context: "UpdateNotebookInstanceLifecycleConfigInput"}
25687	if s.NotebookInstanceLifecycleConfigName == nil {
25688		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
25689	}
25690	if s.OnCreate != nil {
25691		for i, v := range s.OnCreate {
25692			if v == nil {
25693				continue
25694			}
25695			if err := v.Validate(); err != nil {
25696				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnCreate", i), err.(request.ErrInvalidParams))
25697			}
25698		}
25699	}
25700	if s.OnStart != nil {
25701		for i, v := range s.OnStart {
25702			if v == nil {
25703				continue
25704			}
25705			if err := v.Validate(); err != nil {
25706				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnStart", i), err.(request.ErrInvalidParams))
25707			}
25708		}
25709	}
25710
25711	if invalidParams.Len() > 0 {
25712		return invalidParams
25713	}
25714	return nil
25715}
25716
25717// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
25718func (s *UpdateNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *UpdateNotebookInstanceLifecycleConfigInput {
25719	s.NotebookInstanceLifecycleConfigName = &v
25720	return s
25721}
25722
25723// SetOnCreate sets the OnCreate field's value.
25724func (s *UpdateNotebookInstanceLifecycleConfigInput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *UpdateNotebookInstanceLifecycleConfigInput {
25725	s.OnCreate = v
25726	return s
25727}
25728
25729// SetOnStart sets the OnStart field's value.
25730func (s *UpdateNotebookInstanceLifecycleConfigInput) SetOnStart(v []*NotebookInstanceLifecycleHook) *UpdateNotebookInstanceLifecycleConfigInput {
25731	s.OnStart = v
25732	return s
25733}
25734
25735type UpdateNotebookInstanceLifecycleConfigOutput struct {
25736	_ struct{} `type:"structure"`
25737}
25738
25739// String returns the string representation
25740func (s UpdateNotebookInstanceLifecycleConfigOutput) String() string {
25741	return awsutil.Prettify(s)
25742}
25743
25744// GoString returns the string representation
25745func (s UpdateNotebookInstanceLifecycleConfigOutput) GoString() string {
25746	return s.String()
25747}
25748
25749type UpdateNotebookInstanceOutput struct {
25750	_ struct{} `type:"structure"`
25751}
25752
25753// String returns the string representation
25754func (s UpdateNotebookInstanceOutput) String() string {
25755	return awsutil.Prettify(s)
25756}
25757
25758// GoString returns the string representation
25759func (s UpdateNotebookInstanceOutput) GoString() string {
25760	return s.String()
25761}
25762
25763type UpdateWorkteamInput struct {
25764	_ struct{} `type:"structure"`
25765
25766	// An updated description for the work team.
25767	Description *string `min:"1" type:"string"`
25768
25769	// A list of MemberDefinition objects that contain the updated work team members.
25770	MemberDefinitions []*MemberDefinition `min:"1" type:"list"`
25771
25772	// Configures SNS topic notifications for available or expiring work items
25773	NotificationConfiguration *NotificationConfiguration `type:"structure"`
25774
25775	// The name of the work team to update.
25776	//
25777	// WorkteamName is a required field
25778	WorkteamName *string `min:"1" type:"string" required:"true"`
25779}
25780
25781// String returns the string representation
25782func (s UpdateWorkteamInput) String() string {
25783	return awsutil.Prettify(s)
25784}
25785
25786// GoString returns the string representation
25787func (s UpdateWorkteamInput) GoString() string {
25788	return s.String()
25789}
25790
25791// Validate inspects the fields of the type to determine if they are valid.
25792func (s *UpdateWorkteamInput) Validate() error {
25793	invalidParams := request.ErrInvalidParams{Context: "UpdateWorkteamInput"}
25794	if s.Description != nil && len(*s.Description) < 1 {
25795		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
25796	}
25797	if s.MemberDefinitions != nil && len(s.MemberDefinitions) < 1 {
25798		invalidParams.Add(request.NewErrParamMinLen("MemberDefinitions", 1))
25799	}
25800	if s.WorkteamName == nil {
25801		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
25802	}
25803	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
25804		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
25805	}
25806	if s.MemberDefinitions != nil {
25807		for i, v := range s.MemberDefinitions {
25808			if v == nil {
25809				continue
25810			}
25811			if err := v.Validate(); err != nil {
25812				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberDefinitions", i), err.(request.ErrInvalidParams))
25813			}
25814		}
25815	}
25816
25817	if invalidParams.Len() > 0 {
25818		return invalidParams
25819	}
25820	return nil
25821}
25822
25823// SetDescription sets the Description field's value.
25824func (s *UpdateWorkteamInput) SetDescription(v string) *UpdateWorkteamInput {
25825	s.Description = &v
25826	return s
25827}
25828
25829// SetMemberDefinitions sets the MemberDefinitions field's value.
25830func (s *UpdateWorkteamInput) SetMemberDefinitions(v []*MemberDefinition) *UpdateWorkteamInput {
25831	s.MemberDefinitions = v
25832	return s
25833}
25834
25835// SetNotificationConfiguration sets the NotificationConfiguration field's value.
25836func (s *UpdateWorkteamInput) SetNotificationConfiguration(v *NotificationConfiguration) *UpdateWorkteamInput {
25837	s.NotificationConfiguration = v
25838	return s
25839}
25840
25841// SetWorkteamName sets the WorkteamName field's value.
25842func (s *UpdateWorkteamInput) SetWorkteamName(v string) *UpdateWorkteamInput {
25843	s.WorkteamName = &v
25844	return s
25845}
25846
25847type UpdateWorkteamOutput struct {
25848	_ struct{} `type:"structure"`
25849
25850	// A Workteam object that describes the updated work team.
25851	//
25852	// Workteam is a required field
25853	Workteam *Workteam `type:"structure" required:"true"`
25854}
25855
25856// String returns the string representation
25857func (s UpdateWorkteamOutput) String() string {
25858	return awsutil.Prettify(s)
25859}
25860
25861// GoString returns the string representation
25862func (s UpdateWorkteamOutput) GoString() string {
25863	return s.String()
25864}
25865
25866// SetWorkteam sets the Workteam field's value.
25867func (s *UpdateWorkteamOutput) SetWorkteam(v *Workteam) *UpdateWorkteamOutput {
25868	s.Workteam = v
25869	return s
25870}
25871
25872// Specifies a VPC that your training jobs and hosted models have access to.
25873// Control access to and from your training and model containers by configuring
25874// the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual
25875// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
25876// and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
25877type VpcConfig struct {
25878	_ struct{} `type:"structure"`
25879
25880	// The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security
25881	// groups for the VPC that is specified in the Subnets field.
25882	//
25883	// SecurityGroupIds is a required field
25884	SecurityGroupIds []*string `min:"1" type:"list" required:"true"`
25885
25886	// The ID of the subnets in the VPC to which you want to connect your training
25887	// job or model.
25888	//
25889	// Amazon EC2 P3 accelerated computing instances are not available in the c/d/e
25890	// availability zones of region us-east-1. If you want to create endpoints with
25891	// P3 instances in VPC mode in region us-east-1, create subnets in a/b/f availability
25892	// zones instead.
25893	//
25894	// Subnets is a required field
25895	Subnets []*string `min:"1" type:"list" required:"true"`
25896}
25897
25898// String returns the string representation
25899func (s VpcConfig) String() string {
25900	return awsutil.Prettify(s)
25901}
25902
25903// GoString returns the string representation
25904func (s VpcConfig) GoString() string {
25905	return s.String()
25906}
25907
25908// Validate inspects the fields of the type to determine if they are valid.
25909func (s *VpcConfig) Validate() error {
25910	invalidParams := request.ErrInvalidParams{Context: "VpcConfig"}
25911	if s.SecurityGroupIds == nil {
25912		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
25913	}
25914	if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 {
25915		invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1))
25916	}
25917	if s.Subnets == nil {
25918		invalidParams.Add(request.NewErrParamRequired("Subnets"))
25919	}
25920	if s.Subnets != nil && len(s.Subnets) < 1 {
25921		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
25922	}
25923
25924	if invalidParams.Len() > 0 {
25925		return invalidParams
25926	}
25927	return nil
25928}
25929
25930// SetSecurityGroupIds sets the SecurityGroupIds field's value.
25931func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
25932	s.SecurityGroupIds = v
25933	return s
25934}
25935
25936// SetSubnets sets the Subnets field's value.
25937func (s *VpcConfig) SetSubnets(v []*string) *VpcConfig {
25938	s.Subnets = v
25939	return s
25940}
25941
25942// Provides details about a labeling work team.
25943type Workteam struct {
25944	_ struct{} `type:"structure"`
25945
25946	// The date and time that the work team was created (timestamp).
25947	CreateDate *time.Time `type:"timestamp"`
25948
25949	// A description of the work team.
25950	//
25951	// Description is a required field
25952	Description *string `min:"1" type:"string" required:"true"`
25953
25954	// The date and time that the work team was last updated (timestamp).
25955	LastUpdatedDate *time.Time `type:"timestamp"`
25956
25957	// The Amazon Cognito user groups that make up the work team.
25958	//
25959	// MemberDefinitions is a required field
25960	MemberDefinitions []*MemberDefinition `min:"1" type:"list" required:"true"`
25961
25962	// Configures SNS notifications of available or expiring work items for work
25963	// teams.
25964	NotificationConfiguration *NotificationConfiguration `type:"structure"`
25965
25966	// The Amazon Marketplace identifier for a vendor's work team.
25967	ProductListingIds []*string `type:"list"`
25968
25969	// The URI of the labeling job's user interface. Workers open this URI to start
25970	// labeling your data objects.
25971	SubDomain *string `type:"string"`
25972
25973	// The Amazon Resource Name (ARN) that identifies the work team.
25974	//
25975	// WorkteamArn is a required field
25976	WorkteamArn *string `type:"string" required:"true"`
25977
25978	// The name of the work team.
25979	//
25980	// WorkteamName is a required field
25981	WorkteamName *string `min:"1" type:"string" required:"true"`
25982}
25983
25984// String returns the string representation
25985func (s Workteam) String() string {
25986	return awsutil.Prettify(s)
25987}
25988
25989// GoString returns the string representation
25990func (s Workteam) GoString() string {
25991	return s.String()
25992}
25993
25994// SetCreateDate sets the CreateDate field's value.
25995func (s *Workteam) SetCreateDate(v time.Time) *Workteam {
25996	s.CreateDate = &v
25997	return s
25998}
25999
26000// SetDescription sets the Description field's value.
26001func (s *Workteam) SetDescription(v string) *Workteam {
26002	s.Description = &v
26003	return s
26004}
26005
26006// SetLastUpdatedDate sets the LastUpdatedDate field's value.
26007func (s *Workteam) SetLastUpdatedDate(v time.Time) *Workteam {
26008	s.LastUpdatedDate = &v
26009	return s
26010}
26011
26012// SetMemberDefinitions sets the MemberDefinitions field's value.
26013func (s *Workteam) SetMemberDefinitions(v []*MemberDefinition) *Workteam {
26014	s.MemberDefinitions = v
26015	return s
26016}
26017
26018// SetNotificationConfiguration sets the NotificationConfiguration field's value.
26019func (s *Workteam) SetNotificationConfiguration(v *NotificationConfiguration) *Workteam {
26020	s.NotificationConfiguration = v
26021	return s
26022}
26023
26024// SetProductListingIds sets the ProductListingIds field's value.
26025func (s *Workteam) SetProductListingIds(v []*string) *Workteam {
26026	s.ProductListingIds = v
26027	return s
26028}
26029
26030// SetSubDomain sets the SubDomain field's value.
26031func (s *Workteam) SetSubDomain(v string) *Workteam {
26032	s.SubDomain = &v
26033	return s
26034}
26035
26036// SetWorkteamArn sets the WorkteamArn field's value.
26037func (s *Workteam) SetWorkteamArn(v string) *Workteam {
26038	s.WorkteamArn = &v
26039	return s
26040}
26041
26042// SetWorkteamName sets the WorkteamName field's value.
26043func (s *Workteam) SetWorkteamName(v string) *Workteam {
26044	s.WorkteamName = &v
26045	return s
26046}
26047
26048const (
26049	// AlgorithmSortByName is a AlgorithmSortBy enum value
26050	AlgorithmSortByName = "Name"
26051
26052	// AlgorithmSortByCreationTime is a AlgorithmSortBy enum value
26053	AlgorithmSortByCreationTime = "CreationTime"
26054)
26055
26056const (
26057	// AlgorithmStatusPending is a AlgorithmStatus enum value
26058	AlgorithmStatusPending = "Pending"
26059
26060	// AlgorithmStatusInProgress is a AlgorithmStatus enum value
26061	AlgorithmStatusInProgress = "InProgress"
26062
26063	// AlgorithmStatusCompleted is a AlgorithmStatus enum value
26064	AlgorithmStatusCompleted = "Completed"
26065
26066	// AlgorithmStatusFailed is a AlgorithmStatus enum value
26067	AlgorithmStatusFailed = "Failed"
26068
26069	// AlgorithmStatusDeleting is a AlgorithmStatus enum value
26070	AlgorithmStatusDeleting = "Deleting"
26071)
26072
26073const (
26074	// AssemblyTypeNone is a AssemblyType enum value
26075	AssemblyTypeNone = "None"
26076
26077	// AssemblyTypeLine is a AssemblyType enum value
26078	AssemblyTypeLine = "Line"
26079)
26080
26081const (
26082	// BatchStrategyMultiRecord is a BatchStrategy enum value
26083	BatchStrategyMultiRecord = "MultiRecord"
26084
26085	// BatchStrategySingleRecord is a BatchStrategy enum value
26086	BatchStrategySingleRecord = "SingleRecord"
26087)
26088
26089const (
26090	// BooleanOperatorAnd is a BooleanOperator enum value
26091	BooleanOperatorAnd = "And"
26092
26093	// BooleanOperatorOr is a BooleanOperator enum value
26094	BooleanOperatorOr = "Or"
26095)
26096
26097const (
26098	// CodeRepositorySortByName is a CodeRepositorySortBy enum value
26099	CodeRepositorySortByName = "Name"
26100
26101	// CodeRepositorySortByCreationTime is a CodeRepositorySortBy enum value
26102	CodeRepositorySortByCreationTime = "CreationTime"
26103
26104	// CodeRepositorySortByLastModifiedTime is a CodeRepositorySortBy enum value
26105	CodeRepositorySortByLastModifiedTime = "LastModifiedTime"
26106)
26107
26108const (
26109	// CodeRepositorySortOrderAscending is a CodeRepositorySortOrder enum value
26110	CodeRepositorySortOrderAscending = "Ascending"
26111
26112	// CodeRepositorySortOrderDescending is a CodeRepositorySortOrder enum value
26113	CodeRepositorySortOrderDescending = "Descending"
26114)
26115
26116const (
26117	// CompilationJobStatusInprogress is a CompilationJobStatus enum value
26118	CompilationJobStatusInprogress = "INPROGRESS"
26119
26120	// CompilationJobStatusCompleted is a CompilationJobStatus enum value
26121	CompilationJobStatusCompleted = "COMPLETED"
26122
26123	// CompilationJobStatusFailed is a CompilationJobStatus enum value
26124	CompilationJobStatusFailed = "FAILED"
26125
26126	// CompilationJobStatusStarting is a CompilationJobStatus enum value
26127	CompilationJobStatusStarting = "STARTING"
26128
26129	// CompilationJobStatusStopping is a CompilationJobStatus enum value
26130	CompilationJobStatusStopping = "STOPPING"
26131
26132	// CompilationJobStatusStopped is a CompilationJobStatus enum value
26133	CompilationJobStatusStopped = "STOPPED"
26134)
26135
26136const (
26137	// CompressionTypeNone is a CompressionType enum value
26138	CompressionTypeNone = "None"
26139
26140	// CompressionTypeGzip is a CompressionType enum value
26141	CompressionTypeGzip = "Gzip"
26142)
26143
26144const (
26145	// ContentClassifierFreeOfPersonallyIdentifiableInformation is a ContentClassifier enum value
26146	ContentClassifierFreeOfPersonallyIdentifiableInformation = "FreeOfPersonallyIdentifiableInformation"
26147
26148	// ContentClassifierFreeOfAdultContent is a ContentClassifier enum value
26149	ContentClassifierFreeOfAdultContent = "FreeOfAdultContent"
26150)
26151
26152const (
26153	// DetailedAlgorithmStatusNotStarted is a DetailedAlgorithmStatus enum value
26154	DetailedAlgorithmStatusNotStarted = "NotStarted"
26155
26156	// DetailedAlgorithmStatusInProgress is a DetailedAlgorithmStatus enum value
26157	DetailedAlgorithmStatusInProgress = "InProgress"
26158
26159	// DetailedAlgorithmStatusCompleted is a DetailedAlgorithmStatus enum value
26160	DetailedAlgorithmStatusCompleted = "Completed"
26161
26162	// DetailedAlgorithmStatusFailed is a DetailedAlgorithmStatus enum value
26163	DetailedAlgorithmStatusFailed = "Failed"
26164)
26165
26166const (
26167	// DetailedModelPackageStatusNotStarted is a DetailedModelPackageStatus enum value
26168	DetailedModelPackageStatusNotStarted = "NotStarted"
26169
26170	// DetailedModelPackageStatusInProgress is a DetailedModelPackageStatus enum value
26171	DetailedModelPackageStatusInProgress = "InProgress"
26172
26173	// DetailedModelPackageStatusCompleted is a DetailedModelPackageStatus enum value
26174	DetailedModelPackageStatusCompleted = "Completed"
26175
26176	// DetailedModelPackageStatusFailed is a DetailedModelPackageStatus enum value
26177	DetailedModelPackageStatusFailed = "Failed"
26178)
26179
26180const (
26181	// DirectInternetAccessEnabled is a DirectInternetAccess enum value
26182	DirectInternetAccessEnabled = "Enabled"
26183
26184	// DirectInternetAccessDisabled is a DirectInternetAccess enum value
26185	DirectInternetAccessDisabled = "Disabled"
26186)
26187
26188const (
26189	// EndpointConfigSortKeyName is a EndpointConfigSortKey enum value
26190	EndpointConfigSortKeyName = "Name"
26191
26192	// EndpointConfigSortKeyCreationTime is a EndpointConfigSortKey enum value
26193	EndpointConfigSortKeyCreationTime = "CreationTime"
26194)
26195
26196const (
26197	// EndpointSortKeyName is a EndpointSortKey enum value
26198	EndpointSortKeyName = "Name"
26199
26200	// EndpointSortKeyCreationTime is a EndpointSortKey enum value
26201	EndpointSortKeyCreationTime = "CreationTime"
26202
26203	// EndpointSortKeyStatus is a EndpointSortKey enum value
26204	EndpointSortKeyStatus = "Status"
26205)
26206
26207const (
26208	// EndpointStatusOutOfService is a EndpointStatus enum value
26209	EndpointStatusOutOfService = "OutOfService"
26210
26211	// EndpointStatusCreating is a EndpointStatus enum value
26212	EndpointStatusCreating = "Creating"
26213
26214	// EndpointStatusUpdating is a EndpointStatus enum value
26215	EndpointStatusUpdating = "Updating"
26216
26217	// EndpointStatusSystemUpdating is a EndpointStatus enum value
26218	EndpointStatusSystemUpdating = "SystemUpdating"
26219
26220	// EndpointStatusRollingBack is a EndpointStatus enum value
26221	EndpointStatusRollingBack = "RollingBack"
26222
26223	// EndpointStatusInService is a EndpointStatus enum value
26224	EndpointStatusInService = "InService"
26225
26226	// EndpointStatusDeleting is a EndpointStatus enum value
26227	EndpointStatusDeleting = "Deleting"
26228
26229	// EndpointStatusFailed is a EndpointStatus enum value
26230	EndpointStatusFailed = "Failed"
26231)
26232
26233const (
26234	// FileSystemAccessModeRw is a FileSystemAccessMode enum value
26235	FileSystemAccessModeRw = "rw"
26236
26237	// FileSystemAccessModeRo is a FileSystemAccessMode enum value
26238	FileSystemAccessModeRo = "ro"
26239)
26240
26241const (
26242	// FileSystemTypeEfs is a FileSystemType enum value
26243	FileSystemTypeEfs = "EFS"
26244
26245	// FileSystemTypeFsxLustre is a FileSystemType enum value
26246	FileSystemTypeFsxLustre = "FSxLustre"
26247)
26248
26249const (
26250	// FrameworkTensorflow is a Framework enum value
26251	FrameworkTensorflow = "TENSORFLOW"
26252
26253	// FrameworkMxnet is a Framework enum value
26254	FrameworkMxnet = "MXNET"
26255
26256	// FrameworkOnnx is a Framework enum value
26257	FrameworkOnnx = "ONNX"
26258
26259	// FrameworkPytorch is a Framework enum value
26260	FrameworkPytorch = "PYTORCH"
26261
26262	// FrameworkXgboost is a Framework enum value
26263	FrameworkXgboost = "XGBOOST"
26264)
26265
26266const (
26267	// HyperParameterScalingTypeAuto is a HyperParameterScalingType enum value
26268	HyperParameterScalingTypeAuto = "Auto"
26269
26270	// HyperParameterScalingTypeLinear is a HyperParameterScalingType enum value
26271	HyperParameterScalingTypeLinear = "Linear"
26272
26273	// HyperParameterScalingTypeLogarithmic is a HyperParameterScalingType enum value
26274	HyperParameterScalingTypeLogarithmic = "Logarithmic"
26275
26276	// HyperParameterScalingTypeReverseLogarithmic is a HyperParameterScalingType enum value
26277	HyperParameterScalingTypeReverseLogarithmic = "ReverseLogarithmic"
26278)
26279
26280const (
26281	// HyperParameterTuningJobObjectiveTypeMaximize is a HyperParameterTuningJobObjectiveType enum value
26282	HyperParameterTuningJobObjectiveTypeMaximize = "Maximize"
26283
26284	// HyperParameterTuningJobObjectiveTypeMinimize is a HyperParameterTuningJobObjectiveType enum value
26285	HyperParameterTuningJobObjectiveTypeMinimize = "Minimize"
26286)
26287
26288const (
26289	// HyperParameterTuningJobSortByOptionsName is a HyperParameterTuningJobSortByOptions enum value
26290	HyperParameterTuningJobSortByOptionsName = "Name"
26291
26292	// HyperParameterTuningJobSortByOptionsStatus is a HyperParameterTuningJobSortByOptions enum value
26293	HyperParameterTuningJobSortByOptionsStatus = "Status"
26294
26295	// HyperParameterTuningJobSortByOptionsCreationTime is a HyperParameterTuningJobSortByOptions enum value
26296	HyperParameterTuningJobSortByOptionsCreationTime = "CreationTime"
26297)
26298
26299const (
26300	// HyperParameterTuningJobStatusCompleted is a HyperParameterTuningJobStatus enum value
26301	HyperParameterTuningJobStatusCompleted = "Completed"
26302
26303	// HyperParameterTuningJobStatusInProgress is a HyperParameterTuningJobStatus enum value
26304	HyperParameterTuningJobStatusInProgress = "InProgress"
26305
26306	// HyperParameterTuningJobStatusFailed is a HyperParameterTuningJobStatus enum value
26307	HyperParameterTuningJobStatusFailed = "Failed"
26308
26309	// HyperParameterTuningJobStatusStopped is a HyperParameterTuningJobStatus enum value
26310	HyperParameterTuningJobStatusStopped = "Stopped"
26311
26312	// HyperParameterTuningJobStatusStopping is a HyperParameterTuningJobStatus enum value
26313	HyperParameterTuningJobStatusStopping = "Stopping"
26314)
26315
26316// The strategy hyperparameter tuning uses to find the best combination of hyperparameters
26317// for your model. Currently, the only supported value is Bayesian.
26318const (
26319	// HyperParameterTuningJobStrategyTypeBayesian is a HyperParameterTuningJobStrategyType enum value
26320	HyperParameterTuningJobStrategyTypeBayesian = "Bayesian"
26321
26322	// HyperParameterTuningJobStrategyTypeRandom is a HyperParameterTuningJobStrategyType enum value
26323	HyperParameterTuningJobStrategyTypeRandom = "Random"
26324)
26325
26326const (
26327	// HyperParameterTuningJobWarmStartTypeIdenticalDataAndAlgorithm is a HyperParameterTuningJobWarmStartType enum value
26328	HyperParameterTuningJobWarmStartTypeIdenticalDataAndAlgorithm = "IdenticalDataAndAlgorithm"
26329
26330	// HyperParameterTuningJobWarmStartTypeTransferLearning is a HyperParameterTuningJobWarmStartType enum value
26331	HyperParameterTuningJobWarmStartTypeTransferLearning = "TransferLearning"
26332)
26333
26334const (
26335	// InstanceTypeMlT2Medium is a InstanceType enum value
26336	InstanceTypeMlT2Medium = "ml.t2.medium"
26337
26338	// InstanceTypeMlT2Large is a InstanceType enum value
26339	InstanceTypeMlT2Large = "ml.t2.large"
26340
26341	// InstanceTypeMlT2Xlarge is a InstanceType enum value
26342	InstanceTypeMlT2Xlarge = "ml.t2.xlarge"
26343
26344	// InstanceTypeMlT22xlarge is a InstanceType enum value
26345	InstanceTypeMlT22xlarge = "ml.t2.2xlarge"
26346
26347	// InstanceTypeMlT3Medium is a InstanceType enum value
26348	InstanceTypeMlT3Medium = "ml.t3.medium"
26349
26350	// InstanceTypeMlT3Large is a InstanceType enum value
26351	InstanceTypeMlT3Large = "ml.t3.large"
26352
26353	// InstanceTypeMlT3Xlarge is a InstanceType enum value
26354	InstanceTypeMlT3Xlarge = "ml.t3.xlarge"
26355
26356	// InstanceTypeMlT32xlarge is a InstanceType enum value
26357	InstanceTypeMlT32xlarge = "ml.t3.2xlarge"
26358
26359	// InstanceTypeMlM4Xlarge is a InstanceType enum value
26360	InstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26361
26362	// InstanceTypeMlM42xlarge is a InstanceType enum value
26363	InstanceTypeMlM42xlarge = "ml.m4.2xlarge"
26364
26365	// InstanceTypeMlM44xlarge is a InstanceType enum value
26366	InstanceTypeMlM44xlarge = "ml.m4.4xlarge"
26367
26368	// InstanceTypeMlM410xlarge is a InstanceType enum value
26369	InstanceTypeMlM410xlarge = "ml.m4.10xlarge"
26370
26371	// InstanceTypeMlM416xlarge is a InstanceType enum value
26372	InstanceTypeMlM416xlarge = "ml.m4.16xlarge"
26373
26374	// InstanceTypeMlM5Xlarge is a InstanceType enum value
26375	InstanceTypeMlM5Xlarge = "ml.m5.xlarge"
26376
26377	// InstanceTypeMlM52xlarge is a InstanceType enum value
26378	InstanceTypeMlM52xlarge = "ml.m5.2xlarge"
26379
26380	// InstanceTypeMlM54xlarge is a InstanceType enum value
26381	InstanceTypeMlM54xlarge = "ml.m5.4xlarge"
26382
26383	// InstanceTypeMlM512xlarge is a InstanceType enum value
26384	InstanceTypeMlM512xlarge = "ml.m5.12xlarge"
26385
26386	// InstanceTypeMlM524xlarge is a InstanceType enum value
26387	InstanceTypeMlM524xlarge = "ml.m5.24xlarge"
26388
26389	// InstanceTypeMlC4Xlarge is a InstanceType enum value
26390	InstanceTypeMlC4Xlarge = "ml.c4.xlarge"
26391
26392	// InstanceTypeMlC42xlarge is a InstanceType enum value
26393	InstanceTypeMlC42xlarge = "ml.c4.2xlarge"
26394
26395	// InstanceTypeMlC44xlarge is a InstanceType enum value
26396	InstanceTypeMlC44xlarge = "ml.c4.4xlarge"
26397
26398	// InstanceTypeMlC48xlarge is a InstanceType enum value
26399	InstanceTypeMlC48xlarge = "ml.c4.8xlarge"
26400
26401	// InstanceTypeMlC5Xlarge is a InstanceType enum value
26402	InstanceTypeMlC5Xlarge = "ml.c5.xlarge"
26403
26404	// InstanceTypeMlC52xlarge is a InstanceType enum value
26405	InstanceTypeMlC52xlarge = "ml.c5.2xlarge"
26406
26407	// InstanceTypeMlC54xlarge is a InstanceType enum value
26408	InstanceTypeMlC54xlarge = "ml.c5.4xlarge"
26409
26410	// InstanceTypeMlC59xlarge is a InstanceType enum value
26411	InstanceTypeMlC59xlarge = "ml.c5.9xlarge"
26412
26413	// InstanceTypeMlC518xlarge is a InstanceType enum value
26414	InstanceTypeMlC518xlarge = "ml.c5.18xlarge"
26415
26416	// InstanceTypeMlC5dXlarge is a InstanceType enum value
26417	InstanceTypeMlC5dXlarge = "ml.c5d.xlarge"
26418
26419	// InstanceTypeMlC5d2xlarge is a InstanceType enum value
26420	InstanceTypeMlC5d2xlarge = "ml.c5d.2xlarge"
26421
26422	// InstanceTypeMlC5d4xlarge is a InstanceType enum value
26423	InstanceTypeMlC5d4xlarge = "ml.c5d.4xlarge"
26424
26425	// InstanceTypeMlC5d9xlarge is a InstanceType enum value
26426	InstanceTypeMlC5d9xlarge = "ml.c5d.9xlarge"
26427
26428	// InstanceTypeMlC5d18xlarge is a InstanceType enum value
26429	InstanceTypeMlC5d18xlarge = "ml.c5d.18xlarge"
26430
26431	// InstanceTypeMlP2Xlarge is a InstanceType enum value
26432	InstanceTypeMlP2Xlarge = "ml.p2.xlarge"
26433
26434	// InstanceTypeMlP28xlarge is a InstanceType enum value
26435	InstanceTypeMlP28xlarge = "ml.p2.8xlarge"
26436
26437	// InstanceTypeMlP216xlarge is a InstanceType enum value
26438	InstanceTypeMlP216xlarge = "ml.p2.16xlarge"
26439
26440	// InstanceTypeMlP32xlarge is a InstanceType enum value
26441	InstanceTypeMlP32xlarge = "ml.p3.2xlarge"
26442
26443	// InstanceTypeMlP38xlarge is a InstanceType enum value
26444	InstanceTypeMlP38xlarge = "ml.p3.8xlarge"
26445
26446	// InstanceTypeMlP316xlarge is a InstanceType enum value
26447	InstanceTypeMlP316xlarge = "ml.p3.16xlarge"
26448)
26449
26450const (
26451	// JoinSourceInput is a JoinSource enum value
26452	JoinSourceInput = "Input"
26453
26454	// JoinSourceNone is a JoinSource enum value
26455	JoinSourceNone = "None"
26456)
26457
26458const (
26459	// LabelingJobStatusInProgress is a LabelingJobStatus enum value
26460	LabelingJobStatusInProgress = "InProgress"
26461
26462	// LabelingJobStatusCompleted is a LabelingJobStatus enum value
26463	LabelingJobStatusCompleted = "Completed"
26464
26465	// LabelingJobStatusFailed is a LabelingJobStatus enum value
26466	LabelingJobStatusFailed = "Failed"
26467
26468	// LabelingJobStatusStopping is a LabelingJobStatus enum value
26469	LabelingJobStatusStopping = "Stopping"
26470
26471	// LabelingJobStatusStopped is a LabelingJobStatus enum value
26472	LabelingJobStatusStopped = "Stopped"
26473)
26474
26475const (
26476	// ListCompilationJobsSortByName is a ListCompilationJobsSortBy enum value
26477	ListCompilationJobsSortByName = "Name"
26478
26479	// ListCompilationJobsSortByCreationTime is a ListCompilationJobsSortBy enum value
26480	ListCompilationJobsSortByCreationTime = "CreationTime"
26481
26482	// ListCompilationJobsSortByStatus is a ListCompilationJobsSortBy enum value
26483	ListCompilationJobsSortByStatus = "Status"
26484)
26485
26486const (
26487	// ListLabelingJobsForWorkteamSortByOptionsCreationTime is a ListLabelingJobsForWorkteamSortByOptions enum value
26488	ListLabelingJobsForWorkteamSortByOptionsCreationTime = "CreationTime"
26489)
26490
26491const (
26492	// ListWorkteamsSortByOptionsName is a ListWorkteamsSortByOptions enum value
26493	ListWorkteamsSortByOptionsName = "Name"
26494
26495	// ListWorkteamsSortByOptionsCreateDate is a ListWorkteamsSortByOptions enum value
26496	ListWorkteamsSortByOptionsCreateDate = "CreateDate"
26497)
26498
26499const (
26500	// ModelPackageSortByName is a ModelPackageSortBy enum value
26501	ModelPackageSortByName = "Name"
26502
26503	// ModelPackageSortByCreationTime is a ModelPackageSortBy enum value
26504	ModelPackageSortByCreationTime = "CreationTime"
26505)
26506
26507const (
26508	// ModelPackageStatusPending is a ModelPackageStatus enum value
26509	ModelPackageStatusPending = "Pending"
26510
26511	// ModelPackageStatusInProgress is a ModelPackageStatus enum value
26512	ModelPackageStatusInProgress = "InProgress"
26513
26514	// ModelPackageStatusCompleted is a ModelPackageStatus enum value
26515	ModelPackageStatusCompleted = "Completed"
26516
26517	// ModelPackageStatusFailed is a ModelPackageStatus enum value
26518	ModelPackageStatusFailed = "Failed"
26519
26520	// ModelPackageStatusDeleting is a ModelPackageStatus enum value
26521	ModelPackageStatusDeleting = "Deleting"
26522)
26523
26524const (
26525	// ModelSortKeyName is a ModelSortKey enum value
26526	ModelSortKeyName = "Name"
26527
26528	// ModelSortKeyCreationTime is a ModelSortKey enum value
26529	ModelSortKeyCreationTime = "CreationTime"
26530)
26531
26532const (
26533	// NotebookInstanceAcceleratorTypeMlEia1Medium is a NotebookInstanceAcceleratorType enum value
26534	NotebookInstanceAcceleratorTypeMlEia1Medium = "ml.eia1.medium"
26535
26536	// NotebookInstanceAcceleratorTypeMlEia1Large is a NotebookInstanceAcceleratorType enum value
26537	NotebookInstanceAcceleratorTypeMlEia1Large = "ml.eia1.large"
26538
26539	// NotebookInstanceAcceleratorTypeMlEia1Xlarge is a NotebookInstanceAcceleratorType enum value
26540	NotebookInstanceAcceleratorTypeMlEia1Xlarge = "ml.eia1.xlarge"
26541)
26542
26543const (
26544	// NotebookInstanceLifecycleConfigSortKeyName is a NotebookInstanceLifecycleConfigSortKey enum value
26545	NotebookInstanceLifecycleConfigSortKeyName = "Name"
26546
26547	// NotebookInstanceLifecycleConfigSortKeyCreationTime is a NotebookInstanceLifecycleConfigSortKey enum value
26548	NotebookInstanceLifecycleConfigSortKeyCreationTime = "CreationTime"
26549
26550	// NotebookInstanceLifecycleConfigSortKeyLastModifiedTime is a NotebookInstanceLifecycleConfigSortKey enum value
26551	NotebookInstanceLifecycleConfigSortKeyLastModifiedTime = "LastModifiedTime"
26552)
26553
26554const (
26555	// NotebookInstanceLifecycleConfigSortOrderAscending is a NotebookInstanceLifecycleConfigSortOrder enum value
26556	NotebookInstanceLifecycleConfigSortOrderAscending = "Ascending"
26557
26558	// NotebookInstanceLifecycleConfigSortOrderDescending is a NotebookInstanceLifecycleConfigSortOrder enum value
26559	NotebookInstanceLifecycleConfigSortOrderDescending = "Descending"
26560)
26561
26562const (
26563	// NotebookInstanceSortKeyName is a NotebookInstanceSortKey enum value
26564	NotebookInstanceSortKeyName = "Name"
26565
26566	// NotebookInstanceSortKeyCreationTime is a NotebookInstanceSortKey enum value
26567	NotebookInstanceSortKeyCreationTime = "CreationTime"
26568
26569	// NotebookInstanceSortKeyStatus is a NotebookInstanceSortKey enum value
26570	NotebookInstanceSortKeyStatus = "Status"
26571)
26572
26573const (
26574	// NotebookInstanceSortOrderAscending is a NotebookInstanceSortOrder enum value
26575	NotebookInstanceSortOrderAscending = "Ascending"
26576
26577	// NotebookInstanceSortOrderDescending is a NotebookInstanceSortOrder enum value
26578	NotebookInstanceSortOrderDescending = "Descending"
26579)
26580
26581const (
26582	// NotebookInstanceStatusPending is a NotebookInstanceStatus enum value
26583	NotebookInstanceStatusPending = "Pending"
26584
26585	// NotebookInstanceStatusInService is a NotebookInstanceStatus enum value
26586	NotebookInstanceStatusInService = "InService"
26587
26588	// NotebookInstanceStatusStopping is a NotebookInstanceStatus enum value
26589	NotebookInstanceStatusStopping = "Stopping"
26590
26591	// NotebookInstanceStatusStopped is a NotebookInstanceStatus enum value
26592	NotebookInstanceStatusStopped = "Stopped"
26593
26594	// NotebookInstanceStatusFailed is a NotebookInstanceStatus enum value
26595	NotebookInstanceStatusFailed = "Failed"
26596
26597	// NotebookInstanceStatusDeleting is a NotebookInstanceStatus enum value
26598	NotebookInstanceStatusDeleting = "Deleting"
26599
26600	// NotebookInstanceStatusUpdating is a NotebookInstanceStatus enum value
26601	NotebookInstanceStatusUpdating = "Updating"
26602)
26603
26604const (
26605	// ObjectiveStatusSucceeded is a ObjectiveStatus enum value
26606	ObjectiveStatusSucceeded = "Succeeded"
26607
26608	// ObjectiveStatusPending is a ObjectiveStatus enum value
26609	ObjectiveStatusPending = "Pending"
26610
26611	// ObjectiveStatusFailed is a ObjectiveStatus enum value
26612	ObjectiveStatusFailed = "Failed"
26613)
26614
26615const (
26616	// OperatorEquals is a Operator enum value
26617	OperatorEquals = "Equals"
26618
26619	// OperatorNotEquals is a Operator enum value
26620	OperatorNotEquals = "NotEquals"
26621
26622	// OperatorGreaterThan is a Operator enum value
26623	OperatorGreaterThan = "GreaterThan"
26624
26625	// OperatorGreaterThanOrEqualTo is a Operator enum value
26626	OperatorGreaterThanOrEqualTo = "GreaterThanOrEqualTo"
26627
26628	// OperatorLessThan is a Operator enum value
26629	OperatorLessThan = "LessThan"
26630
26631	// OperatorLessThanOrEqualTo is a Operator enum value
26632	OperatorLessThanOrEqualTo = "LessThanOrEqualTo"
26633
26634	// OperatorContains is a Operator enum value
26635	OperatorContains = "Contains"
26636)
26637
26638const (
26639	// OrderKeyAscending is a OrderKey enum value
26640	OrderKeyAscending = "Ascending"
26641
26642	// OrderKeyDescending is a OrderKey enum value
26643	OrderKeyDescending = "Descending"
26644)
26645
26646const (
26647	// ParameterTypeInteger is a ParameterType enum value
26648	ParameterTypeInteger = "Integer"
26649
26650	// ParameterTypeContinuous is a ParameterType enum value
26651	ParameterTypeContinuous = "Continuous"
26652
26653	// ParameterTypeCategorical is a ParameterType enum value
26654	ParameterTypeCategorical = "Categorical"
26655
26656	// ParameterTypeFreeText is a ParameterType enum value
26657	ParameterTypeFreeText = "FreeText"
26658)
26659
26660const (
26661	// ProductionVariantAcceleratorTypeMlEia1Medium is a ProductionVariantAcceleratorType enum value
26662	ProductionVariantAcceleratorTypeMlEia1Medium = "ml.eia1.medium"
26663
26664	// ProductionVariantAcceleratorTypeMlEia1Large is a ProductionVariantAcceleratorType enum value
26665	ProductionVariantAcceleratorTypeMlEia1Large = "ml.eia1.large"
26666
26667	// ProductionVariantAcceleratorTypeMlEia1Xlarge is a ProductionVariantAcceleratorType enum value
26668	ProductionVariantAcceleratorTypeMlEia1Xlarge = "ml.eia1.xlarge"
26669)
26670
26671const (
26672	// ProductionVariantInstanceTypeMlT2Medium is a ProductionVariantInstanceType enum value
26673	ProductionVariantInstanceTypeMlT2Medium = "ml.t2.medium"
26674
26675	// ProductionVariantInstanceTypeMlT2Large is a ProductionVariantInstanceType enum value
26676	ProductionVariantInstanceTypeMlT2Large = "ml.t2.large"
26677
26678	// ProductionVariantInstanceTypeMlT2Xlarge is a ProductionVariantInstanceType enum value
26679	ProductionVariantInstanceTypeMlT2Xlarge = "ml.t2.xlarge"
26680
26681	// ProductionVariantInstanceTypeMlT22xlarge is a ProductionVariantInstanceType enum value
26682	ProductionVariantInstanceTypeMlT22xlarge = "ml.t2.2xlarge"
26683
26684	// ProductionVariantInstanceTypeMlM4Xlarge is a ProductionVariantInstanceType enum value
26685	ProductionVariantInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26686
26687	// ProductionVariantInstanceTypeMlM42xlarge is a ProductionVariantInstanceType enum value
26688	ProductionVariantInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
26689
26690	// ProductionVariantInstanceTypeMlM44xlarge is a ProductionVariantInstanceType enum value
26691	ProductionVariantInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
26692
26693	// ProductionVariantInstanceTypeMlM410xlarge is a ProductionVariantInstanceType enum value
26694	ProductionVariantInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
26695
26696	// ProductionVariantInstanceTypeMlM416xlarge is a ProductionVariantInstanceType enum value
26697	ProductionVariantInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
26698
26699	// ProductionVariantInstanceTypeMlM5Large is a ProductionVariantInstanceType enum value
26700	ProductionVariantInstanceTypeMlM5Large = "ml.m5.large"
26701
26702	// ProductionVariantInstanceTypeMlM5Xlarge is a ProductionVariantInstanceType enum value
26703	ProductionVariantInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
26704
26705	// ProductionVariantInstanceTypeMlM52xlarge is a ProductionVariantInstanceType enum value
26706	ProductionVariantInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
26707
26708	// ProductionVariantInstanceTypeMlM54xlarge is a ProductionVariantInstanceType enum value
26709	ProductionVariantInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
26710
26711	// ProductionVariantInstanceTypeMlM512xlarge is a ProductionVariantInstanceType enum value
26712	ProductionVariantInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
26713
26714	// ProductionVariantInstanceTypeMlM524xlarge is a ProductionVariantInstanceType enum value
26715	ProductionVariantInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
26716
26717	// ProductionVariantInstanceTypeMlC4Large is a ProductionVariantInstanceType enum value
26718	ProductionVariantInstanceTypeMlC4Large = "ml.c4.large"
26719
26720	// ProductionVariantInstanceTypeMlC4Xlarge is a ProductionVariantInstanceType enum value
26721	ProductionVariantInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
26722
26723	// ProductionVariantInstanceTypeMlC42xlarge is a ProductionVariantInstanceType enum value
26724	ProductionVariantInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
26725
26726	// ProductionVariantInstanceTypeMlC44xlarge is a ProductionVariantInstanceType enum value
26727	ProductionVariantInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
26728
26729	// ProductionVariantInstanceTypeMlC48xlarge is a ProductionVariantInstanceType enum value
26730	ProductionVariantInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
26731
26732	// ProductionVariantInstanceTypeMlP2Xlarge is a ProductionVariantInstanceType enum value
26733	ProductionVariantInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
26734
26735	// ProductionVariantInstanceTypeMlP28xlarge is a ProductionVariantInstanceType enum value
26736	ProductionVariantInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
26737
26738	// ProductionVariantInstanceTypeMlP216xlarge is a ProductionVariantInstanceType enum value
26739	ProductionVariantInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
26740
26741	// ProductionVariantInstanceTypeMlP32xlarge is a ProductionVariantInstanceType enum value
26742	ProductionVariantInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
26743
26744	// ProductionVariantInstanceTypeMlP38xlarge is a ProductionVariantInstanceType enum value
26745	ProductionVariantInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
26746
26747	// ProductionVariantInstanceTypeMlP316xlarge is a ProductionVariantInstanceType enum value
26748	ProductionVariantInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
26749
26750	// ProductionVariantInstanceTypeMlC5Large is a ProductionVariantInstanceType enum value
26751	ProductionVariantInstanceTypeMlC5Large = "ml.c5.large"
26752
26753	// ProductionVariantInstanceTypeMlC5Xlarge is a ProductionVariantInstanceType enum value
26754	ProductionVariantInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
26755
26756	// ProductionVariantInstanceTypeMlC52xlarge is a ProductionVariantInstanceType enum value
26757	ProductionVariantInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
26758
26759	// ProductionVariantInstanceTypeMlC54xlarge is a ProductionVariantInstanceType enum value
26760	ProductionVariantInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
26761
26762	// ProductionVariantInstanceTypeMlC59xlarge is a ProductionVariantInstanceType enum value
26763	ProductionVariantInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
26764
26765	// ProductionVariantInstanceTypeMlC518xlarge is a ProductionVariantInstanceType enum value
26766	ProductionVariantInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
26767
26768	// ProductionVariantInstanceTypeMlG4dnXlarge is a ProductionVariantInstanceType enum value
26769	ProductionVariantInstanceTypeMlG4dnXlarge = "ml.g4dn.xlarge"
26770
26771	// ProductionVariantInstanceTypeMlG4dn2xlarge is a ProductionVariantInstanceType enum value
26772	ProductionVariantInstanceTypeMlG4dn2xlarge = "ml.g4dn.2xlarge"
26773
26774	// ProductionVariantInstanceTypeMlG4dn4xlarge is a ProductionVariantInstanceType enum value
26775	ProductionVariantInstanceTypeMlG4dn4xlarge = "ml.g4dn.4xlarge"
26776
26777	// ProductionVariantInstanceTypeMlG4dn8xlarge is a ProductionVariantInstanceType enum value
26778	ProductionVariantInstanceTypeMlG4dn8xlarge = "ml.g4dn.8xlarge"
26779
26780	// ProductionVariantInstanceTypeMlG4dn12xlarge is a ProductionVariantInstanceType enum value
26781	ProductionVariantInstanceTypeMlG4dn12xlarge = "ml.g4dn.12xlarge"
26782
26783	// ProductionVariantInstanceTypeMlG4dn16xlarge is a ProductionVariantInstanceType enum value
26784	ProductionVariantInstanceTypeMlG4dn16xlarge = "ml.g4dn.16xlarge"
26785
26786	// ProductionVariantInstanceTypeMlR5Large is a ProductionVariantInstanceType enum value
26787	ProductionVariantInstanceTypeMlR5Large = "ml.r5.large"
26788
26789	// ProductionVariantInstanceTypeMlR5Xlarge is a ProductionVariantInstanceType enum value
26790	ProductionVariantInstanceTypeMlR5Xlarge = "ml.r5.xlarge"
26791
26792	// ProductionVariantInstanceTypeMlR52xlarge is a ProductionVariantInstanceType enum value
26793	ProductionVariantInstanceTypeMlR52xlarge = "ml.r5.2xlarge"
26794
26795	// ProductionVariantInstanceTypeMlR54xlarge is a ProductionVariantInstanceType enum value
26796	ProductionVariantInstanceTypeMlR54xlarge = "ml.r5.4xlarge"
26797
26798	// ProductionVariantInstanceTypeMlR512xlarge is a ProductionVariantInstanceType enum value
26799	ProductionVariantInstanceTypeMlR512xlarge = "ml.r5.12xlarge"
26800
26801	// ProductionVariantInstanceTypeMlR524xlarge is a ProductionVariantInstanceType enum value
26802	ProductionVariantInstanceTypeMlR524xlarge = "ml.r5.24xlarge"
26803)
26804
26805const (
26806	// RecordWrapperNone is a RecordWrapper enum value
26807	RecordWrapperNone = "None"
26808
26809	// RecordWrapperRecordIo is a RecordWrapper enum value
26810	RecordWrapperRecordIo = "RecordIO"
26811)
26812
26813const (
26814	// ResourceTypeTrainingJob is a ResourceType enum value
26815	ResourceTypeTrainingJob = "TrainingJob"
26816)
26817
26818const (
26819	// RootAccessEnabled is a RootAccess enum value
26820	RootAccessEnabled = "Enabled"
26821
26822	// RootAccessDisabled is a RootAccess enum value
26823	RootAccessDisabled = "Disabled"
26824)
26825
26826const (
26827	// S3DataDistributionFullyReplicated is a S3DataDistribution enum value
26828	S3DataDistributionFullyReplicated = "FullyReplicated"
26829
26830	// S3DataDistributionShardedByS3key is a S3DataDistribution enum value
26831	S3DataDistributionShardedByS3key = "ShardedByS3Key"
26832)
26833
26834const (
26835	// S3DataTypeManifestFile is a S3DataType enum value
26836	S3DataTypeManifestFile = "ManifestFile"
26837
26838	// S3DataTypeS3prefix is a S3DataType enum value
26839	S3DataTypeS3prefix = "S3Prefix"
26840
26841	// S3DataTypeAugmentedManifestFile is a S3DataType enum value
26842	S3DataTypeAugmentedManifestFile = "AugmentedManifestFile"
26843)
26844
26845const (
26846	// SearchSortOrderAscending is a SearchSortOrder enum value
26847	SearchSortOrderAscending = "Ascending"
26848
26849	// SearchSortOrderDescending is a SearchSortOrder enum value
26850	SearchSortOrderDescending = "Descending"
26851)
26852
26853const (
26854	// SecondaryStatusStarting is a SecondaryStatus enum value
26855	SecondaryStatusStarting = "Starting"
26856
26857	// SecondaryStatusLaunchingMlinstances is a SecondaryStatus enum value
26858	SecondaryStatusLaunchingMlinstances = "LaunchingMLInstances"
26859
26860	// SecondaryStatusPreparingTrainingStack is a SecondaryStatus enum value
26861	SecondaryStatusPreparingTrainingStack = "PreparingTrainingStack"
26862
26863	// SecondaryStatusDownloading is a SecondaryStatus enum value
26864	SecondaryStatusDownloading = "Downloading"
26865
26866	// SecondaryStatusDownloadingTrainingImage is a SecondaryStatus enum value
26867	SecondaryStatusDownloadingTrainingImage = "DownloadingTrainingImage"
26868
26869	// SecondaryStatusTraining is a SecondaryStatus enum value
26870	SecondaryStatusTraining = "Training"
26871
26872	// SecondaryStatusUploading is a SecondaryStatus enum value
26873	SecondaryStatusUploading = "Uploading"
26874
26875	// SecondaryStatusStopping is a SecondaryStatus enum value
26876	SecondaryStatusStopping = "Stopping"
26877
26878	// SecondaryStatusStopped is a SecondaryStatus enum value
26879	SecondaryStatusStopped = "Stopped"
26880
26881	// SecondaryStatusMaxRuntimeExceeded is a SecondaryStatus enum value
26882	SecondaryStatusMaxRuntimeExceeded = "MaxRuntimeExceeded"
26883
26884	// SecondaryStatusCompleted is a SecondaryStatus enum value
26885	SecondaryStatusCompleted = "Completed"
26886
26887	// SecondaryStatusFailed is a SecondaryStatus enum value
26888	SecondaryStatusFailed = "Failed"
26889
26890	// SecondaryStatusInterrupted is a SecondaryStatus enum value
26891	SecondaryStatusInterrupted = "Interrupted"
26892
26893	// SecondaryStatusMaxWaitTimeExceeded is a SecondaryStatus enum value
26894	SecondaryStatusMaxWaitTimeExceeded = "MaxWaitTimeExceeded"
26895)
26896
26897const (
26898	// SortByName is a SortBy enum value
26899	SortByName = "Name"
26900
26901	// SortByCreationTime is a SortBy enum value
26902	SortByCreationTime = "CreationTime"
26903
26904	// SortByStatus is a SortBy enum value
26905	SortByStatus = "Status"
26906)
26907
26908const (
26909	// SortOrderAscending is a SortOrder enum value
26910	SortOrderAscending = "Ascending"
26911
26912	// SortOrderDescending is a SortOrder enum value
26913	SortOrderDescending = "Descending"
26914)
26915
26916const (
26917	// SplitTypeNone is a SplitType enum value
26918	SplitTypeNone = "None"
26919
26920	// SplitTypeLine is a SplitType enum value
26921	SplitTypeLine = "Line"
26922
26923	// SplitTypeRecordIo is a SplitType enum value
26924	SplitTypeRecordIo = "RecordIO"
26925
26926	// SplitTypeTfrecord is a SplitType enum value
26927	SplitTypeTfrecord = "TFRecord"
26928)
26929
26930const (
26931	// TargetDeviceLambda is a TargetDevice enum value
26932	TargetDeviceLambda = "lambda"
26933
26934	// TargetDeviceMlM4 is a TargetDevice enum value
26935	TargetDeviceMlM4 = "ml_m4"
26936
26937	// TargetDeviceMlM5 is a TargetDevice enum value
26938	TargetDeviceMlM5 = "ml_m5"
26939
26940	// TargetDeviceMlC4 is a TargetDevice enum value
26941	TargetDeviceMlC4 = "ml_c4"
26942
26943	// TargetDeviceMlC5 is a TargetDevice enum value
26944	TargetDeviceMlC5 = "ml_c5"
26945
26946	// TargetDeviceMlP2 is a TargetDevice enum value
26947	TargetDeviceMlP2 = "ml_p2"
26948
26949	// TargetDeviceMlP3 is a TargetDevice enum value
26950	TargetDeviceMlP3 = "ml_p3"
26951
26952	// TargetDeviceJetsonTx1 is a TargetDevice enum value
26953	TargetDeviceJetsonTx1 = "jetson_tx1"
26954
26955	// TargetDeviceJetsonTx2 is a TargetDevice enum value
26956	TargetDeviceJetsonTx2 = "jetson_tx2"
26957
26958	// TargetDeviceJetsonNano is a TargetDevice enum value
26959	TargetDeviceJetsonNano = "jetson_nano"
26960
26961	// TargetDeviceRasp3b is a TargetDevice enum value
26962	TargetDeviceRasp3b = "rasp3b"
26963
26964	// TargetDeviceDeeplens is a TargetDevice enum value
26965	TargetDeviceDeeplens = "deeplens"
26966
26967	// TargetDeviceRk3399 is a TargetDevice enum value
26968	TargetDeviceRk3399 = "rk3399"
26969
26970	// TargetDeviceRk3288 is a TargetDevice enum value
26971	TargetDeviceRk3288 = "rk3288"
26972
26973	// TargetDeviceAisage is a TargetDevice enum value
26974	TargetDeviceAisage = "aisage"
26975
26976	// TargetDeviceSbeC is a TargetDevice enum value
26977	TargetDeviceSbeC = "sbe_c"
26978
26979	// TargetDeviceQcs605 is a TargetDevice enum value
26980	TargetDeviceQcs605 = "qcs605"
26981
26982	// TargetDeviceQcs603 is a TargetDevice enum value
26983	TargetDeviceQcs603 = "qcs603"
26984)
26985
26986const (
26987	// TrainingInputModePipe is a TrainingInputMode enum value
26988	TrainingInputModePipe = "Pipe"
26989
26990	// TrainingInputModeFile is a TrainingInputMode enum value
26991	TrainingInputModeFile = "File"
26992)
26993
26994const (
26995	// TrainingInstanceTypeMlM4Xlarge is a TrainingInstanceType enum value
26996	TrainingInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26997
26998	// TrainingInstanceTypeMlM42xlarge is a TrainingInstanceType enum value
26999	TrainingInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
27000
27001	// TrainingInstanceTypeMlM44xlarge is a TrainingInstanceType enum value
27002	TrainingInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
27003
27004	// TrainingInstanceTypeMlM410xlarge is a TrainingInstanceType enum value
27005	TrainingInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
27006
27007	// TrainingInstanceTypeMlM416xlarge is a TrainingInstanceType enum value
27008	TrainingInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
27009
27010	// TrainingInstanceTypeMlM5Large is a TrainingInstanceType enum value
27011	TrainingInstanceTypeMlM5Large = "ml.m5.large"
27012
27013	// TrainingInstanceTypeMlM5Xlarge is a TrainingInstanceType enum value
27014	TrainingInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
27015
27016	// TrainingInstanceTypeMlM52xlarge is a TrainingInstanceType enum value
27017	TrainingInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
27018
27019	// TrainingInstanceTypeMlM54xlarge is a TrainingInstanceType enum value
27020	TrainingInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
27021
27022	// TrainingInstanceTypeMlM512xlarge is a TrainingInstanceType enum value
27023	TrainingInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
27024
27025	// TrainingInstanceTypeMlM524xlarge is a TrainingInstanceType enum value
27026	TrainingInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
27027
27028	// TrainingInstanceTypeMlC4Xlarge is a TrainingInstanceType enum value
27029	TrainingInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
27030
27031	// TrainingInstanceTypeMlC42xlarge is a TrainingInstanceType enum value
27032	TrainingInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
27033
27034	// TrainingInstanceTypeMlC44xlarge is a TrainingInstanceType enum value
27035	TrainingInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
27036
27037	// TrainingInstanceTypeMlC48xlarge is a TrainingInstanceType enum value
27038	TrainingInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
27039
27040	// TrainingInstanceTypeMlP2Xlarge is a TrainingInstanceType enum value
27041	TrainingInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
27042
27043	// TrainingInstanceTypeMlP28xlarge is a TrainingInstanceType enum value
27044	TrainingInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
27045
27046	// TrainingInstanceTypeMlP216xlarge is a TrainingInstanceType enum value
27047	TrainingInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
27048
27049	// TrainingInstanceTypeMlP32xlarge is a TrainingInstanceType enum value
27050	TrainingInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
27051
27052	// TrainingInstanceTypeMlP38xlarge is a TrainingInstanceType enum value
27053	TrainingInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
27054
27055	// TrainingInstanceTypeMlP316xlarge is a TrainingInstanceType enum value
27056	TrainingInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
27057
27058	// TrainingInstanceTypeMlP3dn24xlarge is a TrainingInstanceType enum value
27059	TrainingInstanceTypeMlP3dn24xlarge = "ml.p3dn.24xlarge"
27060
27061	// TrainingInstanceTypeMlC5Xlarge is a TrainingInstanceType enum value
27062	TrainingInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
27063
27064	// TrainingInstanceTypeMlC52xlarge is a TrainingInstanceType enum value
27065	TrainingInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
27066
27067	// TrainingInstanceTypeMlC54xlarge is a TrainingInstanceType enum value
27068	TrainingInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
27069
27070	// TrainingInstanceTypeMlC59xlarge is a TrainingInstanceType enum value
27071	TrainingInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
27072
27073	// TrainingInstanceTypeMlC518xlarge is a TrainingInstanceType enum value
27074	TrainingInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
27075)
27076
27077const (
27078	// TrainingJobEarlyStoppingTypeOff is a TrainingJobEarlyStoppingType enum value
27079	TrainingJobEarlyStoppingTypeOff = "Off"
27080
27081	// TrainingJobEarlyStoppingTypeAuto is a TrainingJobEarlyStoppingType enum value
27082	TrainingJobEarlyStoppingTypeAuto = "Auto"
27083)
27084
27085const (
27086	// TrainingJobSortByOptionsName is a TrainingJobSortByOptions enum value
27087	TrainingJobSortByOptionsName = "Name"
27088
27089	// TrainingJobSortByOptionsCreationTime is a TrainingJobSortByOptions enum value
27090	TrainingJobSortByOptionsCreationTime = "CreationTime"
27091
27092	// TrainingJobSortByOptionsStatus is a TrainingJobSortByOptions enum value
27093	TrainingJobSortByOptionsStatus = "Status"
27094
27095	// TrainingJobSortByOptionsFinalObjectiveMetricValue is a TrainingJobSortByOptions enum value
27096	TrainingJobSortByOptionsFinalObjectiveMetricValue = "FinalObjectiveMetricValue"
27097)
27098
27099const (
27100	// TrainingJobStatusInProgress is a TrainingJobStatus enum value
27101	TrainingJobStatusInProgress = "InProgress"
27102
27103	// TrainingJobStatusCompleted is a TrainingJobStatus enum value
27104	TrainingJobStatusCompleted = "Completed"
27105
27106	// TrainingJobStatusFailed is a TrainingJobStatus enum value
27107	TrainingJobStatusFailed = "Failed"
27108
27109	// TrainingJobStatusStopping is a TrainingJobStatus enum value
27110	TrainingJobStatusStopping = "Stopping"
27111
27112	// TrainingJobStatusStopped is a TrainingJobStatus enum value
27113	TrainingJobStatusStopped = "Stopped"
27114)
27115
27116const (
27117	// TransformInstanceTypeMlM4Xlarge is a TransformInstanceType enum value
27118	TransformInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
27119
27120	// TransformInstanceTypeMlM42xlarge is a TransformInstanceType enum value
27121	TransformInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
27122
27123	// TransformInstanceTypeMlM44xlarge is a TransformInstanceType enum value
27124	TransformInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
27125
27126	// TransformInstanceTypeMlM410xlarge is a TransformInstanceType enum value
27127	TransformInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
27128
27129	// TransformInstanceTypeMlM416xlarge is a TransformInstanceType enum value
27130	TransformInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
27131
27132	// TransformInstanceTypeMlC4Xlarge is a TransformInstanceType enum value
27133	TransformInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
27134
27135	// TransformInstanceTypeMlC42xlarge is a TransformInstanceType enum value
27136	TransformInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
27137
27138	// TransformInstanceTypeMlC44xlarge is a TransformInstanceType enum value
27139	TransformInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
27140
27141	// TransformInstanceTypeMlC48xlarge is a TransformInstanceType enum value
27142	TransformInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
27143
27144	// TransformInstanceTypeMlP2Xlarge is a TransformInstanceType enum value
27145	TransformInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
27146
27147	// TransformInstanceTypeMlP28xlarge is a TransformInstanceType enum value
27148	TransformInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
27149
27150	// TransformInstanceTypeMlP216xlarge is a TransformInstanceType enum value
27151	TransformInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
27152
27153	// TransformInstanceTypeMlP32xlarge is a TransformInstanceType enum value
27154	TransformInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
27155
27156	// TransformInstanceTypeMlP38xlarge is a TransformInstanceType enum value
27157	TransformInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
27158
27159	// TransformInstanceTypeMlP316xlarge is a TransformInstanceType enum value
27160	TransformInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
27161
27162	// TransformInstanceTypeMlC5Xlarge is a TransformInstanceType enum value
27163	TransformInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
27164
27165	// TransformInstanceTypeMlC52xlarge is a TransformInstanceType enum value
27166	TransformInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
27167
27168	// TransformInstanceTypeMlC54xlarge is a TransformInstanceType enum value
27169	TransformInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
27170
27171	// TransformInstanceTypeMlC59xlarge is a TransformInstanceType enum value
27172	TransformInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
27173
27174	// TransformInstanceTypeMlC518xlarge is a TransformInstanceType enum value
27175	TransformInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
27176
27177	// TransformInstanceTypeMlM5Large is a TransformInstanceType enum value
27178	TransformInstanceTypeMlM5Large = "ml.m5.large"
27179
27180	// TransformInstanceTypeMlM5Xlarge is a TransformInstanceType enum value
27181	TransformInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
27182
27183	// TransformInstanceTypeMlM52xlarge is a TransformInstanceType enum value
27184	TransformInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
27185
27186	// TransformInstanceTypeMlM54xlarge is a TransformInstanceType enum value
27187	TransformInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
27188
27189	// TransformInstanceTypeMlM512xlarge is a TransformInstanceType enum value
27190	TransformInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
27191
27192	// TransformInstanceTypeMlM524xlarge is a TransformInstanceType enum value
27193	TransformInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
27194)
27195
27196const (
27197	// TransformJobStatusInProgress is a TransformJobStatus enum value
27198	TransformJobStatusInProgress = "InProgress"
27199
27200	// TransformJobStatusCompleted is a TransformJobStatus enum value
27201	TransformJobStatusCompleted = "Completed"
27202
27203	// TransformJobStatusFailed is a TransformJobStatus enum value
27204	TransformJobStatusFailed = "Failed"
27205
27206	// TransformJobStatusStopping is a TransformJobStatus enum value
27207	TransformJobStatusStopping = "Stopping"
27208
27209	// TransformJobStatusStopped is a TransformJobStatus enum value
27210	TransformJobStatusStopped = "Stopped"
27211)
27212