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	//    * Named entity eecognition - Groups similar selections and calculates
7665	//    aggregate boundaries, resolving to most-assigned label. arn:aws:lambda:us-east-1:432418664414:function:ACS-NamedEntityRecognition
7666	//    arn:aws:lambda:us-east-2:266458841044:function:ACS-NamedEntityRecognition
7667	//    arn:aws:lambda:us-west-2:081040173940:function:ACS-NamedEntityRecognition
7668	//    arn:aws:lambda:eu-west-1:568282634449:function:ACS-NamedEntityRecognition
7669	//    arn:aws:lambda:ap-northeast-1:477331159723:function:ACS-NamedEntityRecognition
7670	//    arn:aws:lambda:ap-southeast-2:454466003867:function:ACS-NamedEntityRecognition
7671	//
7672	// For more information, see Annotation Consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html).
7673	//
7674	// AnnotationConsolidationLambdaArn is a required field
7675	AnnotationConsolidationLambdaArn *string `type:"string" required:"true"`
7676}
7677
7678// String returns the string representation
7679func (s AnnotationConsolidationConfig) String() string {
7680	return awsutil.Prettify(s)
7681}
7682
7683// GoString returns the string representation
7684func (s AnnotationConsolidationConfig) GoString() string {
7685	return s.String()
7686}
7687
7688// Validate inspects the fields of the type to determine if they are valid.
7689func (s *AnnotationConsolidationConfig) Validate() error {
7690	invalidParams := request.ErrInvalidParams{Context: "AnnotationConsolidationConfig"}
7691	if s.AnnotationConsolidationLambdaArn == nil {
7692		invalidParams.Add(request.NewErrParamRequired("AnnotationConsolidationLambdaArn"))
7693	}
7694
7695	if invalidParams.Len() > 0 {
7696		return invalidParams
7697	}
7698	return nil
7699}
7700
7701// SetAnnotationConsolidationLambdaArn sets the AnnotationConsolidationLambdaArn field's value.
7702func (s *AnnotationConsolidationConfig) SetAnnotationConsolidationLambdaArn(v string) *AnnotationConsolidationConfig {
7703	s.AnnotationConsolidationLambdaArn = &v
7704	return s
7705}
7706
7707// A list of categorical hyperparameters to tune.
7708type CategoricalParameterRange struct {
7709	_ struct{} `type:"structure"`
7710
7711	// The name of the categorical hyperparameter to tune.
7712	//
7713	// Name is a required field
7714	Name *string `type:"string" required:"true"`
7715
7716	// A list of the categories for the hyperparameter.
7717	//
7718	// Values is a required field
7719	Values []*string `min:"1" type:"list" required:"true"`
7720}
7721
7722// String returns the string representation
7723func (s CategoricalParameterRange) String() string {
7724	return awsutil.Prettify(s)
7725}
7726
7727// GoString returns the string representation
7728func (s CategoricalParameterRange) GoString() string {
7729	return s.String()
7730}
7731
7732// Validate inspects the fields of the type to determine if they are valid.
7733func (s *CategoricalParameterRange) Validate() error {
7734	invalidParams := request.ErrInvalidParams{Context: "CategoricalParameterRange"}
7735	if s.Name == nil {
7736		invalidParams.Add(request.NewErrParamRequired("Name"))
7737	}
7738	if s.Values == nil {
7739		invalidParams.Add(request.NewErrParamRequired("Values"))
7740	}
7741	if s.Values != nil && len(s.Values) < 1 {
7742		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
7743	}
7744
7745	if invalidParams.Len() > 0 {
7746		return invalidParams
7747	}
7748	return nil
7749}
7750
7751// SetName sets the Name field's value.
7752func (s *CategoricalParameterRange) SetName(v string) *CategoricalParameterRange {
7753	s.Name = &v
7754	return s
7755}
7756
7757// SetValues sets the Values field's value.
7758func (s *CategoricalParameterRange) SetValues(v []*string) *CategoricalParameterRange {
7759	s.Values = v
7760	return s
7761}
7762
7763// Defines the possible values for a categorical hyperparameter.
7764type CategoricalParameterRangeSpecification struct {
7765	_ struct{} `type:"structure"`
7766
7767	// The allowed categories for the hyperparameter.
7768	//
7769	// Values is a required field
7770	Values []*string `min:"1" type:"list" required:"true"`
7771}
7772
7773// String returns the string representation
7774func (s CategoricalParameterRangeSpecification) String() string {
7775	return awsutil.Prettify(s)
7776}
7777
7778// GoString returns the string representation
7779func (s CategoricalParameterRangeSpecification) GoString() string {
7780	return s.String()
7781}
7782
7783// Validate inspects the fields of the type to determine if they are valid.
7784func (s *CategoricalParameterRangeSpecification) Validate() error {
7785	invalidParams := request.ErrInvalidParams{Context: "CategoricalParameterRangeSpecification"}
7786	if s.Values == nil {
7787		invalidParams.Add(request.NewErrParamRequired("Values"))
7788	}
7789	if s.Values != nil && len(s.Values) < 1 {
7790		invalidParams.Add(request.NewErrParamMinLen("Values", 1))
7791	}
7792
7793	if invalidParams.Len() > 0 {
7794		return invalidParams
7795	}
7796	return nil
7797}
7798
7799// SetValues sets the Values field's value.
7800func (s *CategoricalParameterRangeSpecification) SetValues(v []*string) *CategoricalParameterRangeSpecification {
7801	s.Values = v
7802	return s
7803}
7804
7805// A channel is a named input source that training algorithms can consume.
7806type Channel struct {
7807	_ struct{} `type:"structure"`
7808
7809	// The name of the channel.
7810	//
7811	// ChannelName is a required field
7812	ChannelName *string `min:"1" type:"string" required:"true"`
7813
7814	// If training data is compressed, the compression type. The default value is
7815	// None. CompressionType is used only in Pipe input mode. In File mode, leave
7816	// this field unset or set it to None.
7817	CompressionType *string `type:"string" enum:"CompressionType"`
7818
7819	// The MIME type of the data.
7820	ContentType *string `type:"string"`
7821
7822	// The location of the channel data.
7823	//
7824	// DataSource is a required field
7825	DataSource *DataSource `type:"structure" required:"true"`
7826
7827	// (Optional) The input mode to use for the data channel in a training job.
7828	// If you don't set a value for InputMode, Amazon SageMaker uses the value set
7829	// for TrainingInputMode. Use this parameter to override the TrainingInputMode
7830	// setting in a AlgorithmSpecification request when you have a channel that
7831	// needs a different input mode from the training job's general setting. To
7832	// download the data from Amazon Simple Storage Service (Amazon S3) to the provisioned
7833	// ML storage volume, and mount the directory to a Docker volume, use File input
7834	// mode. To stream data directly from Amazon S3 to the container, choose Pipe
7835	// input mode.
7836	//
7837	// To use a model for incremental training, choose File input model.
7838	InputMode *string `type:"string" enum:"TrainingInputMode"`
7839
7840	// Specify RecordIO as the value when input data is in raw format but the training
7841	// algorithm requires the RecordIO format. In this case, Amazon SageMaker wraps
7842	// each individual S3 object in a RecordIO record. If the input data is already
7843	// in RecordIO format, you don't need to set this attribute. For more information,
7844	// see Create a Dataset Using RecordIO (https://mxnet.incubator.apache.org/architecture/note_data_loading.html#data-format).
7845	//
7846	// In File mode, leave this field unset or set it to None.
7847	RecordWrapperType *string `type:"string" enum:"RecordWrapper"`
7848
7849	// A configuration for a shuffle option for input data in a channel. If you
7850	// use S3Prefix for S3DataType, this shuffles the results of the S3 key prefix
7851	// matches. If you use ManifestFile, the order of the S3 object references in
7852	// the ManifestFile is shuffled. If you use AugmentedManifestFile, the order
7853	// of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling
7854	// order is determined using the Seed value.
7855	//
7856	// For Pipe input mode, shuffling is done at the start of every epoch. With
7857	// large datasets this ensures that the order of the training data is different
7858	// for each epoch, it helps reduce bias and possible overfitting. In a multi-node
7859	// training job when ShuffleConfig is combined with S3DataDistributionType of
7860	// ShardedByS3Key, the data is shuffled across nodes so that the content sent
7861	// to a particular node on the first epoch might be sent to a different node
7862	// on the second epoch.
7863	ShuffleConfig *ShuffleConfig `type:"structure"`
7864}
7865
7866// String returns the string representation
7867func (s Channel) String() string {
7868	return awsutil.Prettify(s)
7869}
7870
7871// GoString returns the string representation
7872func (s Channel) GoString() string {
7873	return s.String()
7874}
7875
7876// Validate inspects the fields of the type to determine if they are valid.
7877func (s *Channel) Validate() error {
7878	invalidParams := request.ErrInvalidParams{Context: "Channel"}
7879	if s.ChannelName == nil {
7880		invalidParams.Add(request.NewErrParamRequired("ChannelName"))
7881	}
7882	if s.ChannelName != nil && len(*s.ChannelName) < 1 {
7883		invalidParams.Add(request.NewErrParamMinLen("ChannelName", 1))
7884	}
7885	if s.DataSource == nil {
7886		invalidParams.Add(request.NewErrParamRequired("DataSource"))
7887	}
7888	if s.DataSource != nil {
7889		if err := s.DataSource.Validate(); err != nil {
7890			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
7891		}
7892	}
7893	if s.ShuffleConfig != nil {
7894		if err := s.ShuffleConfig.Validate(); err != nil {
7895			invalidParams.AddNested("ShuffleConfig", err.(request.ErrInvalidParams))
7896		}
7897	}
7898
7899	if invalidParams.Len() > 0 {
7900		return invalidParams
7901	}
7902	return nil
7903}
7904
7905// SetChannelName sets the ChannelName field's value.
7906func (s *Channel) SetChannelName(v string) *Channel {
7907	s.ChannelName = &v
7908	return s
7909}
7910
7911// SetCompressionType sets the CompressionType field's value.
7912func (s *Channel) SetCompressionType(v string) *Channel {
7913	s.CompressionType = &v
7914	return s
7915}
7916
7917// SetContentType sets the ContentType field's value.
7918func (s *Channel) SetContentType(v string) *Channel {
7919	s.ContentType = &v
7920	return s
7921}
7922
7923// SetDataSource sets the DataSource field's value.
7924func (s *Channel) SetDataSource(v *DataSource) *Channel {
7925	s.DataSource = v
7926	return s
7927}
7928
7929// SetInputMode sets the InputMode field's value.
7930func (s *Channel) SetInputMode(v string) *Channel {
7931	s.InputMode = &v
7932	return s
7933}
7934
7935// SetRecordWrapperType sets the RecordWrapperType field's value.
7936func (s *Channel) SetRecordWrapperType(v string) *Channel {
7937	s.RecordWrapperType = &v
7938	return s
7939}
7940
7941// SetShuffleConfig sets the ShuffleConfig field's value.
7942func (s *Channel) SetShuffleConfig(v *ShuffleConfig) *Channel {
7943	s.ShuffleConfig = v
7944	return s
7945}
7946
7947// Defines a named input source, called a channel, to be used by an algorithm.
7948type ChannelSpecification struct {
7949	_ struct{} `type:"structure"`
7950
7951	// A brief description of the channel.
7952	Description *string `type:"string"`
7953
7954	// Indicates whether the channel is required by the algorithm.
7955	IsRequired *bool `type:"boolean"`
7956
7957	// The name of the channel.
7958	//
7959	// Name is a required field
7960	Name *string `min:"1" type:"string" required:"true"`
7961
7962	// The allowed compression types, if data compression is used.
7963	SupportedCompressionTypes []*string `type:"list"`
7964
7965	// The supported MIME types for the data.
7966	//
7967	// SupportedContentTypes is a required field
7968	SupportedContentTypes []*string `type:"list" required:"true"`
7969
7970	// The allowed input mode, either FILE or PIPE.
7971	//
7972	// In FILE mode, Amazon SageMaker copies the data from the input source onto
7973	// the local Amazon Elastic Block Store (Amazon EBS) volumes before starting
7974	// your training algorithm. This is the most commonly used input mode.
7975	//
7976	// In PIPE mode, Amazon SageMaker streams input data from the source directly
7977	// to your algorithm without using the EBS volume.
7978	//
7979	// SupportedInputModes is a required field
7980	SupportedInputModes []*string `min:"1" type:"list" required:"true"`
7981}
7982
7983// String returns the string representation
7984func (s ChannelSpecification) String() string {
7985	return awsutil.Prettify(s)
7986}
7987
7988// GoString returns the string representation
7989func (s ChannelSpecification) GoString() string {
7990	return s.String()
7991}
7992
7993// Validate inspects the fields of the type to determine if they are valid.
7994func (s *ChannelSpecification) Validate() error {
7995	invalidParams := request.ErrInvalidParams{Context: "ChannelSpecification"}
7996	if s.Name == nil {
7997		invalidParams.Add(request.NewErrParamRequired("Name"))
7998	}
7999	if s.Name != nil && len(*s.Name) < 1 {
8000		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8001	}
8002	if s.SupportedContentTypes == nil {
8003		invalidParams.Add(request.NewErrParamRequired("SupportedContentTypes"))
8004	}
8005	if s.SupportedInputModes == nil {
8006		invalidParams.Add(request.NewErrParamRequired("SupportedInputModes"))
8007	}
8008	if s.SupportedInputModes != nil && len(s.SupportedInputModes) < 1 {
8009		invalidParams.Add(request.NewErrParamMinLen("SupportedInputModes", 1))
8010	}
8011
8012	if invalidParams.Len() > 0 {
8013		return invalidParams
8014	}
8015	return nil
8016}
8017
8018// SetDescription sets the Description field's value.
8019func (s *ChannelSpecification) SetDescription(v string) *ChannelSpecification {
8020	s.Description = &v
8021	return s
8022}
8023
8024// SetIsRequired sets the IsRequired field's value.
8025func (s *ChannelSpecification) SetIsRequired(v bool) *ChannelSpecification {
8026	s.IsRequired = &v
8027	return s
8028}
8029
8030// SetName sets the Name field's value.
8031func (s *ChannelSpecification) SetName(v string) *ChannelSpecification {
8032	s.Name = &v
8033	return s
8034}
8035
8036// SetSupportedCompressionTypes sets the SupportedCompressionTypes field's value.
8037func (s *ChannelSpecification) SetSupportedCompressionTypes(v []*string) *ChannelSpecification {
8038	s.SupportedCompressionTypes = v
8039	return s
8040}
8041
8042// SetSupportedContentTypes sets the SupportedContentTypes field's value.
8043func (s *ChannelSpecification) SetSupportedContentTypes(v []*string) *ChannelSpecification {
8044	s.SupportedContentTypes = v
8045	return s
8046}
8047
8048// SetSupportedInputModes sets the SupportedInputModes field's value.
8049func (s *ChannelSpecification) SetSupportedInputModes(v []*string) *ChannelSpecification {
8050	s.SupportedInputModes = v
8051	return s
8052}
8053
8054// Contains information about the output location for managed spot training
8055// checkpoint data.
8056type CheckpointConfig struct {
8057	_ struct{} `type:"structure"`
8058
8059	// (Optional) The local directory where checkpoints are written. The default
8060	// directory is /opt/ml/checkpoints/.
8061	LocalPath *string `type:"string"`
8062
8063	// Identifies the S3 path where you want Amazon SageMaker to store checkpoints.
8064	// For example, s3://bucket-name/key-name-prefix.
8065	//
8066	// S3Uri is a required field
8067	S3Uri *string `type:"string" required:"true"`
8068}
8069
8070// String returns the string representation
8071func (s CheckpointConfig) String() string {
8072	return awsutil.Prettify(s)
8073}
8074
8075// GoString returns the string representation
8076func (s CheckpointConfig) GoString() string {
8077	return s.String()
8078}
8079
8080// Validate inspects the fields of the type to determine if they are valid.
8081func (s *CheckpointConfig) Validate() error {
8082	invalidParams := request.ErrInvalidParams{Context: "CheckpointConfig"}
8083	if s.S3Uri == nil {
8084		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
8085	}
8086
8087	if invalidParams.Len() > 0 {
8088		return invalidParams
8089	}
8090	return nil
8091}
8092
8093// SetLocalPath sets the LocalPath field's value.
8094func (s *CheckpointConfig) SetLocalPath(v string) *CheckpointConfig {
8095	s.LocalPath = &v
8096	return s
8097}
8098
8099// SetS3Uri sets the S3Uri field's value.
8100func (s *CheckpointConfig) SetS3Uri(v string) *CheckpointConfig {
8101	s.S3Uri = &v
8102	return s
8103}
8104
8105// Specifies summary information about a Git repository.
8106type CodeRepositorySummary struct {
8107	_ struct{} `type:"structure"`
8108
8109	// The Amazon Resource Name (ARN) of the Git repository.
8110	//
8111	// CodeRepositoryArn is a required field
8112	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
8113
8114	// The name of the Git repository.
8115	//
8116	// CodeRepositoryName is a required field
8117	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
8118
8119	// The date and time that the Git repository was created.
8120	//
8121	// CreationTime is a required field
8122	CreationTime *time.Time `type:"timestamp" required:"true"`
8123
8124	// Configuration details for the Git repository, including the URL where it
8125	// is located and the ARN of the AWS Secrets Manager secret that contains the
8126	// credentials used to access the repository.
8127	GitConfig *GitConfig `type:"structure"`
8128
8129	// The date and time that the Git repository was last modified.
8130	//
8131	// LastModifiedTime is a required field
8132	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
8133}
8134
8135// String returns the string representation
8136func (s CodeRepositorySummary) String() string {
8137	return awsutil.Prettify(s)
8138}
8139
8140// GoString returns the string representation
8141func (s CodeRepositorySummary) GoString() string {
8142	return s.String()
8143}
8144
8145// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
8146func (s *CodeRepositorySummary) SetCodeRepositoryArn(v string) *CodeRepositorySummary {
8147	s.CodeRepositoryArn = &v
8148	return s
8149}
8150
8151// SetCodeRepositoryName sets the CodeRepositoryName field's value.
8152func (s *CodeRepositorySummary) SetCodeRepositoryName(v string) *CodeRepositorySummary {
8153	s.CodeRepositoryName = &v
8154	return s
8155}
8156
8157// SetCreationTime sets the CreationTime field's value.
8158func (s *CodeRepositorySummary) SetCreationTime(v time.Time) *CodeRepositorySummary {
8159	s.CreationTime = &v
8160	return s
8161}
8162
8163// SetGitConfig sets the GitConfig field's value.
8164func (s *CodeRepositorySummary) SetGitConfig(v *GitConfig) *CodeRepositorySummary {
8165	s.GitConfig = v
8166	return s
8167}
8168
8169// SetLastModifiedTime sets the LastModifiedTime field's value.
8170func (s *CodeRepositorySummary) SetLastModifiedTime(v time.Time) *CodeRepositorySummary {
8171	s.LastModifiedTime = &v
8172	return s
8173}
8174
8175// Identifies a Amazon Cognito user group. A user group can be used in on or
8176// more work teams.
8177type CognitoMemberDefinition struct {
8178	_ struct{} `type:"structure"`
8179
8180	// An identifier for an application client. You must create the app client ID
8181	// using Amazon Cognito.
8182	//
8183	// ClientId is a required field
8184	ClientId *string `min:"1" type:"string" required:"true"`
8185
8186	// An identifier for a user group.
8187	//
8188	// UserGroup is a required field
8189	UserGroup *string `min:"1" type:"string" required:"true"`
8190
8191	// An identifier for a user pool. The user pool must be in the same region as
8192	// the service that you are calling.
8193	//
8194	// UserPool is a required field
8195	UserPool *string `min:"1" type:"string" required:"true"`
8196}
8197
8198// String returns the string representation
8199func (s CognitoMemberDefinition) String() string {
8200	return awsutil.Prettify(s)
8201}
8202
8203// GoString returns the string representation
8204func (s CognitoMemberDefinition) GoString() string {
8205	return s.String()
8206}
8207
8208// Validate inspects the fields of the type to determine if they are valid.
8209func (s *CognitoMemberDefinition) Validate() error {
8210	invalidParams := request.ErrInvalidParams{Context: "CognitoMemberDefinition"}
8211	if s.ClientId == nil {
8212		invalidParams.Add(request.NewErrParamRequired("ClientId"))
8213	}
8214	if s.ClientId != nil && len(*s.ClientId) < 1 {
8215		invalidParams.Add(request.NewErrParamMinLen("ClientId", 1))
8216	}
8217	if s.UserGroup == nil {
8218		invalidParams.Add(request.NewErrParamRequired("UserGroup"))
8219	}
8220	if s.UserGroup != nil && len(*s.UserGroup) < 1 {
8221		invalidParams.Add(request.NewErrParamMinLen("UserGroup", 1))
8222	}
8223	if s.UserPool == nil {
8224		invalidParams.Add(request.NewErrParamRequired("UserPool"))
8225	}
8226	if s.UserPool != nil && len(*s.UserPool) < 1 {
8227		invalidParams.Add(request.NewErrParamMinLen("UserPool", 1))
8228	}
8229
8230	if invalidParams.Len() > 0 {
8231		return invalidParams
8232	}
8233	return nil
8234}
8235
8236// SetClientId sets the ClientId field's value.
8237func (s *CognitoMemberDefinition) SetClientId(v string) *CognitoMemberDefinition {
8238	s.ClientId = &v
8239	return s
8240}
8241
8242// SetUserGroup sets the UserGroup field's value.
8243func (s *CognitoMemberDefinition) SetUserGroup(v string) *CognitoMemberDefinition {
8244	s.UserGroup = &v
8245	return s
8246}
8247
8248// SetUserPool sets the UserPool field's value.
8249func (s *CognitoMemberDefinition) SetUserPool(v string) *CognitoMemberDefinition {
8250	s.UserPool = &v
8251	return s
8252}
8253
8254// A summary of a model compilation job.
8255type CompilationJobSummary struct {
8256	_ struct{} `type:"structure"`
8257
8258	// The time when the model compilation job completed.
8259	CompilationEndTime *time.Time `type:"timestamp"`
8260
8261	// The Amazon Resource Name (ARN) of the model compilation job.
8262	//
8263	// CompilationJobArn is a required field
8264	CompilationJobArn *string `type:"string" required:"true"`
8265
8266	// The name of the model compilation job that you want a summary for.
8267	//
8268	// CompilationJobName is a required field
8269	CompilationJobName *string `min:"1" type:"string" required:"true"`
8270
8271	// The status of the model compilation job.
8272	//
8273	// CompilationJobStatus is a required field
8274	CompilationJobStatus *string `type:"string" required:"true" enum:"CompilationJobStatus"`
8275
8276	// The time when the model compilation job started.
8277	CompilationStartTime *time.Time `type:"timestamp"`
8278
8279	// The type of device that the model will run on after compilation has completed.
8280	//
8281	// CompilationTargetDevice is a required field
8282	CompilationTargetDevice *string `type:"string" required:"true" enum:"TargetDevice"`
8283
8284	// The time when the model compilation job was created.
8285	//
8286	// CreationTime is a required field
8287	CreationTime *time.Time `type:"timestamp" required:"true"`
8288
8289	// The time when the model compilation job was last modified.
8290	LastModifiedTime *time.Time `type:"timestamp"`
8291}
8292
8293// String returns the string representation
8294func (s CompilationJobSummary) String() string {
8295	return awsutil.Prettify(s)
8296}
8297
8298// GoString returns the string representation
8299func (s CompilationJobSummary) GoString() string {
8300	return s.String()
8301}
8302
8303// SetCompilationEndTime sets the CompilationEndTime field's value.
8304func (s *CompilationJobSummary) SetCompilationEndTime(v time.Time) *CompilationJobSummary {
8305	s.CompilationEndTime = &v
8306	return s
8307}
8308
8309// SetCompilationJobArn sets the CompilationJobArn field's value.
8310func (s *CompilationJobSummary) SetCompilationJobArn(v string) *CompilationJobSummary {
8311	s.CompilationJobArn = &v
8312	return s
8313}
8314
8315// SetCompilationJobName sets the CompilationJobName field's value.
8316func (s *CompilationJobSummary) SetCompilationJobName(v string) *CompilationJobSummary {
8317	s.CompilationJobName = &v
8318	return s
8319}
8320
8321// SetCompilationJobStatus sets the CompilationJobStatus field's value.
8322func (s *CompilationJobSummary) SetCompilationJobStatus(v string) *CompilationJobSummary {
8323	s.CompilationJobStatus = &v
8324	return s
8325}
8326
8327// SetCompilationStartTime sets the CompilationStartTime field's value.
8328func (s *CompilationJobSummary) SetCompilationStartTime(v time.Time) *CompilationJobSummary {
8329	s.CompilationStartTime = &v
8330	return s
8331}
8332
8333// SetCompilationTargetDevice sets the CompilationTargetDevice field's value.
8334func (s *CompilationJobSummary) SetCompilationTargetDevice(v string) *CompilationJobSummary {
8335	s.CompilationTargetDevice = &v
8336	return s
8337}
8338
8339// SetCreationTime sets the CreationTime field's value.
8340func (s *CompilationJobSummary) SetCreationTime(v time.Time) *CompilationJobSummary {
8341	s.CreationTime = &v
8342	return s
8343}
8344
8345// SetLastModifiedTime sets the LastModifiedTime field's value.
8346func (s *CompilationJobSummary) SetLastModifiedTime(v time.Time) *CompilationJobSummary {
8347	s.LastModifiedTime = &v
8348	return s
8349}
8350
8351// Describes the container, as part of model definition.
8352type ContainerDefinition struct {
8353	_ struct{} `type:"structure"`
8354
8355	// This parameter is ignored for models that contain only a PrimaryContainer.
8356	//
8357	// When a ContainerDefinition is part of an inference pipeline, the value of
8358	// ths parameter uniquely identifies the container for the purposes of logging
8359	// and metrics. For information, see Use Logs and Metrics to Monitor an Inference
8360	// Pipeline (https://docs.aws.amazon.com/sagemaker/latest/dg/inference-pipeline-logs-metrics.html).
8361	// If you don't specify a value for this parameter for a ContainerDefinition
8362	// that is part of an inference pipeline, a unique name is automatically assigned
8363	// based on the position of the ContainerDefinition in the pipeline. If you
8364	// specify a value for the ContainerHostName for any ContainerDefinition that
8365	// is part of an inference pipeline, you must specify a value for the ContainerHostName
8366	// parameter of every ContainerDefinition in that pipeline.
8367	ContainerHostname *string `type:"string"`
8368
8369	// The environment variables to set in the Docker container. Each key and value
8370	// in the Environment string to string map can have length of up to 1024. We
8371	// support up to 16 entries in the map.
8372	Environment map[string]*string `type:"map"`
8373
8374	// The Amazon EC2 Container Registry (Amazon ECR) path where inference code
8375	// is stored. If you are using your own custom algorithm instead of an algorithm
8376	// provided by Amazon SageMaker, the inference code must meet Amazon SageMaker
8377	// requirements. Amazon SageMaker supports both registry/repository[:tag] and
8378	// registry/repository[@digest] image path formats. For more information, see
8379	// Using Your Own Algorithms with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html)
8380	Image *string `type:"string"`
8381
8382	// The S3 path where the model artifacts, which result from model training,
8383	// are stored. This path must point to a single gzip compressed tar archive
8384	// (.tar.gz suffix). The S3 path is required for Amazon SageMaker built-in algorithms,
8385	// but not if you use your own algorithms. For more information on built-in
8386	// algorithms, see Common Parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html).
8387	//
8388	// If you provide a value for this parameter, Amazon SageMaker uses AWS Security
8389	// Token Service to download model artifacts from the S3 path you provide. AWS
8390	// STS is activated in your IAM user account by default. If you previously deactivated
8391	// AWS STS for a region, you need to reactivate AWS STS for that region. For
8392	// more information, see Activating and Deactivating AWS STS in an AWS Region
8393	// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html)
8394	// in the AWS Identity and Access Management User Guide.
8395	//
8396	// If you use a built-in algorithm to create a model, Amazon SageMaker requires
8397	// that you provide a S3 path to the model artifacts in ModelDataUrl.
8398	ModelDataUrl *string `type:"string"`
8399
8400	// The name or Amazon Resource Name (ARN) of the model package to use to create
8401	// the model.
8402	ModelPackageName *string `min:"1" type:"string"`
8403}
8404
8405// String returns the string representation
8406func (s ContainerDefinition) String() string {
8407	return awsutil.Prettify(s)
8408}
8409
8410// GoString returns the string representation
8411func (s ContainerDefinition) GoString() string {
8412	return s.String()
8413}
8414
8415// Validate inspects the fields of the type to determine if they are valid.
8416func (s *ContainerDefinition) Validate() error {
8417	invalidParams := request.ErrInvalidParams{Context: "ContainerDefinition"}
8418	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
8419		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
8420	}
8421
8422	if invalidParams.Len() > 0 {
8423		return invalidParams
8424	}
8425	return nil
8426}
8427
8428// SetContainerHostname sets the ContainerHostname field's value.
8429func (s *ContainerDefinition) SetContainerHostname(v string) *ContainerDefinition {
8430	s.ContainerHostname = &v
8431	return s
8432}
8433
8434// SetEnvironment sets the Environment field's value.
8435func (s *ContainerDefinition) SetEnvironment(v map[string]*string) *ContainerDefinition {
8436	s.Environment = v
8437	return s
8438}
8439
8440// SetImage sets the Image field's value.
8441func (s *ContainerDefinition) SetImage(v string) *ContainerDefinition {
8442	s.Image = &v
8443	return s
8444}
8445
8446// SetModelDataUrl sets the ModelDataUrl field's value.
8447func (s *ContainerDefinition) SetModelDataUrl(v string) *ContainerDefinition {
8448	s.ModelDataUrl = &v
8449	return s
8450}
8451
8452// SetModelPackageName sets the ModelPackageName field's value.
8453func (s *ContainerDefinition) SetModelPackageName(v string) *ContainerDefinition {
8454	s.ModelPackageName = &v
8455	return s
8456}
8457
8458// A list of continuous hyperparameters to tune.
8459type ContinuousParameterRange struct {
8460	_ struct{} `type:"structure"`
8461
8462	// The maximum value for the hyperparameter. The tuning job uses floating-point
8463	// values between MinValue value and this value for tuning.
8464	//
8465	// MaxValue is a required field
8466	MaxValue *string `type:"string" required:"true"`
8467
8468	// The minimum value for the hyperparameter. The tuning job uses floating-point
8469	// values between this value and MaxValuefor tuning.
8470	//
8471	// MinValue is a required field
8472	MinValue *string `type:"string" required:"true"`
8473
8474	// The name of the continuous hyperparameter to tune.
8475	//
8476	// Name is a required field
8477	Name *string `type:"string" required:"true"`
8478
8479	// The scale that hyperparameter tuning uses to search the hyperparameter range.
8480	// For information about choosing a hyperparameter scale, see Hyperparameter
8481	// Scaling (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
8482	// One of the following values:
8483	//
8484	// Auto
8485	//
8486	// Amazon SageMaker hyperparameter tuning chooses the best scale for the hyperparameter.
8487	//
8488	// Linear
8489	//
8490	// Hyperparameter tuning searches the values in the hyperparameter range by
8491	// using a linear scale.
8492	//
8493	// Logarithmic
8494	//
8495	// Hyperparameter tuning searches the values in the hyperparameter range by
8496	// using a logarithmic scale.
8497	//
8498	// Logarithmic scaling works only for ranges that have only values greater than
8499	// 0.
8500	//
8501	// ReverseLogarithmic
8502	//
8503	// Hyperparemeter tuning searches the values in the hyperparameter range by
8504	// using a reverse logarithmic scale.
8505	//
8506	// Reverse logarithmic scaling works only for ranges that are entirely within
8507	// the range 0<=x<1.0.
8508	ScalingType *string `type:"string" enum:"HyperParameterScalingType"`
8509}
8510
8511// String returns the string representation
8512func (s ContinuousParameterRange) String() string {
8513	return awsutil.Prettify(s)
8514}
8515
8516// GoString returns the string representation
8517func (s ContinuousParameterRange) GoString() string {
8518	return s.String()
8519}
8520
8521// Validate inspects the fields of the type to determine if they are valid.
8522func (s *ContinuousParameterRange) Validate() error {
8523	invalidParams := request.ErrInvalidParams{Context: "ContinuousParameterRange"}
8524	if s.MaxValue == nil {
8525		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
8526	}
8527	if s.MinValue == nil {
8528		invalidParams.Add(request.NewErrParamRequired("MinValue"))
8529	}
8530	if s.Name == nil {
8531		invalidParams.Add(request.NewErrParamRequired("Name"))
8532	}
8533
8534	if invalidParams.Len() > 0 {
8535		return invalidParams
8536	}
8537	return nil
8538}
8539
8540// SetMaxValue sets the MaxValue field's value.
8541func (s *ContinuousParameterRange) SetMaxValue(v string) *ContinuousParameterRange {
8542	s.MaxValue = &v
8543	return s
8544}
8545
8546// SetMinValue sets the MinValue field's value.
8547func (s *ContinuousParameterRange) SetMinValue(v string) *ContinuousParameterRange {
8548	s.MinValue = &v
8549	return s
8550}
8551
8552// SetName sets the Name field's value.
8553func (s *ContinuousParameterRange) SetName(v string) *ContinuousParameterRange {
8554	s.Name = &v
8555	return s
8556}
8557
8558// SetScalingType sets the ScalingType field's value.
8559func (s *ContinuousParameterRange) SetScalingType(v string) *ContinuousParameterRange {
8560	s.ScalingType = &v
8561	return s
8562}
8563
8564// Defines the possible values for a continuous hyperparameter.
8565type ContinuousParameterRangeSpecification struct {
8566	_ struct{} `type:"structure"`
8567
8568	// The maximum floating-point value allowed.
8569	//
8570	// MaxValue is a required field
8571	MaxValue *string `type:"string" required:"true"`
8572
8573	// The minimum floating-point value allowed.
8574	//
8575	// MinValue is a required field
8576	MinValue *string `type:"string" required:"true"`
8577}
8578
8579// String returns the string representation
8580func (s ContinuousParameterRangeSpecification) String() string {
8581	return awsutil.Prettify(s)
8582}
8583
8584// GoString returns the string representation
8585func (s ContinuousParameterRangeSpecification) GoString() string {
8586	return s.String()
8587}
8588
8589// Validate inspects the fields of the type to determine if they are valid.
8590func (s *ContinuousParameterRangeSpecification) Validate() error {
8591	invalidParams := request.ErrInvalidParams{Context: "ContinuousParameterRangeSpecification"}
8592	if s.MaxValue == nil {
8593		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
8594	}
8595	if s.MinValue == nil {
8596		invalidParams.Add(request.NewErrParamRequired("MinValue"))
8597	}
8598
8599	if invalidParams.Len() > 0 {
8600		return invalidParams
8601	}
8602	return nil
8603}
8604
8605// SetMaxValue sets the MaxValue field's value.
8606func (s *ContinuousParameterRangeSpecification) SetMaxValue(v string) *ContinuousParameterRangeSpecification {
8607	s.MaxValue = &v
8608	return s
8609}
8610
8611// SetMinValue sets the MinValue field's value.
8612func (s *ContinuousParameterRangeSpecification) SetMinValue(v string) *ContinuousParameterRangeSpecification {
8613	s.MinValue = &v
8614	return s
8615}
8616
8617type CreateAlgorithmInput struct {
8618	_ struct{} `type:"structure"`
8619
8620	// A description of the algorithm.
8621	AlgorithmDescription *string `type:"string"`
8622
8623	// The name of the algorithm.
8624	//
8625	// AlgorithmName is a required field
8626	AlgorithmName *string `min:"1" type:"string" required:"true"`
8627
8628	// Whether to certify the algorithm so that it can be listed in AWS Marketplace.
8629	CertifyForMarketplace *bool `type:"boolean"`
8630
8631	// Specifies details about inference jobs that the algorithm runs, including
8632	// the following:
8633	//
8634	//    * The Amazon ECR paths of containers that contain the inference code and
8635	//    model artifacts.
8636	//
8637	//    * The instance types that the algorithm supports for transform jobs and
8638	//    real-time endpoints used for inference.
8639	//
8640	//    * The input and output content formats that the algorithm supports for
8641	//    inference.
8642	InferenceSpecification *InferenceSpecification `type:"structure"`
8643
8644	// Specifies details about training jobs run by this algorithm, including the
8645	// following:
8646	//
8647	//    * The Amazon ECR path of the container and the version digest of the algorithm.
8648	//
8649	//    * The hyperparameters that the algorithm supports.
8650	//
8651	//    * The instance types that the algorithm supports for training.
8652	//
8653	//    * Whether the algorithm supports distributed training.
8654	//
8655	//    * The metrics that the algorithm emits to Amazon CloudWatch.
8656	//
8657	//    * Which metrics that the algorithm emits can be used as the objective
8658	//    metric for hyperparameter tuning jobs.
8659	//
8660	//    * The input channels that the algorithm supports for training data. For
8661	//    example, an algorithm might support train, validation, and test channels.
8662	//
8663	// TrainingSpecification is a required field
8664	TrainingSpecification *TrainingSpecification `type:"structure" required:"true"`
8665
8666	// Specifies configurations for one or more training jobs and that Amazon SageMaker
8667	// runs to test the algorithm's training code and, optionally, one or more batch
8668	// transform jobs that Amazon SageMaker runs to test the algorithm's inference
8669	// code.
8670	ValidationSpecification *AlgorithmValidationSpecification `type:"structure"`
8671}
8672
8673// String returns the string representation
8674func (s CreateAlgorithmInput) String() string {
8675	return awsutil.Prettify(s)
8676}
8677
8678// GoString returns the string representation
8679func (s CreateAlgorithmInput) GoString() string {
8680	return s.String()
8681}
8682
8683// Validate inspects the fields of the type to determine if they are valid.
8684func (s *CreateAlgorithmInput) Validate() error {
8685	invalidParams := request.ErrInvalidParams{Context: "CreateAlgorithmInput"}
8686	if s.AlgorithmName == nil {
8687		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
8688	}
8689	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
8690		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
8691	}
8692	if s.TrainingSpecification == nil {
8693		invalidParams.Add(request.NewErrParamRequired("TrainingSpecification"))
8694	}
8695	if s.InferenceSpecification != nil {
8696		if err := s.InferenceSpecification.Validate(); err != nil {
8697			invalidParams.AddNested("InferenceSpecification", err.(request.ErrInvalidParams))
8698		}
8699	}
8700	if s.TrainingSpecification != nil {
8701		if err := s.TrainingSpecification.Validate(); err != nil {
8702			invalidParams.AddNested("TrainingSpecification", err.(request.ErrInvalidParams))
8703		}
8704	}
8705	if s.ValidationSpecification != nil {
8706		if err := s.ValidationSpecification.Validate(); err != nil {
8707			invalidParams.AddNested("ValidationSpecification", err.(request.ErrInvalidParams))
8708		}
8709	}
8710
8711	if invalidParams.Len() > 0 {
8712		return invalidParams
8713	}
8714	return nil
8715}
8716
8717// SetAlgorithmDescription sets the AlgorithmDescription field's value.
8718func (s *CreateAlgorithmInput) SetAlgorithmDescription(v string) *CreateAlgorithmInput {
8719	s.AlgorithmDescription = &v
8720	return s
8721}
8722
8723// SetAlgorithmName sets the AlgorithmName field's value.
8724func (s *CreateAlgorithmInput) SetAlgorithmName(v string) *CreateAlgorithmInput {
8725	s.AlgorithmName = &v
8726	return s
8727}
8728
8729// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
8730func (s *CreateAlgorithmInput) SetCertifyForMarketplace(v bool) *CreateAlgorithmInput {
8731	s.CertifyForMarketplace = &v
8732	return s
8733}
8734
8735// SetInferenceSpecification sets the InferenceSpecification field's value.
8736func (s *CreateAlgorithmInput) SetInferenceSpecification(v *InferenceSpecification) *CreateAlgorithmInput {
8737	s.InferenceSpecification = v
8738	return s
8739}
8740
8741// SetTrainingSpecification sets the TrainingSpecification field's value.
8742func (s *CreateAlgorithmInput) SetTrainingSpecification(v *TrainingSpecification) *CreateAlgorithmInput {
8743	s.TrainingSpecification = v
8744	return s
8745}
8746
8747// SetValidationSpecification sets the ValidationSpecification field's value.
8748func (s *CreateAlgorithmInput) SetValidationSpecification(v *AlgorithmValidationSpecification) *CreateAlgorithmInput {
8749	s.ValidationSpecification = v
8750	return s
8751}
8752
8753type CreateAlgorithmOutput struct {
8754	_ struct{} `type:"structure"`
8755
8756	// The Amazon Resource Name (ARN) of the new algorithm.
8757	//
8758	// AlgorithmArn is a required field
8759	AlgorithmArn *string `min:"1" type:"string" required:"true"`
8760}
8761
8762// String returns the string representation
8763func (s CreateAlgorithmOutput) String() string {
8764	return awsutil.Prettify(s)
8765}
8766
8767// GoString returns the string representation
8768func (s CreateAlgorithmOutput) GoString() string {
8769	return s.String()
8770}
8771
8772// SetAlgorithmArn sets the AlgorithmArn field's value.
8773func (s *CreateAlgorithmOutput) SetAlgorithmArn(v string) *CreateAlgorithmOutput {
8774	s.AlgorithmArn = &v
8775	return s
8776}
8777
8778type CreateCodeRepositoryInput struct {
8779	_ struct{} `type:"structure"`
8780
8781	// The name of the Git repository. The name must have 1 to 63 characters. Valid
8782	// characters are a-z, A-Z, 0-9, and - (hyphen).
8783	//
8784	// CodeRepositoryName is a required field
8785	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
8786
8787	// Specifies details about the repository, including the URL where the repository
8788	// is located, the default branch, and credentials to use to access the repository.
8789	//
8790	// GitConfig is a required field
8791	GitConfig *GitConfig `type:"structure" required:"true"`
8792}
8793
8794// String returns the string representation
8795func (s CreateCodeRepositoryInput) String() string {
8796	return awsutil.Prettify(s)
8797}
8798
8799// GoString returns the string representation
8800func (s CreateCodeRepositoryInput) GoString() string {
8801	return s.String()
8802}
8803
8804// Validate inspects the fields of the type to determine if they are valid.
8805func (s *CreateCodeRepositoryInput) Validate() error {
8806	invalidParams := request.ErrInvalidParams{Context: "CreateCodeRepositoryInput"}
8807	if s.CodeRepositoryName == nil {
8808		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
8809	}
8810	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
8811		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
8812	}
8813	if s.GitConfig == nil {
8814		invalidParams.Add(request.NewErrParamRequired("GitConfig"))
8815	}
8816	if s.GitConfig != nil {
8817		if err := s.GitConfig.Validate(); err != nil {
8818			invalidParams.AddNested("GitConfig", err.(request.ErrInvalidParams))
8819		}
8820	}
8821
8822	if invalidParams.Len() > 0 {
8823		return invalidParams
8824	}
8825	return nil
8826}
8827
8828// SetCodeRepositoryName sets the CodeRepositoryName field's value.
8829func (s *CreateCodeRepositoryInput) SetCodeRepositoryName(v string) *CreateCodeRepositoryInput {
8830	s.CodeRepositoryName = &v
8831	return s
8832}
8833
8834// SetGitConfig sets the GitConfig field's value.
8835func (s *CreateCodeRepositoryInput) SetGitConfig(v *GitConfig) *CreateCodeRepositoryInput {
8836	s.GitConfig = v
8837	return s
8838}
8839
8840type CreateCodeRepositoryOutput struct {
8841	_ struct{} `type:"structure"`
8842
8843	// The Amazon Resource Name (ARN) of the new repository.
8844	//
8845	// CodeRepositoryArn is a required field
8846	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
8847}
8848
8849// String returns the string representation
8850func (s CreateCodeRepositoryOutput) String() string {
8851	return awsutil.Prettify(s)
8852}
8853
8854// GoString returns the string representation
8855func (s CreateCodeRepositoryOutput) GoString() string {
8856	return s.String()
8857}
8858
8859// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
8860func (s *CreateCodeRepositoryOutput) SetCodeRepositoryArn(v string) *CreateCodeRepositoryOutput {
8861	s.CodeRepositoryArn = &v
8862	return s
8863}
8864
8865type CreateCompilationJobInput struct {
8866	_ struct{} `type:"structure"`
8867
8868	// A name for the model compilation job. The name must be unique within the
8869	// AWS Region and within your AWS account.
8870	//
8871	// CompilationJobName is a required field
8872	CompilationJobName *string `min:"1" type:"string" required:"true"`
8873
8874	// Provides information about the location of input model artifacts, the name
8875	// and shape of the expected data inputs, and the framework in which the model
8876	// was trained.
8877	//
8878	// InputConfig is a required field
8879	InputConfig *InputConfig `type:"structure" required:"true"`
8880
8881	// Provides information about the output location for the compiled model and
8882	// the target device the model runs on.
8883	//
8884	// OutputConfig is a required field
8885	OutputConfig *OutputConfig `type:"structure" required:"true"`
8886
8887	// The Amazon Resource Name (ARN) of an IAM role that enables Amazon SageMaker
8888	// to perform tasks on your behalf.
8889	//
8890	// During model compilation, Amazon SageMaker needs your permission to:
8891	//
8892	//    * Read input data from an S3 bucket
8893	//
8894	//    * Write model artifacts to an S3 bucket
8895	//
8896	//    * Write logs to Amazon CloudWatch Logs
8897	//
8898	//    * Publish metrics to Amazon CloudWatch
8899	//
8900	// You grant permissions for all of these tasks to an IAM role. To pass this
8901	// role to Amazon SageMaker, the caller of this API must have the iam:PassRole
8902	// permission. For more information, see Amazon SageMaker Roles. (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html)
8903	//
8904	// RoleArn is a required field
8905	RoleArn *string `min:"20" type:"string" required:"true"`
8906
8907	// Specifies a limit to how long a model compilation job can run. When the job
8908	// reaches the time limit, Amazon SageMaker ends the compilation job. Use this
8909	// API to cap model training costs.
8910	//
8911	// StoppingCondition is a required field
8912	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
8913}
8914
8915// String returns the string representation
8916func (s CreateCompilationJobInput) String() string {
8917	return awsutil.Prettify(s)
8918}
8919
8920// GoString returns the string representation
8921func (s CreateCompilationJobInput) GoString() string {
8922	return s.String()
8923}
8924
8925// Validate inspects the fields of the type to determine if they are valid.
8926func (s *CreateCompilationJobInput) Validate() error {
8927	invalidParams := request.ErrInvalidParams{Context: "CreateCompilationJobInput"}
8928	if s.CompilationJobName == nil {
8929		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
8930	}
8931	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
8932		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
8933	}
8934	if s.InputConfig == nil {
8935		invalidParams.Add(request.NewErrParamRequired("InputConfig"))
8936	}
8937	if s.OutputConfig == nil {
8938		invalidParams.Add(request.NewErrParamRequired("OutputConfig"))
8939	}
8940	if s.RoleArn == nil {
8941		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
8942	}
8943	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
8944		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
8945	}
8946	if s.StoppingCondition == nil {
8947		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
8948	}
8949	if s.InputConfig != nil {
8950		if err := s.InputConfig.Validate(); err != nil {
8951			invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams))
8952		}
8953	}
8954	if s.OutputConfig != nil {
8955		if err := s.OutputConfig.Validate(); err != nil {
8956			invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams))
8957		}
8958	}
8959	if s.StoppingCondition != nil {
8960		if err := s.StoppingCondition.Validate(); err != nil {
8961			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
8962		}
8963	}
8964
8965	if invalidParams.Len() > 0 {
8966		return invalidParams
8967	}
8968	return nil
8969}
8970
8971// SetCompilationJobName sets the CompilationJobName field's value.
8972func (s *CreateCompilationJobInput) SetCompilationJobName(v string) *CreateCompilationJobInput {
8973	s.CompilationJobName = &v
8974	return s
8975}
8976
8977// SetInputConfig sets the InputConfig field's value.
8978func (s *CreateCompilationJobInput) SetInputConfig(v *InputConfig) *CreateCompilationJobInput {
8979	s.InputConfig = v
8980	return s
8981}
8982
8983// SetOutputConfig sets the OutputConfig field's value.
8984func (s *CreateCompilationJobInput) SetOutputConfig(v *OutputConfig) *CreateCompilationJobInput {
8985	s.OutputConfig = v
8986	return s
8987}
8988
8989// SetRoleArn sets the RoleArn field's value.
8990func (s *CreateCompilationJobInput) SetRoleArn(v string) *CreateCompilationJobInput {
8991	s.RoleArn = &v
8992	return s
8993}
8994
8995// SetStoppingCondition sets the StoppingCondition field's value.
8996func (s *CreateCompilationJobInput) SetStoppingCondition(v *StoppingCondition) *CreateCompilationJobInput {
8997	s.StoppingCondition = v
8998	return s
8999}
9000
9001type CreateCompilationJobOutput struct {
9002	_ struct{} `type:"structure"`
9003
9004	// If the action is successful, the service sends back an HTTP 200 response.
9005	// Amazon SageMaker returns the following data in JSON format:
9006	//
9007	//    * CompilationJobArn: The Amazon Resource Name (ARN) of the compiled job.
9008	//
9009	// CompilationJobArn is a required field
9010	CompilationJobArn *string `type:"string" required:"true"`
9011}
9012
9013// String returns the string representation
9014func (s CreateCompilationJobOutput) String() string {
9015	return awsutil.Prettify(s)
9016}
9017
9018// GoString returns the string representation
9019func (s CreateCompilationJobOutput) GoString() string {
9020	return s.String()
9021}
9022
9023// SetCompilationJobArn sets the CompilationJobArn field's value.
9024func (s *CreateCompilationJobOutput) SetCompilationJobArn(v string) *CreateCompilationJobOutput {
9025	s.CompilationJobArn = &v
9026	return s
9027}
9028
9029type CreateEndpointConfigInput struct {
9030	_ struct{} `type:"structure"`
9031
9032	// The name of the endpoint configuration. You specify this name in a CreateEndpoint
9033	// (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpoint.html)
9034	// request.
9035	//
9036	// EndpointConfigName is a required field
9037	EndpointConfigName *string `type:"string" required:"true"`
9038
9039	// The Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon
9040	// SageMaker uses to encrypt data on the storage volume attached to the ML compute
9041	// instance that hosts the endpoint.
9042	KmsKeyId *string `type:"string"`
9043
9044	// An list of ProductionVariant objects, one for each model that you want to
9045	// host at this endpoint.
9046	//
9047	// ProductionVariants is a required field
9048	ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"`
9049
9050	// A list of key-value pairs. For more information, see Using Cost Allocation
9051	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9052	// in the AWS Billing and Cost Management User Guide.
9053	Tags []*Tag `type:"list"`
9054}
9055
9056// String returns the string representation
9057func (s CreateEndpointConfigInput) String() string {
9058	return awsutil.Prettify(s)
9059}
9060
9061// GoString returns the string representation
9062func (s CreateEndpointConfigInput) GoString() string {
9063	return s.String()
9064}
9065
9066// Validate inspects the fields of the type to determine if they are valid.
9067func (s *CreateEndpointConfigInput) Validate() error {
9068	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointConfigInput"}
9069	if s.EndpointConfigName == nil {
9070		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
9071	}
9072	if s.ProductionVariants == nil {
9073		invalidParams.Add(request.NewErrParamRequired("ProductionVariants"))
9074	}
9075	if s.ProductionVariants != nil && len(s.ProductionVariants) < 1 {
9076		invalidParams.Add(request.NewErrParamMinLen("ProductionVariants", 1))
9077	}
9078	if s.ProductionVariants != nil {
9079		for i, v := range s.ProductionVariants {
9080			if v == nil {
9081				continue
9082			}
9083			if err := v.Validate(); err != nil {
9084				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductionVariants", i), err.(request.ErrInvalidParams))
9085			}
9086		}
9087	}
9088	if s.Tags != nil {
9089		for i, v := range s.Tags {
9090			if v == nil {
9091				continue
9092			}
9093			if err := v.Validate(); err != nil {
9094				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9095			}
9096		}
9097	}
9098
9099	if invalidParams.Len() > 0 {
9100		return invalidParams
9101	}
9102	return nil
9103}
9104
9105// SetEndpointConfigName sets the EndpointConfigName field's value.
9106func (s *CreateEndpointConfigInput) SetEndpointConfigName(v string) *CreateEndpointConfigInput {
9107	s.EndpointConfigName = &v
9108	return s
9109}
9110
9111// SetKmsKeyId sets the KmsKeyId field's value.
9112func (s *CreateEndpointConfigInput) SetKmsKeyId(v string) *CreateEndpointConfigInput {
9113	s.KmsKeyId = &v
9114	return s
9115}
9116
9117// SetProductionVariants sets the ProductionVariants field's value.
9118func (s *CreateEndpointConfigInput) SetProductionVariants(v []*ProductionVariant) *CreateEndpointConfigInput {
9119	s.ProductionVariants = v
9120	return s
9121}
9122
9123// SetTags sets the Tags field's value.
9124func (s *CreateEndpointConfigInput) SetTags(v []*Tag) *CreateEndpointConfigInput {
9125	s.Tags = v
9126	return s
9127}
9128
9129type CreateEndpointConfigOutput struct {
9130	_ struct{} `type:"structure"`
9131
9132	// The Amazon Resource Name (ARN) of the endpoint configuration.
9133	//
9134	// EndpointConfigArn is a required field
9135	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
9136}
9137
9138// String returns the string representation
9139func (s CreateEndpointConfigOutput) String() string {
9140	return awsutil.Prettify(s)
9141}
9142
9143// GoString returns the string representation
9144func (s CreateEndpointConfigOutput) GoString() string {
9145	return s.String()
9146}
9147
9148// SetEndpointConfigArn sets the EndpointConfigArn field's value.
9149func (s *CreateEndpointConfigOutput) SetEndpointConfigArn(v string) *CreateEndpointConfigOutput {
9150	s.EndpointConfigArn = &v
9151	return s
9152}
9153
9154type CreateEndpointInput struct {
9155	_ struct{} `type:"structure"`
9156
9157	// The name of an endpoint configuration. For more information, see CreateEndpointConfig
9158	// (https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpointConfig.html).
9159	//
9160	// EndpointConfigName is a required field
9161	EndpointConfigName *string `type:"string" required:"true"`
9162
9163	// The name of the endpoint. The name must be unique within an AWS Region in
9164	// your AWS account.
9165	//
9166	// EndpointName is a required field
9167	EndpointName *string `type:"string" required:"true"`
9168
9169	// An array of key-value pairs. For more information, see Using Cost Allocation
9170	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)in
9171	// the AWS Billing and Cost Management User Guide.
9172	Tags []*Tag `type:"list"`
9173}
9174
9175// String returns the string representation
9176func (s CreateEndpointInput) String() string {
9177	return awsutil.Prettify(s)
9178}
9179
9180// GoString returns the string representation
9181func (s CreateEndpointInput) GoString() string {
9182	return s.String()
9183}
9184
9185// Validate inspects the fields of the type to determine if they are valid.
9186func (s *CreateEndpointInput) Validate() error {
9187	invalidParams := request.ErrInvalidParams{Context: "CreateEndpointInput"}
9188	if s.EndpointConfigName == nil {
9189		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
9190	}
9191	if s.EndpointName == nil {
9192		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
9193	}
9194	if s.Tags != nil {
9195		for i, v := range s.Tags {
9196			if v == nil {
9197				continue
9198			}
9199			if err := v.Validate(); err != nil {
9200				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9201			}
9202		}
9203	}
9204
9205	if invalidParams.Len() > 0 {
9206		return invalidParams
9207	}
9208	return nil
9209}
9210
9211// SetEndpointConfigName sets the EndpointConfigName field's value.
9212func (s *CreateEndpointInput) SetEndpointConfigName(v string) *CreateEndpointInput {
9213	s.EndpointConfigName = &v
9214	return s
9215}
9216
9217// SetEndpointName sets the EndpointName field's value.
9218func (s *CreateEndpointInput) SetEndpointName(v string) *CreateEndpointInput {
9219	s.EndpointName = &v
9220	return s
9221}
9222
9223// SetTags sets the Tags field's value.
9224func (s *CreateEndpointInput) SetTags(v []*Tag) *CreateEndpointInput {
9225	s.Tags = v
9226	return s
9227}
9228
9229type CreateEndpointOutput struct {
9230	_ struct{} `type:"structure"`
9231
9232	// The Amazon Resource Name (ARN) of the endpoint.
9233	//
9234	// EndpointArn is a required field
9235	EndpointArn *string `min:"20" type:"string" required:"true"`
9236}
9237
9238// String returns the string representation
9239func (s CreateEndpointOutput) String() string {
9240	return awsutil.Prettify(s)
9241}
9242
9243// GoString returns the string representation
9244func (s CreateEndpointOutput) GoString() string {
9245	return s.String()
9246}
9247
9248// SetEndpointArn sets the EndpointArn field's value.
9249func (s *CreateEndpointOutput) SetEndpointArn(v string) *CreateEndpointOutput {
9250	s.EndpointArn = &v
9251	return s
9252}
9253
9254type CreateHyperParameterTuningJobInput struct {
9255	_ struct{} `type:"structure"`
9256
9257	// The HyperParameterTuningJobConfig object that describes the tuning job, including
9258	// the search strategy, the objective metric used to evaluate training jobs,
9259	// ranges of parameters to search, and resource limits for the tuning job. For
9260	// more information, see automatic-model-tuning
9261	//
9262	// HyperParameterTuningJobConfig is a required field
9263	HyperParameterTuningJobConfig *HyperParameterTuningJobConfig `type:"structure" required:"true"`
9264
9265	// The name of the tuning job. This name is the prefix for the names of all
9266	// training jobs that this tuning job launches. The name must be unique within
9267	// the same AWS account and AWS Region. The name must have { } to { } characters.
9268	// Valid characters are a-z, A-Z, 0-9, and : + = @ _ % - (hyphen). The name
9269	// is not case sensitive.
9270	//
9271	// HyperParameterTuningJobName is a required field
9272	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
9273
9274	// An array of key-value pairs. You can use tags to categorize your AWS resources
9275	// in different ways, for example, by purpose, owner, or environment. For more
9276	// information, see AWS Tagging Strategies (https://docs.aws.amazon.com/https:/aws.amazon.com/answers/account-management/aws-tagging-strategies/).
9277	//
9278	// Tags that you specify for the tuning job are also added to all training jobs
9279	// that the tuning job launches.
9280	Tags []*Tag `type:"list"`
9281
9282	// The HyperParameterTrainingJobDefinition object that describes the training
9283	// jobs that this tuning job launches, including static hyperparameters, input
9284	// data configuration, output data configuration, resource configuration, and
9285	// stopping condition.
9286	TrainingJobDefinition *HyperParameterTrainingJobDefinition `type:"structure"`
9287
9288	// Specifies the configuration for starting the hyperparameter tuning job using
9289	// one or more previous tuning jobs as a starting point. The results of previous
9290	// tuning jobs are used to inform which combinations of hyperparameters to search
9291	// over in the new tuning job.
9292	//
9293	// All training jobs launched by the new hyperparameter tuning job are evaluated
9294	// by using the objective metric. If you specify IDENTICAL_DATA_AND_ALGORITHM
9295	// as the WarmStartType value for the warm start configuration, the training
9296	// job that performs the best in the new tuning job is compared to the best
9297	// training jobs from the parent tuning jobs. From these, the training job that
9298	// performs the best as measured by the objective metric is returned as the
9299	// overall best training job.
9300	//
9301	// All training jobs launched by parent hyperparameter tuning jobs and the new
9302	// hyperparameter tuning jobs count against the limit of training jobs for the
9303	// tuning job.
9304	WarmStartConfig *HyperParameterTuningJobWarmStartConfig `type:"structure"`
9305}
9306
9307// String returns the string representation
9308func (s CreateHyperParameterTuningJobInput) String() string {
9309	return awsutil.Prettify(s)
9310}
9311
9312// GoString returns the string representation
9313func (s CreateHyperParameterTuningJobInput) GoString() string {
9314	return s.String()
9315}
9316
9317// Validate inspects the fields of the type to determine if they are valid.
9318func (s *CreateHyperParameterTuningJobInput) Validate() error {
9319	invalidParams := request.ErrInvalidParams{Context: "CreateHyperParameterTuningJobInput"}
9320	if s.HyperParameterTuningJobConfig == nil {
9321		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobConfig"))
9322	}
9323	if s.HyperParameterTuningJobName == nil {
9324		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
9325	}
9326	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
9327		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
9328	}
9329	if s.HyperParameterTuningJobConfig != nil {
9330		if err := s.HyperParameterTuningJobConfig.Validate(); err != nil {
9331			invalidParams.AddNested("HyperParameterTuningJobConfig", err.(request.ErrInvalidParams))
9332		}
9333	}
9334	if s.Tags != nil {
9335		for i, v := range s.Tags {
9336			if v == nil {
9337				continue
9338			}
9339			if err := v.Validate(); err != nil {
9340				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9341			}
9342		}
9343	}
9344	if s.TrainingJobDefinition != nil {
9345		if err := s.TrainingJobDefinition.Validate(); err != nil {
9346			invalidParams.AddNested("TrainingJobDefinition", err.(request.ErrInvalidParams))
9347		}
9348	}
9349	if s.WarmStartConfig != nil {
9350		if err := s.WarmStartConfig.Validate(); err != nil {
9351			invalidParams.AddNested("WarmStartConfig", err.(request.ErrInvalidParams))
9352		}
9353	}
9354
9355	if invalidParams.Len() > 0 {
9356		return invalidParams
9357	}
9358	return nil
9359}
9360
9361// SetHyperParameterTuningJobConfig sets the HyperParameterTuningJobConfig field's value.
9362func (s *CreateHyperParameterTuningJobInput) SetHyperParameterTuningJobConfig(v *HyperParameterTuningJobConfig) *CreateHyperParameterTuningJobInput {
9363	s.HyperParameterTuningJobConfig = v
9364	return s
9365}
9366
9367// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
9368func (s *CreateHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *CreateHyperParameterTuningJobInput {
9369	s.HyperParameterTuningJobName = &v
9370	return s
9371}
9372
9373// SetTags sets the Tags field's value.
9374func (s *CreateHyperParameterTuningJobInput) SetTags(v []*Tag) *CreateHyperParameterTuningJobInput {
9375	s.Tags = v
9376	return s
9377}
9378
9379// SetTrainingJobDefinition sets the TrainingJobDefinition field's value.
9380func (s *CreateHyperParameterTuningJobInput) SetTrainingJobDefinition(v *HyperParameterTrainingJobDefinition) *CreateHyperParameterTuningJobInput {
9381	s.TrainingJobDefinition = v
9382	return s
9383}
9384
9385// SetWarmStartConfig sets the WarmStartConfig field's value.
9386func (s *CreateHyperParameterTuningJobInput) SetWarmStartConfig(v *HyperParameterTuningJobWarmStartConfig) *CreateHyperParameterTuningJobInput {
9387	s.WarmStartConfig = v
9388	return s
9389}
9390
9391type CreateHyperParameterTuningJobOutput struct {
9392	_ struct{} `type:"structure"`
9393
9394	// The Amazon Resource Name (ARN) of the tuning job. Amazon SageMaker assigns
9395	// an ARN to a hyperparameter tuning job when you create it.
9396	//
9397	// HyperParameterTuningJobArn is a required field
9398	HyperParameterTuningJobArn *string `type:"string" required:"true"`
9399}
9400
9401// String returns the string representation
9402func (s CreateHyperParameterTuningJobOutput) String() string {
9403	return awsutil.Prettify(s)
9404}
9405
9406// GoString returns the string representation
9407func (s CreateHyperParameterTuningJobOutput) GoString() string {
9408	return s.String()
9409}
9410
9411// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
9412func (s *CreateHyperParameterTuningJobOutput) SetHyperParameterTuningJobArn(v string) *CreateHyperParameterTuningJobOutput {
9413	s.HyperParameterTuningJobArn = &v
9414	return s
9415}
9416
9417type CreateLabelingJobInput struct {
9418	_ struct{} `type:"structure"`
9419
9420	// Configures the information required for human workers to complete a labeling
9421	// task.
9422	//
9423	// HumanTaskConfig is a required field
9424	HumanTaskConfig *HumanTaskConfig `type:"structure" required:"true"`
9425
9426	// Input data for the labeling job, such as the Amazon S3 location of the data
9427	// objects and the location of the manifest file that describes the data objects.
9428	//
9429	// InputConfig is a required field
9430	InputConfig *LabelingJobInputConfig `type:"structure" required:"true"`
9431
9432	// The attribute name to use for the label in the output manifest file. This
9433	// is the key for the key/value pair formed with the label that a worker assigns
9434	// to the object. The name can't end with "-metadata". If you are running a
9435	// semantic segmentation labeling job, the attribute name must end with "-ref".
9436	// If you are running any other kind of labeling job, the attribute name must
9437	// not end with "-ref".
9438	//
9439	// LabelAttributeName is a required field
9440	LabelAttributeName *string `min:"1" type:"string" required:"true"`
9441
9442	// The S3 URL of the file that defines the categories used to label the data
9443	// objects.
9444	//
9445	// The file is a JSON structure in the following format:
9446	//
9447	// {
9448	//
9449	// "document-version": "2018-11-28"
9450	//
9451	// "labels": [
9452	//
9453	// {
9454	//
9455	// "label": "label 1"
9456	//
9457	// },
9458	//
9459	// {
9460	//
9461	// "label": "label 2"
9462	//
9463	// },
9464	//
9465	// ...
9466	//
9467	// {
9468	//
9469	// "label": "label n"
9470	//
9471	// }
9472	//
9473	// ]
9474	//
9475	// }
9476	LabelCategoryConfigS3Uri *string `type:"string"`
9477
9478	// Configures the information required to perform automated data labeling.
9479	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig `type:"structure"`
9480
9481	// The name of the labeling job. This name is used to identify the job in a
9482	// list of labeling jobs.
9483	//
9484	// LabelingJobName is a required field
9485	LabelingJobName *string `min:"1" type:"string" required:"true"`
9486
9487	// The location of the output data and the AWS Key Management Service key ID
9488	// for the key used to encrypt the output data, if any.
9489	//
9490	// OutputConfig is a required field
9491	OutputConfig *LabelingJobOutputConfig `type:"structure" required:"true"`
9492
9493	// The Amazon Resource Number (ARN) that Amazon SageMaker assumes to perform
9494	// tasks on your behalf during data labeling. You must grant this role the necessary
9495	// permissions so that Amazon SageMaker can successfully complete data labeling.
9496	//
9497	// RoleArn is a required field
9498	RoleArn *string `min:"20" type:"string" required:"true"`
9499
9500	// A set of conditions for stopping the labeling job. If any of the conditions
9501	// are met, the job is automatically stopped. You can use these conditions to
9502	// control the cost of data labeling.
9503	StoppingConditions *LabelingJobStoppingConditions `type:"structure"`
9504
9505	// An array of key/value pairs. For more information, see Using Cost Allocation
9506	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9507	// in the AWS Billing and Cost Management User Guide.
9508	Tags []*Tag `type:"list"`
9509}
9510
9511// String returns the string representation
9512func (s CreateLabelingJobInput) String() string {
9513	return awsutil.Prettify(s)
9514}
9515
9516// GoString returns the string representation
9517func (s CreateLabelingJobInput) GoString() string {
9518	return s.String()
9519}
9520
9521// Validate inspects the fields of the type to determine if they are valid.
9522func (s *CreateLabelingJobInput) Validate() error {
9523	invalidParams := request.ErrInvalidParams{Context: "CreateLabelingJobInput"}
9524	if s.HumanTaskConfig == nil {
9525		invalidParams.Add(request.NewErrParamRequired("HumanTaskConfig"))
9526	}
9527	if s.InputConfig == nil {
9528		invalidParams.Add(request.NewErrParamRequired("InputConfig"))
9529	}
9530	if s.LabelAttributeName == nil {
9531		invalidParams.Add(request.NewErrParamRequired("LabelAttributeName"))
9532	}
9533	if s.LabelAttributeName != nil && len(*s.LabelAttributeName) < 1 {
9534		invalidParams.Add(request.NewErrParamMinLen("LabelAttributeName", 1))
9535	}
9536	if s.LabelingJobName == nil {
9537		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
9538	}
9539	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
9540		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
9541	}
9542	if s.OutputConfig == nil {
9543		invalidParams.Add(request.NewErrParamRequired("OutputConfig"))
9544	}
9545	if s.RoleArn == nil {
9546		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
9547	}
9548	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
9549		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
9550	}
9551	if s.HumanTaskConfig != nil {
9552		if err := s.HumanTaskConfig.Validate(); err != nil {
9553			invalidParams.AddNested("HumanTaskConfig", err.(request.ErrInvalidParams))
9554		}
9555	}
9556	if s.InputConfig != nil {
9557		if err := s.InputConfig.Validate(); err != nil {
9558			invalidParams.AddNested("InputConfig", err.(request.ErrInvalidParams))
9559		}
9560	}
9561	if s.LabelingJobAlgorithmsConfig != nil {
9562		if err := s.LabelingJobAlgorithmsConfig.Validate(); err != nil {
9563			invalidParams.AddNested("LabelingJobAlgorithmsConfig", err.(request.ErrInvalidParams))
9564		}
9565	}
9566	if s.OutputConfig != nil {
9567		if err := s.OutputConfig.Validate(); err != nil {
9568			invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams))
9569		}
9570	}
9571	if s.StoppingConditions != nil {
9572		if err := s.StoppingConditions.Validate(); err != nil {
9573			invalidParams.AddNested("StoppingConditions", err.(request.ErrInvalidParams))
9574		}
9575	}
9576	if s.Tags != nil {
9577		for i, v := range s.Tags {
9578			if v == nil {
9579				continue
9580			}
9581			if err := v.Validate(); err != nil {
9582				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9583			}
9584		}
9585	}
9586
9587	if invalidParams.Len() > 0 {
9588		return invalidParams
9589	}
9590	return nil
9591}
9592
9593// SetHumanTaskConfig sets the HumanTaskConfig field's value.
9594func (s *CreateLabelingJobInput) SetHumanTaskConfig(v *HumanTaskConfig) *CreateLabelingJobInput {
9595	s.HumanTaskConfig = v
9596	return s
9597}
9598
9599// SetInputConfig sets the InputConfig field's value.
9600func (s *CreateLabelingJobInput) SetInputConfig(v *LabelingJobInputConfig) *CreateLabelingJobInput {
9601	s.InputConfig = v
9602	return s
9603}
9604
9605// SetLabelAttributeName sets the LabelAttributeName field's value.
9606func (s *CreateLabelingJobInput) SetLabelAttributeName(v string) *CreateLabelingJobInput {
9607	s.LabelAttributeName = &v
9608	return s
9609}
9610
9611// SetLabelCategoryConfigS3Uri sets the LabelCategoryConfigS3Uri field's value.
9612func (s *CreateLabelingJobInput) SetLabelCategoryConfigS3Uri(v string) *CreateLabelingJobInput {
9613	s.LabelCategoryConfigS3Uri = &v
9614	return s
9615}
9616
9617// SetLabelingJobAlgorithmsConfig sets the LabelingJobAlgorithmsConfig field's value.
9618func (s *CreateLabelingJobInput) SetLabelingJobAlgorithmsConfig(v *LabelingJobAlgorithmsConfig) *CreateLabelingJobInput {
9619	s.LabelingJobAlgorithmsConfig = v
9620	return s
9621}
9622
9623// SetLabelingJobName sets the LabelingJobName field's value.
9624func (s *CreateLabelingJobInput) SetLabelingJobName(v string) *CreateLabelingJobInput {
9625	s.LabelingJobName = &v
9626	return s
9627}
9628
9629// SetOutputConfig sets the OutputConfig field's value.
9630func (s *CreateLabelingJobInput) SetOutputConfig(v *LabelingJobOutputConfig) *CreateLabelingJobInput {
9631	s.OutputConfig = v
9632	return s
9633}
9634
9635// SetRoleArn sets the RoleArn field's value.
9636func (s *CreateLabelingJobInput) SetRoleArn(v string) *CreateLabelingJobInput {
9637	s.RoleArn = &v
9638	return s
9639}
9640
9641// SetStoppingConditions sets the StoppingConditions field's value.
9642func (s *CreateLabelingJobInput) SetStoppingConditions(v *LabelingJobStoppingConditions) *CreateLabelingJobInput {
9643	s.StoppingConditions = v
9644	return s
9645}
9646
9647// SetTags sets the Tags field's value.
9648func (s *CreateLabelingJobInput) SetTags(v []*Tag) *CreateLabelingJobInput {
9649	s.Tags = v
9650	return s
9651}
9652
9653type CreateLabelingJobOutput struct {
9654	_ struct{} `type:"structure"`
9655
9656	// The Amazon Resource Name (ARN) of the labeling job. You use this ARN to identify
9657	// the labeling job.
9658	//
9659	// LabelingJobArn is a required field
9660	LabelingJobArn *string `type:"string" required:"true"`
9661}
9662
9663// String returns the string representation
9664func (s CreateLabelingJobOutput) String() string {
9665	return awsutil.Prettify(s)
9666}
9667
9668// GoString returns the string representation
9669func (s CreateLabelingJobOutput) GoString() string {
9670	return s.String()
9671}
9672
9673// SetLabelingJobArn sets the LabelingJobArn field's value.
9674func (s *CreateLabelingJobOutput) SetLabelingJobArn(v string) *CreateLabelingJobOutput {
9675	s.LabelingJobArn = &v
9676	return s
9677}
9678
9679type CreateModelInput struct {
9680	_ struct{} `type:"structure"`
9681
9682	// Specifies the containers in the inference pipeline.
9683	Containers []*ContainerDefinition `type:"list"`
9684
9685	// Isolates the model container. No inbound or outbound network calls can be
9686	// made to or from the model container.
9687	//
9688	// The Semantic Segmentation built-in algorithm does not support network isolation.
9689	EnableNetworkIsolation *bool `type:"boolean"`
9690
9691	// The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker can
9692	// assume to access model artifacts and docker image for deployment on ML compute
9693	// instances or for batch transform jobs. Deploying on ML compute instances
9694	// is part of model hosting. For more information, see Amazon SageMaker Roles
9695	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
9696	//
9697	// To be able to pass this role to Amazon SageMaker, the caller of this API
9698	// must have the iam:PassRole permission.
9699	//
9700	// ExecutionRoleArn is a required field
9701	ExecutionRoleArn *string `min:"20" type:"string" required:"true"`
9702
9703	// The name of the new model.
9704	//
9705	// ModelName is a required field
9706	ModelName *string `type:"string" required:"true"`
9707
9708	// The location of the primary docker image containing inference code, associated
9709	// artifacts, and custom environment map that the inference code uses when the
9710	// model is deployed for predictions.
9711	PrimaryContainer *ContainerDefinition `type:"structure"`
9712
9713	// An array of key-value pairs. For more information, see Using Cost Allocation
9714	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
9715	// in the AWS Billing and Cost Management User Guide.
9716	Tags []*Tag `type:"list"`
9717
9718	// A VpcConfig (https://docs.aws.amazon.com/sagemaker/latest/dg/API_VpcConfig.html)
9719	// object that specifies the VPC that you want your model to connect to. Control
9720	// access to and from your model container by configuring the VPC. VpcConfig
9721	// is used in hosting services and in batch transform. For more information,
9722	// see Protect Endpoints by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
9723	// and Protect Data in Batch Transform Jobs by Using an Amazon Virtual Private
9724	// Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html).
9725	VpcConfig *VpcConfig `type:"structure"`
9726}
9727
9728// String returns the string representation
9729func (s CreateModelInput) String() string {
9730	return awsutil.Prettify(s)
9731}
9732
9733// GoString returns the string representation
9734func (s CreateModelInput) GoString() string {
9735	return s.String()
9736}
9737
9738// Validate inspects the fields of the type to determine if they are valid.
9739func (s *CreateModelInput) Validate() error {
9740	invalidParams := request.ErrInvalidParams{Context: "CreateModelInput"}
9741	if s.ExecutionRoleArn == nil {
9742		invalidParams.Add(request.NewErrParamRequired("ExecutionRoleArn"))
9743	}
9744	if s.ExecutionRoleArn != nil && len(*s.ExecutionRoleArn) < 20 {
9745		invalidParams.Add(request.NewErrParamMinLen("ExecutionRoleArn", 20))
9746	}
9747	if s.ModelName == nil {
9748		invalidParams.Add(request.NewErrParamRequired("ModelName"))
9749	}
9750	if s.Containers != nil {
9751		for i, v := range s.Containers {
9752			if v == nil {
9753				continue
9754			}
9755			if err := v.Validate(); err != nil {
9756				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Containers", i), err.(request.ErrInvalidParams))
9757			}
9758		}
9759	}
9760	if s.PrimaryContainer != nil {
9761		if err := s.PrimaryContainer.Validate(); err != nil {
9762			invalidParams.AddNested("PrimaryContainer", err.(request.ErrInvalidParams))
9763		}
9764	}
9765	if s.Tags != nil {
9766		for i, v := range s.Tags {
9767			if v == nil {
9768				continue
9769			}
9770			if err := v.Validate(); err != nil {
9771				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
9772			}
9773		}
9774	}
9775	if s.VpcConfig != nil {
9776		if err := s.VpcConfig.Validate(); err != nil {
9777			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
9778		}
9779	}
9780
9781	if invalidParams.Len() > 0 {
9782		return invalidParams
9783	}
9784	return nil
9785}
9786
9787// SetContainers sets the Containers field's value.
9788func (s *CreateModelInput) SetContainers(v []*ContainerDefinition) *CreateModelInput {
9789	s.Containers = v
9790	return s
9791}
9792
9793// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
9794func (s *CreateModelInput) SetEnableNetworkIsolation(v bool) *CreateModelInput {
9795	s.EnableNetworkIsolation = &v
9796	return s
9797}
9798
9799// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
9800func (s *CreateModelInput) SetExecutionRoleArn(v string) *CreateModelInput {
9801	s.ExecutionRoleArn = &v
9802	return s
9803}
9804
9805// SetModelName sets the ModelName field's value.
9806func (s *CreateModelInput) SetModelName(v string) *CreateModelInput {
9807	s.ModelName = &v
9808	return s
9809}
9810
9811// SetPrimaryContainer sets the PrimaryContainer field's value.
9812func (s *CreateModelInput) SetPrimaryContainer(v *ContainerDefinition) *CreateModelInput {
9813	s.PrimaryContainer = v
9814	return s
9815}
9816
9817// SetTags sets the Tags field's value.
9818func (s *CreateModelInput) SetTags(v []*Tag) *CreateModelInput {
9819	s.Tags = v
9820	return s
9821}
9822
9823// SetVpcConfig sets the VpcConfig field's value.
9824func (s *CreateModelInput) SetVpcConfig(v *VpcConfig) *CreateModelInput {
9825	s.VpcConfig = v
9826	return s
9827}
9828
9829type CreateModelOutput struct {
9830	_ struct{} `type:"structure"`
9831
9832	// The ARN of the model created in Amazon SageMaker.
9833	//
9834	// ModelArn is a required field
9835	ModelArn *string `min:"20" type:"string" required:"true"`
9836}
9837
9838// String returns the string representation
9839func (s CreateModelOutput) String() string {
9840	return awsutil.Prettify(s)
9841}
9842
9843// GoString returns the string representation
9844func (s CreateModelOutput) GoString() string {
9845	return s.String()
9846}
9847
9848// SetModelArn sets the ModelArn field's value.
9849func (s *CreateModelOutput) SetModelArn(v string) *CreateModelOutput {
9850	s.ModelArn = &v
9851	return s
9852}
9853
9854type CreateModelPackageInput struct {
9855	_ struct{} `type:"structure"`
9856
9857	// Whether to certify the model package for listing on AWS Marketplace.
9858	CertifyForMarketplace *bool `type:"boolean"`
9859
9860	// Specifies details about inference jobs that can be run with models based
9861	// on this model package, including the following:
9862	//
9863	//    * The Amazon ECR paths of containers that contain the inference code and
9864	//    model artifacts.
9865	//
9866	//    * The instance types that the model package supports for transform jobs
9867	//    and real-time endpoints used for inference.
9868	//
9869	//    * The input and output content formats that the model package supports
9870	//    for inference.
9871	InferenceSpecification *InferenceSpecification `type:"structure"`
9872
9873	// A description of the model package.
9874	ModelPackageDescription *string `type:"string"`
9875
9876	// The name of the model package. The name must have 1 to 63 characters. Valid
9877	// characters are a-z, A-Z, 0-9, and - (hyphen).
9878	//
9879	// ModelPackageName is a required field
9880	ModelPackageName *string `min:"1" type:"string" required:"true"`
9881
9882	// Details about the algorithm that was used to create the model package.
9883	SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"`
9884
9885	// Specifies configurations for one or more transform jobs that Amazon SageMaker
9886	// runs to test the model package.
9887	ValidationSpecification *ModelPackageValidationSpecification `type:"structure"`
9888}
9889
9890// String returns the string representation
9891func (s CreateModelPackageInput) String() string {
9892	return awsutil.Prettify(s)
9893}
9894
9895// GoString returns the string representation
9896func (s CreateModelPackageInput) GoString() string {
9897	return s.String()
9898}
9899
9900// Validate inspects the fields of the type to determine if they are valid.
9901func (s *CreateModelPackageInput) Validate() error {
9902	invalidParams := request.ErrInvalidParams{Context: "CreateModelPackageInput"}
9903	if s.ModelPackageName == nil {
9904		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
9905	}
9906	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
9907		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
9908	}
9909	if s.InferenceSpecification != nil {
9910		if err := s.InferenceSpecification.Validate(); err != nil {
9911			invalidParams.AddNested("InferenceSpecification", err.(request.ErrInvalidParams))
9912		}
9913	}
9914	if s.SourceAlgorithmSpecification != nil {
9915		if err := s.SourceAlgorithmSpecification.Validate(); err != nil {
9916			invalidParams.AddNested("SourceAlgorithmSpecification", err.(request.ErrInvalidParams))
9917		}
9918	}
9919	if s.ValidationSpecification != nil {
9920		if err := s.ValidationSpecification.Validate(); err != nil {
9921			invalidParams.AddNested("ValidationSpecification", err.(request.ErrInvalidParams))
9922		}
9923	}
9924
9925	if invalidParams.Len() > 0 {
9926		return invalidParams
9927	}
9928	return nil
9929}
9930
9931// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
9932func (s *CreateModelPackageInput) SetCertifyForMarketplace(v bool) *CreateModelPackageInput {
9933	s.CertifyForMarketplace = &v
9934	return s
9935}
9936
9937// SetInferenceSpecification sets the InferenceSpecification field's value.
9938func (s *CreateModelPackageInput) SetInferenceSpecification(v *InferenceSpecification) *CreateModelPackageInput {
9939	s.InferenceSpecification = v
9940	return s
9941}
9942
9943// SetModelPackageDescription sets the ModelPackageDescription field's value.
9944func (s *CreateModelPackageInput) SetModelPackageDescription(v string) *CreateModelPackageInput {
9945	s.ModelPackageDescription = &v
9946	return s
9947}
9948
9949// SetModelPackageName sets the ModelPackageName field's value.
9950func (s *CreateModelPackageInput) SetModelPackageName(v string) *CreateModelPackageInput {
9951	s.ModelPackageName = &v
9952	return s
9953}
9954
9955// SetSourceAlgorithmSpecification sets the SourceAlgorithmSpecification field's value.
9956func (s *CreateModelPackageInput) SetSourceAlgorithmSpecification(v *SourceAlgorithmSpecification) *CreateModelPackageInput {
9957	s.SourceAlgorithmSpecification = v
9958	return s
9959}
9960
9961// SetValidationSpecification sets the ValidationSpecification field's value.
9962func (s *CreateModelPackageInput) SetValidationSpecification(v *ModelPackageValidationSpecification) *CreateModelPackageInput {
9963	s.ValidationSpecification = v
9964	return s
9965}
9966
9967type CreateModelPackageOutput struct {
9968	_ struct{} `type:"structure"`
9969
9970	// The Amazon Resource Name (ARN) of the new model package.
9971	//
9972	// ModelPackageArn is a required field
9973	ModelPackageArn *string `min:"1" type:"string" required:"true"`
9974}
9975
9976// String returns the string representation
9977func (s CreateModelPackageOutput) String() string {
9978	return awsutil.Prettify(s)
9979}
9980
9981// GoString returns the string representation
9982func (s CreateModelPackageOutput) GoString() string {
9983	return s.String()
9984}
9985
9986// SetModelPackageArn sets the ModelPackageArn field's value.
9987func (s *CreateModelPackageOutput) SetModelPackageArn(v string) *CreateModelPackageOutput {
9988	s.ModelPackageArn = &v
9989	return s
9990}
9991
9992type CreateNotebookInstanceInput struct {
9993	_ struct{} `type:"structure"`
9994
9995	// A list of Elastic Inference (EI) instance types to associate with this notebook
9996	// instance. Currently, only one instance type can be associated with a notebook
9997	// instance. For more information, see Using Elastic Inference in Amazon SageMaker
9998	// (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html).
9999	AcceleratorTypes []*string `type:"list"`
10000
10001	// An array of up to three Git repositories to associate with the notebook instance.
10002	// These can be either the names of Git repositories stored as resources in
10003	// your account, or the URL of Git repositories in AWS CodeCommit (codecommit/latest/userguide/welcome.html)
10004	// or in any other Git repository. These repositories are cloned at the same
10005	// level as the default repository of your notebook instance. For more information,
10006	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
10007	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
10008	AdditionalCodeRepositories []*string `type:"list"`
10009
10010	// A Git repository to associate with the notebook instance as its default code
10011	// repository. This can be either the name of a Git repository stored as a resource
10012	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
10013	// or in any other Git repository. When you open a notebook instance, it opens
10014	// in the directory that contains this repository. For more information, see
10015	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
10016	DefaultCodeRepository *string `min:"1" type:"string"`
10017
10018	// Sets whether Amazon SageMaker provides internet access to the notebook instance.
10019	// If you set this to Disabled this notebook instance will be able to access
10020	// resources only in your VPC, and will not be able to connect to Amazon SageMaker
10021	// training and endpoint services unless your configure a NAT Gateway in your
10022	// VPC.
10023	//
10024	// For more information, see Notebook Instances Are Internet-Enabled by Default
10025	// (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access).
10026	// You can set the value of this parameter to Disabled only if you set a value
10027	// for the SubnetId parameter.
10028	DirectInternetAccess *string `type:"string" enum:"DirectInternetAccess"`
10029
10030	// The type of ML compute instance to launch for the notebook instance.
10031	//
10032	// InstanceType is a required field
10033	InstanceType *string `type:"string" required:"true" enum:"InstanceType"`
10034
10035	// The Amazon Resource Name (ARN) of a AWS Key Management Service key that Amazon
10036	// SageMaker uses to encrypt data on the storage volume attached to your notebook
10037	// instance. The KMS key you provide must be enabled. For information, see Enabling
10038	// and Disabling Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html)
10039	// in the AWS Key Management Service Developer Guide.
10040	KmsKeyId *string `type:"string"`
10041
10042	// The name of a lifecycle configuration to associate with the notebook instance.
10043	// For information about lifestyle configurations, see Step 2.1: (Optional)
10044	// Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
10045	LifecycleConfigName *string `type:"string"`
10046
10047	// The name of the new notebook instance.
10048	//
10049	// NotebookInstanceName is a required field
10050	NotebookInstanceName *string `type:"string" required:"true"`
10051
10052	// When you send any requests to AWS resources from the notebook instance, Amazon
10053	// SageMaker assumes this role to perform tasks on your behalf. You must grant
10054	// this role necessary permissions so Amazon SageMaker can perform these tasks.
10055	// The policy must allow the Amazon SageMaker service principal (sagemaker.amazonaws.com)
10056	// permissionsto to assume this role. For more information, see Amazon SageMaker
10057	// Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
10058	//
10059	// To be able to pass this role to Amazon SageMaker, the caller of this API
10060	// must have the iam:PassRole permission.
10061	//
10062	// RoleArn is a required field
10063	RoleArn *string `min:"20" type:"string" required:"true"`
10064
10065	// Whether root access is enabled or disabled for users of the notebook instance.
10066	// The default value is Enabled.
10067	//
10068	// Lifecycle configurations need root access to be able to set up a notebook
10069	// instance. Because of this, lifecycle configurations associated with a notebook
10070	// instance always run with root access even if you disable root access for
10071	// users.
10072	RootAccess *string `type:"string" enum:"RootAccess"`
10073
10074	// The VPC security group IDs, in the form sg-xxxxxxxx. The security groups
10075	// must be for the same VPC as specified in the subnet.
10076	SecurityGroupIds []*string `type:"list"`
10077
10078	// The ID of the subnet in a VPC to which you would like to have a connectivity
10079	// from your ML compute instance.
10080	SubnetId *string `type:"string"`
10081
10082	// A list of tags to associate with the notebook instance. You can add tags
10083	// later by using the CreateTags API.
10084	Tags []*Tag `type:"list"`
10085
10086	// The size, in GB, of the ML storage volume to attach to the notebook instance.
10087	// The default value is 5 GB.
10088	VolumeSizeInGB *int64 `min:"5" type:"integer"`
10089}
10090
10091// String returns the string representation
10092func (s CreateNotebookInstanceInput) String() string {
10093	return awsutil.Prettify(s)
10094}
10095
10096// GoString returns the string representation
10097func (s CreateNotebookInstanceInput) GoString() string {
10098	return s.String()
10099}
10100
10101// Validate inspects the fields of the type to determine if they are valid.
10102func (s *CreateNotebookInstanceInput) Validate() error {
10103	invalidParams := request.ErrInvalidParams{Context: "CreateNotebookInstanceInput"}
10104	if s.DefaultCodeRepository != nil && len(*s.DefaultCodeRepository) < 1 {
10105		invalidParams.Add(request.NewErrParamMinLen("DefaultCodeRepository", 1))
10106	}
10107	if s.InstanceType == nil {
10108		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
10109	}
10110	if s.NotebookInstanceName == nil {
10111		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
10112	}
10113	if s.RoleArn == nil {
10114		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
10115	}
10116	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
10117		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
10118	}
10119	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 5 {
10120		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 5))
10121	}
10122	if s.Tags != nil {
10123		for i, v := range s.Tags {
10124			if v == nil {
10125				continue
10126			}
10127			if err := v.Validate(); err != nil {
10128				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10129			}
10130		}
10131	}
10132
10133	if invalidParams.Len() > 0 {
10134		return invalidParams
10135	}
10136	return nil
10137}
10138
10139// SetAcceleratorTypes sets the AcceleratorTypes field's value.
10140func (s *CreateNotebookInstanceInput) SetAcceleratorTypes(v []*string) *CreateNotebookInstanceInput {
10141	s.AcceleratorTypes = v
10142	return s
10143}
10144
10145// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
10146func (s *CreateNotebookInstanceInput) SetAdditionalCodeRepositories(v []*string) *CreateNotebookInstanceInput {
10147	s.AdditionalCodeRepositories = v
10148	return s
10149}
10150
10151// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
10152func (s *CreateNotebookInstanceInput) SetDefaultCodeRepository(v string) *CreateNotebookInstanceInput {
10153	s.DefaultCodeRepository = &v
10154	return s
10155}
10156
10157// SetDirectInternetAccess sets the DirectInternetAccess field's value.
10158func (s *CreateNotebookInstanceInput) SetDirectInternetAccess(v string) *CreateNotebookInstanceInput {
10159	s.DirectInternetAccess = &v
10160	return s
10161}
10162
10163// SetInstanceType sets the InstanceType field's value.
10164func (s *CreateNotebookInstanceInput) SetInstanceType(v string) *CreateNotebookInstanceInput {
10165	s.InstanceType = &v
10166	return s
10167}
10168
10169// SetKmsKeyId sets the KmsKeyId field's value.
10170func (s *CreateNotebookInstanceInput) SetKmsKeyId(v string) *CreateNotebookInstanceInput {
10171	s.KmsKeyId = &v
10172	return s
10173}
10174
10175// SetLifecycleConfigName sets the LifecycleConfigName field's value.
10176func (s *CreateNotebookInstanceInput) SetLifecycleConfigName(v string) *CreateNotebookInstanceInput {
10177	s.LifecycleConfigName = &v
10178	return s
10179}
10180
10181// SetNotebookInstanceName sets the NotebookInstanceName field's value.
10182func (s *CreateNotebookInstanceInput) SetNotebookInstanceName(v string) *CreateNotebookInstanceInput {
10183	s.NotebookInstanceName = &v
10184	return s
10185}
10186
10187// SetRoleArn sets the RoleArn field's value.
10188func (s *CreateNotebookInstanceInput) SetRoleArn(v string) *CreateNotebookInstanceInput {
10189	s.RoleArn = &v
10190	return s
10191}
10192
10193// SetRootAccess sets the RootAccess field's value.
10194func (s *CreateNotebookInstanceInput) SetRootAccess(v string) *CreateNotebookInstanceInput {
10195	s.RootAccess = &v
10196	return s
10197}
10198
10199// SetSecurityGroupIds sets the SecurityGroupIds field's value.
10200func (s *CreateNotebookInstanceInput) SetSecurityGroupIds(v []*string) *CreateNotebookInstanceInput {
10201	s.SecurityGroupIds = v
10202	return s
10203}
10204
10205// SetSubnetId sets the SubnetId field's value.
10206func (s *CreateNotebookInstanceInput) SetSubnetId(v string) *CreateNotebookInstanceInput {
10207	s.SubnetId = &v
10208	return s
10209}
10210
10211// SetTags sets the Tags field's value.
10212func (s *CreateNotebookInstanceInput) SetTags(v []*Tag) *CreateNotebookInstanceInput {
10213	s.Tags = v
10214	return s
10215}
10216
10217// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
10218func (s *CreateNotebookInstanceInput) SetVolumeSizeInGB(v int64) *CreateNotebookInstanceInput {
10219	s.VolumeSizeInGB = &v
10220	return s
10221}
10222
10223type CreateNotebookInstanceLifecycleConfigInput struct {
10224	_ struct{} `type:"structure"`
10225
10226	// The name of the lifecycle configuration.
10227	//
10228	// NotebookInstanceLifecycleConfigName is a required field
10229	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
10230
10231	// A shell script that runs only once, when you create a notebook instance.
10232	// The shell script must be a base64-encoded string.
10233	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
10234
10235	// A shell script that runs every time you start a notebook instance, including
10236	// when you create the notebook instance. The shell script must be a base64-encoded
10237	// string.
10238	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
10239}
10240
10241// String returns the string representation
10242func (s CreateNotebookInstanceLifecycleConfigInput) String() string {
10243	return awsutil.Prettify(s)
10244}
10245
10246// GoString returns the string representation
10247func (s CreateNotebookInstanceLifecycleConfigInput) GoString() string {
10248	return s.String()
10249}
10250
10251// Validate inspects the fields of the type to determine if they are valid.
10252func (s *CreateNotebookInstanceLifecycleConfigInput) Validate() error {
10253	invalidParams := request.ErrInvalidParams{Context: "CreateNotebookInstanceLifecycleConfigInput"}
10254	if s.NotebookInstanceLifecycleConfigName == nil {
10255		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
10256	}
10257	if s.OnCreate != nil {
10258		for i, v := range s.OnCreate {
10259			if v == nil {
10260				continue
10261			}
10262			if err := v.Validate(); err != nil {
10263				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnCreate", i), err.(request.ErrInvalidParams))
10264			}
10265		}
10266	}
10267	if s.OnStart != nil {
10268		for i, v := range s.OnStart {
10269			if v == nil {
10270				continue
10271			}
10272			if err := v.Validate(); err != nil {
10273				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnStart", i), err.(request.ErrInvalidParams))
10274			}
10275		}
10276	}
10277
10278	if invalidParams.Len() > 0 {
10279		return invalidParams
10280	}
10281	return nil
10282}
10283
10284// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
10285func (s *CreateNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *CreateNotebookInstanceLifecycleConfigInput {
10286	s.NotebookInstanceLifecycleConfigName = &v
10287	return s
10288}
10289
10290// SetOnCreate sets the OnCreate field's value.
10291func (s *CreateNotebookInstanceLifecycleConfigInput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *CreateNotebookInstanceLifecycleConfigInput {
10292	s.OnCreate = v
10293	return s
10294}
10295
10296// SetOnStart sets the OnStart field's value.
10297func (s *CreateNotebookInstanceLifecycleConfigInput) SetOnStart(v []*NotebookInstanceLifecycleHook) *CreateNotebookInstanceLifecycleConfigInput {
10298	s.OnStart = v
10299	return s
10300}
10301
10302type CreateNotebookInstanceLifecycleConfigOutput struct {
10303	_ struct{} `type:"structure"`
10304
10305	// The Amazon Resource Name (ARN) of the lifecycle configuration.
10306	NotebookInstanceLifecycleConfigArn *string `type:"string"`
10307}
10308
10309// String returns the string representation
10310func (s CreateNotebookInstanceLifecycleConfigOutput) String() string {
10311	return awsutil.Prettify(s)
10312}
10313
10314// GoString returns the string representation
10315func (s CreateNotebookInstanceLifecycleConfigOutput) GoString() string {
10316	return s.String()
10317}
10318
10319// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
10320func (s *CreateNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigArn(v string) *CreateNotebookInstanceLifecycleConfigOutput {
10321	s.NotebookInstanceLifecycleConfigArn = &v
10322	return s
10323}
10324
10325type CreateNotebookInstanceOutput struct {
10326	_ struct{} `type:"structure"`
10327
10328	// The Amazon Resource Name (ARN) of the notebook instance.
10329	NotebookInstanceArn *string `type:"string"`
10330}
10331
10332// String returns the string representation
10333func (s CreateNotebookInstanceOutput) String() string {
10334	return awsutil.Prettify(s)
10335}
10336
10337// GoString returns the string representation
10338func (s CreateNotebookInstanceOutput) GoString() string {
10339	return s.String()
10340}
10341
10342// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
10343func (s *CreateNotebookInstanceOutput) SetNotebookInstanceArn(v string) *CreateNotebookInstanceOutput {
10344	s.NotebookInstanceArn = &v
10345	return s
10346}
10347
10348type CreatePresignedNotebookInstanceUrlInput struct {
10349	_ struct{} `type:"structure"`
10350
10351	// The name of the notebook instance.
10352	//
10353	// NotebookInstanceName is a required field
10354	NotebookInstanceName *string `type:"string" required:"true"`
10355
10356	// The duration of the session, in seconds. The default is 12 hours.
10357	SessionExpirationDurationInSeconds *int64 `min:"1800" type:"integer"`
10358}
10359
10360// String returns the string representation
10361func (s CreatePresignedNotebookInstanceUrlInput) String() string {
10362	return awsutil.Prettify(s)
10363}
10364
10365// GoString returns the string representation
10366func (s CreatePresignedNotebookInstanceUrlInput) GoString() string {
10367	return s.String()
10368}
10369
10370// Validate inspects the fields of the type to determine if they are valid.
10371func (s *CreatePresignedNotebookInstanceUrlInput) Validate() error {
10372	invalidParams := request.ErrInvalidParams{Context: "CreatePresignedNotebookInstanceUrlInput"}
10373	if s.NotebookInstanceName == nil {
10374		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
10375	}
10376	if s.SessionExpirationDurationInSeconds != nil && *s.SessionExpirationDurationInSeconds < 1800 {
10377		invalidParams.Add(request.NewErrParamMinValue("SessionExpirationDurationInSeconds", 1800))
10378	}
10379
10380	if invalidParams.Len() > 0 {
10381		return invalidParams
10382	}
10383	return nil
10384}
10385
10386// SetNotebookInstanceName sets the NotebookInstanceName field's value.
10387func (s *CreatePresignedNotebookInstanceUrlInput) SetNotebookInstanceName(v string) *CreatePresignedNotebookInstanceUrlInput {
10388	s.NotebookInstanceName = &v
10389	return s
10390}
10391
10392// SetSessionExpirationDurationInSeconds sets the SessionExpirationDurationInSeconds field's value.
10393func (s *CreatePresignedNotebookInstanceUrlInput) SetSessionExpirationDurationInSeconds(v int64) *CreatePresignedNotebookInstanceUrlInput {
10394	s.SessionExpirationDurationInSeconds = &v
10395	return s
10396}
10397
10398type CreatePresignedNotebookInstanceUrlOutput struct {
10399	_ struct{} `type:"structure"`
10400
10401	// A JSON object that contains the URL string.
10402	AuthorizedUrl *string `type:"string"`
10403}
10404
10405// String returns the string representation
10406func (s CreatePresignedNotebookInstanceUrlOutput) String() string {
10407	return awsutil.Prettify(s)
10408}
10409
10410// GoString returns the string representation
10411func (s CreatePresignedNotebookInstanceUrlOutput) GoString() string {
10412	return s.String()
10413}
10414
10415// SetAuthorizedUrl sets the AuthorizedUrl field's value.
10416func (s *CreatePresignedNotebookInstanceUrlOutput) SetAuthorizedUrl(v string) *CreatePresignedNotebookInstanceUrlOutput {
10417	s.AuthorizedUrl = &v
10418	return s
10419}
10420
10421type CreateTrainingJobInput struct {
10422	_ struct{} `type:"structure"`
10423
10424	// The registry path of the Docker image that contains the training algorithm
10425	// and algorithm-specific metadata, including the input mode. For more information
10426	// about algorithms provided by Amazon SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
10427	// For information about providing your own algorithms, see Using Your Own Algorithms
10428	// with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
10429	//
10430	// AlgorithmSpecification is a required field
10431	AlgorithmSpecification *AlgorithmSpecification `type:"structure" required:"true"`
10432
10433	// Contains information about the output location for managed spot training
10434	// checkpoint data.
10435	CheckpointConfig *CheckpointConfig `type:"structure"`
10436
10437	// To encrypt all communications between ML compute instances in distributed
10438	// training, choose True. Encryption provides greater security for distributed
10439	// training, but training might take longer. How long it takes depends on the
10440	// amount of communication between compute instances, especially if you use
10441	// a deep learning algorithm in distributed training. For more information,
10442	// see Protect Communications Between ML Compute Instances in a Distributed
10443	// Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html).
10444	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
10445
10446	// To train models using managed spot training, choose True. Managed spot training
10447	// provides a fully managed and scalable infrastructure for training machine
10448	// learning models. this option is useful when training jobs can be interrupted
10449	// and when there is flexibility when the training job is run.
10450	//
10451	// The complete and intermediate results of jobs are stored in an Amazon S3
10452	// bucket, and can be used as a starting point to train models incrementally.
10453	// Amazon SageMaker provides metrics and logs in CloudWatch. They can be used
10454	// to see when managed spot training jobs are running, interrupted, resumed,
10455	// or completed.
10456	EnableManagedSpotTraining *bool `type:"boolean"`
10457
10458	// Isolates the training container. No inbound or outbound network calls can
10459	// be made, except for calls between peers within a training cluster for distributed
10460	// training. If you enable network isolation for training jobs that are configured
10461	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
10462	// artifacts through the specified VPC, but the training container does not
10463	// have network access.
10464	//
10465	// The Semantic Segmentation built-in algorithm does not support network isolation.
10466	EnableNetworkIsolation *bool `type:"boolean"`
10467
10468	// Algorithm-specific parameters that influence the quality of the model. You
10469	// set hyperparameters before you start the learning process. For a list of
10470	// hyperparameters for each training algorithm provided by Amazon SageMaker,
10471	// see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
10472	//
10473	// You can specify a maximum of 100 hyperparameters. Each hyperparameter is
10474	// a key-value pair. Each key and value is limited to 256 characters, as specified
10475	// by the Length Constraint.
10476	HyperParameters map[string]*string `type:"map"`
10477
10478	// An array of Channel objects. Each channel is a named input source. InputDataConfig
10479	// describes the input data and its location.
10480	//
10481	// Algorithms can accept input data from one or more channels. For example,
10482	// an algorithm might have two channels of input data, training_data and validation_data.
10483	// The configuration for each channel provides the S3, EFS, or FSx location
10484	// where the input data is stored. It also provides information about the stored
10485	// data: the MIME type, compression method, and whether the data is wrapped
10486	// in RecordIO format.
10487	//
10488	// Depending on the input mode that the algorithm supports, Amazon SageMaker
10489	// either copies input data files from an S3 bucket to a local directory in
10490	// the Docker container, or makes it available as input streams. For example,
10491	// if you specify an EFS location, input data files will be made available as
10492	// input streams. They do not need to be downloaded.
10493	InputDataConfig []*Channel `min:"1" type:"list"`
10494
10495	// Specifies the path to the S3 location where you want to store model artifacts.
10496	// Amazon SageMaker creates subfolders for the artifacts.
10497	//
10498	// OutputDataConfig is a required field
10499	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
10500
10501	// The resources, including the ML compute instances and ML storage volumes,
10502	// to use for model training.
10503	//
10504	// ML storage volumes store model artifacts and incremental states. Training
10505	// algorithms might also use ML storage volumes for scratch space. If you want
10506	// Amazon SageMaker to use the ML storage volume to store the training data,
10507	// choose File as the TrainingInputMode in the algorithm specification. For
10508	// distributed training algorithms, specify an instance count greater than 1.
10509	//
10510	// ResourceConfig is a required field
10511	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
10512
10513	// The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume
10514	// to perform tasks on your behalf.
10515	//
10516	// During model training, Amazon SageMaker needs your permission to read input
10517	// data from an S3 bucket, download a Docker image that contains training code,
10518	// write model artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs,
10519	// and publish metrics to Amazon CloudWatch. You grant permissions for all of
10520	// these tasks to an IAM role. For more information, see Amazon SageMaker Roles
10521	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
10522	//
10523	// To be able to pass this role to Amazon SageMaker, the caller of this API
10524	// must have the iam:PassRole permission.
10525	//
10526	// RoleArn is a required field
10527	RoleArn *string `min:"20" type:"string" required:"true"`
10528
10529	// Specifies a limit to how long a model training job can run. When the job
10530	// reaches the time limit, Amazon SageMaker ends the training job. Use this
10531	// API to cap model training costs.
10532	//
10533	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
10534	// delays job termination for 120 seconds. Algorithms can use this 120-second
10535	// window to save the model artifacts, so the results of training are not lost.
10536	//
10537	// StoppingCondition is a required field
10538	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
10539
10540	// An array of key-value pairs. For more information, see Using Cost Allocation
10541	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
10542	// in the AWS Billing and Cost Management User Guide.
10543	Tags []*Tag `type:"list"`
10544
10545	// The name of the training job. The name must be unique within an AWS Region
10546	// in an AWS account.
10547	//
10548	// TrainingJobName is a required field
10549	TrainingJobName *string `min:"1" type:"string" required:"true"`
10550
10551	// A VpcConfig object that specifies the VPC that you want your training job
10552	// to connect to. Control access to and from your training container by configuring
10553	// the VPC. For more information, see Protect Training Jobs by Using an Amazon
10554	// Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
10555	VpcConfig *VpcConfig `type:"structure"`
10556}
10557
10558// String returns the string representation
10559func (s CreateTrainingJobInput) String() string {
10560	return awsutil.Prettify(s)
10561}
10562
10563// GoString returns the string representation
10564func (s CreateTrainingJobInput) GoString() string {
10565	return s.String()
10566}
10567
10568// Validate inspects the fields of the type to determine if they are valid.
10569func (s *CreateTrainingJobInput) Validate() error {
10570	invalidParams := request.ErrInvalidParams{Context: "CreateTrainingJobInput"}
10571	if s.AlgorithmSpecification == nil {
10572		invalidParams.Add(request.NewErrParamRequired("AlgorithmSpecification"))
10573	}
10574	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
10575		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
10576	}
10577	if s.OutputDataConfig == nil {
10578		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
10579	}
10580	if s.ResourceConfig == nil {
10581		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
10582	}
10583	if s.RoleArn == nil {
10584		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
10585	}
10586	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
10587		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
10588	}
10589	if s.StoppingCondition == nil {
10590		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
10591	}
10592	if s.TrainingJobName == nil {
10593		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
10594	}
10595	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
10596		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
10597	}
10598	if s.AlgorithmSpecification != nil {
10599		if err := s.AlgorithmSpecification.Validate(); err != nil {
10600			invalidParams.AddNested("AlgorithmSpecification", err.(request.ErrInvalidParams))
10601		}
10602	}
10603	if s.CheckpointConfig != nil {
10604		if err := s.CheckpointConfig.Validate(); err != nil {
10605			invalidParams.AddNested("CheckpointConfig", err.(request.ErrInvalidParams))
10606		}
10607	}
10608	if s.InputDataConfig != nil {
10609		for i, v := range s.InputDataConfig {
10610			if v == nil {
10611				continue
10612			}
10613			if err := v.Validate(); err != nil {
10614				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
10615			}
10616		}
10617	}
10618	if s.OutputDataConfig != nil {
10619		if err := s.OutputDataConfig.Validate(); err != nil {
10620			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
10621		}
10622	}
10623	if s.ResourceConfig != nil {
10624		if err := s.ResourceConfig.Validate(); err != nil {
10625			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
10626		}
10627	}
10628	if s.StoppingCondition != nil {
10629		if err := s.StoppingCondition.Validate(); err != nil {
10630			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
10631		}
10632	}
10633	if s.Tags != nil {
10634		for i, v := range s.Tags {
10635			if v == nil {
10636				continue
10637			}
10638			if err := v.Validate(); err != nil {
10639				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10640			}
10641		}
10642	}
10643	if s.VpcConfig != nil {
10644		if err := s.VpcConfig.Validate(); err != nil {
10645			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
10646		}
10647	}
10648
10649	if invalidParams.Len() > 0 {
10650		return invalidParams
10651	}
10652	return nil
10653}
10654
10655// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
10656func (s *CreateTrainingJobInput) SetAlgorithmSpecification(v *AlgorithmSpecification) *CreateTrainingJobInput {
10657	s.AlgorithmSpecification = v
10658	return s
10659}
10660
10661// SetCheckpointConfig sets the CheckpointConfig field's value.
10662func (s *CreateTrainingJobInput) SetCheckpointConfig(v *CheckpointConfig) *CreateTrainingJobInput {
10663	s.CheckpointConfig = v
10664	return s
10665}
10666
10667// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
10668func (s *CreateTrainingJobInput) SetEnableInterContainerTrafficEncryption(v bool) *CreateTrainingJobInput {
10669	s.EnableInterContainerTrafficEncryption = &v
10670	return s
10671}
10672
10673// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
10674func (s *CreateTrainingJobInput) SetEnableManagedSpotTraining(v bool) *CreateTrainingJobInput {
10675	s.EnableManagedSpotTraining = &v
10676	return s
10677}
10678
10679// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
10680func (s *CreateTrainingJobInput) SetEnableNetworkIsolation(v bool) *CreateTrainingJobInput {
10681	s.EnableNetworkIsolation = &v
10682	return s
10683}
10684
10685// SetHyperParameters sets the HyperParameters field's value.
10686func (s *CreateTrainingJobInput) SetHyperParameters(v map[string]*string) *CreateTrainingJobInput {
10687	s.HyperParameters = v
10688	return s
10689}
10690
10691// SetInputDataConfig sets the InputDataConfig field's value.
10692func (s *CreateTrainingJobInput) SetInputDataConfig(v []*Channel) *CreateTrainingJobInput {
10693	s.InputDataConfig = v
10694	return s
10695}
10696
10697// SetOutputDataConfig sets the OutputDataConfig field's value.
10698func (s *CreateTrainingJobInput) SetOutputDataConfig(v *OutputDataConfig) *CreateTrainingJobInput {
10699	s.OutputDataConfig = v
10700	return s
10701}
10702
10703// SetResourceConfig sets the ResourceConfig field's value.
10704func (s *CreateTrainingJobInput) SetResourceConfig(v *ResourceConfig) *CreateTrainingJobInput {
10705	s.ResourceConfig = v
10706	return s
10707}
10708
10709// SetRoleArn sets the RoleArn field's value.
10710func (s *CreateTrainingJobInput) SetRoleArn(v string) *CreateTrainingJobInput {
10711	s.RoleArn = &v
10712	return s
10713}
10714
10715// SetStoppingCondition sets the StoppingCondition field's value.
10716func (s *CreateTrainingJobInput) SetStoppingCondition(v *StoppingCondition) *CreateTrainingJobInput {
10717	s.StoppingCondition = v
10718	return s
10719}
10720
10721// SetTags sets the Tags field's value.
10722func (s *CreateTrainingJobInput) SetTags(v []*Tag) *CreateTrainingJobInput {
10723	s.Tags = v
10724	return s
10725}
10726
10727// SetTrainingJobName sets the TrainingJobName field's value.
10728func (s *CreateTrainingJobInput) SetTrainingJobName(v string) *CreateTrainingJobInput {
10729	s.TrainingJobName = &v
10730	return s
10731}
10732
10733// SetVpcConfig sets the VpcConfig field's value.
10734func (s *CreateTrainingJobInput) SetVpcConfig(v *VpcConfig) *CreateTrainingJobInput {
10735	s.VpcConfig = v
10736	return s
10737}
10738
10739type CreateTrainingJobOutput struct {
10740	_ struct{} `type:"structure"`
10741
10742	// The Amazon Resource Name (ARN) of the training job.
10743	//
10744	// TrainingJobArn is a required field
10745	TrainingJobArn *string `type:"string" required:"true"`
10746}
10747
10748// String returns the string representation
10749func (s CreateTrainingJobOutput) String() string {
10750	return awsutil.Prettify(s)
10751}
10752
10753// GoString returns the string representation
10754func (s CreateTrainingJobOutput) GoString() string {
10755	return s.String()
10756}
10757
10758// SetTrainingJobArn sets the TrainingJobArn field's value.
10759func (s *CreateTrainingJobOutput) SetTrainingJobArn(v string) *CreateTrainingJobOutput {
10760	s.TrainingJobArn = &v
10761	return s
10762}
10763
10764type CreateTransformJobInput struct {
10765	_ struct{} `type:"structure"`
10766
10767	// Specifies the number of records to include in a mini-batch for an HTTP inference
10768	// request. A record is a single unit of input data that inference can be made
10769	// on. For example, a single line in a CSV file is a record.
10770	//
10771	// To enable the batch strategy, you must set SplitType to Line, RecordIO, or
10772	// TFRecord.
10773	//
10774	// To use only one record when making an HTTP invocation request to a container,
10775	// set BatchStrategy to SingleRecord and SplitType to Line.
10776	//
10777	// To fit as many records in a mini-batch as can fit within the MaxPayloadInMB
10778	// limit, set BatchStrategy to MultiRecord and SplitType to Line.
10779	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
10780
10781	// The data structure used to specify the data to be used for inference in a
10782	// batch transform job and to associate the data that is relevant to the prediction
10783	// results in the output. The input filter provided allows you to exclude input
10784	// data that is not needed for inference in a batch transform job. The output
10785	// filter provided allows you to include input data relevant to interpreting
10786	// the predictions in the output from the job. For more information, see Associate
10787	// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
10788	DataProcessing *DataProcessing `type:"structure"`
10789
10790	// The environment variables to set in the Docker container. We support up to
10791	// 16 key and values entries in the map.
10792	Environment map[string]*string `type:"map"`
10793
10794	// The maximum number of parallel requests that can be sent to each instance
10795	// in a transform job. If MaxConcurrentTransforms is set to 0 or left unset,
10796	// Amazon SageMaker checks the optional execution-parameters to determine the
10797	// optimal settings for your chosen algorithm. If the execution-parameters endpoint
10798	// is not enabled, the default value is 1. For more information on execution-parameters,
10799	// 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).
10800	// For built-in algorithms, you don't need to set a value for MaxConcurrentTransforms.
10801	MaxConcurrentTransforms *int64 `type:"integer"`
10802
10803	// The maximum allowed size of the payload, in MB. A payload is the data portion
10804	// of a record (without metadata). The value in MaxPayloadInMB must be greater
10805	// than, or equal to, the size of a single record. To estimate the size of a
10806	// record in MB, divide the size of your dataset by the number of records. To
10807	// ensure that the records fit within the maximum payload size, we recommend
10808	// using a slightly larger value. The default value is 6 MB.
10809	//
10810	// For cases where the payload might be arbitrarily large and is transmitted
10811	// using HTTP chunked encoding, set the value to 0. This feature works only
10812	// in supported algorithms. Currently, Amazon SageMaker built-in algorithms
10813	// do not support HTTP chunked encoding.
10814	MaxPayloadInMB *int64 `type:"integer"`
10815
10816	// The name of the model that you want to use for the transform job. ModelName
10817	// must be the name of an existing Amazon SageMaker model within an AWS Region
10818	// in an AWS account.
10819	//
10820	// ModelName is a required field
10821	ModelName *string `type:"string" required:"true"`
10822
10823	// (Optional) An array of key-value pairs. For more information, see Using Cost
10824	// Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
10825	// in the AWS Billing and Cost Management User Guide.
10826	Tags []*Tag `type:"list"`
10827
10828	// Describes the input source and the way the transform job consumes it.
10829	//
10830	// TransformInput is a required field
10831	TransformInput *TransformInput `type:"structure" required:"true"`
10832
10833	// The name of the transform job. The name must be unique within an AWS Region
10834	// in an AWS account.
10835	//
10836	// TransformJobName is a required field
10837	TransformJobName *string `min:"1" type:"string" required:"true"`
10838
10839	// Describes the results of the transform job.
10840	//
10841	// TransformOutput is a required field
10842	TransformOutput *TransformOutput `type:"structure" required:"true"`
10843
10844	// Describes the resources, including ML instance types and ML instance count,
10845	// to use for the transform job.
10846	//
10847	// TransformResources is a required field
10848	TransformResources *TransformResources `type:"structure" required:"true"`
10849}
10850
10851// String returns the string representation
10852func (s CreateTransformJobInput) String() string {
10853	return awsutil.Prettify(s)
10854}
10855
10856// GoString returns the string representation
10857func (s CreateTransformJobInput) GoString() string {
10858	return s.String()
10859}
10860
10861// Validate inspects the fields of the type to determine if they are valid.
10862func (s *CreateTransformJobInput) Validate() error {
10863	invalidParams := request.ErrInvalidParams{Context: "CreateTransformJobInput"}
10864	if s.ModelName == nil {
10865		invalidParams.Add(request.NewErrParamRequired("ModelName"))
10866	}
10867	if s.TransformInput == nil {
10868		invalidParams.Add(request.NewErrParamRequired("TransformInput"))
10869	}
10870	if s.TransformJobName == nil {
10871		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
10872	}
10873	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
10874		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
10875	}
10876	if s.TransformOutput == nil {
10877		invalidParams.Add(request.NewErrParamRequired("TransformOutput"))
10878	}
10879	if s.TransformResources == nil {
10880		invalidParams.Add(request.NewErrParamRequired("TransformResources"))
10881	}
10882	if s.Tags != nil {
10883		for i, v := range s.Tags {
10884			if v == nil {
10885				continue
10886			}
10887			if err := v.Validate(); err != nil {
10888				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
10889			}
10890		}
10891	}
10892	if s.TransformInput != nil {
10893		if err := s.TransformInput.Validate(); err != nil {
10894			invalidParams.AddNested("TransformInput", err.(request.ErrInvalidParams))
10895		}
10896	}
10897	if s.TransformOutput != nil {
10898		if err := s.TransformOutput.Validate(); err != nil {
10899			invalidParams.AddNested("TransformOutput", err.(request.ErrInvalidParams))
10900		}
10901	}
10902	if s.TransformResources != nil {
10903		if err := s.TransformResources.Validate(); err != nil {
10904			invalidParams.AddNested("TransformResources", err.(request.ErrInvalidParams))
10905		}
10906	}
10907
10908	if invalidParams.Len() > 0 {
10909		return invalidParams
10910	}
10911	return nil
10912}
10913
10914// SetBatchStrategy sets the BatchStrategy field's value.
10915func (s *CreateTransformJobInput) SetBatchStrategy(v string) *CreateTransformJobInput {
10916	s.BatchStrategy = &v
10917	return s
10918}
10919
10920// SetDataProcessing sets the DataProcessing field's value.
10921func (s *CreateTransformJobInput) SetDataProcessing(v *DataProcessing) *CreateTransformJobInput {
10922	s.DataProcessing = v
10923	return s
10924}
10925
10926// SetEnvironment sets the Environment field's value.
10927func (s *CreateTransformJobInput) SetEnvironment(v map[string]*string) *CreateTransformJobInput {
10928	s.Environment = v
10929	return s
10930}
10931
10932// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
10933func (s *CreateTransformJobInput) SetMaxConcurrentTransforms(v int64) *CreateTransformJobInput {
10934	s.MaxConcurrentTransforms = &v
10935	return s
10936}
10937
10938// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
10939func (s *CreateTransformJobInput) SetMaxPayloadInMB(v int64) *CreateTransformJobInput {
10940	s.MaxPayloadInMB = &v
10941	return s
10942}
10943
10944// SetModelName sets the ModelName field's value.
10945func (s *CreateTransformJobInput) SetModelName(v string) *CreateTransformJobInput {
10946	s.ModelName = &v
10947	return s
10948}
10949
10950// SetTags sets the Tags field's value.
10951func (s *CreateTransformJobInput) SetTags(v []*Tag) *CreateTransformJobInput {
10952	s.Tags = v
10953	return s
10954}
10955
10956// SetTransformInput sets the TransformInput field's value.
10957func (s *CreateTransformJobInput) SetTransformInput(v *TransformInput) *CreateTransformJobInput {
10958	s.TransformInput = v
10959	return s
10960}
10961
10962// SetTransformJobName sets the TransformJobName field's value.
10963func (s *CreateTransformJobInput) SetTransformJobName(v string) *CreateTransformJobInput {
10964	s.TransformJobName = &v
10965	return s
10966}
10967
10968// SetTransformOutput sets the TransformOutput field's value.
10969func (s *CreateTransformJobInput) SetTransformOutput(v *TransformOutput) *CreateTransformJobInput {
10970	s.TransformOutput = v
10971	return s
10972}
10973
10974// SetTransformResources sets the TransformResources field's value.
10975func (s *CreateTransformJobInput) SetTransformResources(v *TransformResources) *CreateTransformJobInput {
10976	s.TransformResources = v
10977	return s
10978}
10979
10980type CreateTransformJobOutput struct {
10981	_ struct{} `type:"structure"`
10982
10983	// The Amazon Resource Name (ARN) of the transform job.
10984	//
10985	// TransformJobArn is a required field
10986	TransformJobArn *string `type:"string" required:"true"`
10987}
10988
10989// String returns the string representation
10990func (s CreateTransformJobOutput) String() string {
10991	return awsutil.Prettify(s)
10992}
10993
10994// GoString returns the string representation
10995func (s CreateTransformJobOutput) GoString() string {
10996	return s.String()
10997}
10998
10999// SetTransformJobArn sets the TransformJobArn field's value.
11000func (s *CreateTransformJobOutput) SetTransformJobArn(v string) *CreateTransformJobOutput {
11001	s.TransformJobArn = &v
11002	return s
11003}
11004
11005type CreateWorkteamInput struct {
11006	_ struct{} `type:"structure"`
11007
11008	// A description of the work team.
11009	//
11010	// Description is a required field
11011	Description *string `min:"1" type:"string" required:"true"`
11012
11013	// A list of MemberDefinition objects that contains objects that identify the
11014	// Amazon Cognito user pool that makes up the work team. For more information,
11015	// see Amazon Cognito User Pools (https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html).
11016	//
11017	// All of the CognitoMemberDefinition objects that make up the member definition
11018	// must have the same ClientId and UserPool values.
11019	//
11020	// MemberDefinitions is a required field
11021	MemberDefinitions []*MemberDefinition `min:"1" type:"list" required:"true"`
11022
11023	// Configures notification of workers regarding available or expiring work items.
11024	NotificationConfiguration *NotificationConfiguration `type:"structure"`
11025
11026	// An array of key-value pairs.
11027	//
11028	// For more information, see Resource Tag (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)
11029	// and Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
11030	// in the AWS Billing and Cost Management User Guide.
11031	Tags []*Tag `type:"list"`
11032
11033	// The name of the work team. Use this name to identify the work team.
11034	//
11035	// WorkteamName is a required field
11036	WorkteamName *string `min:"1" type:"string" required:"true"`
11037}
11038
11039// String returns the string representation
11040func (s CreateWorkteamInput) String() string {
11041	return awsutil.Prettify(s)
11042}
11043
11044// GoString returns the string representation
11045func (s CreateWorkteamInput) GoString() string {
11046	return s.String()
11047}
11048
11049// Validate inspects the fields of the type to determine if they are valid.
11050func (s *CreateWorkteamInput) Validate() error {
11051	invalidParams := request.ErrInvalidParams{Context: "CreateWorkteamInput"}
11052	if s.Description == nil {
11053		invalidParams.Add(request.NewErrParamRequired("Description"))
11054	}
11055	if s.Description != nil && len(*s.Description) < 1 {
11056		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
11057	}
11058	if s.MemberDefinitions == nil {
11059		invalidParams.Add(request.NewErrParamRequired("MemberDefinitions"))
11060	}
11061	if s.MemberDefinitions != nil && len(s.MemberDefinitions) < 1 {
11062		invalidParams.Add(request.NewErrParamMinLen("MemberDefinitions", 1))
11063	}
11064	if s.WorkteamName == nil {
11065		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
11066	}
11067	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
11068		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
11069	}
11070	if s.MemberDefinitions != nil {
11071		for i, v := range s.MemberDefinitions {
11072			if v == nil {
11073				continue
11074			}
11075			if err := v.Validate(); err != nil {
11076				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberDefinitions", i), err.(request.ErrInvalidParams))
11077			}
11078		}
11079	}
11080	if s.Tags != nil {
11081		for i, v := range s.Tags {
11082			if v == nil {
11083				continue
11084			}
11085			if err := v.Validate(); err != nil {
11086				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
11087			}
11088		}
11089	}
11090
11091	if invalidParams.Len() > 0 {
11092		return invalidParams
11093	}
11094	return nil
11095}
11096
11097// SetDescription sets the Description field's value.
11098func (s *CreateWorkteamInput) SetDescription(v string) *CreateWorkteamInput {
11099	s.Description = &v
11100	return s
11101}
11102
11103// SetMemberDefinitions sets the MemberDefinitions field's value.
11104func (s *CreateWorkteamInput) SetMemberDefinitions(v []*MemberDefinition) *CreateWorkteamInput {
11105	s.MemberDefinitions = v
11106	return s
11107}
11108
11109// SetNotificationConfiguration sets the NotificationConfiguration field's value.
11110func (s *CreateWorkteamInput) SetNotificationConfiguration(v *NotificationConfiguration) *CreateWorkteamInput {
11111	s.NotificationConfiguration = v
11112	return s
11113}
11114
11115// SetTags sets the Tags field's value.
11116func (s *CreateWorkteamInput) SetTags(v []*Tag) *CreateWorkteamInput {
11117	s.Tags = v
11118	return s
11119}
11120
11121// SetWorkteamName sets the WorkteamName field's value.
11122func (s *CreateWorkteamInput) SetWorkteamName(v string) *CreateWorkteamInput {
11123	s.WorkteamName = &v
11124	return s
11125}
11126
11127type CreateWorkteamOutput struct {
11128	_ struct{} `type:"structure"`
11129
11130	// The Amazon Resource Name (ARN) of the work team. You can use this ARN to
11131	// identify the work team.
11132	WorkteamArn *string `type:"string"`
11133}
11134
11135// String returns the string representation
11136func (s CreateWorkteamOutput) String() string {
11137	return awsutil.Prettify(s)
11138}
11139
11140// GoString returns the string representation
11141func (s CreateWorkteamOutput) GoString() string {
11142	return s.String()
11143}
11144
11145// SetWorkteamArn sets the WorkteamArn field's value.
11146func (s *CreateWorkteamOutput) SetWorkteamArn(v string) *CreateWorkteamOutput {
11147	s.WorkteamArn = &v
11148	return s
11149}
11150
11151// The data structure used to specify the data to be used for inference in a
11152// batch transform job and to associate the data that is relevant to the prediction
11153// results in the output. The input filter provided allows you to exclude input
11154// data that is not needed for inference in a batch transform job. The output
11155// filter provided allows you to include input data relevant to interpreting
11156// the predictions in the output from the job. For more information, see Associate
11157// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
11158type DataProcessing struct {
11159	_ struct{} `type:"structure"`
11160
11161	// A JSONPath (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html#data-processing-operators)
11162	// expression used to select a portion of the input data to pass to the algorithm.
11163	// Use the InputFilter parameter to exclude fields, such as an ID column, from
11164	// the input. If you want Amazon SageMaker to pass the entire input dataset
11165	// to the algorithm, accept the default value $.
11166	//
11167	// Examples: "$", "$[1:]", "$.features"
11168	InputFilter *string `type:"string"`
11169
11170	// Specifies the source of the data to join with the transformed data. The valid
11171	// values are None and Input The default value is None which specifies not to
11172	// join the input with the transformed data. If you want the batch transform
11173	// job to join the original input data with the transformed data, set JoinSource
11174	// to Input.
11175	//
11176	// For JSON or JSONLines objects, such as a JSON array, Amazon SageMaker adds
11177	// the transformed data to the input JSON object in an attribute called SageMakerOutput.
11178	// The joined result for JSON must be a key-value pair object. If the input
11179	// is not a key-value pair object, Amazon SageMaker creates a new JSON file.
11180	// In the new JSON file, and the input data is stored under the SageMakerInput
11181	// key and the results are stored in SageMakerOutput.
11182	//
11183	// For CSV files, Amazon SageMaker combines the transformed data with the input
11184	// data at the end of the input data and stores it in the output file. The joined
11185	// data has the joined input data followed by the transformed data and the output
11186	// is a CSV file.
11187	JoinSource *string `type:"string" enum:"JoinSource"`
11188
11189	// A JSONPath (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html#data-processing-operators)
11190	// expression used to select a portion of the joined dataset to save in the
11191	// output file for a batch transform job. If you want Amazon SageMaker to store
11192	// the entire input dataset in the output file, leave the default value, $.
11193	// If you specify indexes that aren't within the dimension size of the joined
11194	// dataset, you get an error.
11195	//
11196	// Examples: "$", "$[0,5:]", "$['id','SageMakerOutput']"
11197	OutputFilter *string `type:"string"`
11198}
11199
11200// String returns the string representation
11201func (s DataProcessing) String() string {
11202	return awsutil.Prettify(s)
11203}
11204
11205// GoString returns the string representation
11206func (s DataProcessing) GoString() string {
11207	return s.String()
11208}
11209
11210// SetInputFilter sets the InputFilter field's value.
11211func (s *DataProcessing) SetInputFilter(v string) *DataProcessing {
11212	s.InputFilter = &v
11213	return s
11214}
11215
11216// SetJoinSource sets the JoinSource field's value.
11217func (s *DataProcessing) SetJoinSource(v string) *DataProcessing {
11218	s.JoinSource = &v
11219	return s
11220}
11221
11222// SetOutputFilter sets the OutputFilter field's value.
11223func (s *DataProcessing) SetOutputFilter(v string) *DataProcessing {
11224	s.OutputFilter = &v
11225	return s
11226}
11227
11228// Describes the location of the channel data.
11229type DataSource struct {
11230	_ struct{} `type:"structure"`
11231
11232	// The file system that is associated with a channel.
11233	FileSystemDataSource *FileSystemDataSource `type:"structure"`
11234
11235	// The S3 location of the data source that is associated with a channel.
11236	S3DataSource *S3DataSource `type:"structure"`
11237}
11238
11239// String returns the string representation
11240func (s DataSource) String() string {
11241	return awsutil.Prettify(s)
11242}
11243
11244// GoString returns the string representation
11245func (s DataSource) GoString() string {
11246	return s.String()
11247}
11248
11249// Validate inspects the fields of the type to determine if they are valid.
11250func (s *DataSource) Validate() error {
11251	invalidParams := request.ErrInvalidParams{Context: "DataSource"}
11252	if s.FileSystemDataSource != nil {
11253		if err := s.FileSystemDataSource.Validate(); err != nil {
11254			invalidParams.AddNested("FileSystemDataSource", err.(request.ErrInvalidParams))
11255		}
11256	}
11257	if s.S3DataSource != nil {
11258		if err := s.S3DataSource.Validate(); err != nil {
11259			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
11260		}
11261	}
11262
11263	if invalidParams.Len() > 0 {
11264		return invalidParams
11265	}
11266	return nil
11267}
11268
11269// SetFileSystemDataSource sets the FileSystemDataSource field's value.
11270func (s *DataSource) SetFileSystemDataSource(v *FileSystemDataSource) *DataSource {
11271	s.FileSystemDataSource = v
11272	return s
11273}
11274
11275// SetS3DataSource sets the S3DataSource field's value.
11276func (s *DataSource) SetS3DataSource(v *S3DataSource) *DataSource {
11277	s.S3DataSource = v
11278	return s
11279}
11280
11281type DeleteAlgorithmInput struct {
11282	_ struct{} `type:"structure"`
11283
11284	// The name of the algorithm to delete.
11285	//
11286	// AlgorithmName is a required field
11287	AlgorithmName *string `min:"1" type:"string" required:"true"`
11288}
11289
11290// String returns the string representation
11291func (s DeleteAlgorithmInput) String() string {
11292	return awsutil.Prettify(s)
11293}
11294
11295// GoString returns the string representation
11296func (s DeleteAlgorithmInput) GoString() string {
11297	return s.String()
11298}
11299
11300// Validate inspects the fields of the type to determine if they are valid.
11301func (s *DeleteAlgorithmInput) Validate() error {
11302	invalidParams := request.ErrInvalidParams{Context: "DeleteAlgorithmInput"}
11303	if s.AlgorithmName == nil {
11304		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
11305	}
11306	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
11307		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
11308	}
11309
11310	if invalidParams.Len() > 0 {
11311		return invalidParams
11312	}
11313	return nil
11314}
11315
11316// SetAlgorithmName sets the AlgorithmName field's value.
11317func (s *DeleteAlgorithmInput) SetAlgorithmName(v string) *DeleteAlgorithmInput {
11318	s.AlgorithmName = &v
11319	return s
11320}
11321
11322type DeleteAlgorithmOutput struct {
11323	_ struct{} `type:"structure"`
11324}
11325
11326// String returns the string representation
11327func (s DeleteAlgorithmOutput) String() string {
11328	return awsutil.Prettify(s)
11329}
11330
11331// GoString returns the string representation
11332func (s DeleteAlgorithmOutput) GoString() string {
11333	return s.String()
11334}
11335
11336type DeleteCodeRepositoryInput struct {
11337	_ struct{} `type:"structure"`
11338
11339	// The name of the Git repository to delete.
11340	//
11341	// CodeRepositoryName is a required field
11342	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
11343}
11344
11345// String returns the string representation
11346func (s DeleteCodeRepositoryInput) String() string {
11347	return awsutil.Prettify(s)
11348}
11349
11350// GoString returns the string representation
11351func (s DeleteCodeRepositoryInput) GoString() string {
11352	return s.String()
11353}
11354
11355// Validate inspects the fields of the type to determine if they are valid.
11356func (s *DeleteCodeRepositoryInput) Validate() error {
11357	invalidParams := request.ErrInvalidParams{Context: "DeleteCodeRepositoryInput"}
11358	if s.CodeRepositoryName == nil {
11359		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
11360	}
11361	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
11362		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
11363	}
11364
11365	if invalidParams.Len() > 0 {
11366		return invalidParams
11367	}
11368	return nil
11369}
11370
11371// SetCodeRepositoryName sets the CodeRepositoryName field's value.
11372func (s *DeleteCodeRepositoryInput) SetCodeRepositoryName(v string) *DeleteCodeRepositoryInput {
11373	s.CodeRepositoryName = &v
11374	return s
11375}
11376
11377type DeleteCodeRepositoryOutput struct {
11378	_ struct{} `type:"structure"`
11379}
11380
11381// String returns the string representation
11382func (s DeleteCodeRepositoryOutput) String() string {
11383	return awsutil.Prettify(s)
11384}
11385
11386// GoString returns the string representation
11387func (s DeleteCodeRepositoryOutput) GoString() string {
11388	return s.String()
11389}
11390
11391type DeleteEndpointConfigInput struct {
11392	_ struct{} `type:"structure"`
11393
11394	// The name of the endpoint configuration that you want to delete.
11395	//
11396	// EndpointConfigName is a required field
11397	EndpointConfigName *string `type:"string" required:"true"`
11398}
11399
11400// String returns the string representation
11401func (s DeleteEndpointConfigInput) String() string {
11402	return awsutil.Prettify(s)
11403}
11404
11405// GoString returns the string representation
11406func (s DeleteEndpointConfigInput) GoString() string {
11407	return s.String()
11408}
11409
11410// Validate inspects the fields of the type to determine if they are valid.
11411func (s *DeleteEndpointConfigInput) Validate() error {
11412	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointConfigInput"}
11413	if s.EndpointConfigName == nil {
11414		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
11415	}
11416
11417	if invalidParams.Len() > 0 {
11418		return invalidParams
11419	}
11420	return nil
11421}
11422
11423// SetEndpointConfigName sets the EndpointConfigName field's value.
11424func (s *DeleteEndpointConfigInput) SetEndpointConfigName(v string) *DeleteEndpointConfigInput {
11425	s.EndpointConfigName = &v
11426	return s
11427}
11428
11429type DeleteEndpointConfigOutput struct {
11430	_ struct{} `type:"structure"`
11431}
11432
11433// String returns the string representation
11434func (s DeleteEndpointConfigOutput) String() string {
11435	return awsutil.Prettify(s)
11436}
11437
11438// GoString returns the string representation
11439func (s DeleteEndpointConfigOutput) GoString() string {
11440	return s.String()
11441}
11442
11443type DeleteEndpointInput struct {
11444	_ struct{} `type:"structure"`
11445
11446	// The name of the endpoint that you want to delete.
11447	//
11448	// EndpointName is a required field
11449	EndpointName *string `type:"string" required:"true"`
11450}
11451
11452// String returns the string representation
11453func (s DeleteEndpointInput) String() string {
11454	return awsutil.Prettify(s)
11455}
11456
11457// GoString returns the string representation
11458func (s DeleteEndpointInput) GoString() string {
11459	return s.String()
11460}
11461
11462// Validate inspects the fields of the type to determine if they are valid.
11463func (s *DeleteEndpointInput) Validate() error {
11464	invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointInput"}
11465	if s.EndpointName == nil {
11466		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
11467	}
11468
11469	if invalidParams.Len() > 0 {
11470		return invalidParams
11471	}
11472	return nil
11473}
11474
11475// SetEndpointName sets the EndpointName field's value.
11476func (s *DeleteEndpointInput) SetEndpointName(v string) *DeleteEndpointInput {
11477	s.EndpointName = &v
11478	return s
11479}
11480
11481type DeleteEndpointOutput struct {
11482	_ struct{} `type:"structure"`
11483}
11484
11485// String returns the string representation
11486func (s DeleteEndpointOutput) String() string {
11487	return awsutil.Prettify(s)
11488}
11489
11490// GoString returns the string representation
11491func (s DeleteEndpointOutput) GoString() string {
11492	return s.String()
11493}
11494
11495type DeleteModelInput struct {
11496	_ struct{} `type:"structure"`
11497
11498	// The name of the model to delete.
11499	//
11500	// ModelName is a required field
11501	ModelName *string `type:"string" required:"true"`
11502}
11503
11504// String returns the string representation
11505func (s DeleteModelInput) String() string {
11506	return awsutil.Prettify(s)
11507}
11508
11509// GoString returns the string representation
11510func (s DeleteModelInput) GoString() string {
11511	return s.String()
11512}
11513
11514// Validate inspects the fields of the type to determine if they are valid.
11515func (s *DeleteModelInput) Validate() error {
11516	invalidParams := request.ErrInvalidParams{Context: "DeleteModelInput"}
11517	if s.ModelName == nil {
11518		invalidParams.Add(request.NewErrParamRequired("ModelName"))
11519	}
11520
11521	if invalidParams.Len() > 0 {
11522		return invalidParams
11523	}
11524	return nil
11525}
11526
11527// SetModelName sets the ModelName field's value.
11528func (s *DeleteModelInput) SetModelName(v string) *DeleteModelInput {
11529	s.ModelName = &v
11530	return s
11531}
11532
11533type DeleteModelOutput struct {
11534	_ struct{} `type:"structure"`
11535}
11536
11537// String returns the string representation
11538func (s DeleteModelOutput) String() string {
11539	return awsutil.Prettify(s)
11540}
11541
11542// GoString returns the string representation
11543func (s DeleteModelOutput) GoString() string {
11544	return s.String()
11545}
11546
11547type DeleteModelPackageInput struct {
11548	_ struct{} `type:"structure"`
11549
11550	// The name of the model package. The name must have 1 to 63 characters. Valid
11551	// characters are a-z, A-Z, 0-9, and - (hyphen).
11552	//
11553	// ModelPackageName is a required field
11554	ModelPackageName *string `min:"1" type:"string" required:"true"`
11555}
11556
11557// String returns the string representation
11558func (s DeleteModelPackageInput) String() string {
11559	return awsutil.Prettify(s)
11560}
11561
11562// GoString returns the string representation
11563func (s DeleteModelPackageInput) GoString() string {
11564	return s.String()
11565}
11566
11567// Validate inspects the fields of the type to determine if they are valid.
11568func (s *DeleteModelPackageInput) Validate() error {
11569	invalidParams := request.ErrInvalidParams{Context: "DeleteModelPackageInput"}
11570	if s.ModelPackageName == nil {
11571		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
11572	}
11573	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
11574		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
11575	}
11576
11577	if invalidParams.Len() > 0 {
11578		return invalidParams
11579	}
11580	return nil
11581}
11582
11583// SetModelPackageName sets the ModelPackageName field's value.
11584func (s *DeleteModelPackageInput) SetModelPackageName(v string) *DeleteModelPackageInput {
11585	s.ModelPackageName = &v
11586	return s
11587}
11588
11589type DeleteModelPackageOutput struct {
11590	_ struct{} `type:"structure"`
11591}
11592
11593// String returns the string representation
11594func (s DeleteModelPackageOutput) String() string {
11595	return awsutil.Prettify(s)
11596}
11597
11598// GoString returns the string representation
11599func (s DeleteModelPackageOutput) GoString() string {
11600	return s.String()
11601}
11602
11603type DeleteNotebookInstanceInput struct {
11604	_ struct{} `type:"structure"`
11605
11606	// The name of the Amazon SageMaker notebook instance to delete.
11607	//
11608	// NotebookInstanceName is a required field
11609	NotebookInstanceName *string `type:"string" required:"true"`
11610}
11611
11612// String returns the string representation
11613func (s DeleteNotebookInstanceInput) String() string {
11614	return awsutil.Prettify(s)
11615}
11616
11617// GoString returns the string representation
11618func (s DeleteNotebookInstanceInput) GoString() string {
11619	return s.String()
11620}
11621
11622// Validate inspects the fields of the type to determine if they are valid.
11623func (s *DeleteNotebookInstanceInput) Validate() error {
11624	invalidParams := request.ErrInvalidParams{Context: "DeleteNotebookInstanceInput"}
11625	if s.NotebookInstanceName == nil {
11626		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
11627	}
11628
11629	if invalidParams.Len() > 0 {
11630		return invalidParams
11631	}
11632	return nil
11633}
11634
11635// SetNotebookInstanceName sets the NotebookInstanceName field's value.
11636func (s *DeleteNotebookInstanceInput) SetNotebookInstanceName(v string) *DeleteNotebookInstanceInput {
11637	s.NotebookInstanceName = &v
11638	return s
11639}
11640
11641type DeleteNotebookInstanceLifecycleConfigInput struct {
11642	_ struct{} `type:"structure"`
11643
11644	// The name of the lifecycle configuration to delete.
11645	//
11646	// NotebookInstanceLifecycleConfigName is a required field
11647	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
11648}
11649
11650// String returns the string representation
11651func (s DeleteNotebookInstanceLifecycleConfigInput) String() string {
11652	return awsutil.Prettify(s)
11653}
11654
11655// GoString returns the string representation
11656func (s DeleteNotebookInstanceLifecycleConfigInput) GoString() string {
11657	return s.String()
11658}
11659
11660// Validate inspects the fields of the type to determine if they are valid.
11661func (s *DeleteNotebookInstanceLifecycleConfigInput) Validate() error {
11662	invalidParams := request.ErrInvalidParams{Context: "DeleteNotebookInstanceLifecycleConfigInput"}
11663	if s.NotebookInstanceLifecycleConfigName == nil {
11664		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
11665	}
11666
11667	if invalidParams.Len() > 0 {
11668		return invalidParams
11669	}
11670	return nil
11671}
11672
11673// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
11674func (s *DeleteNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *DeleteNotebookInstanceLifecycleConfigInput {
11675	s.NotebookInstanceLifecycleConfigName = &v
11676	return s
11677}
11678
11679type DeleteNotebookInstanceLifecycleConfigOutput struct {
11680	_ struct{} `type:"structure"`
11681}
11682
11683// String returns the string representation
11684func (s DeleteNotebookInstanceLifecycleConfigOutput) String() string {
11685	return awsutil.Prettify(s)
11686}
11687
11688// GoString returns the string representation
11689func (s DeleteNotebookInstanceLifecycleConfigOutput) GoString() string {
11690	return s.String()
11691}
11692
11693type DeleteNotebookInstanceOutput struct {
11694	_ struct{} `type:"structure"`
11695}
11696
11697// String returns the string representation
11698func (s DeleteNotebookInstanceOutput) String() string {
11699	return awsutil.Prettify(s)
11700}
11701
11702// GoString returns the string representation
11703func (s DeleteNotebookInstanceOutput) GoString() string {
11704	return s.String()
11705}
11706
11707type DeleteTagsInput struct {
11708	_ struct{} `type:"structure"`
11709
11710	// The Amazon Resource Name (ARN) of the resource whose tags you want to delete.
11711	//
11712	// ResourceArn is a required field
11713	ResourceArn *string `type:"string" required:"true"`
11714
11715	// An array or one or more tag keys to delete.
11716	//
11717	// TagKeys is a required field
11718	TagKeys []*string `min:"1" type:"list" required:"true"`
11719}
11720
11721// String returns the string representation
11722func (s DeleteTagsInput) String() string {
11723	return awsutil.Prettify(s)
11724}
11725
11726// GoString returns the string representation
11727func (s DeleteTagsInput) GoString() string {
11728	return s.String()
11729}
11730
11731// Validate inspects the fields of the type to determine if they are valid.
11732func (s *DeleteTagsInput) Validate() error {
11733	invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"}
11734	if s.ResourceArn == nil {
11735		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
11736	}
11737	if s.TagKeys == nil {
11738		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
11739	}
11740	if s.TagKeys != nil && len(s.TagKeys) < 1 {
11741		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
11742	}
11743
11744	if invalidParams.Len() > 0 {
11745		return invalidParams
11746	}
11747	return nil
11748}
11749
11750// SetResourceArn sets the ResourceArn field's value.
11751func (s *DeleteTagsInput) SetResourceArn(v string) *DeleteTagsInput {
11752	s.ResourceArn = &v
11753	return s
11754}
11755
11756// SetTagKeys sets the TagKeys field's value.
11757func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput {
11758	s.TagKeys = v
11759	return s
11760}
11761
11762type DeleteTagsOutput struct {
11763	_ struct{} `type:"structure"`
11764}
11765
11766// String returns the string representation
11767func (s DeleteTagsOutput) String() string {
11768	return awsutil.Prettify(s)
11769}
11770
11771// GoString returns the string representation
11772func (s DeleteTagsOutput) GoString() string {
11773	return s.String()
11774}
11775
11776type DeleteWorkteamInput struct {
11777	_ struct{} `type:"structure"`
11778
11779	// The name of the work team to delete.
11780	//
11781	// WorkteamName is a required field
11782	WorkteamName *string `min:"1" type:"string" required:"true"`
11783}
11784
11785// String returns the string representation
11786func (s DeleteWorkteamInput) String() string {
11787	return awsutil.Prettify(s)
11788}
11789
11790// GoString returns the string representation
11791func (s DeleteWorkteamInput) GoString() string {
11792	return s.String()
11793}
11794
11795// Validate inspects the fields of the type to determine if they are valid.
11796func (s *DeleteWorkteamInput) Validate() error {
11797	invalidParams := request.ErrInvalidParams{Context: "DeleteWorkteamInput"}
11798	if s.WorkteamName == nil {
11799		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
11800	}
11801	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
11802		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
11803	}
11804
11805	if invalidParams.Len() > 0 {
11806		return invalidParams
11807	}
11808	return nil
11809}
11810
11811// SetWorkteamName sets the WorkteamName field's value.
11812func (s *DeleteWorkteamInput) SetWorkteamName(v string) *DeleteWorkteamInput {
11813	s.WorkteamName = &v
11814	return s
11815}
11816
11817type DeleteWorkteamOutput struct {
11818	_ struct{} `type:"structure"`
11819
11820	// Returns true if the work team was successfully deleted; otherwise, returns
11821	// false.
11822	//
11823	// Success is a required field
11824	Success *bool `type:"boolean" required:"true"`
11825}
11826
11827// String returns the string representation
11828func (s DeleteWorkteamOutput) String() string {
11829	return awsutil.Prettify(s)
11830}
11831
11832// GoString returns the string representation
11833func (s DeleteWorkteamOutput) GoString() string {
11834	return s.String()
11835}
11836
11837// SetSuccess sets the Success field's value.
11838func (s *DeleteWorkteamOutput) SetSuccess(v bool) *DeleteWorkteamOutput {
11839	s.Success = &v
11840	return s
11841}
11842
11843// Gets the Amazon EC2 Container Registry path of the docker image of the model
11844// that is hosted in this ProductionVariant.
11845//
11846// If you used the registry/repository[:tag] form to specify the image path
11847// of the primary container when you created the model hosted in this ProductionVariant,
11848// the path resolves to a path of the form registry/repository[@digest]. A digest
11849// is a hash value that identifies a specific version of an image. For information
11850// about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html)
11851// in the Amazon ECR User Guide.
11852type DeployedImage struct {
11853	_ struct{} `type:"structure"`
11854
11855	// The date and time when the image path for the model resolved to the ResolvedImage
11856	ResolutionTime *time.Time `type:"timestamp"`
11857
11858	// The specific digest path of the image hosted in this ProductionVariant.
11859	ResolvedImage *string `type:"string"`
11860
11861	// The image path you specified when you created the model.
11862	SpecifiedImage *string `type:"string"`
11863}
11864
11865// String returns the string representation
11866func (s DeployedImage) String() string {
11867	return awsutil.Prettify(s)
11868}
11869
11870// GoString returns the string representation
11871func (s DeployedImage) GoString() string {
11872	return s.String()
11873}
11874
11875// SetResolutionTime sets the ResolutionTime field's value.
11876func (s *DeployedImage) SetResolutionTime(v time.Time) *DeployedImage {
11877	s.ResolutionTime = &v
11878	return s
11879}
11880
11881// SetResolvedImage sets the ResolvedImage field's value.
11882func (s *DeployedImage) SetResolvedImage(v string) *DeployedImage {
11883	s.ResolvedImage = &v
11884	return s
11885}
11886
11887// SetSpecifiedImage sets the SpecifiedImage field's value.
11888func (s *DeployedImage) SetSpecifiedImage(v string) *DeployedImage {
11889	s.SpecifiedImage = &v
11890	return s
11891}
11892
11893type DescribeAlgorithmInput struct {
11894	_ struct{} `type:"structure"`
11895
11896	// The name of the algorithm to describe.
11897	//
11898	// AlgorithmName is a required field
11899	AlgorithmName *string `min:"1" type:"string" required:"true"`
11900}
11901
11902// String returns the string representation
11903func (s DescribeAlgorithmInput) String() string {
11904	return awsutil.Prettify(s)
11905}
11906
11907// GoString returns the string representation
11908func (s DescribeAlgorithmInput) GoString() string {
11909	return s.String()
11910}
11911
11912// Validate inspects the fields of the type to determine if they are valid.
11913func (s *DescribeAlgorithmInput) Validate() error {
11914	invalidParams := request.ErrInvalidParams{Context: "DescribeAlgorithmInput"}
11915	if s.AlgorithmName == nil {
11916		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
11917	}
11918	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
11919		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
11920	}
11921
11922	if invalidParams.Len() > 0 {
11923		return invalidParams
11924	}
11925	return nil
11926}
11927
11928// SetAlgorithmName sets the AlgorithmName field's value.
11929func (s *DescribeAlgorithmInput) SetAlgorithmName(v string) *DescribeAlgorithmInput {
11930	s.AlgorithmName = &v
11931	return s
11932}
11933
11934type DescribeAlgorithmOutput struct {
11935	_ struct{} `type:"structure"`
11936
11937	// The Amazon Resource Name (ARN) of the algorithm.
11938	//
11939	// AlgorithmArn is a required field
11940	AlgorithmArn *string `min:"1" type:"string" required:"true"`
11941
11942	// A brief summary about the algorithm.
11943	AlgorithmDescription *string `type:"string"`
11944
11945	// The name of the algorithm being described.
11946	//
11947	// AlgorithmName is a required field
11948	AlgorithmName *string `min:"1" type:"string" required:"true"`
11949
11950	// The current status of the algorithm.
11951	//
11952	// AlgorithmStatus is a required field
11953	AlgorithmStatus *string `type:"string" required:"true" enum:"AlgorithmStatus"`
11954
11955	// Details about the current status of the algorithm.
11956	//
11957	// AlgorithmStatusDetails is a required field
11958	AlgorithmStatusDetails *AlgorithmStatusDetails `type:"structure" required:"true"`
11959
11960	// Whether the algorithm is certified to be listed in AWS Marketplace.
11961	CertifyForMarketplace *bool `type:"boolean"`
11962
11963	// A timestamp specifying when the algorithm was created.
11964	//
11965	// CreationTime is a required field
11966	CreationTime *time.Time `type:"timestamp" required:"true"`
11967
11968	// Details about inference jobs that the algorithm runs.
11969	InferenceSpecification *InferenceSpecification `type:"structure"`
11970
11971	// The product identifier of the algorithm.
11972	ProductId *string `type:"string"`
11973
11974	// Details about training jobs run by this algorithm.
11975	//
11976	// TrainingSpecification is a required field
11977	TrainingSpecification *TrainingSpecification `type:"structure" required:"true"`
11978
11979	// Details about configurations for one or more training jobs that Amazon SageMaker
11980	// runs to test the algorithm.
11981	ValidationSpecification *AlgorithmValidationSpecification `type:"structure"`
11982}
11983
11984// String returns the string representation
11985func (s DescribeAlgorithmOutput) String() string {
11986	return awsutil.Prettify(s)
11987}
11988
11989// GoString returns the string representation
11990func (s DescribeAlgorithmOutput) GoString() string {
11991	return s.String()
11992}
11993
11994// SetAlgorithmArn sets the AlgorithmArn field's value.
11995func (s *DescribeAlgorithmOutput) SetAlgorithmArn(v string) *DescribeAlgorithmOutput {
11996	s.AlgorithmArn = &v
11997	return s
11998}
11999
12000// SetAlgorithmDescription sets the AlgorithmDescription field's value.
12001func (s *DescribeAlgorithmOutput) SetAlgorithmDescription(v string) *DescribeAlgorithmOutput {
12002	s.AlgorithmDescription = &v
12003	return s
12004}
12005
12006// SetAlgorithmName sets the AlgorithmName field's value.
12007func (s *DescribeAlgorithmOutput) SetAlgorithmName(v string) *DescribeAlgorithmOutput {
12008	s.AlgorithmName = &v
12009	return s
12010}
12011
12012// SetAlgorithmStatus sets the AlgorithmStatus field's value.
12013func (s *DescribeAlgorithmOutput) SetAlgorithmStatus(v string) *DescribeAlgorithmOutput {
12014	s.AlgorithmStatus = &v
12015	return s
12016}
12017
12018// SetAlgorithmStatusDetails sets the AlgorithmStatusDetails field's value.
12019func (s *DescribeAlgorithmOutput) SetAlgorithmStatusDetails(v *AlgorithmStatusDetails) *DescribeAlgorithmOutput {
12020	s.AlgorithmStatusDetails = v
12021	return s
12022}
12023
12024// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
12025func (s *DescribeAlgorithmOutput) SetCertifyForMarketplace(v bool) *DescribeAlgorithmOutput {
12026	s.CertifyForMarketplace = &v
12027	return s
12028}
12029
12030// SetCreationTime sets the CreationTime field's value.
12031func (s *DescribeAlgorithmOutput) SetCreationTime(v time.Time) *DescribeAlgorithmOutput {
12032	s.CreationTime = &v
12033	return s
12034}
12035
12036// SetInferenceSpecification sets the InferenceSpecification field's value.
12037func (s *DescribeAlgorithmOutput) SetInferenceSpecification(v *InferenceSpecification) *DescribeAlgorithmOutput {
12038	s.InferenceSpecification = v
12039	return s
12040}
12041
12042// SetProductId sets the ProductId field's value.
12043func (s *DescribeAlgorithmOutput) SetProductId(v string) *DescribeAlgorithmOutput {
12044	s.ProductId = &v
12045	return s
12046}
12047
12048// SetTrainingSpecification sets the TrainingSpecification field's value.
12049func (s *DescribeAlgorithmOutput) SetTrainingSpecification(v *TrainingSpecification) *DescribeAlgorithmOutput {
12050	s.TrainingSpecification = v
12051	return s
12052}
12053
12054// SetValidationSpecification sets the ValidationSpecification field's value.
12055func (s *DescribeAlgorithmOutput) SetValidationSpecification(v *AlgorithmValidationSpecification) *DescribeAlgorithmOutput {
12056	s.ValidationSpecification = v
12057	return s
12058}
12059
12060type DescribeCodeRepositoryInput struct {
12061	_ struct{} `type:"structure"`
12062
12063	// The name of the Git repository to describe.
12064	//
12065	// CodeRepositoryName is a required field
12066	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
12067}
12068
12069// String returns the string representation
12070func (s DescribeCodeRepositoryInput) String() string {
12071	return awsutil.Prettify(s)
12072}
12073
12074// GoString returns the string representation
12075func (s DescribeCodeRepositoryInput) GoString() string {
12076	return s.String()
12077}
12078
12079// Validate inspects the fields of the type to determine if they are valid.
12080func (s *DescribeCodeRepositoryInput) Validate() error {
12081	invalidParams := request.ErrInvalidParams{Context: "DescribeCodeRepositoryInput"}
12082	if s.CodeRepositoryName == nil {
12083		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
12084	}
12085	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
12086		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
12087	}
12088
12089	if invalidParams.Len() > 0 {
12090		return invalidParams
12091	}
12092	return nil
12093}
12094
12095// SetCodeRepositoryName sets the CodeRepositoryName field's value.
12096func (s *DescribeCodeRepositoryInput) SetCodeRepositoryName(v string) *DescribeCodeRepositoryInput {
12097	s.CodeRepositoryName = &v
12098	return s
12099}
12100
12101type DescribeCodeRepositoryOutput struct {
12102	_ struct{} `type:"structure"`
12103
12104	// The Amazon Resource Name (ARN) of the Git repository.
12105	//
12106	// CodeRepositoryArn is a required field
12107	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
12108
12109	// The name of the Git repository.
12110	//
12111	// CodeRepositoryName is a required field
12112	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
12113
12114	// The date and time that the repository was created.
12115	//
12116	// CreationTime is a required field
12117	CreationTime *time.Time `type:"timestamp" required:"true"`
12118
12119	// Configuration details about the repository, including the URL where the repository
12120	// is located, the default branch, and the Amazon Resource Name (ARN) of the
12121	// AWS Secrets Manager secret that contains the credentials used to access the
12122	// repository.
12123	GitConfig *GitConfig `type:"structure"`
12124
12125	// The date and time that the repository was last changed.
12126	//
12127	// LastModifiedTime is a required field
12128	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12129}
12130
12131// String returns the string representation
12132func (s DescribeCodeRepositoryOutput) String() string {
12133	return awsutil.Prettify(s)
12134}
12135
12136// GoString returns the string representation
12137func (s DescribeCodeRepositoryOutput) GoString() string {
12138	return s.String()
12139}
12140
12141// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
12142func (s *DescribeCodeRepositoryOutput) SetCodeRepositoryArn(v string) *DescribeCodeRepositoryOutput {
12143	s.CodeRepositoryArn = &v
12144	return s
12145}
12146
12147// SetCodeRepositoryName sets the CodeRepositoryName field's value.
12148func (s *DescribeCodeRepositoryOutput) SetCodeRepositoryName(v string) *DescribeCodeRepositoryOutput {
12149	s.CodeRepositoryName = &v
12150	return s
12151}
12152
12153// SetCreationTime sets the CreationTime field's value.
12154func (s *DescribeCodeRepositoryOutput) SetCreationTime(v time.Time) *DescribeCodeRepositoryOutput {
12155	s.CreationTime = &v
12156	return s
12157}
12158
12159// SetGitConfig sets the GitConfig field's value.
12160func (s *DescribeCodeRepositoryOutput) SetGitConfig(v *GitConfig) *DescribeCodeRepositoryOutput {
12161	s.GitConfig = v
12162	return s
12163}
12164
12165// SetLastModifiedTime sets the LastModifiedTime field's value.
12166func (s *DescribeCodeRepositoryOutput) SetLastModifiedTime(v time.Time) *DescribeCodeRepositoryOutput {
12167	s.LastModifiedTime = &v
12168	return s
12169}
12170
12171type DescribeCompilationJobInput struct {
12172	_ struct{} `type:"structure"`
12173
12174	// The name of the model compilation job that you want information about.
12175	//
12176	// CompilationJobName is a required field
12177	CompilationJobName *string `min:"1" type:"string" required:"true"`
12178}
12179
12180// String returns the string representation
12181func (s DescribeCompilationJobInput) String() string {
12182	return awsutil.Prettify(s)
12183}
12184
12185// GoString returns the string representation
12186func (s DescribeCompilationJobInput) GoString() string {
12187	return s.String()
12188}
12189
12190// Validate inspects the fields of the type to determine if they are valid.
12191func (s *DescribeCompilationJobInput) Validate() error {
12192	invalidParams := request.ErrInvalidParams{Context: "DescribeCompilationJobInput"}
12193	if s.CompilationJobName == nil {
12194		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
12195	}
12196	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
12197		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
12198	}
12199
12200	if invalidParams.Len() > 0 {
12201		return invalidParams
12202	}
12203	return nil
12204}
12205
12206// SetCompilationJobName sets the CompilationJobName field's value.
12207func (s *DescribeCompilationJobInput) SetCompilationJobName(v string) *DescribeCompilationJobInput {
12208	s.CompilationJobName = &v
12209	return s
12210}
12211
12212type DescribeCompilationJobOutput struct {
12213	_ struct{} `type:"structure"`
12214
12215	// The time when the model compilation job on a compilation job instance ended.
12216	// For a successful or stopped job, this is when the job's model artifacts have
12217	// finished uploading. For a failed job, this is when Amazon SageMaker detected
12218	// that the job failed.
12219	CompilationEndTime *time.Time `type:"timestamp"`
12220
12221	// The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker assumes
12222	// to perform the model compilation job.
12223	//
12224	// CompilationJobArn is a required field
12225	CompilationJobArn *string `type:"string" required:"true"`
12226
12227	// The name of the model compilation job.
12228	//
12229	// CompilationJobName is a required field
12230	CompilationJobName *string `min:"1" type:"string" required:"true"`
12231
12232	// The status of the model compilation job.
12233	//
12234	// CompilationJobStatus is a required field
12235	CompilationJobStatus *string `type:"string" required:"true" enum:"CompilationJobStatus"`
12236
12237	// The time when the model compilation job started the CompilationJob instances.
12238	//
12239	// You are billed for the time between this timestamp and the timestamp in the
12240	// DescribeCompilationJobResponse$CompilationEndTime field. In Amazon CloudWatch
12241	// Logs, the start time might be later than this time. That's because it takes
12242	// time to download the compilation job, which depends on the size of the compilation
12243	// job container.
12244	CompilationStartTime *time.Time `type:"timestamp"`
12245
12246	// The time that the model compilation job was created.
12247	//
12248	// CreationTime is a required field
12249	CreationTime *time.Time `type:"timestamp" required:"true"`
12250
12251	// If a model compilation job failed, the reason it failed.
12252	//
12253	// FailureReason is a required field
12254	FailureReason *string `type:"string" required:"true"`
12255
12256	// Information about the location in Amazon S3 of the input model artifacts,
12257	// the name and shape of the expected data inputs, and the framework in which
12258	// the model was trained.
12259	//
12260	// InputConfig is a required field
12261	InputConfig *InputConfig `type:"structure" required:"true"`
12262
12263	// The time that the status of the model compilation job was last modified.
12264	//
12265	// LastModifiedTime is a required field
12266	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12267
12268	// Information about the location in Amazon S3 that has been configured for
12269	// storing the model artifacts used in the compilation job.
12270	//
12271	// ModelArtifacts is a required field
12272	ModelArtifacts *ModelArtifacts `type:"structure" required:"true"`
12273
12274	// Information about the output location for the compiled model and the target
12275	// device that the model runs on.
12276	//
12277	// OutputConfig is a required field
12278	OutputConfig *OutputConfig `type:"structure" required:"true"`
12279
12280	// The Amazon Resource Name (ARN) of the model compilation job.
12281	//
12282	// RoleArn is a required field
12283	RoleArn *string `min:"20" type:"string" required:"true"`
12284
12285	// Specifies a limit to how long a model compilation job can run. When the job
12286	// reaches the time limit, Amazon SageMaker ends the compilation job. Use this
12287	// API to cap model training costs.
12288	//
12289	// StoppingCondition is a required field
12290	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
12291}
12292
12293// String returns the string representation
12294func (s DescribeCompilationJobOutput) String() string {
12295	return awsutil.Prettify(s)
12296}
12297
12298// GoString returns the string representation
12299func (s DescribeCompilationJobOutput) GoString() string {
12300	return s.String()
12301}
12302
12303// SetCompilationEndTime sets the CompilationEndTime field's value.
12304func (s *DescribeCompilationJobOutput) SetCompilationEndTime(v time.Time) *DescribeCompilationJobOutput {
12305	s.CompilationEndTime = &v
12306	return s
12307}
12308
12309// SetCompilationJobArn sets the CompilationJobArn field's value.
12310func (s *DescribeCompilationJobOutput) SetCompilationJobArn(v string) *DescribeCompilationJobOutput {
12311	s.CompilationJobArn = &v
12312	return s
12313}
12314
12315// SetCompilationJobName sets the CompilationJobName field's value.
12316func (s *DescribeCompilationJobOutput) SetCompilationJobName(v string) *DescribeCompilationJobOutput {
12317	s.CompilationJobName = &v
12318	return s
12319}
12320
12321// SetCompilationJobStatus sets the CompilationJobStatus field's value.
12322func (s *DescribeCompilationJobOutput) SetCompilationJobStatus(v string) *DescribeCompilationJobOutput {
12323	s.CompilationJobStatus = &v
12324	return s
12325}
12326
12327// SetCompilationStartTime sets the CompilationStartTime field's value.
12328func (s *DescribeCompilationJobOutput) SetCompilationStartTime(v time.Time) *DescribeCompilationJobOutput {
12329	s.CompilationStartTime = &v
12330	return s
12331}
12332
12333// SetCreationTime sets the CreationTime field's value.
12334func (s *DescribeCompilationJobOutput) SetCreationTime(v time.Time) *DescribeCompilationJobOutput {
12335	s.CreationTime = &v
12336	return s
12337}
12338
12339// SetFailureReason sets the FailureReason field's value.
12340func (s *DescribeCompilationJobOutput) SetFailureReason(v string) *DescribeCompilationJobOutput {
12341	s.FailureReason = &v
12342	return s
12343}
12344
12345// SetInputConfig sets the InputConfig field's value.
12346func (s *DescribeCompilationJobOutput) SetInputConfig(v *InputConfig) *DescribeCompilationJobOutput {
12347	s.InputConfig = v
12348	return s
12349}
12350
12351// SetLastModifiedTime sets the LastModifiedTime field's value.
12352func (s *DescribeCompilationJobOutput) SetLastModifiedTime(v time.Time) *DescribeCompilationJobOutput {
12353	s.LastModifiedTime = &v
12354	return s
12355}
12356
12357// SetModelArtifacts sets the ModelArtifacts field's value.
12358func (s *DescribeCompilationJobOutput) SetModelArtifacts(v *ModelArtifacts) *DescribeCompilationJobOutput {
12359	s.ModelArtifacts = v
12360	return s
12361}
12362
12363// SetOutputConfig sets the OutputConfig field's value.
12364func (s *DescribeCompilationJobOutput) SetOutputConfig(v *OutputConfig) *DescribeCompilationJobOutput {
12365	s.OutputConfig = v
12366	return s
12367}
12368
12369// SetRoleArn sets the RoleArn field's value.
12370func (s *DescribeCompilationJobOutput) SetRoleArn(v string) *DescribeCompilationJobOutput {
12371	s.RoleArn = &v
12372	return s
12373}
12374
12375// SetStoppingCondition sets the StoppingCondition field's value.
12376func (s *DescribeCompilationJobOutput) SetStoppingCondition(v *StoppingCondition) *DescribeCompilationJobOutput {
12377	s.StoppingCondition = v
12378	return s
12379}
12380
12381type DescribeEndpointConfigInput struct {
12382	_ struct{} `type:"structure"`
12383
12384	// The name of the endpoint configuration.
12385	//
12386	// EndpointConfigName is a required field
12387	EndpointConfigName *string `type:"string" required:"true"`
12388}
12389
12390// String returns the string representation
12391func (s DescribeEndpointConfigInput) String() string {
12392	return awsutil.Prettify(s)
12393}
12394
12395// GoString returns the string representation
12396func (s DescribeEndpointConfigInput) GoString() string {
12397	return s.String()
12398}
12399
12400// Validate inspects the fields of the type to determine if they are valid.
12401func (s *DescribeEndpointConfigInput) Validate() error {
12402	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointConfigInput"}
12403	if s.EndpointConfigName == nil {
12404		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
12405	}
12406
12407	if invalidParams.Len() > 0 {
12408		return invalidParams
12409	}
12410	return nil
12411}
12412
12413// SetEndpointConfigName sets the EndpointConfigName field's value.
12414func (s *DescribeEndpointConfigInput) SetEndpointConfigName(v string) *DescribeEndpointConfigInput {
12415	s.EndpointConfigName = &v
12416	return s
12417}
12418
12419type DescribeEndpointConfigOutput struct {
12420	_ struct{} `type:"structure"`
12421
12422	// A timestamp that shows when the endpoint configuration was created.
12423	//
12424	// CreationTime is a required field
12425	CreationTime *time.Time `type:"timestamp" required:"true"`
12426
12427	// The Amazon Resource Name (ARN) of the endpoint configuration.
12428	//
12429	// EndpointConfigArn is a required field
12430	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
12431
12432	// Name of the Amazon SageMaker endpoint configuration.
12433	//
12434	// EndpointConfigName is a required field
12435	EndpointConfigName *string `type:"string" required:"true"`
12436
12437	// AWS KMS key ID Amazon SageMaker uses to encrypt data when storing it on the
12438	// ML storage volume attached to the instance.
12439	KmsKeyId *string `type:"string"`
12440
12441	// An array of ProductionVariant objects, one for each model that you want to
12442	// host at this endpoint.
12443	//
12444	// ProductionVariants is a required field
12445	ProductionVariants []*ProductionVariant `min:"1" type:"list" required:"true"`
12446}
12447
12448// String returns the string representation
12449func (s DescribeEndpointConfigOutput) String() string {
12450	return awsutil.Prettify(s)
12451}
12452
12453// GoString returns the string representation
12454func (s DescribeEndpointConfigOutput) GoString() string {
12455	return s.String()
12456}
12457
12458// SetCreationTime sets the CreationTime field's value.
12459func (s *DescribeEndpointConfigOutput) SetCreationTime(v time.Time) *DescribeEndpointConfigOutput {
12460	s.CreationTime = &v
12461	return s
12462}
12463
12464// SetEndpointConfigArn sets the EndpointConfigArn field's value.
12465func (s *DescribeEndpointConfigOutput) SetEndpointConfigArn(v string) *DescribeEndpointConfigOutput {
12466	s.EndpointConfigArn = &v
12467	return s
12468}
12469
12470// SetEndpointConfigName sets the EndpointConfigName field's value.
12471func (s *DescribeEndpointConfigOutput) SetEndpointConfigName(v string) *DescribeEndpointConfigOutput {
12472	s.EndpointConfigName = &v
12473	return s
12474}
12475
12476// SetKmsKeyId sets the KmsKeyId field's value.
12477func (s *DescribeEndpointConfigOutput) SetKmsKeyId(v string) *DescribeEndpointConfigOutput {
12478	s.KmsKeyId = &v
12479	return s
12480}
12481
12482// SetProductionVariants sets the ProductionVariants field's value.
12483func (s *DescribeEndpointConfigOutput) SetProductionVariants(v []*ProductionVariant) *DescribeEndpointConfigOutput {
12484	s.ProductionVariants = v
12485	return s
12486}
12487
12488type DescribeEndpointInput struct {
12489	_ struct{} `type:"structure"`
12490
12491	// The name of the endpoint.
12492	//
12493	// EndpointName is a required field
12494	EndpointName *string `type:"string" required:"true"`
12495}
12496
12497// String returns the string representation
12498func (s DescribeEndpointInput) String() string {
12499	return awsutil.Prettify(s)
12500}
12501
12502// GoString returns the string representation
12503func (s DescribeEndpointInput) GoString() string {
12504	return s.String()
12505}
12506
12507// Validate inspects the fields of the type to determine if they are valid.
12508func (s *DescribeEndpointInput) Validate() error {
12509	invalidParams := request.ErrInvalidParams{Context: "DescribeEndpointInput"}
12510	if s.EndpointName == nil {
12511		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
12512	}
12513
12514	if invalidParams.Len() > 0 {
12515		return invalidParams
12516	}
12517	return nil
12518}
12519
12520// SetEndpointName sets the EndpointName field's value.
12521func (s *DescribeEndpointInput) SetEndpointName(v string) *DescribeEndpointInput {
12522	s.EndpointName = &v
12523	return s
12524}
12525
12526type DescribeEndpointOutput struct {
12527	_ struct{} `type:"structure"`
12528
12529	// A timestamp that shows when the endpoint was created.
12530	//
12531	// CreationTime is a required field
12532	CreationTime *time.Time `type:"timestamp" required:"true"`
12533
12534	// The Amazon Resource Name (ARN) of the endpoint.
12535	//
12536	// EndpointArn is a required field
12537	EndpointArn *string `min:"20" type:"string" required:"true"`
12538
12539	// The name of the endpoint configuration associated with this endpoint.
12540	//
12541	// EndpointConfigName is a required field
12542	EndpointConfigName *string `type:"string" required:"true"`
12543
12544	// Name of the endpoint.
12545	//
12546	// EndpointName is a required field
12547	EndpointName *string `type:"string" required:"true"`
12548
12549	// The status of the endpoint.
12550	//
12551	//    * OutOfService: Endpoint is not available to take incoming requests.
12552	//
12553	//    * Creating: CreateEndpoint is executing.
12554	//
12555	//    * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing.
12556	//
12557	//    * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated
12558	//    or deleted or re-scaled until it has completed. This maintenance operation
12559	//    does not change any customer-specified values such as VPC config, KMS
12560	//    encryption, model, instance type, or instance count.
12561	//
12562	//    * RollingBack: Endpoint fails to scale up or down or change its variant
12563	//    weight and is in the process of rolling back to its previous configuration.
12564	//    Once the rollback completes, endpoint returns to an InService status.
12565	//    This transitional status only applies to an endpoint that has autoscaling
12566	//    enabled and is undergoing variant weight or capacity changes as part of
12567	//    an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities
12568	//    operation is called explicitly.
12569	//
12570	//    * InService: Endpoint is available to process incoming requests.
12571	//
12572	//    * Deleting: DeleteEndpoint is executing.
12573	//
12574	//    * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason
12575	//    for information about the failure. DeleteEndpoint is the only operation
12576	//    that can be performed on a failed endpoint.
12577	//
12578	// EndpointStatus is a required field
12579	EndpointStatus *string `type:"string" required:"true" enum:"EndpointStatus"`
12580
12581	// If the status of the endpoint is Failed, the reason why it failed.
12582	FailureReason *string `type:"string"`
12583
12584	// A timestamp that shows when the endpoint was last modified.
12585	//
12586	// LastModifiedTime is a required field
12587	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
12588
12589	// An array of ProductionVariantSummary objects, one for each model hosted behind
12590	// this endpoint.
12591	ProductionVariants []*ProductionVariantSummary `min:"1" type:"list"`
12592}
12593
12594// String returns the string representation
12595func (s DescribeEndpointOutput) String() string {
12596	return awsutil.Prettify(s)
12597}
12598
12599// GoString returns the string representation
12600func (s DescribeEndpointOutput) GoString() string {
12601	return s.String()
12602}
12603
12604// SetCreationTime sets the CreationTime field's value.
12605func (s *DescribeEndpointOutput) SetCreationTime(v time.Time) *DescribeEndpointOutput {
12606	s.CreationTime = &v
12607	return s
12608}
12609
12610// SetEndpointArn sets the EndpointArn field's value.
12611func (s *DescribeEndpointOutput) SetEndpointArn(v string) *DescribeEndpointOutput {
12612	s.EndpointArn = &v
12613	return s
12614}
12615
12616// SetEndpointConfigName sets the EndpointConfigName field's value.
12617func (s *DescribeEndpointOutput) SetEndpointConfigName(v string) *DescribeEndpointOutput {
12618	s.EndpointConfigName = &v
12619	return s
12620}
12621
12622// SetEndpointName sets the EndpointName field's value.
12623func (s *DescribeEndpointOutput) SetEndpointName(v string) *DescribeEndpointOutput {
12624	s.EndpointName = &v
12625	return s
12626}
12627
12628// SetEndpointStatus sets the EndpointStatus field's value.
12629func (s *DescribeEndpointOutput) SetEndpointStatus(v string) *DescribeEndpointOutput {
12630	s.EndpointStatus = &v
12631	return s
12632}
12633
12634// SetFailureReason sets the FailureReason field's value.
12635func (s *DescribeEndpointOutput) SetFailureReason(v string) *DescribeEndpointOutput {
12636	s.FailureReason = &v
12637	return s
12638}
12639
12640// SetLastModifiedTime sets the LastModifiedTime field's value.
12641func (s *DescribeEndpointOutput) SetLastModifiedTime(v time.Time) *DescribeEndpointOutput {
12642	s.LastModifiedTime = &v
12643	return s
12644}
12645
12646// SetProductionVariants sets the ProductionVariants field's value.
12647func (s *DescribeEndpointOutput) SetProductionVariants(v []*ProductionVariantSummary) *DescribeEndpointOutput {
12648	s.ProductionVariants = v
12649	return s
12650}
12651
12652type DescribeHyperParameterTuningJobInput struct {
12653	_ struct{} `type:"structure"`
12654
12655	// The name of the tuning job to describe.
12656	//
12657	// HyperParameterTuningJobName is a required field
12658	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
12659}
12660
12661// String returns the string representation
12662func (s DescribeHyperParameterTuningJobInput) String() string {
12663	return awsutil.Prettify(s)
12664}
12665
12666// GoString returns the string representation
12667func (s DescribeHyperParameterTuningJobInput) GoString() string {
12668	return s.String()
12669}
12670
12671// Validate inspects the fields of the type to determine if they are valid.
12672func (s *DescribeHyperParameterTuningJobInput) Validate() error {
12673	invalidParams := request.ErrInvalidParams{Context: "DescribeHyperParameterTuningJobInput"}
12674	if s.HyperParameterTuningJobName == nil {
12675		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
12676	}
12677	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
12678		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
12679	}
12680
12681	if invalidParams.Len() > 0 {
12682		return invalidParams
12683	}
12684	return nil
12685}
12686
12687// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
12688func (s *DescribeHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *DescribeHyperParameterTuningJobInput {
12689	s.HyperParameterTuningJobName = &v
12690	return s
12691}
12692
12693type DescribeHyperParameterTuningJobOutput struct {
12694	_ struct{} `type:"structure"`
12695
12696	// A TrainingJobSummary object that describes the training job that completed
12697	// with the best current HyperParameterTuningJobObjective.
12698	BestTrainingJob *HyperParameterTrainingJobSummary `type:"structure"`
12699
12700	// The date and time that the tuning job started.
12701	//
12702	// CreationTime is a required field
12703	CreationTime *time.Time `type:"timestamp" required:"true"`
12704
12705	// If the tuning job failed, the reason it failed.
12706	FailureReason *string `type:"string"`
12707
12708	// The date and time that the tuning job ended.
12709	HyperParameterTuningEndTime *time.Time `type:"timestamp"`
12710
12711	// The Amazon Resource Name (ARN) of the tuning job.
12712	//
12713	// HyperParameterTuningJobArn is a required field
12714	HyperParameterTuningJobArn *string `type:"string" required:"true"`
12715
12716	// The HyperParameterTuningJobConfig object that specifies the configuration
12717	// of the tuning job.
12718	//
12719	// HyperParameterTuningJobConfig is a required field
12720	HyperParameterTuningJobConfig *HyperParameterTuningJobConfig `type:"structure" required:"true"`
12721
12722	// The name of the tuning job.
12723	//
12724	// HyperParameterTuningJobName is a required field
12725	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
12726
12727	// The status of the tuning job: InProgress, Completed, Failed, Stopping, or
12728	// Stopped.
12729	//
12730	// HyperParameterTuningJobStatus is a required field
12731	HyperParameterTuningJobStatus *string `type:"string" required:"true" enum:"HyperParameterTuningJobStatus"`
12732
12733	// The date and time that the status of the tuning job was modified.
12734	LastModifiedTime *time.Time `type:"timestamp"`
12735
12736	// The ObjectiveStatusCounters object that specifies the number of training
12737	// jobs, categorized by the status of their final objective metric, that this
12738	// tuning job launched.
12739	//
12740	// ObjectiveStatusCounters is a required field
12741	ObjectiveStatusCounters *ObjectiveStatusCounters `type:"structure" required:"true"`
12742
12743	// If the hyperparameter tuning job is an warm start tuning job with a WarmStartType
12744	// of IDENTICAL_DATA_AND_ALGORITHM, this is the TrainingJobSummary for the training
12745	// job with the best objective metric value of all training jobs launched by
12746	// this tuning job and all parent jobs specified for the warm start tuning job.
12747	OverallBestTrainingJob *HyperParameterTrainingJobSummary `type:"structure"`
12748
12749	// The HyperParameterTrainingJobDefinition object that specifies the definition
12750	// of the training jobs that this tuning job launches.
12751	TrainingJobDefinition *HyperParameterTrainingJobDefinition `type:"structure"`
12752
12753	// The TrainingJobStatusCounters object that specifies the number of training
12754	// jobs, categorized by status, that this tuning job launched.
12755	//
12756	// TrainingJobStatusCounters is a required field
12757	TrainingJobStatusCounters *TrainingJobStatusCounters `type:"structure" required:"true"`
12758
12759	// The configuration for starting the hyperparameter parameter tuning job using
12760	// one or more previous tuning jobs as a starting point. The results of previous
12761	// tuning jobs are used to inform which combinations of hyperparameters to search
12762	// over in the new tuning job.
12763	WarmStartConfig *HyperParameterTuningJobWarmStartConfig `type:"structure"`
12764}
12765
12766// String returns the string representation
12767func (s DescribeHyperParameterTuningJobOutput) String() string {
12768	return awsutil.Prettify(s)
12769}
12770
12771// GoString returns the string representation
12772func (s DescribeHyperParameterTuningJobOutput) GoString() string {
12773	return s.String()
12774}
12775
12776// SetBestTrainingJob sets the BestTrainingJob field's value.
12777func (s *DescribeHyperParameterTuningJobOutput) SetBestTrainingJob(v *HyperParameterTrainingJobSummary) *DescribeHyperParameterTuningJobOutput {
12778	s.BestTrainingJob = v
12779	return s
12780}
12781
12782// SetCreationTime sets the CreationTime field's value.
12783func (s *DescribeHyperParameterTuningJobOutput) SetCreationTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12784	s.CreationTime = &v
12785	return s
12786}
12787
12788// SetFailureReason sets the FailureReason field's value.
12789func (s *DescribeHyperParameterTuningJobOutput) SetFailureReason(v string) *DescribeHyperParameterTuningJobOutput {
12790	s.FailureReason = &v
12791	return s
12792}
12793
12794// SetHyperParameterTuningEndTime sets the HyperParameterTuningEndTime field's value.
12795func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningEndTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12796	s.HyperParameterTuningEndTime = &v
12797	return s
12798}
12799
12800// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
12801func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobArn(v string) *DescribeHyperParameterTuningJobOutput {
12802	s.HyperParameterTuningJobArn = &v
12803	return s
12804}
12805
12806// SetHyperParameterTuningJobConfig sets the HyperParameterTuningJobConfig field's value.
12807func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobConfig(v *HyperParameterTuningJobConfig) *DescribeHyperParameterTuningJobOutput {
12808	s.HyperParameterTuningJobConfig = v
12809	return s
12810}
12811
12812// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
12813func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobName(v string) *DescribeHyperParameterTuningJobOutput {
12814	s.HyperParameterTuningJobName = &v
12815	return s
12816}
12817
12818// SetHyperParameterTuningJobStatus sets the HyperParameterTuningJobStatus field's value.
12819func (s *DescribeHyperParameterTuningJobOutput) SetHyperParameterTuningJobStatus(v string) *DescribeHyperParameterTuningJobOutput {
12820	s.HyperParameterTuningJobStatus = &v
12821	return s
12822}
12823
12824// SetLastModifiedTime sets the LastModifiedTime field's value.
12825func (s *DescribeHyperParameterTuningJobOutput) SetLastModifiedTime(v time.Time) *DescribeHyperParameterTuningJobOutput {
12826	s.LastModifiedTime = &v
12827	return s
12828}
12829
12830// SetObjectiveStatusCounters sets the ObjectiveStatusCounters field's value.
12831func (s *DescribeHyperParameterTuningJobOutput) SetObjectiveStatusCounters(v *ObjectiveStatusCounters) *DescribeHyperParameterTuningJobOutput {
12832	s.ObjectiveStatusCounters = v
12833	return s
12834}
12835
12836// SetOverallBestTrainingJob sets the OverallBestTrainingJob field's value.
12837func (s *DescribeHyperParameterTuningJobOutput) SetOverallBestTrainingJob(v *HyperParameterTrainingJobSummary) *DescribeHyperParameterTuningJobOutput {
12838	s.OverallBestTrainingJob = v
12839	return s
12840}
12841
12842// SetTrainingJobDefinition sets the TrainingJobDefinition field's value.
12843func (s *DescribeHyperParameterTuningJobOutput) SetTrainingJobDefinition(v *HyperParameterTrainingJobDefinition) *DescribeHyperParameterTuningJobOutput {
12844	s.TrainingJobDefinition = v
12845	return s
12846}
12847
12848// SetTrainingJobStatusCounters sets the TrainingJobStatusCounters field's value.
12849func (s *DescribeHyperParameterTuningJobOutput) SetTrainingJobStatusCounters(v *TrainingJobStatusCounters) *DescribeHyperParameterTuningJobOutput {
12850	s.TrainingJobStatusCounters = v
12851	return s
12852}
12853
12854// SetWarmStartConfig sets the WarmStartConfig field's value.
12855func (s *DescribeHyperParameterTuningJobOutput) SetWarmStartConfig(v *HyperParameterTuningJobWarmStartConfig) *DescribeHyperParameterTuningJobOutput {
12856	s.WarmStartConfig = v
12857	return s
12858}
12859
12860type DescribeLabelingJobInput struct {
12861	_ struct{} `type:"structure"`
12862
12863	// The name of the labeling job to return information for.
12864	//
12865	// LabelingJobName is a required field
12866	LabelingJobName *string `min:"1" type:"string" required:"true"`
12867}
12868
12869// String returns the string representation
12870func (s DescribeLabelingJobInput) String() string {
12871	return awsutil.Prettify(s)
12872}
12873
12874// GoString returns the string representation
12875func (s DescribeLabelingJobInput) GoString() string {
12876	return s.String()
12877}
12878
12879// Validate inspects the fields of the type to determine if they are valid.
12880func (s *DescribeLabelingJobInput) Validate() error {
12881	invalidParams := request.ErrInvalidParams{Context: "DescribeLabelingJobInput"}
12882	if s.LabelingJobName == nil {
12883		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
12884	}
12885	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
12886		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
12887	}
12888
12889	if invalidParams.Len() > 0 {
12890		return invalidParams
12891	}
12892	return nil
12893}
12894
12895// SetLabelingJobName sets the LabelingJobName field's value.
12896func (s *DescribeLabelingJobInput) SetLabelingJobName(v string) *DescribeLabelingJobInput {
12897	s.LabelingJobName = &v
12898	return s
12899}
12900
12901type DescribeLabelingJobOutput struct {
12902	_ struct{} `type:"structure"`
12903
12904	// The date and time that the labeling job was created.
12905	//
12906	// CreationTime is a required field
12907	CreationTime *time.Time `type:"timestamp" required:"true"`
12908
12909	// If the job failed, the reason that it failed.
12910	FailureReason *string `type:"string"`
12911
12912	// Configuration information required for human workers to complete a labeling
12913	// task.
12914	//
12915	// HumanTaskConfig is a required field
12916	HumanTaskConfig *HumanTaskConfig `type:"structure" required:"true"`
12917
12918	// Input configuration information for the labeling job, such as the Amazon
12919	// S3 location of the data objects and the location of the manifest file that
12920	// describes the data objects.
12921	//
12922	// InputConfig is a required field
12923	InputConfig *LabelingJobInputConfig `type:"structure" required:"true"`
12924
12925	// A unique identifier for work done as part of a labeling job.
12926	//
12927	// JobReferenceCode is a required field
12928	JobReferenceCode *string `min:"1" type:"string" required:"true"`
12929
12930	// The attribute used as the label in the output manifest file.
12931	LabelAttributeName *string `min:"1" type:"string"`
12932
12933	// The S3 location of the JSON file that defines the categories used to label
12934	// data objects.
12935	//
12936	// The file is a JSON structure in the following format:
12937	//
12938	// {
12939	//
12940	// "document-version": "2018-11-28"
12941	//
12942	// "labels": [
12943	//
12944	// {
12945	//
12946	// "label": "label 1"
12947	//
12948	// },
12949	//
12950	// {
12951	//
12952	// "label": "label 2"
12953	//
12954	// },
12955	//
12956	// ...
12957	//
12958	// {
12959	//
12960	// "label": "label n"
12961	//
12962	// }
12963	//
12964	// ]
12965	//
12966	// }
12967	LabelCategoryConfigS3Uri *string `type:"string"`
12968
12969	// Provides a breakdown of the number of data objects labeled by humans, the
12970	// number of objects labeled by machine, the number of objects than couldn't
12971	// be labeled, and the total number of objects labeled.
12972	//
12973	// LabelCounters is a required field
12974	LabelCounters *LabelCounters `type:"structure" required:"true"`
12975
12976	// Configuration information for automated data labeling.
12977	LabelingJobAlgorithmsConfig *LabelingJobAlgorithmsConfig `type:"structure"`
12978
12979	// The Amazon Resource Name (ARN) of the labeling job.
12980	//
12981	// LabelingJobArn is a required field
12982	LabelingJobArn *string `type:"string" required:"true"`
12983
12984	// The name assigned to the labeling job when it was created.
12985	//
12986	// LabelingJobName is a required field
12987	LabelingJobName *string `min:"1" type:"string" required:"true"`
12988
12989	// The location of the output produced by the labeling job.
12990	LabelingJobOutput *LabelingJobOutput `type:"structure"`
12991
12992	// The processing status of the labeling job.
12993	//
12994	// LabelingJobStatus is a required field
12995	LabelingJobStatus *string `type:"string" required:"true" enum:"LabelingJobStatus"`
12996
12997	// The date and time that the labeling job was last updated.
12998	//
12999	// LastModifiedTime is a required field
13000	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
13001
13002	// The location of the job's output data and the AWS Key Management Service
13003	// key ID for the key used to encrypt the output data, if any.
13004	//
13005	// OutputConfig is a required field
13006	OutputConfig *LabelingJobOutputConfig `type:"structure" required:"true"`
13007
13008	// The Amazon Resource Name (ARN) that Amazon SageMaker assumes to perform tasks
13009	// on your behalf during data labeling.
13010	//
13011	// RoleArn is a required field
13012	RoleArn *string `min:"20" type:"string" required:"true"`
13013
13014	// A set of conditions for stopping a labeling job. If any of the conditions
13015	// are met, the job is automatically stopped.
13016	StoppingConditions *LabelingJobStoppingConditions `type:"structure"`
13017
13018	// An array of key/value pairs. For more information, see Using Cost Allocation
13019	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
13020	// in the AWS Billing and Cost Management User Guide.
13021	Tags []*Tag `type:"list"`
13022}
13023
13024// String returns the string representation
13025func (s DescribeLabelingJobOutput) String() string {
13026	return awsutil.Prettify(s)
13027}
13028
13029// GoString returns the string representation
13030func (s DescribeLabelingJobOutput) GoString() string {
13031	return s.String()
13032}
13033
13034// SetCreationTime sets the CreationTime field's value.
13035func (s *DescribeLabelingJobOutput) SetCreationTime(v time.Time) *DescribeLabelingJobOutput {
13036	s.CreationTime = &v
13037	return s
13038}
13039
13040// SetFailureReason sets the FailureReason field's value.
13041func (s *DescribeLabelingJobOutput) SetFailureReason(v string) *DescribeLabelingJobOutput {
13042	s.FailureReason = &v
13043	return s
13044}
13045
13046// SetHumanTaskConfig sets the HumanTaskConfig field's value.
13047func (s *DescribeLabelingJobOutput) SetHumanTaskConfig(v *HumanTaskConfig) *DescribeLabelingJobOutput {
13048	s.HumanTaskConfig = v
13049	return s
13050}
13051
13052// SetInputConfig sets the InputConfig field's value.
13053func (s *DescribeLabelingJobOutput) SetInputConfig(v *LabelingJobInputConfig) *DescribeLabelingJobOutput {
13054	s.InputConfig = v
13055	return s
13056}
13057
13058// SetJobReferenceCode sets the JobReferenceCode field's value.
13059func (s *DescribeLabelingJobOutput) SetJobReferenceCode(v string) *DescribeLabelingJobOutput {
13060	s.JobReferenceCode = &v
13061	return s
13062}
13063
13064// SetLabelAttributeName sets the LabelAttributeName field's value.
13065func (s *DescribeLabelingJobOutput) SetLabelAttributeName(v string) *DescribeLabelingJobOutput {
13066	s.LabelAttributeName = &v
13067	return s
13068}
13069
13070// SetLabelCategoryConfigS3Uri sets the LabelCategoryConfigS3Uri field's value.
13071func (s *DescribeLabelingJobOutput) SetLabelCategoryConfigS3Uri(v string) *DescribeLabelingJobOutput {
13072	s.LabelCategoryConfigS3Uri = &v
13073	return s
13074}
13075
13076// SetLabelCounters sets the LabelCounters field's value.
13077func (s *DescribeLabelingJobOutput) SetLabelCounters(v *LabelCounters) *DescribeLabelingJobOutput {
13078	s.LabelCounters = v
13079	return s
13080}
13081
13082// SetLabelingJobAlgorithmsConfig sets the LabelingJobAlgorithmsConfig field's value.
13083func (s *DescribeLabelingJobOutput) SetLabelingJobAlgorithmsConfig(v *LabelingJobAlgorithmsConfig) *DescribeLabelingJobOutput {
13084	s.LabelingJobAlgorithmsConfig = v
13085	return s
13086}
13087
13088// SetLabelingJobArn sets the LabelingJobArn field's value.
13089func (s *DescribeLabelingJobOutput) SetLabelingJobArn(v string) *DescribeLabelingJobOutput {
13090	s.LabelingJobArn = &v
13091	return s
13092}
13093
13094// SetLabelingJobName sets the LabelingJobName field's value.
13095func (s *DescribeLabelingJobOutput) SetLabelingJobName(v string) *DescribeLabelingJobOutput {
13096	s.LabelingJobName = &v
13097	return s
13098}
13099
13100// SetLabelingJobOutput sets the LabelingJobOutput field's value.
13101func (s *DescribeLabelingJobOutput) SetLabelingJobOutput(v *LabelingJobOutput) *DescribeLabelingJobOutput {
13102	s.LabelingJobOutput = v
13103	return s
13104}
13105
13106// SetLabelingJobStatus sets the LabelingJobStatus field's value.
13107func (s *DescribeLabelingJobOutput) SetLabelingJobStatus(v string) *DescribeLabelingJobOutput {
13108	s.LabelingJobStatus = &v
13109	return s
13110}
13111
13112// SetLastModifiedTime sets the LastModifiedTime field's value.
13113func (s *DescribeLabelingJobOutput) SetLastModifiedTime(v time.Time) *DescribeLabelingJobOutput {
13114	s.LastModifiedTime = &v
13115	return s
13116}
13117
13118// SetOutputConfig sets the OutputConfig field's value.
13119func (s *DescribeLabelingJobOutput) SetOutputConfig(v *LabelingJobOutputConfig) *DescribeLabelingJobOutput {
13120	s.OutputConfig = v
13121	return s
13122}
13123
13124// SetRoleArn sets the RoleArn field's value.
13125func (s *DescribeLabelingJobOutput) SetRoleArn(v string) *DescribeLabelingJobOutput {
13126	s.RoleArn = &v
13127	return s
13128}
13129
13130// SetStoppingConditions sets the StoppingConditions field's value.
13131func (s *DescribeLabelingJobOutput) SetStoppingConditions(v *LabelingJobStoppingConditions) *DescribeLabelingJobOutput {
13132	s.StoppingConditions = v
13133	return s
13134}
13135
13136// SetTags sets the Tags field's value.
13137func (s *DescribeLabelingJobOutput) SetTags(v []*Tag) *DescribeLabelingJobOutput {
13138	s.Tags = v
13139	return s
13140}
13141
13142type DescribeModelInput struct {
13143	_ struct{} `type:"structure"`
13144
13145	// The name of the model.
13146	//
13147	// ModelName is a required field
13148	ModelName *string `type:"string" required:"true"`
13149}
13150
13151// String returns the string representation
13152func (s DescribeModelInput) String() string {
13153	return awsutil.Prettify(s)
13154}
13155
13156// GoString returns the string representation
13157func (s DescribeModelInput) GoString() string {
13158	return s.String()
13159}
13160
13161// Validate inspects the fields of the type to determine if they are valid.
13162func (s *DescribeModelInput) Validate() error {
13163	invalidParams := request.ErrInvalidParams{Context: "DescribeModelInput"}
13164	if s.ModelName == nil {
13165		invalidParams.Add(request.NewErrParamRequired("ModelName"))
13166	}
13167
13168	if invalidParams.Len() > 0 {
13169		return invalidParams
13170	}
13171	return nil
13172}
13173
13174// SetModelName sets the ModelName field's value.
13175func (s *DescribeModelInput) SetModelName(v string) *DescribeModelInput {
13176	s.ModelName = &v
13177	return s
13178}
13179
13180type DescribeModelOutput struct {
13181	_ struct{} `type:"structure"`
13182
13183	// The containers in the inference pipeline.
13184	Containers []*ContainerDefinition `type:"list"`
13185
13186	// A timestamp that shows when the model was created.
13187	//
13188	// CreationTime is a required field
13189	CreationTime *time.Time `type:"timestamp" required:"true"`
13190
13191	// If True, no inbound or outbound network calls can be made to or from the
13192	// model container.
13193	//
13194	// The Semantic Segmentation built-in algorithm does not support network isolation.
13195	EnableNetworkIsolation *bool `type:"boolean"`
13196
13197	// The Amazon Resource Name (ARN) of the IAM role that you specified for the
13198	// model.
13199	//
13200	// ExecutionRoleArn is a required field
13201	ExecutionRoleArn *string `min:"20" type:"string" required:"true"`
13202
13203	// The Amazon Resource Name (ARN) of the model.
13204	//
13205	// ModelArn is a required field
13206	ModelArn *string `min:"20" type:"string" required:"true"`
13207
13208	// Name of the Amazon SageMaker model.
13209	//
13210	// ModelName is a required field
13211	ModelName *string `type:"string" required:"true"`
13212
13213	// The location of the primary inference code, associated artifacts, and custom
13214	// environment map that the inference code uses when it is deployed in production.
13215	PrimaryContainer *ContainerDefinition `type:"structure"`
13216
13217	// A VpcConfig object that specifies the VPC that this model has access to.
13218	// For more information, see Protect Endpoints by Using an Amazon Virtual Private
13219	// Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
13220	VpcConfig *VpcConfig `type:"structure"`
13221}
13222
13223// String returns the string representation
13224func (s DescribeModelOutput) String() string {
13225	return awsutil.Prettify(s)
13226}
13227
13228// GoString returns the string representation
13229func (s DescribeModelOutput) GoString() string {
13230	return s.String()
13231}
13232
13233// SetContainers sets the Containers field's value.
13234func (s *DescribeModelOutput) SetContainers(v []*ContainerDefinition) *DescribeModelOutput {
13235	s.Containers = v
13236	return s
13237}
13238
13239// SetCreationTime sets the CreationTime field's value.
13240func (s *DescribeModelOutput) SetCreationTime(v time.Time) *DescribeModelOutput {
13241	s.CreationTime = &v
13242	return s
13243}
13244
13245// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
13246func (s *DescribeModelOutput) SetEnableNetworkIsolation(v bool) *DescribeModelOutput {
13247	s.EnableNetworkIsolation = &v
13248	return s
13249}
13250
13251// SetExecutionRoleArn sets the ExecutionRoleArn field's value.
13252func (s *DescribeModelOutput) SetExecutionRoleArn(v string) *DescribeModelOutput {
13253	s.ExecutionRoleArn = &v
13254	return s
13255}
13256
13257// SetModelArn sets the ModelArn field's value.
13258func (s *DescribeModelOutput) SetModelArn(v string) *DescribeModelOutput {
13259	s.ModelArn = &v
13260	return s
13261}
13262
13263// SetModelName sets the ModelName field's value.
13264func (s *DescribeModelOutput) SetModelName(v string) *DescribeModelOutput {
13265	s.ModelName = &v
13266	return s
13267}
13268
13269// SetPrimaryContainer sets the PrimaryContainer field's value.
13270func (s *DescribeModelOutput) SetPrimaryContainer(v *ContainerDefinition) *DescribeModelOutput {
13271	s.PrimaryContainer = v
13272	return s
13273}
13274
13275// SetVpcConfig sets the VpcConfig field's value.
13276func (s *DescribeModelOutput) SetVpcConfig(v *VpcConfig) *DescribeModelOutput {
13277	s.VpcConfig = v
13278	return s
13279}
13280
13281type DescribeModelPackageInput struct {
13282	_ struct{} `type:"structure"`
13283
13284	// The name of the model package to describe.
13285	//
13286	// ModelPackageName is a required field
13287	ModelPackageName *string `min:"1" type:"string" required:"true"`
13288}
13289
13290// String returns the string representation
13291func (s DescribeModelPackageInput) String() string {
13292	return awsutil.Prettify(s)
13293}
13294
13295// GoString returns the string representation
13296func (s DescribeModelPackageInput) GoString() string {
13297	return s.String()
13298}
13299
13300// Validate inspects the fields of the type to determine if they are valid.
13301func (s *DescribeModelPackageInput) Validate() error {
13302	invalidParams := request.ErrInvalidParams{Context: "DescribeModelPackageInput"}
13303	if s.ModelPackageName == nil {
13304		invalidParams.Add(request.NewErrParamRequired("ModelPackageName"))
13305	}
13306	if s.ModelPackageName != nil && len(*s.ModelPackageName) < 1 {
13307		invalidParams.Add(request.NewErrParamMinLen("ModelPackageName", 1))
13308	}
13309
13310	if invalidParams.Len() > 0 {
13311		return invalidParams
13312	}
13313	return nil
13314}
13315
13316// SetModelPackageName sets the ModelPackageName field's value.
13317func (s *DescribeModelPackageInput) SetModelPackageName(v string) *DescribeModelPackageInput {
13318	s.ModelPackageName = &v
13319	return s
13320}
13321
13322type DescribeModelPackageOutput struct {
13323	_ struct{} `type:"structure"`
13324
13325	// Whether the model package is certified for listing on AWS Marketplace.
13326	CertifyForMarketplace *bool `type:"boolean"`
13327
13328	// A timestamp specifying when the model package was created.
13329	//
13330	// CreationTime is a required field
13331	CreationTime *time.Time `type:"timestamp" required:"true"`
13332
13333	// Details about inference jobs that can be run with models based on this model
13334	// package.
13335	InferenceSpecification *InferenceSpecification `type:"structure"`
13336
13337	// The Amazon Resource Name (ARN) of the model package.
13338	//
13339	// ModelPackageArn is a required field
13340	ModelPackageArn *string `min:"1" type:"string" required:"true"`
13341
13342	// A brief summary of the model package.
13343	ModelPackageDescription *string `type:"string"`
13344
13345	// The name of the model package being described.
13346	//
13347	// ModelPackageName is a required field
13348	ModelPackageName *string `min:"1" type:"string" required:"true"`
13349
13350	// The current status of the model package.
13351	//
13352	// ModelPackageStatus is a required field
13353	ModelPackageStatus *string `type:"string" required:"true" enum:"ModelPackageStatus"`
13354
13355	// Details about the current status of the model package.
13356	//
13357	// ModelPackageStatusDetails is a required field
13358	ModelPackageStatusDetails *ModelPackageStatusDetails `type:"structure" required:"true"`
13359
13360	// Details about the algorithm that was used to create the model package.
13361	SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"`
13362
13363	// Configurations for one or more transform jobs that Amazon SageMaker runs
13364	// to test the model package.
13365	ValidationSpecification *ModelPackageValidationSpecification `type:"structure"`
13366}
13367
13368// String returns the string representation
13369func (s DescribeModelPackageOutput) String() string {
13370	return awsutil.Prettify(s)
13371}
13372
13373// GoString returns the string representation
13374func (s DescribeModelPackageOutput) GoString() string {
13375	return s.String()
13376}
13377
13378// SetCertifyForMarketplace sets the CertifyForMarketplace field's value.
13379func (s *DescribeModelPackageOutput) SetCertifyForMarketplace(v bool) *DescribeModelPackageOutput {
13380	s.CertifyForMarketplace = &v
13381	return s
13382}
13383
13384// SetCreationTime sets the CreationTime field's value.
13385func (s *DescribeModelPackageOutput) SetCreationTime(v time.Time) *DescribeModelPackageOutput {
13386	s.CreationTime = &v
13387	return s
13388}
13389
13390// SetInferenceSpecification sets the InferenceSpecification field's value.
13391func (s *DescribeModelPackageOutput) SetInferenceSpecification(v *InferenceSpecification) *DescribeModelPackageOutput {
13392	s.InferenceSpecification = v
13393	return s
13394}
13395
13396// SetModelPackageArn sets the ModelPackageArn field's value.
13397func (s *DescribeModelPackageOutput) SetModelPackageArn(v string) *DescribeModelPackageOutput {
13398	s.ModelPackageArn = &v
13399	return s
13400}
13401
13402// SetModelPackageDescription sets the ModelPackageDescription field's value.
13403func (s *DescribeModelPackageOutput) SetModelPackageDescription(v string) *DescribeModelPackageOutput {
13404	s.ModelPackageDescription = &v
13405	return s
13406}
13407
13408// SetModelPackageName sets the ModelPackageName field's value.
13409func (s *DescribeModelPackageOutput) SetModelPackageName(v string) *DescribeModelPackageOutput {
13410	s.ModelPackageName = &v
13411	return s
13412}
13413
13414// SetModelPackageStatus sets the ModelPackageStatus field's value.
13415func (s *DescribeModelPackageOutput) SetModelPackageStatus(v string) *DescribeModelPackageOutput {
13416	s.ModelPackageStatus = &v
13417	return s
13418}
13419
13420// SetModelPackageStatusDetails sets the ModelPackageStatusDetails field's value.
13421func (s *DescribeModelPackageOutput) SetModelPackageStatusDetails(v *ModelPackageStatusDetails) *DescribeModelPackageOutput {
13422	s.ModelPackageStatusDetails = v
13423	return s
13424}
13425
13426// SetSourceAlgorithmSpecification sets the SourceAlgorithmSpecification field's value.
13427func (s *DescribeModelPackageOutput) SetSourceAlgorithmSpecification(v *SourceAlgorithmSpecification) *DescribeModelPackageOutput {
13428	s.SourceAlgorithmSpecification = v
13429	return s
13430}
13431
13432// SetValidationSpecification sets the ValidationSpecification field's value.
13433func (s *DescribeModelPackageOutput) SetValidationSpecification(v *ModelPackageValidationSpecification) *DescribeModelPackageOutput {
13434	s.ValidationSpecification = v
13435	return s
13436}
13437
13438type DescribeNotebookInstanceInput struct {
13439	_ struct{} `type:"structure"`
13440
13441	// The name of the notebook instance that you want information about.
13442	//
13443	// NotebookInstanceName is a required field
13444	NotebookInstanceName *string `type:"string" required:"true"`
13445}
13446
13447// String returns the string representation
13448func (s DescribeNotebookInstanceInput) String() string {
13449	return awsutil.Prettify(s)
13450}
13451
13452// GoString returns the string representation
13453func (s DescribeNotebookInstanceInput) GoString() string {
13454	return s.String()
13455}
13456
13457// Validate inspects the fields of the type to determine if they are valid.
13458func (s *DescribeNotebookInstanceInput) Validate() error {
13459	invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookInstanceInput"}
13460	if s.NotebookInstanceName == nil {
13461		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
13462	}
13463
13464	if invalidParams.Len() > 0 {
13465		return invalidParams
13466	}
13467	return nil
13468}
13469
13470// SetNotebookInstanceName sets the NotebookInstanceName field's value.
13471func (s *DescribeNotebookInstanceInput) SetNotebookInstanceName(v string) *DescribeNotebookInstanceInput {
13472	s.NotebookInstanceName = &v
13473	return s
13474}
13475
13476type DescribeNotebookInstanceLifecycleConfigInput struct {
13477	_ struct{} `type:"structure"`
13478
13479	// The name of the lifecycle configuration to describe.
13480	//
13481	// NotebookInstanceLifecycleConfigName is a required field
13482	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
13483}
13484
13485// String returns the string representation
13486func (s DescribeNotebookInstanceLifecycleConfigInput) String() string {
13487	return awsutil.Prettify(s)
13488}
13489
13490// GoString returns the string representation
13491func (s DescribeNotebookInstanceLifecycleConfigInput) GoString() string {
13492	return s.String()
13493}
13494
13495// Validate inspects the fields of the type to determine if they are valid.
13496func (s *DescribeNotebookInstanceLifecycleConfigInput) Validate() error {
13497	invalidParams := request.ErrInvalidParams{Context: "DescribeNotebookInstanceLifecycleConfigInput"}
13498	if s.NotebookInstanceLifecycleConfigName == nil {
13499		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
13500	}
13501
13502	if invalidParams.Len() > 0 {
13503		return invalidParams
13504	}
13505	return nil
13506}
13507
13508// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13509func (s *DescribeNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceLifecycleConfigInput {
13510	s.NotebookInstanceLifecycleConfigName = &v
13511	return s
13512}
13513
13514type DescribeNotebookInstanceLifecycleConfigOutput struct {
13515	_ struct{} `type:"structure"`
13516
13517	// A timestamp that tells when the lifecycle configuration was created.
13518	CreationTime *time.Time `type:"timestamp"`
13519
13520	// A timestamp that tells when the lifecycle configuration was last modified.
13521	LastModifiedTime *time.Time `type:"timestamp"`
13522
13523	// The Amazon Resource Name (ARN) of the lifecycle configuration.
13524	NotebookInstanceLifecycleConfigArn *string `type:"string"`
13525
13526	// The name of the lifecycle configuration.
13527	NotebookInstanceLifecycleConfigName *string `type:"string"`
13528
13529	// The shell script that runs only once, when you create a notebook instance.
13530	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
13531
13532	// The shell script that runs every time you start a notebook instance, including
13533	// when you create the notebook instance.
13534	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
13535}
13536
13537// String returns the string representation
13538func (s DescribeNotebookInstanceLifecycleConfigOutput) String() string {
13539	return awsutil.Prettify(s)
13540}
13541
13542// GoString returns the string representation
13543func (s DescribeNotebookInstanceLifecycleConfigOutput) GoString() string {
13544	return s.String()
13545}
13546
13547// SetCreationTime sets the CreationTime field's value.
13548func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetCreationTime(v time.Time) *DescribeNotebookInstanceLifecycleConfigOutput {
13549	s.CreationTime = &v
13550	return s
13551}
13552
13553// SetLastModifiedTime sets the LastModifiedTime field's value.
13554func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetLastModifiedTime(v time.Time) *DescribeNotebookInstanceLifecycleConfigOutput {
13555	s.LastModifiedTime = &v
13556	return s
13557}
13558
13559// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
13560func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigArn(v string) *DescribeNotebookInstanceLifecycleConfigOutput {
13561	s.NotebookInstanceLifecycleConfigArn = &v
13562	return s
13563}
13564
13565// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13566func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceLifecycleConfigOutput {
13567	s.NotebookInstanceLifecycleConfigName = &v
13568	return s
13569}
13570
13571// SetOnCreate sets the OnCreate field's value.
13572func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *DescribeNotebookInstanceLifecycleConfigOutput {
13573	s.OnCreate = v
13574	return s
13575}
13576
13577// SetOnStart sets the OnStart field's value.
13578func (s *DescribeNotebookInstanceLifecycleConfigOutput) SetOnStart(v []*NotebookInstanceLifecycleHook) *DescribeNotebookInstanceLifecycleConfigOutput {
13579	s.OnStart = v
13580	return s
13581}
13582
13583type DescribeNotebookInstanceOutput struct {
13584	_ struct{} `type:"structure"`
13585
13586	// A list of the Elastic Inference (EI) instance types associated with this
13587	// notebook instance. Currently only one EI instance type can be associated
13588	// with a notebook instance. For more information, see Using Elastic Inference
13589	// in Amazon SageMaker (sagemaker/latest/dg/ei.html).
13590	AcceleratorTypes []*string `type:"list"`
13591
13592	// An array of up to three Git repositories associated with the notebook instance.
13593	// These can be either the names of Git repositories stored as resources in
13594	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
13595	// or in any other Git repository. These repositories are cloned at the same
13596	// level as the default repository of your notebook instance. For more information,
13597	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
13598	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
13599	AdditionalCodeRepositories []*string `type:"list"`
13600
13601	// A timestamp. Use this parameter to return the time when the notebook instance
13602	// was created
13603	CreationTime *time.Time `type:"timestamp"`
13604
13605	// The Git repository associated with the notebook instance as its default code
13606	// repository. This can be either the name of a Git repository stored as a resource
13607	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
13608	// or in any other Git repository. When you open a notebook instance, it opens
13609	// in the directory that contains this repository. For more information, see
13610	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
13611	DefaultCodeRepository *string `min:"1" type:"string"`
13612
13613	// Describes whether Amazon SageMaker provides internet access to the notebook
13614	// instance. If this value is set to Disabled, the notebook instance does not
13615	// have internet access, and cannot connect to Amazon SageMaker training and
13616	// endpoint services.
13617	//
13618	// For more information, see Notebook Instances Are Internet-Enabled by Default
13619	// (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access).
13620	DirectInternetAccess *string `type:"string" enum:"DirectInternetAccess"`
13621
13622	// If status is Failed, the reason it failed.
13623	FailureReason *string `type:"string"`
13624
13625	// The type of ML compute instance running on the notebook instance.
13626	InstanceType *string `type:"string" enum:"InstanceType"`
13627
13628	// The AWS KMS key ID Amazon SageMaker uses to encrypt data when storing it
13629	// on the ML storage volume attached to the instance.
13630	KmsKeyId *string `type:"string"`
13631
13632	// A timestamp. Use this parameter to retrieve the time when the notebook instance
13633	// was last modified.
13634	LastModifiedTime *time.Time `type:"timestamp"`
13635
13636	// The network interface IDs that Amazon SageMaker created at the time of creating
13637	// the instance.
13638	NetworkInterfaceId *string `type:"string"`
13639
13640	// The Amazon Resource Name (ARN) of the notebook instance.
13641	NotebookInstanceArn *string `type:"string"`
13642
13643	// Returns the name of a notebook instance lifecycle configuration.
13644	//
13645	// For information about notebook instance lifestyle configurations, see Step
13646	// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)
13647	NotebookInstanceLifecycleConfigName *string `type:"string"`
13648
13649	// The name of the Amazon SageMaker notebook instance.
13650	NotebookInstanceName *string `type:"string"`
13651
13652	// The status of the notebook instance.
13653	NotebookInstanceStatus *string `type:"string" enum:"NotebookInstanceStatus"`
13654
13655	// The Amazon Resource Name (ARN) of the IAM role associated with the instance.
13656	RoleArn *string `min:"20" type:"string"`
13657
13658	// Whether root access is enabled or disabled for users of the notebook instance.
13659	//
13660	// Lifecycle configurations need root access to be able to set up a notebook
13661	// instance. Because of this, lifecycle configurations associated with a notebook
13662	// instance always run with root access even if you disable root access for
13663	// users.
13664	RootAccess *string `type:"string" enum:"RootAccess"`
13665
13666	// The IDs of the VPC security groups.
13667	SecurityGroups []*string `type:"list"`
13668
13669	// The ID of the VPC subnet.
13670	SubnetId *string `type:"string"`
13671
13672	// The URL that you use to connect to the Jupyter notebook that is running in
13673	// your notebook instance.
13674	Url *string `type:"string"`
13675
13676	// The size, in GB, of the ML storage volume attached to the notebook instance.
13677	VolumeSizeInGB *int64 `min:"5" type:"integer"`
13678}
13679
13680// String returns the string representation
13681func (s DescribeNotebookInstanceOutput) String() string {
13682	return awsutil.Prettify(s)
13683}
13684
13685// GoString returns the string representation
13686func (s DescribeNotebookInstanceOutput) GoString() string {
13687	return s.String()
13688}
13689
13690// SetAcceleratorTypes sets the AcceleratorTypes field's value.
13691func (s *DescribeNotebookInstanceOutput) SetAcceleratorTypes(v []*string) *DescribeNotebookInstanceOutput {
13692	s.AcceleratorTypes = v
13693	return s
13694}
13695
13696// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
13697func (s *DescribeNotebookInstanceOutput) SetAdditionalCodeRepositories(v []*string) *DescribeNotebookInstanceOutput {
13698	s.AdditionalCodeRepositories = v
13699	return s
13700}
13701
13702// SetCreationTime sets the CreationTime field's value.
13703func (s *DescribeNotebookInstanceOutput) SetCreationTime(v time.Time) *DescribeNotebookInstanceOutput {
13704	s.CreationTime = &v
13705	return s
13706}
13707
13708// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
13709func (s *DescribeNotebookInstanceOutput) SetDefaultCodeRepository(v string) *DescribeNotebookInstanceOutput {
13710	s.DefaultCodeRepository = &v
13711	return s
13712}
13713
13714// SetDirectInternetAccess sets the DirectInternetAccess field's value.
13715func (s *DescribeNotebookInstanceOutput) SetDirectInternetAccess(v string) *DescribeNotebookInstanceOutput {
13716	s.DirectInternetAccess = &v
13717	return s
13718}
13719
13720// SetFailureReason sets the FailureReason field's value.
13721func (s *DescribeNotebookInstanceOutput) SetFailureReason(v string) *DescribeNotebookInstanceOutput {
13722	s.FailureReason = &v
13723	return s
13724}
13725
13726// SetInstanceType sets the InstanceType field's value.
13727func (s *DescribeNotebookInstanceOutput) SetInstanceType(v string) *DescribeNotebookInstanceOutput {
13728	s.InstanceType = &v
13729	return s
13730}
13731
13732// SetKmsKeyId sets the KmsKeyId field's value.
13733func (s *DescribeNotebookInstanceOutput) SetKmsKeyId(v string) *DescribeNotebookInstanceOutput {
13734	s.KmsKeyId = &v
13735	return s
13736}
13737
13738// SetLastModifiedTime sets the LastModifiedTime field's value.
13739func (s *DescribeNotebookInstanceOutput) SetLastModifiedTime(v time.Time) *DescribeNotebookInstanceOutput {
13740	s.LastModifiedTime = &v
13741	return s
13742}
13743
13744// SetNetworkInterfaceId sets the NetworkInterfaceId field's value.
13745func (s *DescribeNotebookInstanceOutput) SetNetworkInterfaceId(v string) *DescribeNotebookInstanceOutput {
13746	s.NetworkInterfaceId = &v
13747	return s
13748}
13749
13750// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
13751func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceArn(v string) *DescribeNotebookInstanceOutput {
13752	s.NotebookInstanceArn = &v
13753	return s
13754}
13755
13756// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
13757func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceLifecycleConfigName(v string) *DescribeNotebookInstanceOutput {
13758	s.NotebookInstanceLifecycleConfigName = &v
13759	return s
13760}
13761
13762// SetNotebookInstanceName sets the NotebookInstanceName field's value.
13763func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceName(v string) *DescribeNotebookInstanceOutput {
13764	s.NotebookInstanceName = &v
13765	return s
13766}
13767
13768// SetNotebookInstanceStatus sets the NotebookInstanceStatus field's value.
13769func (s *DescribeNotebookInstanceOutput) SetNotebookInstanceStatus(v string) *DescribeNotebookInstanceOutput {
13770	s.NotebookInstanceStatus = &v
13771	return s
13772}
13773
13774// SetRoleArn sets the RoleArn field's value.
13775func (s *DescribeNotebookInstanceOutput) SetRoleArn(v string) *DescribeNotebookInstanceOutput {
13776	s.RoleArn = &v
13777	return s
13778}
13779
13780// SetRootAccess sets the RootAccess field's value.
13781func (s *DescribeNotebookInstanceOutput) SetRootAccess(v string) *DescribeNotebookInstanceOutput {
13782	s.RootAccess = &v
13783	return s
13784}
13785
13786// SetSecurityGroups sets the SecurityGroups field's value.
13787func (s *DescribeNotebookInstanceOutput) SetSecurityGroups(v []*string) *DescribeNotebookInstanceOutput {
13788	s.SecurityGroups = v
13789	return s
13790}
13791
13792// SetSubnetId sets the SubnetId field's value.
13793func (s *DescribeNotebookInstanceOutput) SetSubnetId(v string) *DescribeNotebookInstanceOutput {
13794	s.SubnetId = &v
13795	return s
13796}
13797
13798// SetUrl sets the Url field's value.
13799func (s *DescribeNotebookInstanceOutput) SetUrl(v string) *DescribeNotebookInstanceOutput {
13800	s.Url = &v
13801	return s
13802}
13803
13804// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
13805func (s *DescribeNotebookInstanceOutput) SetVolumeSizeInGB(v int64) *DescribeNotebookInstanceOutput {
13806	s.VolumeSizeInGB = &v
13807	return s
13808}
13809
13810type DescribeSubscribedWorkteamInput struct {
13811	_ struct{} `type:"structure"`
13812
13813	// The Amazon Resource Name (ARN) of the subscribed work team to describe.
13814	//
13815	// WorkteamArn is a required field
13816	WorkteamArn *string `type:"string" required:"true"`
13817}
13818
13819// String returns the string representation
13820func (s DescribeSubscribedWorkteamInput) String() string {
13821	return awsutil.Prettify(s)
13822}
13823
13824// GoString returns the string representation
13825func (s DescribeSubscribedWorkteamInput) GoString() string {
13826	return s.String()
13827}
13828
13829// Validate inspects the fields of the type to determine if they are valid.
13830func (s *DescribeSubscribedWorkteamInput) Validate() error {
13831	invalidParams := request.ErrInvalidParams{Context: "DescribeSubscribedWorkteamInput"}
13832	if s.WorkteamArn == nil {
13833		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
13834	}
13835
13836	if invalidParams.Len() > 0 {
13837		return invalidParams
13838	}
13839	return nil
13840}
13841
13842// SetWorkteamArn sets the WorkteamArn field's value.
13843func (s *DescribeSubscribedWorkteamInput) SetWorkteamArn(v string) *DescribeSubscribedWorkteamInput {
13844	s.WorkteamArn = &v
13845	return s
13846}
13847
13848type DescribeSubscribedWorkteamOutput struct {
13849	_ struct{} `type:"structure"`
13850
13851	// A Workteam instance that contains information about the work team.
13852	//
13853	// SubscribedWorkteam is a required field
13854	SubscribedWorkteam *SubscribedWorkteam `type:"structure" required:"true"`
13855}
13856
13857// String returns the string representation
13858func (s DescribeSubscribedWorkteamOutput) String() string {
13859	return awsutil.Prettify(s)
13860}
13861
13862// GoString returns the string representation
13863func (s DescribeSubscribedWorkteamOutput) GoString() string {
13864	return s.String()
13865}
13866
13867// SetSubscribedWorkteam sets the SubscribedWorkteam field's value.
13868func (s *DescribeSubscribedWorkteamOutput) SetSubscribedWorkteam(v *SubscribedWorkteam) *DescribeSubscribedWorkteamOutput {
13869	s.SubscribedWorkteam = v
13870	return s
13871}
13872
13873type DescribeTrainingJobInput struct {
13874	_ struct{} `type:"structure"`
13875
13876	// The name of the training job.
13877	//
13878	// TrainingJobName is a required field
13879	TrainingJobName *string `min:"1" type:"string" required:"true"`
13880}
13881
13882// String returns the string representation
13883func (s DescribeTrainingJobInput) String() string {
13884	return awsutil.Prettify(s)
13885}
13886
13887// GoString returns the string representation
13888func (s DescribeTrainingJobInput) GoString() string {
13889	return s.String()
13890}
13891
13892// Validate inspects the fields of the type to determine if they are valid.
13893func (s *DescribeTrainingJobInput) Validate() error {
13894	invalidParams := request.ErrInvalidParams{Context: "DescribeTrainingJobInput"}
13895	if s.TrainingJobName == nil {
13896		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
13897	}
13898	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
13899		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
13900	}
13901
13902	if invalidParams.Len() > 0 {
13903		return invalidParams
13904	}
13905	return nil
13906}
13907
13908// SetTrainingJobName sets the TrainingJobName field's value.
13909func (s *DescribeTrainingJobInput) SetTrainingJobName(v string) *DescribeTrainingJobInput {
13910	s.TrainingJobName = &v
13911	return s
13912}
13913
13914type DescribeTrainingJobOutput struct {
13915	_ struct{} `type:"structure"`
13916
13917	// Information about the algorithm used for training, and algorithm metadata.
13918	//
13919	// AlgorithmSpecification is a required field
13920	AlgorithmSpecification *AlgorithmSpecification `type:"structure" required:"true"`
13921
13922	// The billable time in seconds.
13923	//
13924	// You can calculate the savings from using managed spot training using the
13925	// formula (1 - BillableTimeInSeconds / TrainingTimeInSeconds) * 100. For example,
13926	// if BillableTimeInSeconds is 100 and TrainingTimeInSeconds is 500, the savings
13927	// is 80%.
13928	BillableTimeInSeconds *int64 `min:"1" type:"integer"`
13929
13930	// Contains information about the output location for managed spot training
13931	// checkpoint data.
13932	CheckpointConfig *CheckpointConfig `type:"structure"`
13933
13934	// A timestamp that indicates when the training job was created.
13935	//
13936	// CreationTime is a required field
13937	CreationTime *time.Time `type:"timestamp" required:"true"`
13938
13939	// To encrypt all communications between ML compute instances in distributed
13940	// training, choose True. Encryption provides greater security for distributed
13941	// training, but training might take longer. How long it takes depends on the
13942	// amount of communication between compute instances, especially if you use
13943	// a deep learning algorithms in distributed training.
13944	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
13945
13946	// A Boolean indicating whether managed spot training is enabled (True) or not
13947	// (False).
13948	EnableManagedSpotTraining *bool `type:"boolean"`
13949
13950	// If you want to allow inbound or outbound network calls, except for calls
13951	// between peers within a training cluster for distributed training, choose
13952	// True. If you enable network isolation for training jobs that are configured
13953	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
13954	// artifacts through the specified VPC, but the training container does not
13955	// have network access.
13956	//
13957	// The Semantic Segmentation built-in algorithm does not support network isolation.
13958	EnableNetworkIsolation *bool `type:"boolean"`
13959
13960	// If the training job failed, the reason it failed.
13961	FailureReason *string `type:"string"`
13962
13963	// A collection of MetricData objects that specify the names, values, and dates
13964	// and times that the training algorithm emitted to Amazon CloudWatch.
13965	FinalMetricDataList []*MetricData `type:"list"`
13966
13967	// Algorithm-specific parameters.
13968	HyperParameters map[string]*string `type:"map"`
13969
13970	// An array of Channel objects that describes each data input channel.
13971	InputDataConfig []*Channel `min:"1" type:"list"`
13972
13973	// The Amazon Resource Name (ARN) of the Amazon SageMaker Ground Truth labeling
13974	// job that created the transform or training job.
13975	LabelingJobArn *string `type:"string"`
13976
13977	// A timestamp that indicates when the status of the training job was last modified.
13978	LastModifiedTime *time.Time `type:"timestamp"`
13979
13980	// Information about the Amazon S3 location that is configured for storing model
13981	// artifacts.
13982	//
13983	// ModelArtifacts is a required field
13984	ModelArtifacts *ModelArtifacts `type:"structure" required:"true"`
13985
13986	// The S3 path where model artifacts that you configured when creating the job
13987	// are stored. Amazon SageMaker creates subfolders for model artifacts.
13988	OutputDataConfig *OutputDataConfig `type:"structure"`
13989
13990	// Resources, including ML compute instances and ML storage volumes, that are
13991	// configured for model training.
13992	//
13993	// ResourceConfig is a required field
13994	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
13995
13996	// The AWS Identity and Access Management (IAM) role configured for the training
13997	// job.
13998	RoleArn *string `min:"20" type:"string"`
13999
14000	// Provides detailed information about the state of the training job. For detailed
14001	// information on the secondary status of the training job, see StatusMessage
14002	// under SecondaryStatusTransition.
14003	//
14004	// Amazon SageMaker provides primary statuses and secondary statuses that apply
14005	// to each of them:
14006	//
14007	// InProgress
14008	//
14009	//    * Starting - Starting the training job.
14010	//
14011	//    * Downloading - An optional stage for algorithms that support File training
14012	//    input mode. It indicates that data is being downloaded to the ML storage
14013	//    volumes.
14014	//
14015	//    * Training - Training is in progress.
14016	//
14017	//    * Uploading - Training is complete and the model artifacts are being uploaded
14018	//    to the S3 location.
14019	//
14020	// Completed
14021	//
14022	//    * Completed - The training job has completed.
14023	//
14024	// Failed
14025	//
14026	//    * Failed - The training job has failed. The reason for the failure is
14027	//    returned in the FailureReason field of DescribeTrainingJobResponse.
14028	//
14029	// Stopped
14030	//
14031	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
14032	//    allowed runtime.
14033	//
14034	//    * MaxWaitTmeExceeded - The job stopped because it exceeded the maximum
14035	//    allowed wait time.
14036	//
14037	//    * Interrupted - The job stopped because the managed spot training instances
14038	//    were interrupted.
14039	//
14040	//    * Stopped - The training job has stopped.
14041	//
14042	// Stopping
14043	//
14044	//    * Stopping - Stopping the training job.
14045	//
14046	// Valid values for SecondaryStatus are subject to change.
14047	//
14048	// We no longer support the following secondary statuses:
14049	//
14050	//    * LaunchingMLInstances
14051	//
14052	//    * PreparingTrainingStack
14053	//
14054	//    * DownloadingTrainingImage
14055	//
14056	// SecondaryStatus is a required field
14057	SecondaryStatus *string `type:"string" required:"true" enum:"SecondaryStatus"`
14058
14059	// A history of all of the secondary statuses that the training job has transitioned
14060	// through.
14061	SecondaryStatusTransitions []*SecondaryStatusTransition `type:"list"`
14062
14063	// Specifies a limit to how long a model training job can run. It also specifies
14064	// the maximum time to wait for a spot instance. When the job reaches the time
14065	// limit, Amazon SageMaker ends the training job. Use this API to cap model
14066	// training costs.
14067	//
14068	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
14069	// delays job termination for 120 seconds. Algorithms can use this 120-second
14070	// window to save the model artifacts, so the results of training are not lost.
14071	//
14072	// StoppingCondition is a required field
14073	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
14074
14075	// Indicates the time when the training job ends on training instances. You
14076	// are billed for the time interval between the value of TrainingStartTime and
14077	// this time. For successful jobs and stopped jobs, this is the time after model
14078	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
14079	// detects a job failure.
14080	TrainingEndTime *time.Time `type:"timestamp"`
14081
14082	// The Amazon Resource Name (ARN) of the training job.
14083	//
14084	// TrainingJobArn is a required field
14085	TrainingJobArn *string `type:"string" required:"true"`
14086
14087	// Name of the model training job.
14088	//
14089	// TrainingJobName is a required field
14090	TrainingJobName *string `min:"1" type:"string" required:"true"`
14091
14092	// The status of the training job.
14093	//
14094	// Amazon SageMaker provides the following training job statuses:
14095	//
14096	//    * InProgress - The training is in progress.
14097	//
14098	//    * Completed - The training job has completed.
14099	//
14100	//    * Failed - The training job has failed. To see the reason for the failure,
14101	//    see the FailureReason field in the response to a DescribeTrainingJobResponse
14102	//    call.
14103	//
14104	//    * Stopping - The training job is stopping.
14105	//
14106	//    * Stopped - The training job has stopped.
14107	//
14108	// For more detailed information, see SecondaryStatus.
14109	//
14110	// TrainingJobStatus is a required field
14111	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
14112
14113	// Indicates the time when the training job starts on training instances. You
14114	// are billed for the time interval between this time and the value of TrainingEndTime.
14115	// The start time in CloudWatch Logs might be later than this time. The difference
14116	// is due to the time it takes to download the training data and to the size
14117	// of the training container.
14118	TrainingStartTime *time.Time `type:"timestamp"`
14119
14120	// The training time in seconds.
14121	TrainingTimeInSeconds *int64 `min:"1" type:"integer"`
14122
14123	// The Amazon Resource Name (ARN) of the associated hyperparameter tuning job
14124	// if the training job was launched by a hyperparameter tuning job.
14125	TuningJobArn *string `type:"string"`
14126
14127	// A VpcConfig object that specifies the VPC that this training job has access
14128	// to. For more information, see Protect Training Jobs by Using an Amazon Virtual
14129	// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
14130	VpcConfig *VpcConfig `type:"structure"`
14131}
14132
14133// String returns the string representation
14134func (s DescribeTrainingJobOutput) String() string {
14135	return awsutil.Prettify(s)
14136}
14137
14138// GoString returns the string representation
14139func (s DescribeTrainingJobOutput) GoString() string {
14140	return s.String()
14141}
14142
14143// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
14144func (s *DescribeTrainingJobOutput) SetAlgorithmSpecification(v *AlgorithmSpecification) *DescribeTrainingJobOutput {
14145	s.AlgorithmSpecification = v
14146	return s
14147}
14148
14149// SetBillableTimeInSeconds sets the BillableTimeInSeconds field's value.
14150func (s *DescribeTrainingJobOutput) SetBillableTimeInSeconds(v int64) *DescribeTrainingJobOutput {
14151	s.BillableTimeInSeconds = &v
14152	return s
14153}
14154
14155// SetCheckpointConfig sets the CheckpointConfig field's value.
14156func (s *DescribeTrainingJobOutput) SetCheckpointConfig(v *CheckpointConfig) *DescribeTrainingJobOutput {
14157	s.CheckpointConfig = v
14158	return s
14159}
14160
14161// SetCreationTime sets the CreationTime field's value.
14162func (s *DescribeTrainingJobOutput) SetCreationTime(v time.Time) *DescribeTrainingJobOutput {
14163	s.CreationTime = &v
14164	return s
14165}
14166
14167// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
14168func (s *DescribeTrainingJobOutput) SetEnableInterContainerTrafficEncryption(v bool) *DescribeTrainingJobOutput {
14169	s.EnableInterContainerTrafficEncryption = &v
14170	return s
14171}
14172
14173// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
14174func (s *DescribeTrainingJobOutput) SetEnableManagedSpotTraining(v bool) *DescribeTrainingJobOutput {
14175	s.EnableManagedSpotTraining = &v
14176	return s
14177}
14178
14179// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
14180func (s *DescribeTrainingJobOutput) SetEnableNetworkIsolation(v bool) *DescribeTrainingJobOutput {
14181	s.EnableNetworkIsolation = &v
14182	return s
14183}
14184
14185// SetFailureReason sets the FailureReason field's value.
14186func (s *DescribeTrainingJobOutput) SetFailureReason(v string) *DescribeTrainingJobOutput {
14187	s.FailureReason = &v
14188	return s
14189}
14190
14191// SetFinalMetricDataList sets the FinalMetricDataList field's value.
14192func (s *DescribeTrainingJobOutput) SetFinalMetricDataList(v []*MetricData) *DescribeTrainingJobOutput {
14193	s.FinalMetricDataList = v
14194	return s
14195}
14196
14197// SetHyperParameters sets the HyperParameters field's value.
14198func (s *DescribeTrainingJobOutput) SetHyperParameters(v map[string]*string) *DescribeTrainingJobOutput {
14199	s.HyperParameters = v
14200	return s
14201}
14202
14203// SetInputDataConfig sets the InputDataConfig field's value.
14204func (s *DescribeTrainingJobOutput) SetInputDataConfig(v []*Channel) *DescribeTrainingJobOutput {
14205	s.InputDataConfig = v
14206	return s
14207}
14208
14209// SetLabelingJobArn sets the LabelingJobArn field's value.
14210func (s *DescribeTrainingJobOutput) SetLabelingJobArn(v string) *DescribeTrainingJobOutput {
14211	s.LabelingJobArn = &v
14212	return s
14213}
14214
14215// SetLastModifiedTime sets the LastModifiedTime field's value.
14216func (s *DescribeTrainingJobOutput) SetLastModifiedTime(v time.Time) *DescribeTrainingJobOutput {
14217	s.LastModifiedTime = &v
14218	return s
14219}
14220
14221// SetModelArtifacts sets the ModelArtifacts field's value.
14222func (s *DescribeTrainingJobOutput) SetModelArtifacts(v *ModelArtifacts) *DescribeTrainingJobOutput {
14223	s.ModelArtifacts = v
14224	return s
14225}
14226
14227// SetOutputDataConfig sets the OutputDataConfig field's value.
14228func (s *DescribeTrainingJobOutput) SetOutputDataConfig(v *OutputDataConfig) *DescribeTrainingJobOutput {
14229	s.OutputDataConfig = v
14230	return s
14231}
14232
14233// SetResourceConfig sets the ResourceConfig field's value.
14234func (s *DescribeTrainingJobOutput) SetResourceConfig(v *ResourceConfig) *DescribeTrainingJobOutput {
14235	s.ResourceConfig = v
14236	return s
14237}
14238
14239// SetRoleArn sets the RoleArn field's value.
14240func (s *DescribeTrainingJobOutput) SetRoleArn(v string) *DescribeTrainingJobOutput {
14241	s.RoleArn = &v
14242	return s
14243}
14244
14245// SetSecondaryStatus sets the SecondaryStatus field's value.
14246func (s *DescribeTrainingJobOutput) SetSecondaryStatus(v string) *DescribeTrainingJobOutput {
14247	s.SecondaryStatus = &v
14248	return s
14249}
14250
14251// SetSecondaryStatusTransitions sets the SecondaryStatusTransitions field's value.
14252func (s *DescribeTrainingJobOutput) SetSecondaryStatusTransitions(v []*SecondaryStatusTransition) *DescribeTrainingJobOutput {
14253	s.SecondaryStatusTransitions = v
14254	return s
14255}
14256
14257// SetStoppingCondition sets the StoppingCondition field's value.
14258func (s *DescribeTrainingJobOutput) SetStoppingCondition(v *StoppingCondition) *DescribeTrainingJobOutput {
14259	s.StoppingCondition = v
14260	return s
14261}
14262
14263// SetTrainingEndTime sets the TrainingEndTime field's value.
14264func (s *DescribeTrainingJobOutput) SetTrainingEndTime(v time.Time) *DescribeTrainingJobOutput {
14265	s.TrainingEndTime = &v
14266	return s
14267}
14268
14269// SetTrainingJobArn sets the TrainingJobArn field's value.
14270func (s *DescribeTrainingJobOutput) SetTrainingJobArn(v string) *DescribeTrainingJobOutput {
14271	s.TrainingJobArn = &v
14272	return s
14273}
14274
14275// SetTrainingJobName sets the TrainingJobName field's value.
14276func (s *DescribeTrainingJobOutput) SetTrainingJobName(v string) *DescribeTrainingJobOutput {
14277	s.TrainingJobName = &v
14278	return s
14279}
14280
14281// SetTrainingJobStatus sets the TrainingJobStatus field's value.
14282func (s *DescribeTrainingJobOutput) SetTrainingJobStatus(v string) *DescribeTrainingJobOutput {
14283	s.TrainingJobStatus = &v
14284	return s
14285}
14286
14287// SetTrainingStartTime sets the TrainingStartTime field's value.
14288func (s *DescribeTrainingJobOutput) SetTrainingStartTime(v time.Time) *DescribeTrainingJobOutput {
14289	s.TrainingStartTime = &v
14290	return s
14291}
14292
14293// SetTrainingTimeInSeconds sets the TrainingTimeInSeconds field's value.
14294func (s *DescribeTrainingJobOutput) SetTrainingTimeInSeconds(v int64) *DescribeTrainingJobOutput {
14295	s.TrainingTimeInSeconds = &v
14296	return s
14297}
14298
14299// SetTuningJobArn sets the TuningJobArn field's value.
14300func (s *DescribeTrainingJobOutput) SetTuningJobArn(v string) *DescribeTrainingJobOutput {
14301	s.TuningJobArn = &v
14302	return s
14303}
14304
14305// SetVpcConfig sets the VpcConfig field's value.
14306func (s *DescribeTrainingJobOutput) SetVpcConfig(v *VpcConfig) *DescribeTrainingJobOutput {
14307	s.VpcConfig = v
14308	return s
14309}
14310
14311type DescribeTransformJobInput struct {
14312	_ struct{} `type:"structure"`
14313
14314	// The name of the transform job that you want to view details of.
14315	//
14316	// TransformJobName is a required field
14317	TransformJobName *string `min:"1" type:"string" required:"true"`
14318}
14319
14320// String returns the string representation
14321func (s DescribeTransformJobInput) String() string {
14322	return awsutil.Prettify(s)
14323}
14324
14325// GoString returns the string representation
14326func (s DescribeTransformJobInput) GoString() string {
14327	return s.String()
14328}
14329
14330// Validate inspects the fields of the type to determine if they are valid.
14331func (s *DescribeTransformJobInput) Validate() error {
14332	invalidParams := request.ErrInvalidParams{Context: "DescribeTransformJobInput"}
14333	if s.TransformJobName == nil {
14334		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
14335	}
14336	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
14337		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
14338	}
14339
14340	if invalidParams.Len() > 0 {
14341		return invalidParams
14342	}
14343	return nil
14344}
14345
14346// SetTransformJobName sets the TransformJobName field's value.
14347func (s *DescribeTransformJobInput) SetTransformJobName(v string) *DescribeTransformJobInput {
14348	s.TransformJobName = &v
14349	return s
14350}
14351
14352type DescribeTransformJobOutput struct {
14353	_ struct{} `type:"structure"`
14354
14355	// Specifies the number of records to include in a mini-batch for an HTTP inference
14356	// request. A record is a single unit of input data that inference can be made
14357	// on. For example, a single line in a CSV file is a record.
14358	//
14359	// To enable the batch strategy, you must set SplitType to Line, RecordIO, or
14360	// TFRecord.
14361	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
14362
14363	// A timestamp that shows when the transform Job was created.
14364	//
14365	// CreationTime is a required field
14366	CreationTime *time.Time `type:"timestamp" required:"true"`
14367
14368	// The data structure used to specify the data to be used for inference in a
14369	// batch transform job and to associate the data that is relevant to the prediction
14370	// results in the output. The input filter provided allows you to exclude input
14371	// data that is not needed for inference in a batch transform job. The output
14372	// filter provided allows you to include input data relevant to interpreting
14373	// the predictions in the output from the job. For more information, see Associate
14374	// Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html).
14375	DataProcessing *DataProcessing `type:"structure"`
14376
14377	// The environment variables to set in the Docker container. We support up to
14378	// 16 key and values entries in the map.
14379	Environment map[string]*string `type:"map"`
14380
14381	// If the transform job failed, FailureReason describes why it failed. A transform
14382	// job creates a log file, which includes error messages, and stores it as an
14383	// Amazon S3 object. For more information, see Log Amazon SageMaker Events with
14384	// Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html).
14385	FailureReason *string `type:"string"`
14386
14387	// The Amazon Resource Name (ARN) of the Amazon SageMaker Ground Truth labeling
14388	// job that created the transform or training job.
14389	LabelingJobArn *string `type:"string"`
14390
14391	// The maximum number of parallel requests on each instance node that can be
14392	// launched in a transform job. The default value is 1.
14393	MaxConcurrentTransforms *int64 `type:"integer"`
14394
14395	// The maximum payload size, in MB, used in the transform job.
14396	MaxPayloadInMB *int64 `type:"integer"`
14397
14398	// The name of the model used in the transform job.
14399	//
14400	// ModelName is a required field
14401	ModelName *string `type:"string" required:"true"`
14402
14403	// Indicates when the transform job has been completed, or has stopped or failed.
14404	// You are billed for the time interval between this time and the value of TransformStartTime.
14405	TransformEndTime *time.Time `type:"timestamp"`
14406
14407	// Describes the dataset to be transformed and the Amazon S3 location where
14408	// it is stored.
14409	//
14410	// TransformInput is a required field
14411	TransformInput *TransformInput `type:"structure" required:"true"`
14412
14413	// The Amazon Resource Name (ARN) of the transform job.
14414	//
14415	// TransformJobArn is a required field
14416	TransformJobArn *string `type:"string" required:"true"`
14417
14418	// The name of the transform job.
14419	//
14420	// TransformJobName is a required field
14421	TransformJobName *string `min:"1" type:"string" required:"true"`
14422
14423	// The status of the transform job. If the transform job failed, the reason
14424	// is returned in the FailureReason field.
14425	//
14426	// TransformJobStatus is a required field
14427	TransformJobStatus *string `type:"string" required:"true" enum:"TransformJobStatus"`
14428
14429	// Identifies the Amazon S3 location where you want Amazon SageMaker to save
14430	// the results from the transform job.
14431	TransformOutput *TransformOutput `type:"structure"`
14432
14433	// Describes the resources, including ML instance types and ML instance count,
14434	// to use for the transform job.
14435	//
14436	// TransformResources is a required field
14437	TransformResources *TransformResources `type:"structure" required:"true"`
14438
14439	// Indicates when the transform job starts on ML instances. You are billed for
14440	// the time interval between this time and the value of TransformEndTime.
14441	TransformStartTime *time.Time `type:"timestamp"`
14442}
14443
14444// String returns the string representation
14445func (s DescribeTransformJobOutput) String() string {
14446	return awsutil.Prettify(s)
14447}
14448
14449// GoString returns the string representation
14450func (s DescribeTransformJobOutput) GoString() string {
14451	return s.String()
14452}
14453
14454// SetBatchStrategy sets the BatchStrategy field's value.
14455func (s *DescribeTransformJobOutput) SetBatchStrategy(v string) *DescribeTransformJobOutput {
14456	s.BatchStrategy = &v
14457	return s
14458}
14459
14460// SetCreationTime sets the CreationTime field's value.
14461func (s *DescribeTransformJobOutput) SetCreationTime(v time.Time) *DescribeTransformJobOutput {
14462	s.CreationTime = &v
14463	return s
14464}
14465
14466// SetDataProcessing sets the DataProcessing field's value.
14467func (s *DescribeTransformJobOutput) SetDataProcessing(v *DataProcessing) *DescribeTransformJobOutput {
14468	s.DataProcessing = v
14469	return s
14470}
14471
14472// SetEnvironment sets the Environment field's value.
14473func (s *DescribeTransformJobOutput) SetEnvironment(v map[string]*string) *DescribeTransformJobOutput {
14474	s.Environment = v
14475	return s
14476}
14477
14478// SetFailureReason sets the FailureReason field's value.
14479func (s *DescribeTransformJobOutput) SetFailureReason(v string) *DescribeTransformJobOutput {
14480	s.FailureReason = &v
14481	return s
14482}
14483
14484// SetLabelingJobArn sets the LabelingJobArn field's value.
14485func (s *DescribeTransformJobOutput) SetLabelingJobArn(v string) *DescribeTransformJobOutput {
14486	s.LabelingJobArn = &v
14487	return s
14488}
14489
14490// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
14491func (s *DescribeTransformJobOutput) SetMaxConcurrentTransforms(v int64) *DescribeTransformJobOutput {
14492	s.MaxConcurrentTransforms = &v
14493	return s
14494}
14495
14496// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
14497func (s *DescribeTransformJobOutput) SetMaxPayloadInMB(v int64) *DescribeTransformJobOutput {
14498	s.MaxPayloadInMB = &v
14499	return s
14500}
14501
14502// SetModelName sets the ModelName field's value.
14503func (s *DescribeTransformJobOutput) SetModelName(v string) *DescribeTransformJobOutput {
14504	s.ModelName = &v
14505	return s
14506}
14507
14508// SetTransformEndTime sets the TransformEndTime field's value.
14509func (s *DescribeTransformJobOutput) SetTransformEndTime(v time.Time) *DescribeTransformJobOutput {
14510	s.TransformEndTime = &v
14511	return s
14512}
14513
14514// SetTransformInput sets the TransformInput field's value.
14515func (s *DescribeTransformJobOutput) SetTransformInput(v *TransformInput) *DescribeTransformJobOutput {
14516	s.TransformInput = v
14517	return s
14518}
14519
14520// SetTransformJobArn sets the TransformJobArn field's value.
14521func (s *DescribeTransformJobOutput) SetTransformJobArn(v string) *DescribeTransformJobOutput {
14522	s.TransformJobArn = &v
14523	return s
14524}
14525
14526// SetTransformJobName sets the TransformJobName field's value.
14527func (s *DescribeTransformJobOutput) SetTransformJobName(v string) *DescribeTransformJobOutput {
14528	s.TransformJobName = &v
14529	return s
14530}
14531
14532// SetTransformJobStatus sets the TransformJobStatus field's value.
14533func (s *DescribeTransformJobOutput) SetTransformJobStatus(v string) *DescribeTransformJobOutput {
14534	s.TransformJobStatus = &v
14535	return s
14536}
14537
14538// SetTransformOutput sets the TransformOutput field's value.
14539func (s *DescribeTransformJobOutput) SetTransformOutput(v *TransformOutput) *DescribeTransformJobOutput {
14540	s.TransformOutput = v
14541	return s
14542}
14543
14544// SetTransformResources sets the TransformResources field's value.
14545func (s *DescribeTransformJobOutput) SetTransformResources(v *TransformResources) *DescribeTransformJobOutput {
14546	s.TransformResources = v
14547	return s
14548}
14549
14550// SetTransformStartTime sets the TransformStartTime field's value.
14551func (s *DescribeTransformJobOutput) SetTransformStartTime(v time.Time) *DescribeTransformJobOutput {
14552	s.TransformStartTime = &v
14553	return s
14554}
14555
14556type DescribeWorkteamInput struct {
14557	_ struct{} `type:"structure"`
14558
14559	// The name of the work team to return a description of.
14560	//
14561	// WorkteamName is a required field
14562	WorkteamName *string `min:"1" type:"string" required:"true"`
14563}
14564
14565// String returns the string representation
14566func (s DescribeWorkteamInput) String() string {
14567	return awsutil.Prettify(s)
14568}
14569
14570// GoString returns the string representation
14571func (s DescribeWorkteamInput) GoString() string {
14572	return s.String()
14573}
14574
14575// Validate inspects the fields of the type to determine if they are valid.
14576func (s *DescribeWorkteamInput) Validate() error {
14577	invalidParams := request.ErrInvalidParams{Context: "DescribeWorkteamInput"}
14578	if s.WorkteamName == nil {
14579		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
14580	}
14581	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
14582		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
14583	}
14584
14585	if invalidParams.Len() > 0 {
14586		return invalidParams
14587	}
14588	return nil
14589}
14590
14591// SetWorkteamName sets the WorkteamName field's value.
14592func (s *DescribeWorkteamInput) SetWorkteamName(v string) *DescribeWorkteamInput {
14593	s.WorkteamName = &v
14594	return s
14595}
14596
14597type DescribeWorkteamOutput struct {
14598	_ struct{} `type:"structure"`
14599
14600	// A Workteam instance that contains information about the work team.
14601	//
14602	// Workteam is a required field
14603	Workteam *Workteam `type:"structure" required:"true"`
14604}
14605
14606// String returns the string representation
14607func (s DescribeWorkteamOutput) String() string {
14608	return awsutil.Prettify(s)
14609}
14610
14611// GoString returns the string representation
14612func (s DescribeWorkteamOutput) GoString() string {
14613	return s.String()
14614}
14615
14616// SetWorkteam sets the Workteam field's value.
14617func (s *DescribeWorkteamOutput) SetWorkteam(v *Workteam) *DescribeWorkteamOutput {
14618	s.Workteam = v
14619	return s
14620}
14621
14622// Specifies weight and capacity values for a production variant.
14623type DesiredWeightAndCapacity struct {
14624	_ struct{} `type:"structure"`
14625
14626	// The variant's capacity.
14627	DesiredInstanceCount *int64 `min:"1" type:"integer"`
14628
14629	// The variant's weight.
14630	DesiredWeight *float64 `type:"float"`
14631
14632	// The name of the variant to update.
14633	//
14634	// VariantName is a required field
14635	VariantName *string `type:"string" required:"true"`
14636}
14637
14638// String returns the string representation
14639func (s DesiredWeightAndCapacity) String() string {
14640	return awsutil.Prettify(s)
14641}
14642
14643// GoString returns the string representation
14644func (s DesiredWeightAndCapacity) GoString() string {
14645	return s.String()
14646}
14647
14648// Validate inspects the fields of the type to determine if they are valid.
14649func (s *DesiredWeightAndCapacity) Validate() error {
14650	invalidParams := request.ErrInvalidParams{Context: "DesiredWeightAndCapacity"}
14651	if s.DesiredInstanceCount != nil && *s.DesiredInstanceCount < 1 {
14652		invalidParams.Add(request.NewErrParamMinValue("DesiredInstanceCount", 1))
14653	}
14654	if s.VariantName == nil {
14655		invalidParams.Add(request.NewErrParamRequired("VariantName"))
14656	}
14657
14658	if invalidParams.Len() > 0 {
14659		return invalidParams
14660	}
14661	return nil
14662}
14663
14664// SetDesiredInstanceCount sets the DesiredInstanceCount field's value.
14665func (s *DesiredWeightAndCapacity) SetDesiredInstanceCount(v int64) *DesiredWeightAndCapacity {
14666	s.DesiredInstanceCount = &v
14667	return s
14668}
14669
14670// SetDesiredWeight sets the DesiredWeight field's value.
14671func (s *DesiredWeightAndCapacity) SetDesiredWeight(v float64) *DesiredWeightAndCapacity {
14672	s.DesiredWeight = &v
14673	return s
14674}
14675
14676// SetVariantName sets the VariantName field's value.
14677func (s *DesiredWeightAndCapacity) SetVariantName(v string) *DesiredWeightAndCapacity {
14678	s.VariantName = &v
14679	return s
14680}
14681
14682// Provides summary information for an endpoint configuration.
14683type EndpointConfigSummary struct {
14684	_ struct{} `type:"structure"`
14685
14686	// A timestamp that shows when the endpoint configuration was created.
14687	//
14688	// CreationTime is a required field
14689	CreationTime *time.Time `type:"timestamp" required:"true"`
14690
14691	// The Amazon Resource Name (ARN) of the endpoint configuration.
14692	//
14693	// EndpointConfigArn is a required field
14694	EndpointConfigArn *string `min:"20" type:"string" required:"true"`
14695
14696	// The name of the endpoint configuration.
14697	//
14698	// EndpointConfigName is a required field
14699	EndpointConfigName *string `type:"string" required:"true"`
14700}
14701
14702// String returns the string representation
14703func (s EndpointConfigSummary) String() string {
14704	return awsutil.Prettify(s)
14705}
14706
14707// GoString returns the string representation
14708func (s EndpointConfigSummary) GoString() string {
14709	return s.String()
14710}
14711
14712// SetCreationTime sets the CreationTime field's value.
14713func (s *EndpointConfigSummary) SetCreationTime(v time.Time) *EndpointConfigSummary {
14714	s.CreationTime = &v
14715	return s
14716}
14717
14718// SetEndpointConfigArn sets the EndpointConfigArn field's value.
14719func (s *EndpointConfigSummary) SetEndpointConfigArn(v string) *EndpointConfigSummary {
14720	s.EndpointConfigArn = &v
14721	return s
14722}
14723
14724// SetEndpointConfigName sets the EndpointConfigName field's value.
14725func (s *EndpointConfigSummary) SetEndpointConfigName(v string) *EndpointConfigSummary {
14726	s.EndpointConfigName = &v
14727	return s
14728}
14729
14730// Provides summary information for an endpoint.
14731type EndpointSummary struct {
14732	_ struct{} `type:"structure"`
14733
14734	// A timestamp that shows when the endpoint was created.
14735	//
14736	// CreationTime is a required field
14737	CreationTime *time.Time `type:"timestamp" required:"true"`
14738
14739	// The Amazon Resource Name (ARN) of the endpoint.
14740	//
14741	// EndpointArn is a required field
14742	EndpointArn *string `min:"20" type:"string" required:"true"`
14743
14744	// The name of the endpoint.
14745	//
14746	// EndpointName is a required field
14747	EndpointName *string `type:"string" required:"true"`
14748
14749	// The status of the endpoint.
14750	//
14751	//    * OutOfService: Endpoint is not available to take incoming requests.
14752	//
14753	//    * Creating: CreateEndpoint is executing.
14754	//
14755	//    * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing.
14756	//
14757	//    * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated
14758	//    or deleted or re-scaled until it has completed. This maintenance operation
14759	//    does not change any customer-specified values such as VPC config, KMS
14760	//    encryption, model, instance type, or instance count.
14761	//
14762	//    * RollingBack: Endpoint fails to scale up or down or change its variant
14763	//    weight and is in the process of rolling back to its previous configuration.
14764	//    Once the rollback completes, endpoint returns to an InService status.
14765	//    This transitional status only applies to an endpoint that has autoscaling
14766	//    enabled and is undergoing variant weight or capacity changes as part of
14767	//    an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities
14768	//    operation is called explicitly.
14769	//
14770	//    * InService: Endpoint is available to process incoming requests.
14771	//
14772	//    * Deleting: DeleteEndpoint is executing.
14773	//
14774	//    * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason
14775	//    for information about the failure. DeleteEndpoint is the only operation
14776	//    that can be performed on a failed endpoint.
14777	//
14778	// To get a list of endpoints with a specified status, use the ListEndpointsInput$StatusEquals
14779	// filter.
14780	//
14781	// EndpointStatus is a required field
14782	EndpointStatus *string `type:"string" required:"true" enum:"EndpointStatus"`
14783
14784	// A timestamp that shows when the endpoint was last modified.
14785	//
14786	// LastModifiedTime is a required field
14787	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
14788}
14789
14790// String returns the string representation
14791func (s EndpointSummary) String() string {
14792	return awsutil.Prettify(s)
14793}
14794
14795// GoString returns the string representation
14796func (s EndpointSummary) GoString() string {
14797	return s.String()
14798}
14799
14800// SetCreationTime sets the CreationTime field's value.
14801func (s *EndpointSummary) SetCreationTime(v time.Time) *EndpointSummary {
14802	s.CreationTime = &v
14803	return s
14804}
14805
14806// SetEndpointArn sets the EndpointArn field's value.
14807func (s *EndpointSummary) SetEndpointArn(v string) *EndpointSummary {
14808	s.EndpointArn = &v
14809	return s
14810}
14811
14812// SetEndpointName sets the EndpointName field's value.
14813func (s *EndpointSummary) SetEndpointName(v string) *EndpointSummary {
14814	s.EndpointName = &v
14815	return s
14816}
14817
14818// SetEndpointStatus sets the EndpointStatus field's value.
14819func (s *EndpointSummary) SetEndpointStatus(v string) *EndpointSummary {
14820	s.EndpointStatus = &v
14821	return s
14822}
14823
14824// SetLastModifiedTime sets the LastModifiedTime field's value.
14825func (s *EndpointSummary) SetLastModifiedTime(v time.Time) *EndpointSummary {
14826	s.LastModifiedTime = &v
14827	return s
14828}
14829
14830// Specifies a file system data source for a channel.
14831type FileSystemDataSource struct {
14832	_ struct{} `type:"structure"`
14833
14834	// The full path to the directory to associate with the channel.
14835	//
14836	// DirectoryPath is a required field
14837	DirectoryPath *string `type:"string" required:"true"`
14838
14839	// The access mode of the mount of the directory associated with the channel.
14840	// A directory can be mounted either in ro (read-only) or rw (read-write).
14841	//
14842	// FileSystemAccessMode is a required field
14843	FileSystemAccessMode *string `type:"string" required:"true" enum:"FileSystemAccessMode"`
14844
14845	// The file system id.
14846	//
14847	// FileSystemId is a required field
14848	FileSystemId *string `min:"11" type:"string" required:"true"`
14849
14850	// The file system type.
14851	//
14852	// FileSystemType is a required field
14853	FileSystemType *string `type:"string" required:"true" enum:"FileSystemType"`
14854}
14855
14856// String returns the string representation
14857func (s FileSystemDataSource) String() string {
14858	return awsutil.Prettify(s)
14859}
14860
14861// GoString returns the string representation
14862func (s FileSystemDataSource) GoString() string {
14863	return s.String()
14864}
14865
14866// Validate inspects the fields of the type to determine if they are valid.
14867func (s *FileSystemDataSource) Validate() error {
14868	invalidParams := request.ErrInvalidParams{Context: "FileSystemDataSource"}
14869	if s.DirectoryPath == nil {
14870		invalidParams.Add(request.NewErrParamRequired("DirectoryPath"))
14871	}
14872	if s.FileSystemAccessMode == nil {
14873		invalidParams.Add(request.NewErrParamRequired("FileSystemAccessMode"))
14874	}
14875	if s.FileSystemId == nil {
14876		invalidParams.Add(request.NewErrParamRequired("FileSystemId"))
14877	}
14878	if s.FileSystemId != nil && len(*s.FileSystemId) < 11 {
14879		invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 11))
14880	}
14881	if s.FileSystemType == nil {
14882		invalidParams.Add(request.NewErrParamRequired("FileSystemType"))
14883	}
14884
14885	if invalidParams.Len() > 0 {
14886		return invalidParams
14887	}
14888	return nil
14889}
14890
14891// SetDirectoryPath sets the DirectoryPath field's value.
14892func (s *FileSystemDataSource) SetDirectoryPath(v string) *FileSystemDataSource {
14893	s.DirectoryPath = &v
14894	return s
14895}
14896
14897// SetFileSystemAccessMode sets the FileSystemAccessMode field's value.
14898func (s *FileSystemDataSource) SetFileSystemAccessMode(v string) *FileSystemDataSource {
14899	s.FileSystemAccessMode = &v
14900	return s
14901}
14902
14903// SetFileSystemId sets the FileSystemId field's value.
14904func (s *FileSystemDataSource) SetFileSystemId(v string) *FileSystemDataSource {
14905	s.FileSystemId = &v
14906	return s
14907}
14908
14909// SetFileSystemType sets the FileSystemType field's value.
14910func (s *FileSystemDataSource) SetFileSystemType(v string) *FileSystemDataSource {
14911	s.FileSystemType = &v
14912	return s
14913}
14914
14915// A conditional statement for a search expression that includes a Boolean operator,
14916// a resource property, and a value.
14917//
14918// If you don't specify an Operator and a Value, the filter searches for only
14919// the specified property. For example, defining a Filter for the FailureReason
14920// for the TrainingJob Resource searches for training job objects that have
14921// a value in the FailureReason field.
14922//
14923// If you specify a Value, but not an Operator, Amazon SageMaker uses the equals
14924// operator as the default.
14925//
14926// In search, there are several property types:
14927//
14928// Metrics
14929//
14930// To define a metric filter, enter a value using the form "Metrics.<name>",
14931// where <name> is a metric name. For example, the following filter searches
14932// for training jobs with an "accuracy" metric greater than "0.9":
14933//
14934// {
14935//
14936// "Name": "Metrics.accuracy",
14937//
14938// "Operator": "GREATER_THAN",
14939//
14940// "Value": "0.9"
14941//
14942// }
14943//
14944// HyperParameters
14945//
14946// To define a hyperparameter filter, enter a value with the form "HyperParameters.<name>".
14947// Decimal hyperparameter values are treated as a decimal in a comparison if
14948// the specified Value is also a decimal value. If the specified Value is an
14949// integer, the decimal hyperparameter values are treated as integers. For example,
14950// the following filter is satisfied by training jobs with a "learning_rate"
14951// hyperparameter that is less than "0.5":
14952//
14953// {
14954//
14955// "Name": "HyperParameters.learning_rate",
14956//
14957// "Operator": "LESS_THAN",
14958//
14959// "Value": "0.5"
14960//
14961// }
14962//
14963// Tags
14964//
14965// To define a tag filter, enter a value with the form "Tags.<key>".
14966type Filter struct {
14967	_ struct{} `type:"structure"`
14968
14969	// A property name. For example, TrainingJobName. For the list of valid property
14970	// names returned in a search result for each supported resource, see TrainingJob
14971	// properties. You must specify a valid property name for the resource.
14972	//
14973	// Name is a required field
14974	Name *string `min:"1" type:"string" required:"true"`
14975
14976	// A Boolean binary operator that is used to evaluate the filter. The operator
14977	// field contains one of the following values:
14978	//
14979	// Equals
14980	//
14981	// The specified resource in Name equals the specified Value.
14982	//
14983	// NotEquals
14984	//
14985	// The specified resource in Name does not equal the specified Value.
14986	//
14987	// GreaterThan
14988	//
14989	// The specified resource in Name is greater than the specified Value. Not supported
14990	// for text-based properties.
14991	//
14992	// GreaterThanOrEqualTo
14993	//
14994	// The specified resource in Name is greater than or equal to the specified
14995	// Value. Not supported for text-based properties.
14996	//
14997	// LessThan
14998	//
14999	// The specified resource in Name is less than the specified Value. Not supported
15000	// for text-based properties.
15001	//
15002	// LessThanOrEqualTo
15003	//
15004	// The specified resource in Name is less than or equal to the specified Value.
15005	// Not supported for text-based properties.
15006	//
15007	// Contains
15008	//
15009	// Only supported for text-based properties. The word-list of the property contains
15010	// the specified Value.
15011	//
15012	// If you have specified a filter Value, the default is Equals.
15013	Operator *string `type:"string" enum:"Operator"`
15014
15015	// A value used with Resource and Operator to determine if objects satisfy the
15016	// filter's condition. For numerical properties, Value must be an integer or
15017	// floating-point decimal. For timestamp properties, Value must be an ISO 8601
15018	// date-time string of the following format: YYYY-mm-dd'T'HH:MM:SS.
15019	Value *string `min:"1" type:"string"`
15020}
15021
15022// String returns the string representation
15023func (s Filter) String() string {
15024	return awsutil.Prettify(s)
15025}
15026
15027// GoString returns the string representation
15028func (s Filter) GoString() string {
15029	return s.String()
15030}
15031
15032// Validate inspects the fields of the type to determine if they are valid.
15033func (s *Filter) Validate() error {
15034	invalidParams := request.ErrInvalidParams{Context: "Filter"}
15035	if s.Name == nil {
15036		invalidParams.Add(request.NewErrParamRequired("Name"))
15037	}
15038	if s.Name != nil && len(*s.Name) < 1 {
15039		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
15040	}
15041	if s.Value != nil && len(*s.Value) < 1 {
15042		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
15043	}
15044
15045	if invalidParams.Len() > 0 {
15046		return invalidParams
15047	}
15048	return nil
15049}
15050
15051// SetName sets the Name field's value.
15052func (s *Filter) SetName(v string) *Filter {
15053	s.Name = &v
15054	return s
15055}
15056
15057// SetOperator sets the Operator field's value.
15058func (s *Filter) SetOperator(v string) *Filter {
15059	s.Operator = &v
15060	return s
15061}
15062
15063// SetValue sets the Value field's value.
15064func (s *Filter) SetValue(v string) *Filter {
15065	s.Value = &v
15066	return s
15067}
15068
15069// Shows the final value for the objective metric for a training job that was
15070// launched by a hyperparameter tuning job. You define the objective metric
15071// in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig.
15072type FinalHyperParameterTuningJobObjectiveMetric struct {
15073	_ struct{} `type:"structure"`
15074
15075	// The name of the objective metric.
15076	//
15077	// MetricName is a required field
15078	MetricName *string `min:"1" type:"string" required:"true"`
15079
15080	// Whether to minimize or maximize the objective metric. Valid values are Minimize
15081	// and Maximize.
15082	Type *string `type:"string" enum:"HyperParameterTuningJobObjectiveType"`
15083
15084	// The value of the objective metric.
15085	//
15086	// Value is a required field
15087	Value *float64 `type:"float" required:"true"`
15088}
15089
15090// String returns the string representation
15091func (s FinalHyperParameterTuningJobObjectiveMetric) String() string {
15092	return awsutil.Prettify(s)
15093}
15094
15095// GoString returns the string representation
15096func (s FinalHyperParameterTuningJobObjectiveMetric) GoString() string {
15097	return s.String()
15098}
15099
15100// SetMetricName sets the MetricName field's value.
15101func (s *FinalHyperParameterTuningJobObjectiveMetric) SetMetricName(v string) *FinalHyperParameterTuningJobObjectiveMetric {
15102	s.MetricName = &v
15103	return s
15104}
15105
15106// SetType sets the Type field's value.
15107func (s *FinalHyperParameterTuningJobObjectiveMetric) SetType(v string) *FinalHyperParameterTuningJobObjectiveMetric {
15108	s.Type = &v
15109	return s
15110}
15111
15112// SetValue sets the Value field's value.
15113func (s *FinalHyperParameterTuningJobObjectiveMetric) SetValue(v float64) *FinalHyperParameterTuningJobObjectiveMetric {
15114	s.Value = &v
15115	return s
15116}
15117
15118type GetSearchSuggestionsInput struct {
15119	_ struct{} `type:"structure"`
15120
15121	// The name of the Amazon SageMaker resource to Search for. The only valid Resource
15122	// value is TrainingJob.
15123	//
15124	// Resource is a required field
15125	Resource *string `type:"string" required:"true" enum:"ResourceType"`
15126
15127	// Limits the property names that are included in the response.
15128	SuggestionQuery *SuggestionQuery `type:"structure"`
15129}
15130
15131// String returns the string representation
15132func (s GetSearchSuggestionsInput) String() string {
15133	return awsutil.Prettify(s)
15134}
15135
15136// GoString returns the string representation
15137func (s GetSearchSuggestionsInput) GoString() string {
15138	return s.String()
15139}
15140
15141// Validate inspects the fields of the type to determine if they are valid.
15142func (s *GetSearchSuggestionsInput) Validate() error {
15143	invalidParams := request.ErrInvalidParams{Context: "GetSearchSuggestionsInput"}
15144	if s.Resource == nil {
15145		invalidParams.Add(request.NewErrParamRequired("Resource"))
15146	}
15147	if s.SuggestionQuery != nil {
15148		if err := s.SuggestionQuery.Validate(); err != nil {
15149			invalidParams.AddNested("SuggestionQuery", err.(request.ErrInvalidParams))
15150		}
15151	}
15152
15153	if invalidParams.Len() > 0 {
15154		return invalidParams
15155	}
15156	return nil
15157}
15158
15159// SetResource sets the Resource field's value.
15160func (s *GetSearchSuggestionsInput) SetResource(v string) *GetSearchSuggestionsInput {
15161	s.Resource = &v
15162	return s
15163}
15164
15165// SetSuggestionQuery sets the SuggestionQuery field's value.
15166func (s *GetSearchSuggestionsInput) SetSuggestionQuery(v *SuggestionQuery) *GetSearchSuggestionsInput {
15167	s.SuggestionQuery = v
15168	return s
15169}
15170
15171type GetSearchSuggestionsOutput struct {
15172	_ struct{} `type:"structure"`
15173
15174	// A list of property names for a Resource that match a SuggestionQuery.
15175	PropertyNameSuggestions []*PropertyNameSuggestion `type:"list"`
15176}
15177
15178// String returns the string representation
15179func (s GetSearchSuggestionsOutput) String() string {
15180	return awsutil.Prettify(s)
15181}
15182
15183// GoString returns the string representation
15184func (s GetSearchSuggestionsOutput) GoString() string {
15185	return s.String()
15186}
15187
15188// SetPropertyNameSuggestions sets the PropertyNameSuggestions field's value.
15189func (s *GetSearchSuggestionsOutput) SetPropertyNameSuggestions(v []*PropertyNameSuggestion) *GetSearchSuggestionsOutput {
15190	s.PropertyNameSuggestions = v
15191	return s
15192}
15193
15194// Specifies configuration details for a Git repository in your AWS account.
15195type GitConfig struct {
15196	_ struct{} `type:"structure"`
15197
15198	// The default branch for the Git repository.
15199	Branch *string `min:"1" type:"string"`
15200
15201	// The URL where the Git repository is located.
15202	//
15203	// RepositoryUrl is a required field
15204	RepositoryUrl *string `type:"string" required:"true"`
15205
15206	// The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains
15207	// the credentials used to access the git repository. The secret must have a
15208	// staging label of AWSCURRENT and must be in the following format:
15209	//
15210	// {"username": UserName, "password": Password}
15211	SecretArn *string `min:"1" type:"string"`
15212}
15213
15214// String returns the string representation
15215func (s GitConfig) String() string {
15216	return awsutil.Prettify(s)
15217}
15218
15219// GoString returns the string representation
15220func (s GitConfig) GoString() string {
15221	return s.String()
15222}
15223
15224// Validate inspects the fields of the type to determine if they are valid.
15225func (s *GitConfig) Validate() error {
15226	invalidParams := request.ErrInvalidParams{Context: "GitConfig"}
15227	if s.Branch != nil && len(*s.Branch) < 1 {
15228		invalidParams.Add(request.NewErrParamMinLen("Branch", 1))
15229	}
15230	if s.RepositoryUrl == nil {
15231		invalidParams.Add(request.NewErrParamRequired("RepositoryUrl"))
15232	}
15233	if s.SecretArn != nil && len(*s.SecretArn) < 1 {
15234		invalidParams.Add(request.NewErrParamMinLen("SecretArn", 1))
15235	}
15236
15237	if invalidParams.Len() > 0 {
15238		return invalidParams
15239	}
15240	return nil
15241}
15242
15243// SetBranch sets the Branch field's value.
15244func (s *GitConfig) SetBranch(v string) *GitConfig {
15245	s.Branch = &v
15246	return s
15247}
15248
15249// SetRepositoryUrl sets the RepositoryUrl field's value.
15250func (s *GitConfig) SetRepositoryUrl(v string) *GitConfig {
15251	s.RepositoryUrl = &v
15252	return s
15253}
15254
15255// SetSecretArn sets the SecretArn field's value.
15256func (s *GitConfig) SetSecretArn(v string) *GitConfig {
15257	s.SecretArn = &v
15258	return s
15259}
15260
15261// Specifies configuration details for a Git repository when the repository
15262// is updated.
15263type GitConfigForUpdate struct {
15264	_ struct{} `type:"structure"`
15265
15266	// The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains
15267	// the credentials used to access the git repository. The secret must have a
15268	// staging label of AWSCURRENT and must be in the following format:
15269	//
15270	// {"username": UserName, "password": Password}
15271	SecretArn *string `min:"1" type:"string"`
15272}
15273
15274// String returns the string representation
15275func (s GitConfigForUpdate) String() string {
15276	return awsutil.Prettify(s)
15277}
15278
15279// GoString returns the string representation
15280func (s GitConfigForUpdate) GoString() string {
15281	return s.String()
15282}
15283
15284// Validate inspects the fields of the type to determine if they are valid.
15285func (s *GitConfigForUpdate) Validate() error {
15286	invalidParams := request.ErrInvalidParams{Context: "GitConfigForUpdate"}
15287	if s.SecretArn != nil && len(*s.SecretArn) < 1 {
15288		invalidParams.Add(request.NewErrParamMinLen("SecretArn", 1))
15289	}
15290
15291	if invalidParams.Len() > 0 {
15292		return invalidParams
15293	}
15294	return nil
15295}
15296
15297// SetSecretArn sets the SecretArn field's value.
15298func (s *GitConfigForUpdate) SetSecretArn(v string) *GitConfigForUpdate {
15299	s.SecretArn = &v
15300	return s
15301}
15302
15303// Information required for human workers to complete a labeling task.
15304type HumanTaskConfig struct {
15305	_ struct{} `type:"structure"`
15306
15307	// Configures how labels are consolidated across human workers.
15308	//
15309	// AnnotationConsolidationConfig is a required field
15310	AnnotationConsolidationConfig *AnnotationConsolidationConfig `type:"structure" required:"true"`
15311
15312	// Defines the maximum number of data objects that can be labeled by human workers
15313	// at the same time. Each object may have more than one worker at one time.
15314	MaxConcurrentTaskCount *int64 `min:"1" type:"integer"`
15315
15316	// The number of human workers that will label an object.
15317	//
15318	// NumberOfHumanWorkersPerDataObject is a required field
15319	NumberOfHumanWorkersPerDataObject *int64 `min:"1" type:"integer" required:"true"`
15320
15321	// The Amazon Resource Name (ARN) of a Lambda function that is run before a
15322	// data object is sent to a human worker. Use this function to provide input
15323	// to a custom labeling job.
15324	//
15325	// For the built-in bounding box, image classification, semantic segmentation,
15326	// and text classification task types, Amazon SageMaker Ground Truth provides
15327	// the following Lambda functions:
15328	//
15329	// US East (Northern Virginia) (us-east-1):
15330	//
15331	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-BoundingBox
15332	//
15333	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClass
15334	//
15335	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-SemanticSegmentation
15336	//
15337	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-TextMultiClass
15338	//
15339	//    * arn:aws:lambda:us-east-1:432418664414:function:PRE-NamedEntityRecognition
15340	//
15341	// US East (Ohio) (us-east-2):
15342	//
15343	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-BoundingBox
15344	//
15345	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-ImageMultiClass
15346	//
15347	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-SemanticSegmentation
15348	//
15349	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-TextMultiClass
15350	//
15351	//    * arn:aws:lambda:us-east-2:266458841044:function:PRE-NamedEntityRecognition
15352	//
15353	// US West (Oregon) (us-west-2):
15354	//
15355	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-BoundingBox
15356	//
15357	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-ImageMultiClass
15358	//
15359	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-SemanticSegmentation
15360	//
15361	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-TextMultiClass
15362	//
15363	//    * arn:aws:lambda:us-west-2:081040173940:function:PRE-NamedEntityRecognition
15364	//
15365	// Canada (Central) (ca-central-1):
15366	//
15367	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-BoundingBox
15368	//
15369	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-ImageMultiClass
15370	//
15371	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-SemanticSegmentation
15372	//
15373	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-TextMultiClass
15374	//
15375	//    * arn:awslambda:ca-central-1:918755190332:function:PRE-NamedEntityRecognition
15376	//
15377	// EU (Ireland) (eu-west-1):
15378	//
15379	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-BoundingBox
15380	//
15381	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-ImageMultiClass
15382	//
15383	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-SemanticSegmentation
15384	//
15385	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-TextMultiClass
15386	//
15387	//    * arn:aws:lambda:eu-west-1:568282634449:function:PRE-NamedEntityRecognition
15388	//
15389	// EU (London) (eu-west-2):
15390	//
15391	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-BoundingBox
15392	//
15393	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-ImageMultiClass
15394	//
15395	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-SemanticSegmentation
15396	//
15397	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-TextMultiClass
15398	//
15399	//    * arn:awslambda:eu-west-2:487402164563:function:PRE-NamedEntityRecognition
15400	//
15401	// EU Frankfurt (eu-central-1):
15402	//
15403	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-BoundingBox
15404	//
15405	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-ImageMultiClass
15406	//
15407	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-SemanticSegmentation
15408	//
15409	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-TextMultiClass
15410	//
15411	//    * arn:awslambda:eu-central-1:203001061592:function:PRE-NamedEntityRecognition
15412	//
15413	// Asia Pacific (Tokyo) (ap-northeast-1):
15414	//
15415	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-BoundingBox
15416	//
15417	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-ImageMultiClass
15418	//
15419	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-SemanticSegmentation
15420	//
15421	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-TextMultiClass
15422	//
15423	//    * arn:aws:lambda:ap-northeast-1:477331159723:function:PRE-NamedEntityRecognition
15424	//
15425	// Asia Pacific (Seoul) (ap-northeast-2):
15426	//
15427	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-BoundingBox
15428	//
15429	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-ImageMultiClass
15430	//
15431	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-SemanticSegmentation
15432	//
15433	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-TextMultiClass
15434	//
15435	//    * arn:awslambda:ap-northeast-2:845288260483:function:PRE-NamedEntityRecognition
15436	//
15437	// Asia Pacific (Mumbai) (ap-south-1):
15438	//
15439	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-BoundingBox
15440	//
15441	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-ImageMultiClass
15442	//
15443	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-SemanticSegmentation
15444	//
15445	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-TextMultiClass
15446	//
15447	//    * arn:awslambda:ap-south-1:565803892007:function:PRE-NamedEntityRecognition
15448	//
15449	// Asia Pacific (Singapore) (ap-southeast-1):
15450	//
15451	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-BoundingBox
15452	//
15453	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-ImageMultiClass
15454	//
15455	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-SemanticSegmentation
15456	//
15457	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-TextMultiClass
15458	//
15459	//    * arn:awslambda:ap-southeast-1:377565633583:function:PRE-NamedEntityRecognition
15460	//
15461	// Asia Pacific (Sydney) (ap-southeast-2):
15462	//
15463	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-BoundingBox
15464	//
15465	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-ImageMultiClass
15466	//
15467	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-SemanticSegmentation
15468	//
15469	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-TextMultiClass
15470	//
15471	//    * arn:aws:lambda:ap-southeast-2:454466003867:function:PRE-NamedEntityRecognition
15472	//
15473	// PreHumanTaskLambdaArn is a required field
15474	PreHumanTaskLambdaArn *string `type:"string" required:"true"`
15475
15476	// The price that you pay for each task performed by an Amazon Mechanical Turk
15477	// worker.
15478	PublicWorkforceTaskPrice *PublicWorkforceTaskPrice `type:"structure"`
15479
15480	// The length of time that a task remains available for labeling by human workers.
15481	// If you choose the Amazon Mechanical Turk workforce, the maximum is 12 hours
15482	// (43200). For private and vendor workforces, the maximum is as listed.
15483	TaskAvailabilityLifetimeInSeconds *int64 `min:"1" type:"integer"`
15484
15485	// A description of the task for your human workers.
15486	//
15487	// TaskDescription is a required field
15488	TaskDescription *string `min:"1" type:"string" required:"true"`
15489
15490	// Keywords used to describe the task so that workers on Amazon Mechanical Turk
15491	// can discover the task.
15492	TaskKeywords []*string `min:"1" type:"list"`
15493
15494	// The amount of time that a worker has to complete a task.
15495	//
15496	// TaskTimeLimitInSeconds is a required field
15497	TaskTimeLimitInSeconds *int64 `min:"30" type:"integer" required:"true"`
15498
15499	// A title for the task for your human workers.
15500	//
15501	// TaskTitle is a required field
15502	TaskTitle *string `min:"1" type:"string" required:"true"`
15503
15504	// Information about the user interface that workers use to complete the labeling
15505	// task.
15506	//
15507	// UiConfig is a required field
15508	UiConfig *UiConfig `type:"structure" required:"true"`
15509
15510	// The Amazon Resource Name (ARN) of the work team assigned to complete the
15511	// tasks.
15512	//
15513	// WorkteamArn is a required field
15514	WorkteamArn *string `type:"string" required:"true"`
15515}
15516
15517// String returns the string representation
15518func (s HumanTaskConfig) String() string {
15519	return awsutil.Prettify(s)
15520}
15521
15522// GoString returns the string representation
15523func (s HumanTaskConfig) GoString() string {
15524	return s.String()
15525}
15526
15527// Validate inspects the fields of the type to determine if they are valid.
15528func (s *HumanTaskConfig) Validate() error {
15529	invalidParams := request.ErrInvalidParams{Context: "HumanTaskConfig"}
15530	if s.AnnotationConsolidationConfig == nil {
15531		invalidParams.Add(request.NewErrParamRequired("AnnotationConsolidationConfig"))
15532	}
15533	if s.MaxConcurrentTaskCount != nil && *s.MaxConcurrentTaskCount < 1 {
15534		invalidParams.Add(request.NewErrParamMinValue("MaxConcurrentTaskCount", 1))
15535	}
15536	if s.NumberOfHumanWorkersPerDataObject == nil {
15537		invalidParams.Add(request.NewErrParamRequired("NumberOfHumanWorkersPerDataObject"))
15538	}
15539	if s.NumberOfHumanWorkersPerDataObject != nil && *s.NumberOfHumanWorkersPerDataObject < 1 {
15540		invalidParams.Add(request.NewErrParamMinValue("NumberOfHumanWorkersPerDataObject", 1))
15541	}
15542	if s.PreHumanTaskLambdaArn == nil {
15543		invalidParams.Add(request.NewErrParamRequired("PreHumanTaskLambdaArn"))
15544	}
15545	if s.TaskAvailabilityLifetimeInSeconds != nil && *s.TaskAvailabilityLifetimeInSeconds < 1 {
15546		invalidParams.Add(request.NewErrParamMinValue("TaskAvailabilityLifetimeInSeconds", 1))
15547	}
15548	if s.TaskDescription == nil {
15549		invalidParams.Add(request.NewErrParamRequired("TaskDescription"))
15550	}
15551	if s.TaskDescription != nil && len(*s.TaskDescription) < 1 {
15552		invalidParams.Add(request.NewErrParamMinLen("TaskDescription", 1))
15553	}
15554	if s.TaskKeywords != nil && len(s.TaskKeywords) < 1 {
15555		invalidParams.Add(request.NewErrParamMinLen("TaskKeywords", 1))
15556	}
15557	if s.TaskTimeLimitInSeconds == nil {
15558		invalidParams.Add(request.NewErrParamRequired("TaskTimeLimitInSeconds"))
15559	}
15560	if s.TaskTimeLimitInSeconds != nil && *s.TaskTimeLimitInSeconds < 30 {
15561		invalidParams.Add(request.NewErrParamMinValue("TaskTimeLimitInSeconds", 30))
15562	}
15563	if s.TaskTitle == nil {
15564		invalidParams.Add(request.NewErrParamRequired("TaskTitle"))
15565	}
15566	if s.TaskTitle != nil && len(*s.TaskTitle) < 1 {
15567		invalidParams.Add(request.NewErrParamMinLen("TaskTitle", 1))
15568	}
15569	if s.UiConfig == nil {
15570		invalidParams.Add(request.NewErrParamRequired("UiConfig"))
15571	}
15572	if s.WorkteamArn == nil {
15573		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
15574	}
15575	if s.AnnotationConsolidationConfig != nil {
15576		if err := s.AnnotationConsolidationConfig.Validate(); err != nil {
15577			invalidParams.AddNested("AnnotationConsolidationConfig", err.(request.ErrInvalidParams))
15578		}
15579	}
15580	if s.UiConfig != nil {
15581		if err := s.UiConfig.Validate(); err != nil {
15582			invalidParams.AddNested("UiConfig", err.(request.ErrInvalidParams))
15583		}
15584	}
15585
15586	if invalidParams.Len() > 0 {
15587		return invalidParams
15588	}
15589	return nil
15590}
15591
15592// SetAnnotationConsolidationConfig sets the AnnotationConsolidationConfig field's value.
15593func (s *HumanTaskConfig) SetAnnotationConsolidationConfig(v *AnnotationConsolidationConfig) *HumanTaskConfig {
15594	s.AnnotationConsolidationConfig = v
15595	return s
15596}
15597
15598// SetMaxConcurrentTaskCount sets the MaxConcurrentTaskCount field's value.
15599func (s *HumanTaskConfig) SetMaxConcurrentTaskCount(v int64) *HumanTaskConfig {
15600	s.MaxConcurrentTaskCount = &v
15601	return s
15602}
15603
15604// SetNumberOfHumanWorkersPerDataObject sets the NumberOfHumanWorkersPerDataObject field's value.
15605func (s *HumanTaskConfig) SetNumberOfHumanWorkersPerDataObject(v int64) *HumanTaskConfig {
15606	s.NumberOfHumanWorkersPerDataObject = &v
15607	return s
15608}
15609
15610// SetPreHumanTaskLambdaArn sets the PreHumanTaskLambdaArn field's value.
15611func (s *HumanTaskConfig) SetPreHumanTaskLambdaArn(v string) *HumanTaskConfig {
15612	s.PreHumanTaskLambdaArn = &v
15613	return s
15614}
15615
15616// SetPublicWorkforceTaskPrice sets the PublicWorkforceTaskPrice field's value.
15617func (s *HumanTaskConfig) SetPublicWorkforceTaskPrice(v *PublicWorkforceTaskPrice) *HumanTaskConfig {
15618	s.PublicWorkforceTaskPrice = v
15619	return s
15620}
15621
15622// SetTaskAvailabilityLifetimeInSeconds sets the TaskAvailabilityLifetimeInSeconds field's value.
15623func (s *HumanTaskConfig) SetTaskAvailabilityLifetimeInSeconds(v int64) *HumanTaskConfig {
15624	s.TaskAvailabilityLifetimeInSeconds = &v
15625	return s
15626}
15627
15628// SetTaskDescription sets the TaskDescription field's value.
15629func (s *HumanTaskConfig) SetTaskDescription(v string) *HumanTaskConfig {
15630	s.TaskDescription = &v
15631	return s
15632}
15633
15634// SetTaskKeywords sets the TaskKeywords field's value.
15635func (s *HumanTaskConfig) SetTaskKeywords(v []*string) *HumanTaskConfig {
15636	s.TaskKeywords = v
15637	return s
15638}
15639
15640// SetTaskTimeLimitInSeconds sets the TaskTimeLimitInSeconds field's value.
15641func (s *HumanTaskConfig) SetTaskTimeLimitInSeconds(v int64) *HumanTaskConfig {
15642	s.TaskTimeLimitInSeconds = &v
15643	return s
15644}
15645
15646// SetTaskTitle sets the TaskTitle field's value.
15647func (s *HumanTaskConfig) SetTaskTitle(v string) *HumanTaskConfig {
15648	s.TaskTitle = &v
15649	return s
15650}
15651
15652// SetUiConfig sets the UiConfig field's value.
15653func (s *HumanTaskConfig) SetUiConfig(v *UiConfig) *HumanTaskConfig {
15654	s.UiConfig = v
15655	return s
15656}
15657
15658// SetWorkteamArn sets the WorkteamArn field's value.
15659func (s *HumanTaskConfig) SetWorkteamArn(v string) *HumanTaskConfig {
15660	s.WorkteamArn = &v
15661	return s
15662}
15663
15664// Specifies which training algorithm to use for training jobs that a hyperparameter
15665// tuning job launches and the metrics to monitor.
15666type HyperParameterAlgorithmSpecification struct {
15667	_ struct{} `type:"structure"`
15668
15669	// The name of the resource algorithm to use for the hyperparameter tuning job.
15670	// If you specify a value for this parameter, do not specify a value for TrainingImage.
15671	AlgorithmName *string `min:"1" type:"string"`
15672
15673	// An array of MetricDefinition objects that specify the metrics that the algorithm
15674	// emits.
15675	MetricDefinitions []*MetricDefinition `type:"list"`
15676
15677	// The registry path of the Docker image that contains the training algorithm.
15678	// For information about Docker registry paths for built-in algorithms, see
15679	// Algorithms Provided by Amazon SageMaker: Common Parameters (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html).
15680	// Amazon SageMaker supports both registry/repository[:tag] and registry/repository[@digest]
15681	// image path formats. For more information, see Using Your Own Algorithms with
15682	// Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
15683	TrainingImage *string `type:"string"`
15684
15685	// The input mode that the algorithm supports: File or Pipe. In File input mode,
15686	// Amazon SageMaker downloads the training data from Amazon S3 to the storage
15687	// volume that is attached to the training instance and mounts the directory
15688	// to the Docker volume for the training container. In Pipe input mode, Amazon
15689	// SageMaker streams data directly from Amazon S3 to the container.
15690	//
15691	// If you specify File mode, make sure that you provision the storage volume
15692	// that is attached to the training instance with enough capacity to accommodate
15693	// the training data downloaded from Amazon S3, the model artifacts, and intermediate
15694	// information.
15695	//
15696	// For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
15697	//
15698	// TrainingInputMode is a required field
15699	TrainingInputMode *string `type:"string" required:"true" enum:"TrainingInputMode"`
15700}
15701
15702// String returns the string representation
15703func (s HyperParameterAlgorithmSpecification) String() string {
15704	return awsutil.Prettify(s)
15705}
15706
15707// GoString returns the string representation
15708func (s HyperParameterAlgorithmSpecification) GoString() string {
15709	return s.String()
15710}
15711
15712// Validate inspects the fields of the type to determine if they are valid.
15713func (s *HyperParameterAlgorithmSpecification) Validate() error {
15714	invalidParams := request.ErrInvalidParams{Context: "HyperParameterAlgorithmSpecification"}
15715	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
15716		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
15717	}
15718	if s.TrainingInputMode == nil {
15719		invalidParams.Add(request.NewErrParamRequired("TrainingInputMode"))
15720	}
15721	if s.MetricDefinitions != nil {
15722		for i, v := range s.MetricDefinitions {
15723			if v == nil {
15724				continue
15725			}
15726			if err := v.Validate(); err != nil {
15727				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricDefinitions", i), err.(request.ErrInvalidParams))
15728			}
15729		}
15730	}
15731
15732	if invalidParams.Len() > 0 {
15733		return invalidParams
15734	}
15735	return nil
15736}
15737
15738// SetAlgorithmName sets the AlgorithmName field's value.
15739func (s *HyperParameterAlgorithmSpecification) SetAlgorithmName(v string) *HyperParameterAlgorithmSpecification {
15740	s.AlgorithmName = &v
15741	return s
15742}
15743
15744// SetMetricDefinitions sets the MetricDefinitions field's value.
15745func (s *HyperParameterAlgorithmSpecification) SetMetricDefinitions(v []*MetricDefinition) *HyperParameterAlgorithmSpecification {
15746	s.MetricDefinitions = v
15747	return s
15748}
15749
15750// SetTrainingImage sets the TrainingImage field's value.
15751func (s *HyperParameterAlgorithmSpecification) SetTrainingImage(v string) *HyperParameterAlgorithmSpecification {
15752	s.TrainingImage = &v
15753	return s
15754}
15755
15756// SetTrainingInputMode sets the TrainingInputMode field's value.
15757func (s *HyperParameterAlgorithmSpecification) SetTrainingInputMode(v string) *HyperParameterAlgorithmSpecification {
15758	s.TrainingInputMode = &v
15759	return s
15760}
15761
15762// Defines a hyperparameter to be used by an algorithm.
15763type HyperParameterSpecification struct {
15764	_ struct{} `type:"structure"`
15765
15766	// The default value for this hyperparameter. If a default value is specified,
15767	// a hyperparameter cannot be required.
15768	DefaultValue *string `type:"string"`
15769
15770	// A brief description of the hyperparameter.
15771	Description *string `type:"string"`
15772
15773	// Indicates whether this hyperparameter is required.
15774	IsRequired *bool `type:"boolean"`
15775
15776	// Indicates whether this hyperparameter is tunable in a hyperparameter tuning
15777	// job.
15778	IsTunable *bool `type:"boolean"`
15779
15780	// The name of this hyperparameter. The name must be unique.
15781	//
15782	// Name is a required field
15783	Name *string `type:"string" required:"true"`
15784
15785	// The allowed range for this hyperparameter.
15786	Range *ParameterRange `type:"structure"`
15787
15788	// The type of this hyperparameter. The valid types are Integer, Continuous,
15789	// Categorical, and FreeText.
15790	//
15791	// Type is a required field
15792	Type *string `type:"string" required:"true" enum:"ParameterType"`
15793}
15794
15795// String returns the string representation
15796func (s HyperParameterSpecification) String() string {
15797	return awsutil.Prettify(s)
15798}
15799
15800// GoString returns the string representation
15801func (s HyperParameterSpecification) GoString() string {
15802	return s.String()
15803}
15804
15805// Validate inspects the fields of the type to determine if they are valid.
15806func (s *HyperParameterSpecification) Validate() error {
15807	invalidParams := request.ErrInvalidParams{Context: "HyperParameterSpecification"}
15808	if s.Name == nil {
15809		invalidParams.Add(request.NewErrParamRequired("Name"))
15810	}
15811	if s.Type == nil {
15812		invalidParams.Add(request.NewErrParamRequired("Type"))
15813	}
15814	if s.Range != nil {
15815		if err := s.Range.Validate(); err != nil {
15816			invalidParams.AddNested("Range", err.(request.ErrInvalidParams))
15817		}
15818	}
15819
15820	if invalidParams.Len() > 0 {
15821		return invalidParams
15822	}
15823	return nil
15824}
15825
15826// SetDefaultValue sets the DefaultValue field's value.
15827func (s *HyperParameterSpecification) SetDefaultValue(v string) *HyperParameterSpecification {
15828	s.DefaultValue = &v
15829	return s
15830}
15831
15832// SetDescription sets the Description field's value.
15833func (s *HyperParameterSpecification) SetDescription(v string) *HyperParameterSpecification {
15834	s.Description = &v
15835	return s
15836}
15837
15838// SetIsRequired sets the IsRequired field's value.
15839func (s *HyperParameterSpecification) SetIsRequired(v bool) *HyperParameterSpecification {
15840	s.IsRequired = &v
15841	return s
15842}
15843
15844// SetIsTunable sets the IsTunable field's value.
15845func (s *HyperParameterSpecification) SetIsTunable(v bool) *HyperParameterSpecification {
15846	s.IsTunable = &v
15847	return s
15848}
15849
15850// SetName sets the Name field's value.
15851func (s *HyperParameterSpecification) SetName(v string) *HyperParameterSpecification {
15852	s.Name = &v
15853	return s
15854}
15855
15856// SetRange sets the Range field's value.
15857func (s *HyperParameterSpecification) SetRange(v *ParameterRange) *HyperParameterSpecification {
15858	s.Range = v
15859	return s
15860}
15861
15862// SetType sets the Type field's value.
15863func (s *HyperParameterSpecification) SetType(v string) *HyperParameterSpecification {
15864	s.Type = &v
15865	return s
15866}
15867
15868// Defines the training jobs launched by a hyperparameter tuning job.
15869type HyperParameterTrainingJobDefinition struct {
15870	_ struct{} `type:"structure"`
15871
15872	// The HyperParameterAlgorithmSpecification object that specifies the resource
15873	// algorithm to use for the training jobs that the tuning job launches.
15874	//
15875	// AlgorithmSpecification is a required field
15876	AlgorithmSpecification *HyperParameterAlgorithmSpecification `type:"structure" required:"true"`
15877
15878	// Contains information about the output location for managed spot training
15879	// checkpoint data.
15880	CheckpointConfig *CheckpointConfig `type:"structure"`
15881
15882	// To encrypt all communications between ML compute instances in distributed
15883	// training, choose True. Encryption provides greater security for distributed
15884	// training, but training might take longer. How long it takes depends on the
15885	// amount of communication between compute instances, especially if you use
15886	// a deep learning algorithm in distributed training.
15887	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
15888
15889	// A Boolean indicating whether managed spot training is enabled (True) or not
15890	// (False).
15891	EnableManagedSpotTraining *bool `type:"boolean"`
15892
15893	// Isolates the training container. No inbound or outbound network calls can
15894	// be made, except for calls between peers within a training cluster for distributed
15895	// training. If network isolation is used for training jobs that are configured
15896	// to use a VPC, Amazon SageMaker downloads and uploads customer data and model
15897	// artifacts through the specified VPC, but the training container does not
15898	// have network access.
15899	//
15900	// The Semantic Segmentation built-in algorithm does not support network isolation.
15901	EnableNetworkIsolation *bool `type:"boolean"`
15902
15903	// An array of Channel objects that specify the input for the training jobs
15904	// that the tuning job launches.
15905	InputDataConfig []*Channel `min:"1" type:"list"`
15906
15907	// Specifies the path to the Amazon S3 bucket where you store model artifacts
15908	// from the training jobs that the tuning job launches.
15909	//
15910	// OutputDataConfig is a required field
15911	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
15912
15913	// The resources, including the compute instances and storage volumes, to use
15914	// for the training jobs that the tuning job launches.
15915	//
15916	// Storage volumes store model artifacts and incremental states. Training algorithms
15917	// might also use storage volumes for scratch space. If you want Amazon SageMaker
15918	// to use the storage volume to store the training data, choose File as the
15919	// TrainingInputMode in the algorithm specification. For distributed training
15920	// algorithms, specify an instance count greater than 1.
15921	//
15922	// ResourceConfig is a required field
15923	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
15924
15925	// The Amazon Resource Name (ARN) of the IAM role associated with the training
15926	// jobs that the tuning job launches.
15927	//
15928	// RoleArn is a required field
15929	RoleArn *string `min:"20" type:"string" required:"true"`
15930
15931	// Specifies the values of hyperparameters that do not change for the tuning
15932	// job.
15933	StaticHyperParameters map[string]*string `type:"map"`
15934
15935	// Specifies a limit to how long a model hyperparameter training job can run.
15936	// It also specifies how long you are willing to wait for a managed spot training
15937	// job to complete. When the job reaches the a limit, Amazon SageMaker ends
15938	// the training job. Use this API to cap model training costs.
15939	//
15940	// StoppingCondition is a required field
15941	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
15942
15943	// The VpcConfig object that specifies the VPC that you want the training jobs
15944	// that this hyperparameter tuning job launches to connect to. Control access
15945	// to and from your training container by configuring the VPC. For more information,
15946	// see Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
15947	VpcConfig *VpcConfig `type:"structure"`
15948}
15949
15950// String returns the string representation
15951func (s HyperParameterTrainingJobDefinition) String() string {
15952	return awsutil.Prettify(s)
15953}
15954
15955// GoString returns the string representation
15956func (s HyperParameterTrainingJobDefinition) GoString() string {
15957	return s.String()
15958}
15959
15960// Validate inspects the fields of the type to determine if they are valid.
15961func (s *HyperParameterTrainingJobDefinition) Validate() error {
15962	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTrainingJobDefinition"}
15963	if s.AlgorithmSpecification == nil {
15964		invalidParams.Add(request.NewErrParamRequired("AlgorithmSpecification"))
15965	}
15966	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
15967		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
15968	}
15969	if s.OutputDataConfig == nil {
15970		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
15971	}
15972	if s.ResourceConfig == nil {
15973		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
15974	}
15975	if s.RoleArn == nil {
15976		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
15977	}
15978	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
15979		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
15980	}
15981	if s.StoppingCondition == nil {
15982		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
15983	}
15984	if s.AlgorithmSpecification != nil {
15985		if err := s.AlgorithmSpecification.Validate(); err != nil {
15986			invalidParams.AddNested("AlgorithmSpecification", err.(request.ErrInvalidParams))
15987		}
15988	}
15989	if s.CheckpointConfig != nil {
15990		if err := s.CheckpointConfig.Validate(); err != nil {
15991			invalidParams.AddNested("CheckpointConfig", err.(request.ErrInvalidParams))
15992		}
15993	}
15994	if s.InputDataConfig != nil {
15995		for i, v := range s.InputDataConfig {
15996			if v == nil {
15997				continue
15998			}
15999			if err := v.Validate(); err != nil {
16000				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
16001			}
16002		}
16003	}
16004	if s.OutputDataConfig != nil {
16005		if err := s.OutputDataConfig.Validate(); err != nil {
16006			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
16007		}
16008	}
16009	if s.ResourceConfig != nil {
16010		if err := s.ResourceConfig.Validate(); err != nil {
16011			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
16012		}
16013	}
16014	if s.StoppingCondition != nil {
16015		if err := s.StoppingCondition.Validate(); err != nil {
16016			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
16017		}
16018	}
16019	if s.VpcConfig != nil {
16020		if err := s.VpcConfig.Validate(); err != nil {
16021			invalidParams.AddNested("VpcConfig", err.(request.ErrInvalidParams))
16022		}
16023	}
16024
16025	if invalidParams.Len() > 0 {
16026		return invalidParams
16027	}
16028	return nil
16029}
16030
16031// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
16032func (s *HyperParameterTrainingJobDefinition) SetAlgorithmSpecification(v *HyperParameterAlgorithmSpecification) *HyperParameterTrainingJobDefinition {
16033	s.AlgorithmSpecification = v
16034	return s
16035}
16036
16037// SetCheckpointConfig sets the CheckpointConfig field's value.
16038func (s *HyperParameterTrainingJobDefinition) SetCheckpointConfig(v *CheckpointConfig) *HyperParameterTrainingJobDefinition {
16039	s.CheckpointConfig = v
16040	return s
16041}
16042
16043// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
16044func (s *HyperParameterTrainingJobDefinition) SetEnableInterContainerTrafficEncryption(v bool) *HyperParameterTrainingJobDefinition {
16045	s.EnableInterContainerTrafficEncryption = &v
16046	return s
16047}
16048
16049// SetEnableManagedSpotTraining sets the EnableManagedSpotTraining field's value.
16050func (s *HyperParameterTrainingJobDefinition) SetEnableManagedSpotTraining(v bool) *HyperParameterTrainingJobDefinition {
16051	s.EnableManagedSpotTraining = &v
16052	return s
16053}
16054
16055// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
16056func (s *HyperParameterTrainingJobDefinition) SetEnableNetworkIsolation(v bool) *HyperParameterTrainingJobDefinition {
16057	s.EnableNetworkIsolation = &v
16058	return s
16059}
16060
16061// SetInputDataConfig sets the InputDataConfig field's value.
16062func (s *HyperParameterTrainingJobDefinition) SetInputDataConfig(v []*Channel) *HyperParameterTrainingJobDefinition {
16063	s.InputDataConfig = v
16064	return s
16065}
16066
16067// SetOutputDataConfig sets the OutputDataConfig field's value.
16068func (s *HyperParameterTrainingJobDefinition) SetOutputDataConfig(v *OutputDataConfig) *HyperParameterTrainingJobDefinition {
16069	s.OutputDataConfig = v
16070	return s
16071}
16072
16073// SetResourceConfig sets the ResourceConfig field's value.
16074func (s *HyperParameterTrainingJobDefinition) SetResourceConfig(v *ResourceConfig) *HyperParameterTrainingJobDefinition {
16075	s.ResourceConfig = v
16076	return s
16077}
16078
16079// SetRoleArn sets the RoleArn field's value.
16080func (s *HyperParameterTrainingJobDefinition) SetRoleArn(v string) *HyperParameterTrainingJobDefinition {
16081	s.RoleArn = &v
16082	return s
16083}
16084
16085// SetStaticHyperParameters sets the StaticHyperParameters field's value.
16086func (s *HyperParameterTrainingJobDefinition) SetStaticHyperParameters(v map[string]*string) *HyperParameterTrainingJobDefinition {
16087	s.StaticHyperParameters = v
16088	return s
16089}
16090
16091// SetStoppingCondition sets the StoppingCondition field's value.
16092func (s *HyperParameterTrainingJobDefinition) SetStoppingCondition(v *StoppingCondition) *HyperParameterTrainingJobDefinition {
16093	s.StoppingCondition = v
16094	return s
16095}
16096
16097// SetVpcConfig sets the VpcConfig field's value.
16098func (s *HyperParameterTrainingJobDefinition) SetVpcConfig(v *VpcConfig) *HyperParameterTrainingJobDefinition {
16099	s.VpcConfig = v
16100	return s
16101}
16102
16103// Specifies summary information about a training job.
16104type HyperParameterTrainingJobSummary struct {
16105	_ struct{} `type:"structure"`
16106
16107	// The date and time that the training job was created.
16108	//
16109	// CreationTime is a required field
16110	CreationTime *time.Time `type:"timestamp" required:"true"`
16111
16112	// The reason that the training job failed.
16113	FailureReason *string `type:"string"`
16114
16115	// The FinalHyperParameterTuningJobObjectiveMetric object that specifies the
16116	// value of the objective metric of the tuning job that launched this training
16117	// job.
16118	FinalHyperParameterTuningJobObjectiveMetric *FinalHyperParameterTuningJobObjectiveMetric `type:"structure"`
16119
16120	// The status of the objective metric for the training job:
16121	//
16122	//    * Succeeded: The final objective metric for the training job was evaluated
16123	//    by the hyperparameter tuning job and used in the hyperparameter tuning
16124	//    process.
16125	//
16126	//    * Pending: The training job is in progress and evaluation of its final
16127	//    objective metric is pending.
16128	//
16129	//    * Failed: The final objective metric for the training job was not evaluated,
16130	//    and was not used in the hyperparameter tuning process. This typically
16131	//    occurs when the training job failed or did not emit an objective metric.
16132	ObjectiveStatus *string `type:"string" enum:"ObjectiveStatus"`
16133
16134	// Specifies the time when the training job ends on training instances. You
16135	// are billed for the time interval between the value of TrainingStartTime and
16136	// this time. For successful jobs and stopped jobs, this is the time after model
16137	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
16138	// detects a job failure.
16139	TrainingEndTime *time.Time `type:"timestamp"`
16140
16141	// The Amazon Resource Name (ARN) of the training job.
16142	//
16143	// TrainingJobArn is a required field
16144	TrainingJobArn *string `type:"string" required:"true"`
16145
16146	// The name of the training job.
16147	//
16148	// TrainingJobName is a required field
16149	TrainingJobName *string `min:"1" type:"string" required:"true"`
16150
16151	// The status of the training job.
16152	//
16153	// TrainingJobStatus is a required field
16154	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
16155
16156	// The date and time that the training job started.
16157	TrainingStartTime *time.Time `type:"timestamp"`
16158
16159	// A list of the hyperparameters for which you specified ranges to search.
16160	//
16161	// TunedHyperParameters is a required field
16162	TunedHyperParameters map[string]*string `type:"map" required:"true"`
16163
16164	// The HyperParameter tuning job that launched the training job.
16165	TuningJobName *string `min:"1" type:"string"`
16166}
16167
16168// String returns the string representation
16169func (s HyperParameterTrainingJobSummary) String() string {
16170	return awsutil.Prettify(s)
16171}
16172
16173// GoString returns the string representation
16174func (s HyperParameterTrainingJobSummary) GoString() string {
16175	return s.String()
16176}
16177
16178// SetCreationTime sets the CreationTime field's value.
16179func (s *HyperParameterTrainingJobSummary) SetCreationTime(v time.Time) *HyperParameterTrainingJobSummary {
16180	s.CreationTime = &v
16181	return s
16182}
16183
16184// SetFailureReason sets the FailureReason field's value.
16185func (s *HyperParameterTrainingJobSummary) SetFailureReason(v string) *HyperParameterTrainingJobSummary {
16186	s.FailureReason = &v
16187	return s
16188}
16189
16190// SetFinalHyperParameterTuningJobObjectiveMetric sets the FinalHyperParameterTuningJobObjectiveMetric field's value.
16191func (s *HyperParameterTrainingJobSummary) SetFinalHyperParameterTuningJobObjectiveMetric(v *FinalHyperParameterTuningJobObjectiveMetric) *HyperParameterTrainingJobSummary {
16192	s.FinalHyperParameterTuningJobObjectiveMetric = v
16193	return s
16194}
16195
16196// SetObjectiveStatus sets the ObjectiveStatus field's value.
16197func (s *HyperParameterTrainingJobSummary) SetObjectiveStatus(v string) *HyperParameterTrainingJobSummary {
16198	s.ObjectiveStatus = &v
16199	return s
16200}
16201
16202// SetTrainingEndTime sets the TrainingEndTime field's value.
16203func (s *HyperParameterTrainingJobSummary) SetTrainingEndTime(v time.Time) *HyperParameterTrainingJobSummary {
16204	s.TrainingEndTime = &v
16205	return s
16206}
16207
16208// SetTrainingJobArn sets the TrainingJobArn field's value.
16209func (s *HyperParameterTrainingJobSummary) SetTrainingJobArn(v string) *HyperParameterTrainingJobSummary {
16210	s.TrainingJobArn = &v
16211	return s
16212}
16213
16214// SetTrainingJobName sets the TrainingJobName field's value.
16215func (s *HyperParameterTrainingJobSummary) SetTrainingJobName(v string) *HyperParameterTrainingJobSummary {
16216	s.TrainingJobName = &v
16217	return s
16218}
16219
16220// SetTrainingJobStatus sets the TrainingJobStatus field's value.
16221func (s *HyperParameterTrainingJobSummary) SetTrainingJobStatus(v string) *HyperParameterTrainingJobSummary {
16222	s.TrainingJobStatus = &v
16223	return s
16224}
16225
16226// SetTrainingStartTime sets the TrainingStartTime field's value.
16227func (s *HyperParameterTrainingJobSummary) SetTrainingStartTime(v time.Time) *HyperParameterTrainingJobSummary {
16228	s.TrainingStartTime = &v
16229	return s
16230}
16231
16232// SetTunedHyperParameters sets the TunedHyperParameters field's value.
16233func (s *HyperParameterTrainingJobSummary) SetTunedHyperParameters(v map[string]*string) *HyperParameterTrainingJobSummary {
16234	s.TunedHyperParameters = v
16235	return s
16236}
16237
16238// SetTuningJobName sets the TuningJobName field's value.
16239func (s *HyperParameterTrainingJobSummary) SetTuningJobName(v string) *HyperParameterTrainingJobSummary {
16240	s.TuningJobName = &v
16241	return s
16242}
16243
16244// Configures a hyperparameter tuning job.
16245type HyperParameterTuningJobConfig struct {
16246	_ struct{} `type:"structure"`
16247
16248	// The HyperParameterTuningJobObjective object that specifies the objective
16249	// metric for this tuning job.
16250	HyperParameterTuningJobObjective *HyperParameterTuningJobObjective `type:"structure"`
16251
16252	// The ParameterRanges object that specifies the ranges of hyperparameters that
16253	// this tuning job searches.
16254	ParameterRanges *ParameterRanges `type:"structure"`
16255
16256	// The ResourceLimits object that specifies the maximum number of training jobs
16257	// and parallel training jobs for this tuning job.
16258	//
16259	// ResourceLimits is a required field
16260	ResourceLimits *ResourceLimits `type:"structure" required:"true"`
16261
16262	// Specifies how hyperparameter tuning chooses the combinations of hyperparameter
16263	// values to use for the training job it launches. To use the Bayesian search
16264	// stategy, set this to Bayesian. To randomly search, set it to Random. For
16265	// information about search strategies, see How Hyperparameter Tuning Works
16266	// (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html).
16267	//
16268	// Strategy is a required field
16269	Strategy *string `type:"string" required:"true" enum:"HyperParameterTuningJobStrategyType"`
16270
16271	// Specifies whether to use early stopping for training jobs launched by the
16272	// hyperparameter tuning job. This can be one of the following values (the default
16273	// value is OFF):
16274	//
16275	// OFF
16276	//
16277	// Training jobs launched by the hyperparameter tuning job do not use early
16278	// stopping.
16279	//
16280	// AUTO
16281	//
16282	// Amazon SageMaker stops training jobs launched by the hyperparameter tuning
16283	// job when they are unlikely to perform better than previously completed training
16284	// jobs. For more information, see Stop Training Jobs Early (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html).
16285	TrainingJobEarlyStoppingType *string `type:"string" enum:"TrainingJobEarlyStoppingType"`
16286}
16287
16288// String returns the string representation
16289func (s HyperParameterTuningJobConfig) String() string {
16290	return awsutil.Prettify(s)
16291}
16292
16293// GoString returns the string representation
16294func (s HyperParameterTuningJobConfig) GoString() string {
16295	return s.String()
16296}
16297
16298// Validate inspects the fields of the type to determine if they are valid.
16299func (s *HyperParameterTuningJobConfig) Validate() error {
16300	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobConfig"}
16301	if s.ResourceLimits == nil {
16302		invalidParams.Add(request.NewErrParamRequired("ResourceLimits"))
16303	}
16304	if s.Strategy == nil {
16305		invalidParams.Add(request.NewErrParamRequired("Strategy"))
16306	}
16307	if s.HyperParameterTuningJobObjective != nil {
16308		if err := s.HyperParameterTuningJobObjective.Validate(); err != nil {
16309			invalidParams.AddNested("HyperParameterTuningJobObjective", err.(request.ErrInvalidParams))
16310		}
16311	}
16312	if s.ParameterRanges != nil {
16313		if err := s.ParameterRanges.Validate(); err != nil {
16314			invalidParams.AddNested("ParameterRanges", err.(request.ErrInvalidParams))
16315		}
16316	}
16317	if s.ResourceLimits != nil {
16318		if err := s.ResourceLimits.Validate(); err != nil {
16319			invalidParams.AddNested("ResourceLimits", err.(request.ErrInvalidParams))
16320		}
16321	}
16322
16323	if invalidParams.Len() > 0 {
16324		return invalidParams
16325	}
16326	return nil
16327}
16328
16329// SetHyperParameterTuningJobObjective sets the HyperParameterTuningJobObjective field's value.
16330func (s *HyperParameterTuningJobConfig) SetHyperParameterTuningJobObjective(v *HyperParameterTuningJobObjective) *HyperParameterTuningJobConfig {
16331	s.HyperParameterTuningJobObjective = v
16332	return s
16333}
16334
16335// SetParameterRanges sets the ParameterRanges field's value.
16336func (s *HyperParameterTuningJobConfig) SetParameterRanges(v *ParameterRanges) *HyperParameterTuningJobConfig {
16337	s.ParameterRanges = v
16338	return s
16339}
16340
16341// SetResourceLimits sets the ResourceLimits field's value.
16342func (s *HyperParameterTuningJobConfig) SetResourceLimits(v *ResourceLimits) *HyperParameterTuningJobConfig {
16343	s.ResourceLimits = v
16344	return s
16345}
16346
16347// SetStrategy sets the Strategy field's value.
16348func (s *HyperParameterTuningJobConfig) SetStrategy(v string) *HyperParameterTuningJobConfig {
16349	s.Strategy = &v
16350	return s
16351}
16352
16353// SetTrainingJobEarlyStoppingType sets the TrainingJobEarlyStoppingType field's value.
16354func (s *HyperParameterTuningJobConfig) SetTrainingJobEarlyStoppingType(v string) *HyperParameterTuningJobConfig {
16355	s.TrainingJobEarlyStoppingType = &v
16356	return s
16357}
16358
16359// Defines the objective metric for a hyperparameter tuning job. Hyperparameter
16360// tuning uses the value of this metric to evaluate the training jobs it launches,
16361// and returns the training job that results in either the highest or lowest
16362// value for this metric, depending on the value you specify for the Type parameter.
16363type HyperParameterTuningJobObjective struct {
16364	_ struct{} `type:"structure"`
16365
16366	// The name of the metric to use for the objective metric.
16367	//
16368	// MetricName is a required field
16369	MetricName *string `min:"1" type:"string" required:"true"`
16370
16371	// Whether to minimize or maximize the objective metric.
16372	//
16373	// Type is a required field
16374	Type *string `type:"string" required:"true" enum:"HyperParameterTuningJobObjectiveType"`
16375}
16376
16377// String returns the string representation
16378func (s HyperParameterTuningJobObjective) String() string {
16379	return awsutil.Prettify(s)
16380}
16381
16382// GoString returns the string representation
16383func (s HyperParameterTuningJobObjective) GoString() string {
16384	return s.String()
16385}
16386
16387// Validate inspects the fields of the type to determine if they are valid.
16388func (s *HyperParameterTuningJobObjective) Validate() error {
16389	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobObjective"}
16390	if s.MetricName == nil {
16391		invalidParams.Add(request.NewErrParamRequired("MetricName"))
16392	}
16393	if s.MetricName != nil && len(*s.MetricName) < 1 {
16394		invalidParams.Add(request.NewErrParamMinLen("MetricName", 1))
16395	}
16396	if s.Type == nil {
16397		invalidParams.Add(request.NewErrParamRequired("Type"))
16398	}
16399
16400	if invalidParams.Len() > 0 {
16401		return invalidParams
16402	}
16403	return nil
16404}
16405
16406// SetMetricName sets the MetricName field's value.
16407func (s *HyperParameterTuningJobObjective) SetMetricName(v string) *HyperParameterTuningJobObjective {
16408	s.MetricName = &v
16409	return s
16410}
16411
16412// SetType sets the Type field's value.
16413func (s *HyperParameterTuningJobObjective) SetType(v string) *HyperParameterTuningJobObjective {
16414	s.Type = &v
16415	return s
16416}
16417
16418// Provides summary information about a hyperparameter tuning job.
16419type HyperParameterTuningJobSummary struct {
16420	_ struct{} `type:"structure"`
16421
16422	// The date and time that the tuning job was created.
16423	//
16424	// CreationTime is a required field
16425	CreationTime *time.Time `type:"timestamp" required:"true"`
16426
16427	// The date and time that the tuning job ended.
16428	HyperParameterTuningEndTime *time.Time `type:"timestamp"`
16429
16430	// The Amazon Resource Name (ARN) of the tuning job.
16431	//
16432	// HyperParameterTuningJobArn is a required field
16433	HyperParameterTuningJobArn *string `type:"string" required:"true"`
16434
16435	// The name of the tuning job.
16436	//
16437	// HyperParameterTuningJobName is a required field
16438	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
16439
16440	// The status of the tuning job.
16441	//
16442	// HyperParameterTuningJobStatus is a required field
16443	HyperParameterTuningJobStatus *string `type:"string" required:"true" enum:"HyperParameterTuningJobStatus"`
16444
16445	// The date and time that the tuning job was modified.
16446	LastModifiedTime *time.Time `type:"timestamp"`
16447
16448	// The ObjectiveStatusCounters object that specifies the numbers of training
16449	// jobs, categorized by objective metric status, that this tuning job launched.
16450	//
16451	// ObjectiveStatusCounters is a required field
16452	ObjectiveStatusCounters *ObjectiveStatusCounters `type:"structure" required:"true"`
16453
16454	// The ResourceLimits object that specifies the maximum number of training jobs
16455	// and parallel training jobs allowed for this tuning job.
16456	ResourceLimits *ResourceLimits `type:"structure"`
16457
16458	// Specifies the search strategy hyperparameter tuning uses to choose which
16459	// hyperparameters to use for each iteration. Currently, the only valid value
16460	// is Bayesian.
16461	//
16462	// Strategy is a required field
16463	Strategy *string `type:"string" required:"true" enum:"HyperParameterTuningJobStrategyType"`
16464
16465	// The TrainingJobStatusCounters object that specifies the numbers of training
16466	// jobs, categorized by status, that this tuning job launched.
16467	//
16468	// TrainingJobStatusCounters is a required field
16469	TrainingJobStatusCounters *TrainingJobStatusCounters `type:"structure" required:"true"`
16470}
16471
16472// String returns the string representation
16473func (s HyperParameterTuningJobSummary) String() string {
16474	return awsutil.Prettify(s)
16475}
16476
16477// GoString returns the string representation
16478func (s HyperParameterTuningJobSummary) GoString() string {
16479	return s.String()
16480}
16481
16482// SetCreationTime sets the CreationTime field's value.
16483func (s *HyperParameterTuningJobSummary) SetCreationTime(v time.Time) *HyperParameterTuningJobSummary {
16484	s.CreationTime = &v
16485	return s
16486}
16487
16488// SetHyperParameterTuningEndTime sets the HyperParameterTuningEndTime field's value.
16489func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningEndTime(v time.Time) *HyperParameterTuningJobSummary {
16490	s.HyperParameterTuningEndTime = &v
16491	return s
16492}
16493
16494// SetHyperParameterTuningJobArn sets the HyperParameterTuningJobArn field's value.
16495func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobArn(v string) *HyperParameterTuningJobSummary {
16496	s.HyperParameterTuningJobArn = &v
16497	return s
16498}
16499
16500// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
16501func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobName(v string) *HyperParameterTuningJobSummary {
16502	s.HyperParameterTuningJobName = &v
16503	return s
16504}
16505
16506// SetHyperParameterTuningJobStatus sets the HyperParameterTuningJobStatus field's value.
16507func (s *HyperParameterTuningJobSummary) SetHyperParameterTuningJobStatus(v string) *HyperParameterTuningJobSummary {
16508	s.HyperParameterTuningJobStatus = &v
16509	return s
16510}
16511
16512// SetLastModifiedTime sets the LastModifiedTime field's value.
16513func (s *HyperParameterTuningJobSummary) SetLastModifiedTime(v time.Time) *HyperParameterTuningJobSummary {
16514	s.LastModifiedTime = &v
16515	return s
16516}
16517
16518// SetObjectiveStatusCounters sets the ObjectiveStatusCounters field's value.
16519func (s *HyperParameterTuningJobSummary) SetObjectiveStatusCounters(v *ObjectiveStatusCounters) *HyperParameterTuningJobSummary {
16520	s.ObjectiveStatusCounters = v
16521	return s
16522}
16523
16524// SetResourceLimits sets the ResourceLimits field's value.
16525func (s *HyperParameterTuningJobSummary) SetResourceLimits(v *ResourceLimits) *HyperParameterTuningJobSummary {
16526	s.ResourceLimits = v
16527	return s
16528}
16529
16530// SetStrategy sets the Strategy field's value.
16531func (s *HyperParameterTuningJobSummary) SetStrategy(v string) *HyperParameterTuningJobSummary {
16532	s.Strategy = &v
16533	return s
16534}
16535
16536// SetTrainingJobStatusCounters sets the TrainingJobStatusCounters field's value.
16537func (s *HyperParameterTuningJobSummary) SetTrainingJobStatusCounters(v *TrainingJobStatusCounters) *HyperParameterTuningJobSummary {
16538	s.TrainingJobStatusCounters = v
16539	return s
16540}
16541
16542// Specifies the configuration for a hyperparameter tuning job that uses one
16543// or more previous hyperparameter tuning jobs as a starting point. The results
16544// of previous tuning jobs are used to inform which combinations of hyperparameters
16545// to search over in the new tuning job.
16546//
16547// All training jobs launched by the new hyperparameter tuning job are evaluated
16548// by using the objective metric, and the training job that performs the best
16549// is compared to the best training jobs from the parent tuning jobs. From these,
16550// the training job that performs the best as measured by the objective metric
16551// is returned as the overall best training job.
16552//
16553// All training jobs launched by parent hyperparameter tuning jobs and the new
16554// hyperparameter tuning jobs count against the limit of training jobs for the
16555// tuning job.
16556type HyperParameterTuningJobWarmStartConfig struct {
16557	_ struct{} `type:"structure"`
16558
16559	// An array of hyperparameter tuning jobs that are used as the starting point
16560	// for the new hyperparameter tuning job. For more information about warm starting
16561	// a hyperparameter tuning job, see Using a Previous Hyperparameter Tuning Job
16562	// as a Starting Point (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-warm-start.html).
16563	//
16564	// Hyperparameter tuning jobs created before October 1, 2018 cannot be used
16565	// as parent jobs for warm start tuning jobs.
16566	//
16567	// ParentHyperParameterTuningJobs is a required field
16568	ParentHyperParameterTuningJobs []*ParentHyperParameterTuningJob `min:"1" type:"list" required:"true"`
16569
16570	// Specifies one of the following:
16571	//
16572	// IDENTICAL_DATA_AND_ALGORITHM
16573	//
16574	// The new hyperparameter tuning job uses the same input data and training image
16575	// as the parent tuning jobs. You can change the hyperparameter ranges to search
16576	// and the maximum number of training jobs that the hyperparameter tuning job
16577	// launches. You cannot use a new version of the training algorithm, unless
16578	// the changes in the new version do not affect the algorithm itself. For example,
16579	// changes that improve logging or adding support for a different data format
16580	// are allowed. You can also change hyperparameters from tunable to static,
16581	// and from static to tunable, but the total number of static plus tunable hyperparameters
16582	// must remain the same as it is in all parent jobs. The objective metric for
16583	// the new tuning job must be the same as for all parent jobs.
16584	//
16585	// TRANSFER_LEARNING
16586	//
16587	// The new hyperparameter tuning job can include input data, hyperparameter
16588	// ranges, maximum number of concurrent training jobs, and maximum number of
16589	// training jobs that are different than those of its parent hyperparameter
16590	// tuning jobs. The training image can also be a different version from the
16591	// version used in the parent hyperparameter tuning job. You can also change
16592	// hyperparameters from tunable to static, and from static to tunable, but the
16593	// total number of static plus tunable hyperparameters must remain the same
16594	// as it is in all parent jobs. The objective metric for the new tuning job
16595	// must be the same as for all parent jobs.
16596	//
16597	// WarmStartType is a required field
16598	WarmStartType *string `type:"string" required:"true" enum:"HyperParameterTuningJobWarmStartType"`
16599}
16600
16601// String returns the string representation
16602func (s HyperParameterTuningJobWarmStartConfig) String() string {
16603	return awsutil.Prettify(s)
16604}
16605
16606// GoString returns the string representation
16607func (s HyperParameterTuningJobWarmStartConfig) GoString() string {
16608	return s.String()
16609}
16610
16611// Validate inspects the fields of the type to determine if they are valid.
16612func (s *HyperParameterTuningJobWarmStartConfig) Validate() error {
16613	invalidParams := request.ErrInvalidParams{Context: "HyperParameterTuningJobWarmStartConfig"}
16614	if s.ParentHyperParameterTuningJobs == nil {
16615		invalidParams.Add(request.NewErrParamRequired("ParentHyperParameterTuningJobs"))
16616	}
16617	if s.ParentHyperParameterTuningJobs != nil && len(s.ParentHyperParameterTuningJobs) < 1 {
16618		invalidParams.Add(request.NewErrParamMinLen("ParentHyperParameterTuningJobs", 1))
16619	}
16620	if s.WarmStartType == nil {
16621		invalidParams.Add(request.NewErrParamRequired("WarmStartType"))
16622	}
16623	if s.ParentHyperParameterTuningJobs != nil {
16624		for i, v := range s.ParentHyperParameterTuningJobs {
16625			if v == nil {
16626				continue
16627			}
16628			if err := v.Validate(); err != nil {
16629				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ParentHyperParameterTuningJobs", i), err.(request.ErrInvalidParams))
16630			}
16631		}
16632	}
16633
16634	if invalidParams.Len() > 0 {
16635		return invalidParams
16636	}
16637	return nil
16638}
16639
16640// SetParentHyperParameterTuningJobs sets the ParentHyperParameterTuningJobs field's value.
16641func (s *HyperParameterTuningJobWarmStartConfig) SetParentHyperParameterTuningJobs(v []*ParentHyperParameterTuningJob) *HyperParameterTuningJobWarmStartConfig {
16642	s.ParentHyperParameterTuningJobs = v
16643	return s
16644}
16645
16646// SetWarmStartType sets the WarmStartType field's value.
16647func (s *HyperParameterTuningJobWarmStartConfig) SetWarmStartType(v string) *HyperParameterTuningJobWarmStartConfig {
16648	s.WarmStartType = &v
16649	return s
16650}
16651
16652// Defines how to perform inference generation after a training job is run.
16653type InferenceSpecification struct {
16654	_ struct{} `type:"structure"`
16655
16656	// The Amazon ECR registry path of the Docker image that contains the inference
16657	// code.
16658	//
16659	// Containers is a required field
16660	Containers []*ModelPackageContainerDefinition `min:"1" type:"list" required:"true"`
16661
16662	// The supported MIME types for the input data.
16663	//
16664	// SupportedContentTypes is a required field
16665	SupportedContentTypes []*string `type:"list" required:"true"`
16666
16667	// A list of the instance types that are used to generate inferences in real-time.
16668	//
16669	// SupportedRealtimeInferenceInstanceTypes is a required field
16670	SupportedRealtimeInferenceInstanceTypes []*string `type:"list" required:"true"`
16671
16672	// The supported MIME types for the output data.
16673	//
16674	// SupportedResponseMIMETypes is a required field
16675	SupportedResponseMIMETypes []*string `type:"list" required:"true"`
16676
16677	// A list of the instance types on which a transformation job can be run or
16678	// on which an endpoint can be deployed.
16679	//
16680	// SupportedTransformInstanceTypes is a required field
16681	SupportedTransformInstanceTypes []*string `min:"1" type:"list" required:"true"`
16682}
16683
16684// String returns the string representation
16685func (s InferenceSpecification) String() string {
16686	return awsutil.Prettify(s)
16687}
16688
16689// GoString returns the string representation
16690func (s InferenceSpecification) GoString() string {
16691	return s.String()
16692}
16693
16694// Validate inspects the fields of the type to determine if they are valid.
16695func (s *InferenceSpecification) Validate() error {
16696	invalidParams := request.ErrInvalidParams{Context: "InferenceSpecification"}
16697	if s.Containers == nil {
16698		invalidParams.Add(request.NewErrParamRequired("Containers"))
16699	}
16700	if s.Containers != nil && len(s.Containers) < 1 {
16701		invalidParams.Add(request.NewErrParamMinLen("Containers", 1))
16702	}
16703	if s.SupportedContentTypes == nil {
16704		invalidParams.Add(request.NewErrParamRequired("SupportedContentTypes"))
16705	}
16706	if s.SupportedRealtimeInferenceInstanceTypes == nil {
16707		invalidParams.Add(request.NewErrParamRequired("SupportedRealtimeInferenceInstanceTypes"))
16708	}
16709	if s.SupportedResponseMIMETypes == nil {
16710		invalidParams.Add(request.NewErrParamRequired("SupportedResponseMIMETypes"))
16711	}
16712	if s.SupportedTransformInstanceTypes == nil {
16713		invalidParams.Add(request.NewErrParamRequired("SupportedTransformInstanceTypes"))
16714	}
16715	if s.SupportedTransformInstanceTypes != nil && len(s.SupportedTransformInstanceTypes) < 1 {
16716		invalidParams.Add(request.NewErrParamMinLen("SupportedTransformInstanceTypes", 1))
16717	}
16718	if s.Containers != nil {
16719		for i, v := range s.Containers {
16720			if v == nil {
16721				continue
16722			}
16723			if err := v.Validate(); err != nil {
16724				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Containers", i), err.(request.ErrInvalidParams))
16725			}
16726		}
16727	}
16728
16729	if invalidParams.Len() > 0 {
16730		return invalidParams
16731	}
16732	return nil
16733}
16734
16735// SetContainers sets the Containers field's value.
16736func (s *InferenceSpecification) SetContainers(v []*ModelPackageContainerDefinition) *InferenceSpecification {
16737	s.Containers = v
16738	return s
16739}
16740
16741// SetSupportedContentTypes sets the SupportedContentTypes field's value.
16742func (s *InferenceSpecification) SetSupportedContentTypes(v []*string) *InferenceSpecification {
16743	s.SupportedContentTypes = v
16744	return s
16745}
16746
16747// SetSupportedRealtimeInferenceInstanceTypes sets the SupportedRealtimeInferenceInstanceTypes field's value.
16748func (s *InferenceSpecification) SetSupportedRealtimeInferenceInstanceTypes(v []*string) *InferenceSpecification {
16749	s.SupportedRealtimeInferenceInstanceTypes = v
16750	return s
16751}
16752
16753// SetSupportedResponseMIMETypes sets the SupportedResponseMIMETypes field's value.
16754func (s *InferenceSpecification) SetSupportedResponseMIMETypes(v []*string) *InferenceSpecification {
16755	s.SupportedResponseMIMETypes = v
16756	return s
16757}
16758
16759// SetSupportedTransformInstanceTypes sets the SupportedTransformInstanceTypes field's value.
16760func (s *InferenceSpecification) SetSupportedTransformInstanceTypes(v []*string) *InferenceSpecification {
16761	s.SupportedTransformInstanceTypes = v
16762	return s
16763}
16764
16765// Contains information about the location of input model artifacts, the name
16766// and shape of the expected data inputs, and the framework in which the model
16767// was trained.
16768type InputConfig struct {
16769	_ struct{} `type:"structure"`
16770
16771	// Specifies the name and shape of the expected data inputs for your trained
16772	// model with a JSON dictionary form. The data inputs are InputConfig$Framework
16773	// specific.
16774	//
16775	//    * TensorFlow: You must specify the name and shape (NHWC format) of the
16776	//    expected data inputs using a dictionary format for your trained model.
16777	//    The dictionary formats required for the console and CLI are different.
16778	//    Examples for one input: If using the console, {"input":[1,1024,1024,3]}
16779	//    If using the CLI, {\"input\":[1,1024,1024,3]} Examples for two inputs:
16780	//    If using the console, {"data1": [1,28,28,1], "data2":[1,28,28,1]} If using
16781	//    the CLI, {\"data1\": [1,28,28,1], \"data2\":[1,28,28,1]}
16782	//
16783	//    * MXNET/ONNX: You must specify the name and shape (NCHW format) of the
16784	//    expected data inputs in order using a dictionary format for your trained
16785	//    model. The dictionary formats required for the console and CLI are different.
16786	//    Examples for one input: If using the console, {"data":[1,3,1024,1024]}
16787	//    If using the CLI, {\"data\":[1,3,1024,1024]} Examples for two inputs:
16788	//    If using the console, {"var1": [1,1,28,28], "var2":[1,1,28,28]} If using
16789	//    the CLI, {\"var1\": [1,1,28,28], \"var2\":[1,1,28,28]}
16790	//
16791	//    * PyTorch: You can either specify the name and shape (NCHW format) of
16792	//    expected data inputs in order using a dictionary format for your trained
16793	//    model or you can specify the shape only using a list format. The dictionary
16794	//    formats required for the console and CLI are different. The list formats
16795	//    for the console and CLI are the same. Examples for one input in dictionary
16796	//    format: If using the console, {"input0":[1,3,224,224]} If using the CLI,
16797	//    {\"input0\":[1,3,224,224]} Example for one input in list format: [[1,3,224,224]]
16798	//    Examples for two inputs in dictionary format: If using the console, {"input0":[1,3,224,224],
16799	//    "input1":[1,3,224,224]} If using the CLI, {\"input0\":[1,3,224,224], \"input1\":[1,3,224,224]}
16800	//    Example for two inputs in list format: [[1,3,224,224], [1,3,224,224]]
16801	//
16802	//    * XGBOOST: input data name and shape are not needed.
16803	//
16804	// DataInputConfig is a required field
16805	DataInputConfig *string `min:"1" type:"string" required:"true"`
16806
16807	// Identifies the framework in which the model was trained. For example: TENSORFLOW.
16808	//
16809	// Framework is a required field
16810	Framework *string `type:"string" required:"true" enum:"Framework"`
16811
16812	// The S3 path where the model artifacts, which result from model training,
16813	// are stored. This path must point to a single gzip compressed tar archive
16814	// (.tar.gz suffix).
16815	//
16816	// S3Uri is a required field
16817	S3Uri *string `type:"string" required:"true"`
16818}
16819
16820// String returns the string representation
16821func (s InputConfig) String() string {
16822	return awsutil.Prettify(s)
16823}
16824
16825// GoString returns the string representation
16826func (s InputConfig) GoString() string {
16827	return s.String()
16828}
16829
16830// Validate inspects the fields of the type to determine if they are valid.
16831func (s *InputConfig) Validate() error {
16832	invalidParams := request.ErrInvalidParams{Context: "InputConfig"}
16833	if s.DataInputConfig == nil {
16834		invalidParams.Add(request.NewErrParamRequired("DataInputConfig"))
16835	}
16836	if s.DataInputConfig != nil && len(*s.DataInputConfig) < 1 {
16837		invalidParams.Add(request.NewErrParamMinLen("DataInputConfig", 1))
16838	}
16839	if s.Framework == nil {
16840		invalidParams.Add(request.NewErrParamRequired("Framework"))
16841	}
16842	if s.S3Uri == nil {
16843		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
16844	}
16845
16846	if invalidParams.Len() > 0 {
16847		return invalidParams
16848	}
16849	return nil
16850}
16851
16852// SetDataInputConfig sets the DataInputConfig field's value.
16853func (s *InputConfig) SetDataInputConfig(v string) *InputConfig {
16854	s.DataInputConfig = &v
16855	return s
16856}
16857
16858// SetFramework sets the Framework field's value.
16859func (s *InputConfig) SetFramework(v string) *InputConfig {
16860	s.Framework = &v
16861	return s
16862}
16863
16864// SetS3Uri sets the S3Uri field's value.
16865func (s *InputConfig) SetS3Uri(v string) *InputConfig {
16866	s.S3Uri = &v
16867	return s
16868}
16869
16870// For a hyperparameter of the integer type, specifies the range that a hyperparameter
16871// tuning job searches.
16872type IntegerParameterRange struct {
16873	_ struct{} `type:"structure"`
16874
16875	// The maximum value of the hyperparameter to search.
16876	//
16877	// MaxValue is a required field
16878	MaxValue *string `type:"string" required:"true"`
16879
16880	// The minimum value of the hyperparameter to search.
16881	//
16882	// MinValue is a required field
16883	MinValue *string `type:"string" required:"true"`
16884
16885	// The name of the hyperparameter to search.
16886	//
16887	// Name is a required field
16888	Name *string `type:"string" required:"true"`
16889
16890	// The scale that hyperparameter tuning uses to search the hyperparameter range.
16891	// For information about choosing a hyperparameter scale, see Hyperparameter
16892	// Scaling (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
16893	// One of the following values:
16894	//
16895	// Auto
16896	//
16897	// Amazon SageMaker hyperparameter tuning chooses the best scale for the hyperparameter.
16898	//
16899	// Linear
16900	//
16901	// Hyperparameter tuning searches the values in the hyperparameter range by
16902	// using a linear scale.
16903	//
16904	// Logarithmic
16905	//
16906	// Hyperparemeter tuning searches the values in the hyperparameter range by
16907	// using a logarithmic scale.
16908	//
16909	// Logarithmic scaling works only for ranges that have only values greater than
16910	// 0.
16911	ScalingType *string `type:"string" enum:"HyperParameterScalingType"`
16912}
16913
16914// String returns the string representation
16915func (s IntegerParameterRange) String() string {
16916	return awsutil.Prettify(s)
16917}
16918
16919// GoString returns the string representation
16920func (s IntegerParameterRange) GoString() string {
16921	return s.String()
16922}
16923
16924// Validate inspects the fields of the type to determine if they are valid.
16925func (s *IntegerParameterRange) Validate() error {
16926	invalidParams := request.ErrInvalidParams{Context: "IntegerParameterRange"}
16927	if s.MaxValue == nil {
16928		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
16929	}
16930	if s.MinValue == nil {
16931		invalidParams.Add(request.NewErrParamRequired("MinValue"))
16932	}
16933	if s.Name == nil {
16934		invalidParams.Add(request.NewErrParamRequired("Name"))
16935	}
16936
16937	if invalidParams.Len() > 0 {
16938		return invalidParams
16939	}
16940	return nil
16941}
16942
16943// SetMaxValue sets the MaxValue field's value.
16944func (s *IntegerParameterRange) SetMaxValue(v string) *IntegerParameterRange {
16945	s.MaxValue = &v
16946	return s
16947}
16948
16949// SetMinValue sets the MinValue field's value.
16950func (s *IntegerParameterRange) SetMinValue(v string) *IntegerParameterRange {
16951	s.MinValue = &v
16952	return s
16953}
16954
16955// SetName sets the Name field's value.
16956func (s *IntegerParameterRange) SetName(v string) *IntegerParameterRange {
16957	s.Name = &v
16958	return s
16959}
16960
16961// SetScalingType sets the ScalingType field's value.
16962func (s *IntegerParameterRange) SetScalingType(v string) *IntegerParameterRange {
16963	s.ScalingType = &v
16964	return s
16965}
16966
16967// Defines the possible values for an integer hyperparameter.
16968type IntegerParameterRangeSpecification struct {
16969	_ struct{} `type:"structure"`
16970
16971	// The maximum integer value allowed.
16972	//
16973	// MaxValue is a required field
16974	MaxValue *string `type:"string" required:"true"`
16975
16976	// The minimum integer value allowed.
16977	//
16978	// MinValue is a required field
16979	MinValue *string `type:"string" required:"true"`
16980}
16981
16982// String returns the string representation
16983func (s IntegerParameterRangeSpecification) String() string {
16984	return awsutil.Prettify(s)
16985}
16986
16987// GoString returns the string representation
16988func (s IntegerParameterRangeSpecification) GoString() string {
16989	return s.String()
16990}
16991
16992// Validate inspects the fields of the type to determine if they are valid.
16993func (s *IntegerParameterRangeSpecification) Validate() error {
16994	invalidParams := request.ErrInvalidParams{Context: "IntegerParameterRangeSpecification"}
16995	if s.MaxValue == nil {
16996		invalidParams.Add(request.NewErrParamRequired("MaxValue"))
16997	}
16998	if s.MinValue == nil {
16999		invalidParams.Add(request.NewErrParamRequired("MinValue"))
17000	}
17001
17002	if invalidParams.Len() > 0 {
17003		return invalidParams
17004	}
17005	return nil
17006}
17007
17008// SetMaxValue sets the MaxValue field's value.
17009func (s *IntegerParameterRangeSpecification) SetMaxValue(v string) *IntegerParameterRangeSpecification {
17010	s.MaxValue = &v
17011	return s
17012}
17013
17014// SetMinValue sets the MinValue field's value.
17015func (s *IntegerParameterRangeSpecification) SetMinValue(v string) *IntegerParameterRangeSpecification {
17016	s.MinValue = &v
17017	return s
17018}
17019
17020// Provides a breakdown of the number of objects labeled.
17021type LabelCounters struct {
17022	_ struct{} `type:"structure"`
17023
17024	// The total number of objects that could not be labeled due to an error.
17025	FailedNonRetryableError *int64 `type:"integer"`
17026
17027	// The total number of objects labeled by a human worker.
17028	HumanLabeled *int64 `type:"integer"`
17029
17030	// The total number of objects labeled by automated data labeling.
17031	MachineLabeled *int64 `type:"integer"`
17032
17033	// The total number of objects labeled.
17034	TotalLabeled *int64 `type:"integer"`
17035
17036	// The total number of objects not yet labeled.
17037	Unlabeled *int64 `type:"integer"`
17038}
17039
17040// String returns the string representation
17041func (s LabelCounters) String() string {
17042	return awsutil.Prettify(s)
17043}
17044
17045// GoString returns the string representation
17046func (s LabelCounters) GoString() string {
17047	return s.String()
17048}
17049
17050// SetFailedNonRetryableError sets the FailedNonRetryableError field's value.
17051func (s *LabelCounters) SetFailedNonRetryableError(v int64) *LabelCounters {
17052	s.FailedNonRetryableError = &v
17053	return s
17054}
17055
17056// SetHumanLabeled sets the HumanLabeled field's value.
17057func (s *LabelCounters) SetHumanLabeled(v int64) *LabelCounters {
17058	s.HumanLabeled = &v
17059	return s
17060}
17061
17062// SetMachineLabeled sets the MachineLabeled field's value.
17063func (s *LabelCounters) SetMachineLabeled(v int64) *LabelCounters {
17064	s.MachineLabeled = &v
17065	return s
17066}
17067
17068// SetTotalLabeled sets the TotalLabeled field's value.
17069func (s *LabelCounters) SetTotalLabeled(v int64) *LabelCounters {
17070	s.TotalLabeled = &v
17071	return s
17072}
17073
17074// SetUnlabeled sets the Unlabeled field's value.
17075func (s *LabelCounters) SetUnlabeled(v int64) *LabelCounters {
17076	s.Unlabeled = &v
17077	return s
17078}
17079
17080// Provides counts for human-labeled tasks in the labeling job.
17081type LabelCountersForWorkteam struct {
17082	_ struct{} `type:"structure"`
17083
17084	// The total number of data objects labeled by a human worker.
17085	HumanLabeled *int64 `type:"integer"`
17086
17087	// The total number of data objects that need to be labeled by a human worker.
17088	PendingHuman *int64 `type:"integer"`
17089
17090	// The total number of tasks in the labeling job.
17091	Total *int64 `type:"integer"`
17092}
17093
17094// String returns the string representation
17095func (s LabelCountersForWorkteam) String() string {
17096	return awsutil.Prettify(s)
17097}
17098
17099// GoString returns the string representation
17100func (s LabelCountersForWorkteam) GoString() string {
17101	return s.String()
17102}
17103
17104// SetHumanLabeled sets the HumanLabeled field's value.
17105func (s *LabelCountersForWorkteam) SetHumanLabeled(v int64) *LabelCountersForWorkteam {
17106	s.HumanLabeled = &v
17107	return s
17108}
17109
17110// SetPendingHuman sets the PendingHuman field's value.
17111func (s *LabelCountersForWorkteam) SetPendingHuman(v int64) *LabelCountersForWorkteam {
17112	s.PendingHuman = &v
17113	return s
17114}
17115
17116// SetTotal sets the Total field's value.
17117func (s *LabelCountersForWorkteam) SetTotal(v int64) *LabelCountersForWorkteam {
17118	s.Total = &v
17119	return s
17120}
17121
17122// Provides configuration information for auto-labeling of your data objects.
17123// A LabelingJobAlgorithmsConfig object must be supplied in order to use auto-labeling.
17124type LabelingJobAlgorithmsConfig struct {
17125	_ struct{} `type:"structure"`
17126
17127	// At the end of an auto-label job Amazon SageMaker Ground Truth sends the Amazon
17128	// Resource Nam (ARN) of the final model used for auto-labeling. You can use
17129	// this model as the starting point for subsequent similar jobs by providing
17130	// the ARN of the model here.
17131	InitialActiveLearningModelArn *string `min:"20" type:"string"`
17132
17133	// Specifies the Amazon Resource Name (ARN) of the algorithm used for auto-labeling.
17134	// You must select one of the following ARNs:
17135	//
17136	//    * Image classification arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/image-classification
17137	//
17138	//    * Text classification arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/text-classification
17139	//
17140	//    * Object detection arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/object-detection
17141	//
17142	//    * Semantic Segmentation arn:aws:sagemaker:region:027400017018:labeling-job-algorithm-specification/semantic-segmentation
17143	//
17144	// LabelingJobAlgorithmSpecificationArn is a required field
17145	LabelingJobAlgorithmSpecificationArn *string `type:"string" required:"true"`
17146
17147	// Provides configuration information for a labeling job.
17148	LabelingJobResourceConfig *LabelingJobResourceConfig `type:"structure"`
17149}
17150
17151// String returns the string representation
17152func (s LabelingJobAlgorithmsConfig) String() string {
17153	return awsutil.Prettify(s)
17154}
17155
17156// GoString returns the string representation
17157func (s LabelingJobAlgorithmsConfig) GoString() string {
17158	return s.String()
17159}
17160
17161// Validate inspects the fields of the type to determine if they are valid.
17162func (s *LabelingJobAlgorithmsConfig) Validate() error {
17163	invalidParams := request.ErrInvalidParams{Context: "LabelingJobAlgorithmsConfig"}
17164	if s.InitialActiveLearningModelArn != nil && len(*s.InitialActiveLearningModelArn) < 20 {
17165		invalidParams.Add(request.NewErrParamMinLen("InitialActiveLearningModelArn", 20))
17166	}
17167	if s.LabelingJobAlgorithmSpecificationArn == nil {
17168		invalidParams.Add(request.NewErrParamRequired("LabelingJobAlgorithmSpecificationArn"))
17169	}
17170
17171	if invalidParams.Len() > 0 {
17172		return invalidParams
17173	}
17174	return nil
17175}
17176
17177// SetInitialActiveLearningModelArn sets the InitialActiveLearningModelArn field's value.
17178func (s *LabelingJobAlgorithmsConfig) SetInitialActiveLearningModelArn(v string) *LabelingJobAlgorithmsConfig {
17179	s.InitialActiveLearningModelArn = &v
17180	return s
17181}
17182
17183// SetLabelingJobAlgorithmSpecificationArn sets the LabelingJobAlgorithmSpecificationArn field's value.
17184func (s *LabelingJobAlgorithmsConfig) SetLabelingJobAlgorithmSpecificationArn(v string) *LabelingJobAlgorithmsConfig {
17185	s.LabelingJobAlgorithmSpecificationArn = &v
17186	return s
17187}
17188
17189// SetLabelingJobResourceConfig sets the LabelingJobResourceConfig field's value.
17190func (s *LabelingJobAlgorithmsConfig) SetLabelingJobResourceConfig(v *LabelingJobResourceConfig) *LabelingJobAlgorithmsConfig {
17191	s.LabelingJobResourceConfig = v
17192	return s
17193}
17194
17195// Attributes of the data specified by the customer. Use these to describe the
17196// data to be labeled.
17197type LabelingJobDataAttributes struct {
17198	_ struct{} `type:"structure"`
17199
17200	// Declares that your content is free of personally identifiable information
17201	// or adult content. Amazon SageMaker may restrict the Amazon Mechanical Turk
17202	// workers that can view your task based on this information.
17203	ContentClassifiers []*string `type:"list"`
17204}
17205
17206// String returns the string representation
17207func (s LabelingJobDataAttributes) String() string {
17208	return awsutil.Prettify(s)
17209}
17210
17211// GoString returns the string representation
17212func (s LabelingJobDataAttributes) GoString() string {
17213	return s.String()
17214}
17215
17216// SetContentClassifiers sets the ContentClassifiers field's value.
17217func (s *LabelingJobDataAttributes) SetContentClassifiers(v []*string) *LabelingJobDataAttributes {
17218	s.ContentClassifiers = v
17219	return s
17220}
17221
17222// Provides information about the location of input data.
17223type LabelingJobDataSource struct {
17224	_ struct{} `type:"structure"`
17225
17226	// The Amazon S3 location of the input data objects.
17227	//
17228	// S3DataSource is a required field
17229	S3DataSource *LabelingJobS3DataSource `type:"structure" required:"true"`
17230}
17231
17232// String returns the string representation
17233func (s LabelingJobDataSource) String() string {
17234	return awsutil.Prettify(s)
17235}
17236
17237// GoString returns the string representation
17238func (s LabelingJobDataSource) GoString() string {
17239	return s.String()
17240}
17241
17242// Validate inspects the fields of the type to determine if they are valid.
17243func (s *LabelingJobDataSource) Validate() error {
17244	invalidParams := request.ErrInvalidParams{Context: "LabelingJobDataSource"}
17245	if s.S3DataSource == nil {
17246		invalidParams.Add(request.NewErrParamRequired("S3DataSource"))
17247	}
17248	if s.S3DataSource != nil {
17249		if err := s.S3DataSource.Validate(); err != nil {
17250			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
17251		}
17252	}
17253
17254	if invalidParams.Len() > 0 {
17255		return invalidParams
17256	}
17257	return nil
17258}
17259
17260// SetS3DataSource sets the S3DataSource field's value.
17261func (s *LabelingJobDataSource) SetS3DataSource(v *LabelingJobS3DataSource) *LabelingJobDataSource {
17262	s.S3DataSource = v
17263	return s
17264}
17265
17266// Provides summary information for a work team.
17267type LabelingJobForWorkteamSummary struct {
17268	_ struct{} `type:"structure"`
17269
17270	// The date and time that the labeling job was created.
17271	//
17272	// CreationTime is a required field
17273	CreationTime *time.Time `type:"timestamp" required:"true"`
17274
17275	// A unique identifier for a labeling job. You can use this to refer to a specific
17276	// labeling job.
17277	//
17278	// JobReferenceCode is a required field
17279	JobReferenceCode *string `min:"1" type:"string" required:"true"`
17280
17281	// Provides information about the progress of a labeling job.
17282	LabelCounters *LabelCountersForWorkteam `type:"structure"`
17283
17284	// The name of the labeling job that the work team is assigned to.
17285	LabelingJobName *string `min:"1" type:"string"`
17286
17287	// The configured number of workers per data object.
17288	NumberOfHumanWorkersPerDataObject *int64 `min:"1" type:"integer"`
17289
17290	// WorkRequesterAccountId is a required field
17291	WorkRequesterAccountId *string `type:"string" required:"true"`
17292}
17293
17294// String returns the string representation
17295func (s LabelingJobForWorkteamSummary) String() string {
17296	return awsutil.Prettify(s)
17297}
17298
17299// GoString returns the string representation
17300func (s LabelingJobForWorkteamSummary) GoString() string {
17301	return s.String()
17302}
17303
17304// SetCreationTime sets the CreationTime field's value.
17305func (s *LabelingJobForWorkteamSummary) SetCreationTime(v time.Time) *LabelingJobForWorkteamSummary {
17306	s.CreationTime = &v
17307	return s
17308}
17309
17310// SetJobReferenceCode sets the JobReferenceCode field's value.
17311func (s *LabelingJobForWorkteamSummary) SetJobReferenceCode(v string) *LabelingJobForWorkteamSummary {
17312	s.JobReferenceCode = &v
17313	return s
17314}
17315
17316// SetLabelCounters sets the LabelCounters field's value.
17317func (s *LabelingJobForWorkteamSummary) SetLabelCounters(v *LabelCountersForWorkteam) *LabelingJobForWorkteamSummary {
17318	s.LabelCounters = v
17319	return s
17320}
17321
17322// SetLabelingJobName sets the LabelingJobName field's value.
17323func (s *LabelingJobForWorkteamSummary) SetLabelingJobName(v string) *LabelingJobForWorkteamSummary {
17324	s.LabelingJobName = &v
17325	return s
17326}
17327
17328// SetNumberOfHumanWorkersPerDataObject sets the NumberOfHumanWorkersPerDataObject field's value.
17329func (s *LabelingJobForWorkteamSummary) SetNumberOfHumanWorkersPerDataObject(v int64) *LabelingJobForWorkteamSummary {
17330	s.NumberOfHumanWorkersPerDataObject = &v
17331	return s
17332}
17333
17334// SetWorkRequesterAccountId sets the WorkRequesterAccountId field's value.
17335func (s *LabelingJobForWorkteamSummary) SetWorkRequesterAccountId(v string) *LabelingJobForWorkteamSummary {
17336	s.WorkRequesterAccountId = &v
17337	return s
17338}
17339
17340// Input configuration information for a labeling job.
17341type LabelingJobInputConfig struct {
17342	_ struct{} `type:"structure"`
17343
17344	// Attributes of the data specified by the customer.
17345	DataAttributes *LabelingJobDataAttributes `type:"structure"`
17346
17347	// The location of the input data.
17348	//
17349	// DataSource is a required field
17350	DataSource *LabelingJobDataSource `type:"structure" required:"true"`
17351}
17352
17353// String returns the string representation
17354func (s LabelingJobInputConfig) String() string {
17355	return awsutil.Prettify(s)
17356}
17357
17358// GoString returns the string representation
17359func (s LabelingJobInputConfig) GoString() string {
17360	return s.String()
17361}
17362
17363// Validate inspects the fields of the type to determine if they are valid.
17364func (s *LabelingJobInputConfig) Validate() error {
17365	invalidParams := request.ErrInvalidParams{Context: "LabelingJobInputConfig"}
17366	if s.DataSource == nil {
17367		invalidParams.Add(request.NewErrParamRequired("DataSource"))
17368	}
17369	if s.DataSource != nil {
17370		if err := s.DataSource.Validate(); err != nil {
17371			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
17372		}
17373	}
17374
17375	if invalidParams.Len() > 0 {
17376		return invalidParams
17377	}
17378	return nil
17379}
17380
17381// SetDataAttributes sets the DataAttributes field's value.
17382func (s *LabelingJobInputConfig) SetDataAttributes(v *LabelingJobDataAttributes) *LabelingJobInputConfig {
17383	s.DataAttributes = v
17384	return s
17385}
17386
17387// SetDataSource sets the DataSource field's value.
17388func (s *LabelingJobInputConfig) SetDataSource(v *LabelingJobDataSource) *LabelingJobInputConfig {
17389	s.DataSource = v
17390	return s
17391}
17392
17393// Specifies the location of the output produced by the labeling job.
17394type LabelingJobOutput struct {
17395	_ struct{} `type:"structure"`
17396
17397	// The Amazon Resource Name (ARN) for the most recent Amazon SageMaker model
17398	// trained as part of automated data labeling.
17399	FinalActiveLearningModelArn *string `min:"20" type:"string"`
17400
17401	// The Amazon S3 bucket location of the manifest file for labeled data.
17402	//
17403	// OutputDatasetS3Uri is a required field
17404	OutputDatasetS3Uri *string `type:"string" required:"true"`
17405}
17406
17407// String returns the string representation
17408func (s LabelingJobOutput) String() string {
17409	return awsutil.Prettify(s)
17410}
17411
17412// GoString returns the string representation
17413func (s LabelingJobOutput) GoString() string {
17414	return s.String()
17415}
17416
17417// SetFinalActiveLearningModelArn sets the FinalActiveLearningModelArn field's value.
17418func (s *LabelingJobOutput) SetFinalActiveLearningModelArn(v string) *LabelingJobOutput {
17419	s.FinalActiveLearningModelArn = &v
17420	return s
17421}
17422
17423// SetOutputDatasetS3Uri sets the OutputDatasetS3Uri field's value.
17424func (s *LabelingJobOutput) SetOutputDatasetS3Uri(v string) *LabelingJobOutput {
17425	s.OutputDatasetS3Uri = &v
17426	return s
17427}
17428
17429// Output configuration information for a labeling job.
17430type LabelingJobOutputConfig struct {
17431	_ struct{} `type:"structure"`
17432
17433	// The AWS Key Management Service ID of the key used to encrypt the output data,
17434	// if any.
17435	//
17436	// If you use a KMS key ID or an alias of your master key, the Amazon SageMaker
17437	// execution role must include permissions to call kms:Encrypt. If you don't
17438	// provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon
17439	// S3 for your role's account. Amazon SageMaker uses server-side encryption
17440	// with KMS-managed keys for LabelingJobOutputConfig. If you use a bucket policy
17441	// with an s3:PutObject permission that only allows objects with server-side
17442	// encryption, set the condition key of s3:x-amz-server-side-encryption to "aws:kms".
17443	// For more information, see KMS-Managed Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
17444	// in the Amazon Simple Storage Service Developer Guide.
17445	//
17446	// The KMS key policy must grant permission to the IAM role that you specify
17447	// in your CreateLabelingJob request. For more information, see Using Key Policies
17448	// in AWS KMS (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)
17449	// in the AWS Key Management Service Developer Guide.
17450	KmsKeyId *string `type:"string"`
17451
17452	// The Amazon S3 location to write output data.
17453	//
17454	// S3OutputPath is a required field
17455	S3OutputPath *string `type:"string" required:"true"`
17456}
17457
17458// String returns the string representation
17459func (s LabelingJobOutputConfig) String() string {
17460	return awsutil.Prettify(s)
17461}
17462
17463// GoString returns the string representation
17464func (s LabelingJobOutputConfig) GoString() string {
17465	return s.String()
17466}
17467
17468// Validate inspects the fields of the type to determine if they are valid.
17469func (s *LabelingJobOutputConfig) Validate() error {
17470	invalidParams := request.ErrInvalidParams{Context: "LabelingJobOutputConfig"}
17471	if s.S3OutputPath == nil {
17472		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
17473	}
17474
17475	if invalidParams.Len() > 0 {
17476		return invalidParams
17477	}
17478	return nil
17479}
17480
17481// SetKmsKeyId sets the KmsKeyId field's value.
17482func (s *LabelingJobOutputConfig) SetKmsKeyId(v string) *LabelingJobOutputConfig {
17483	s.KmsKeyId = &v
17484	return s
17485}
17486
17487// SetS3OutputPath sets the S3OutputPath field's value.
17488func (s *LabelingJobOutputConfig) SetS3OutputPath(v string) *LabelingJobOutputConfig {
17489	s.S3OutputPath = &v
17490	return s
17491}
17492
17493// Provides configuration information for labeling jobs.
17494type LabelingJobResourceConfig struct {
17495	_ struct{} `type:"structure"`
17496
17497	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
17498	// encrypt data on the storage volume attached to the ML compute instance(s)
17499	// that run the training job. The VolumeKmsKeyId can be any of the following
17500	// formats:
17501	//
17502	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
17503	//
17504	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
17505	VolumeKmsKeyId *string `type:"string"`
17506}
17507
17508// String returns the string representation
17509func (s LabelingJobResourceConfig) String() string {
17510	return awsutil.Prettify(s)
17511}
17512
17513// GoString returns the string representation
17514func (s LabelingJobResourceConfig) GoString() string {
17515	return s.String()
17516}
17517
17518// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
17519func (s *LabelingJobResourceConfig) SetVolumeKmsKeyId(v string) *LabelingJobResourceConfig {
17520	s.VolumeKmsKeyId = &v
17521	return s
17522}
17523
17524// The Amazon S3 location of the input data objects.
17525type LabelingJobS3DataSource struct {
17526	_ struct{} `type:"structure"`
17527
17528	// The Amazon S3 location of the manifest file that describes the input data
17529	// objects.
17530	//
17531	// ManifestS3Uri is a required field
17532	ManifestS3Uri *string `type:"string" required:"true"`
17533}
17534
17535// String returns the string representation
17536func (s LabelingJobS3DataSource) String() string {
17537	return awsutil.Prettify(s)
17538}
17539
17540// GoString returns the string representation
17541func (s LabelingJobS3DataSource) GoString() string {
17542	return s.String()
17543}
17544
17545// Validate inspects the fields of the type to determine if they are valid.
17546func (s *LabelingJobS3DataSource) Validate() error {
17547	invalidParams := request.ErrInvalidParams{Context: "LabelingJobS3DataSource"}
17548	if s.ManifestS3Uri == nil {
17549		invalidParams.Add(request.NewErrParamRequired("ManifestS3Uri"))
17550	}
17551
17552	if invalidParams.Len() > 0 {
17553		return invalidParams
17554	}
17555	return nil
17556}
17557
17558// SetManifestS3Uri sets the ManifestS3Uri field's value.
17559func (s *LabelingJobS3DataSource) SetManifestS3Uri(v string) *LabelingJobS3DataSource {
17560	s.ManifestS3Uri = &v
17561	return s
17562}
17563
17564// A set of conditions for stopping a labeling job. If any of the conditions
17565// are met, the job is automatically stopped. You can use these conditions to
17566// control the cost of data labeling.
17567type LabelingJobStoppingConditions struct {
17568	_ struct{} `type:"structure"`
17569
17570	// The maximum number of objects that can be labeled by human workers.
17571	MaxHumanLabeledObjectCount *int64 `min:"1" type:"integer"`
17572
17573	// The maximum number of input data objects that should be labeled.
17574	MaxPercentageOfInputDatasetLabeled *int64 `min:"1" type:"integer"`
17575}
17576
17577// String returns the string representation
17578func (s LabelingJobStoppingConditions) String() string {
17579	return awsutil.Prettify(s)
17580}
17581
17582// GoString returns the string representation
17583func (s LabelingJobStoppingConditions) GoString() string {
17584	return s.String()
17585}
17586
17587// Validate inspects the fields of the type to determine if they are valid.
17588func (s *LabelingJobStoppingConditions) Validate() error {
17589	invalidParams := request.ErrInvalidParams{Context: "LabelingJobStoppingConditions"}
17590	if s.MaxHumanLabeledObjectCount != nil && *s.MaxHumanLabeledObjectCount < 1 {
17591		invalidParams.Add(request.NewErrParamMinValue("MaxHumanLabeledObjectCount", 1))
17592	}
17593	if s.MaxPercentageOfInputDatasetLabeled != nil && *s.MaxPercentageOfInputDatasetLabeled < 1 {
17594		invalidParams.Add(request.NewErrParamMinValue("MaxPercentageOfInputDatasetLabeled", 1))
17595	}
17596
17597	if invalidParams.Len() > 0 {
17598		return invalidParams
17599	}
17600	return nil
17601}
17602
17603// SetMaxHumanLabeledObjectCount sets the MaxHumanLabeledObjectCount field's value.
17604func (s *LabelingJobStoppingConditions) SetMaxHumanLabeledObjectCount(v int64) *LabelingJobStoppingConditions {
17605	s.MaxHumanLabeledObjectCount = &v
17606	return s
17607}
17608
17609// SetMaxPercentageOfInputDatasetLabeled sets the MaxPercentageOfInputDatasetLabeled field's value.
17610func (s *LabelingJobStoppingConditions) SetMaxPercentageOfInputDatasetLabeled(v int64) *LabelingJobStoppingConditions {
17611	s.MaxPercentageOfInputDatasetLabeled = &v
17612	return s
17613}
17614
17615// Provides summary information about a labeling job.
17616type LabelingJobSummary struct {
17617	_ struct{} `type:"structure"`
17618
17619	// The Amazon Resource Name (ARN) of the Lambda function used to consolidate
17620	// the annotations from individual workers into a label for a data object. For
17621	// more information, see Annotation Consolidation (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html).
17622	AnnotationConsolidationLambdaArn *string `type:"string"`
17623
17624	// The date and time that the job was created (timestamp).
17625	//
17626	// CreationTime is a required field
17627	CreationTime *time.Time `type:"timestamp" required:"true"`
17628
17629	// If the LabelingJobStatus field is Failed, this field contains a description
17630	// of the error.
17631	FailureReason *string `type:"string"`
17632
17633	// Input configuration for the labeling job.
17634	InputConfig *LabelingJobInputConfig `type:"structure"`
17635
17636	// Counts showing the progress of the labeling job.
17637	//
17638	// LabelCounters is a required field
17639	LabelCounters *LabelCounters `type:"structure" required:"true"`
17640
17641	// The Amazon Resource Name (ARN) assigned to the labeling job when it was created.
17642	//
17643	// LabelingJobArn is a required field
17644	LabelingJobArn *string `type:"string" required:"true"`
17645
17646	// The name of the labeling job.
17647	//
17648	// LabelingJobName is a required field
17649	LabelingJobName *string `min:"1" type:"string" required:"true"`
17650
17651	// The location of the output produced by the labeling job.
17652	LabelingJobOutput *LabelingJobOutput `type:"structure"`
17653
17654	// The current status of the labeling job.
17655	//
17656	// LabelingJobStatus is a required field
17657	LabelingJobStatus *string `type:"string" required:"true" enum:"LabelingJobStatus"`
17658
17659	// The date and time that the job was last modified (timestamp).
17660	//
17661	// LastModifiedTime is a required field
17662	LastModifiedTime *time.Time `type:"timestamp" required:"true"`
17663
17664	// The Amazon Resource Name (ARN) of a Lambda function. The function is run
17665	// before each data object is sent to a worker.
17666	//
17667	// PreHumanTaskLambdaArn is a required field
17668	PreHumanTaskLambdaArn *string `type:"string" required:"true"`
17669
17670	// The Amazon Resource Name (ARN) of the work team assigned to the job.
17671	//
17672	// WorkteamArn is a required field
17673	WorkteamArn *string `type:"string" required:"true"`
17674}
17675
17676// String returns the string representation
17677func (s LabelingJobSummary) String() string {
17678	return awsutil.Prettify(s)
17679}
17680
17681// GoString returns the string representation
17682func (s LabelingJobSummary) GoString() string {
17683	return s.String()
17684}
17685
17686// SetAnnotationConsolidationLambdaArn sets the AnnotationConsolidationLambdaArn field's value.
17687func (s *LabelingJobSummary) SetAnnotationConsolidationLambdaArn(v string) *LabelingJobSummary {
17688	s.AnnotationConsolidationLambdaArn = &v
17689	return s
17690}
17691
17692// SetCreationTime sets the CreationTime field's value.
17693func (s *LabelingJobSummary) SetCreationTime(v time.Time) *LabelingJobSummary {
17694	s.CreationTime = &v
17695	return s
17696}
17697
17698// SetFailureReason sets the FailureReason field's value.
17699func (s *LabelingJobSummary) SetFailureReason(v string) *LabelingJobSummary {
17700	s.FailureReason = &v
17701	return s
17702}
17703
17704// SetInputConfig sets the InputConfig field's value.
17705func (s *LabelingJobSummary) SetInputConfig(v *LabelingJobInputConfig) *LabelingJobSummary {
17706	s.InputConfig = v
17707	return s
17708}
17709
17710// SetLabelCounters sets the LabelCounters field's value.
17711func (s *LabelingJobSummary) SetLabelCounters(v *LabelCounters) *LabelingJobSummary {
17712	s.LabelCounters = v
17713	return s
17714}
17715
17716// SetLabelingJobArn sets the LabelingJobArn field's value.
17717func (s *LabelingJobSummary) SetLabelingJobArn(v string) *LabelingJobSummary {
17718	s.LabelingJobArn = &v
17719	return s
17720}
17721
17722// SetLabelingJobName sets the LabelingJobName field's value.
17723func (s *LabelingJobSummary) SetLabelingJobName(v string) *LabelingJobSummary {
17724	s.LabelingJobName = &v
17725	return s
17726}
17727
17728// SetLabelingJobOutput sets the LabelingJobOutput field's value.
17729func (s *LabelingJobSummary) SetLabelingJobOutput(v *LabelingJobOutput) *LabelingJobSummary {
17730	s.LabelingJobOutput = v
17731	return s
17732}
17733
17734// SetLabelingJobStatus sets the LabelingJobStatus field's value.
17735func (s *LabelingJobSummary) SetLabelingJobStatus(v string) *LabelingJobSummary {
17736	s.LabelingJobStatus = &v
17737	return s
17738}
17739
17740// SetLastModifiedTime sets the LastModifiedTime field's value.
17741func (s *LabelingJobSummary) SetLastModifiedTime(v time.Time) *LabelingJobSummary {
17742	s.LastModifiedTime = &v
17743	return s
17744}
17745
17746// SetPreHumanTaskLambdaArn sets the PreHumanTaskLambdaArn field's value.
17747func (s *LabelingJobSummary) SetPreHumanTaskLambdaArn(v string) *LabelingJobSummary {
17748	s.PreHumanTaskLambdaArn = &v
17749	return s
17750}
17751
17752// SetWorkteamArn sets the WorkteamArn field's value.
17753func (s *LabelingJobSummary) SetWorkteamArn(v string) *LabelingJobSummary {
17754	s.WorkteamArn = &v
17755	return s
17756}
17757
17758type ListAlgorithmsInput struct {
17759	_ struct{} `type:"structure"`
17760
17761	// A filter that returns only algorithms created after the specified time (timestamp).
17762	CreationTimeAfter *time.Time `type:"timestamp"`
17763
17764	// A filter that returns only algorithms created before the specified time (timestamp).
17765	CreationTimeBefore *time.Time `type:"timestamp"`
17766
17767	// The maximum number of algorithms to return in the response.
17768	MaxResults *int64 `min:"1" type:"integer"`
17769
17770	// A string in the algorithm name. This filter returns only algorithms whose
17771	// name contains the specified string.
17772	NameContains *string `type:"string"`
17773
17774	// If the response to a previous ListAlgorithms request was truncated, the response
17775	// includes a NextToken. To retrieve the next set of algorithms, use the token
17776	// in the next request.
17777	NextToken *string `type:"string"`
17778
17779	// The parameter by which to sort the results. The default is CreationTime.
17780	SortBy *string `type:"string" enum:"AlgorithmSortBy"`
17781
17782	// The sort order for the results. The default is Ascending.
17783	SortOrder *string `type:"string" enum:"SortOrder"`
17784}
17785
17786// String returns the string representation
17787func (s ListAlgorithmsInput) String() string {
17788	return awsutil.Prettify(s)
17789}
17790
17791// GoString returns the string representation
17792func (s ListAlgorithmsInput) GoString() string {
17793	return s.String()
17794}
17795
17796// Validate inspects the fields of the type to determine if they are valid.
17797func (s *ListAlgorithmsInput) Validate() error {
17798	invalidParams := request.ErrInvalidParams{Context: "ListAlgorithmsInput"}
17799	if s.MaxResults != nil && *s.MaxResults < 1 {
17800		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
17801	}
17802
17803	if invalidParams.Len() > 0 {
17804		return invalidParams
17805	}
17806	return nil
17807}
17808
17809// SetCreationTimeAfter sets the CreationTimeAfter field's value.
17810func (s *ListAlgorithmsInput) SetCreationTimeAfter(v time.Time) *ListAlgorithmsInput {
17811	s.CreationTimeAfter = &v
17812	return s
17813}
17814
17815// SetCreationTimeBefore sets the CreationTimeBefore field's value.
17816func (s *ListAlgorithmsInput) SetCreationTimeBefore(v time.Time) *ListAlgorithmsInput {
17817	s.CreationTimeBefore = &v
17818	return s
17819}
17820
17821// SetMaxResults sets the MaxResults field's value.
17822func (s *ListAlgorithmsInput) SetMaxResults(v int64) *ListAlgorithmsInput {
17823	s.MaxResults = &v
17824	return s
17825}
17826
17827// SetNameContains sets the NameContains field's value.
17828func (s *ListAlgorithmsInput) SetNameContains(v string) *ListAlgorithmsInput {
17829	s.NameContains = &v
17830	return s
17831}
17832
17833// SetNextToken sets the NextToken field's value.
17834func (s *ListAlgorithmsInput) SetNextToken(v string) *ListAlgorithmsInput {
17835	s.NextToken = &v
17836	return s
17837}
17838
17839// SetSortBy sets the SortBy field's value.
17840func (s *ListAlgorithmsInput) SetSortBy(v string) *ListAlgorithmsInput {
17841	s.SortBy = &v
17842	return s
17843}
17844
17845// SetSortOrder sets the SortOrder field's value.
17846func (s *ListAlgorithmsInput) SetSortOrder(v string) *ListAlgorithmsInput {
17847	s.SortOrder = &v
17848	return s
17849}
17850
17851type ListAlgorithmsOutput struct {
17852	_ struct{} `type:"structure"`
17853
17854	// >An array of AlgorithmSummary objects, each of which lists an algorithm.
17855	//
17856	// AlgorithmSummaryList is a required field
17857	AlgorithmSummaryList []*AlgorithmSummary `type:"list" required:"true"`
17858
17859	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
17860	// the next set of algorithms, use it in the subsequent request.
17861	NextToken *string `type:"string"`
17862}
17863
17864// String returns the string representation
17865func (s ListAlgorithmsOutput) String() string {
17866	return awsutil.Prettify(s)
17867}
17868
17869// GoString returns the string representation
17870func (s ListAlgorithmsOutput) GoString() string {
17871	return s.String()
17872}
17873
17874// SetAlgorithmSummaryList sets the AlgorithmSummaryList field's value.
17875func (s *ListAlgorithmsOutput) SetAlgorithmSummaryList(v []*AlgorithmSummary) *ListAlgorithmsOutput {
17876	s.AlgorithmSummaryList = v
17877	return s
17878}
17879
17880// SetNextToken sets the NextToken field's value.
17881func (s *ListAlgorithmsOutput) SetNextToken(v string) *ListAlgorithmsOutput {
17882	s.NextToken = &v
17883	return s
17884}
17885
17886type ListCodeRepositoriesInput struct {
17887	_ struct{} `type:"structure"`
17888
17889	// A filter that returns only Git repositories that were created after the specified
17890	// time.
17891	CreationTimeAfter *time.Time `type:"timestamp"`
17892
17893	// A filter that returns only Git repositories that were created before the
17894	// specified time.
17895	CreationTimeBefore *time.Time `type:"timestamp"`
17896
17897	// A filter that returns only Git repositories that were last modified after
17898	// the specified time.
17899	LastModifiedTimeAfter *time.Time `type:"timestamp"`
17900
17901	// A filter that returns only Git repositories that were last modified before
17902	// the specified time.
17903	LastModifiedTimeBefore *time.Time `type:"timestamp"`
17904
17905	// The maximum number of Git repositories to return in the response.
17906	MaxResults *int64 `min:"1" type:"integer"`
17907
17908	// A string in the Git repositories name. This filter returns only repositories
17909	// whose name contains the specified string.
17910	NameContains *string `type:"string"`
17911
17912	// If the result of a ListCodeRepositoriesOutput request was truncated, the
17913	// response includes a NextToken. To get the next set of Git repositories, use
17914	// the token in the next request.
17915	NextToken *string `type:"string"`
17916
17917	// The field to sort results by. The default is Name.
17918	SortBy *string `type:"string" enum:"CodeRepositorySortBy"`
17919
17920	// The sort order for results. The default is Ascending.
17921	SortOrder *string `type:"string" enum:"CodeRepositorySortOrder"`
17922}
17923
17924// String returns the string representation
17925func (s ListCodeRepositoriesInput) String() string {
17926	return awsutil.Prettify(s)
17927}
17928
17929// GoString returns the string representation
17930func (s ListCodeRepositoriesInput) GoString() string {
17931	return s.String()
17932}
17933
17934// Validate inspects the fields of the type to determine if they are valid.
17935func (s *ListCodeRepositoriesInput) Validate() error {
17936	invalidParams := request.ErrInvalidParams{Context: "ListCodeRepositoriesInput"}
17937	if s.MaxResults != nil && *s.MaxResults < 1 {
17938		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
17939	}
17940
17941	if invalidParams.Len() > 0 {
17942		return invalidParams
17943	}
17944	return nil
17945}
17946
17947// SetCreationTimeAfter sets the CreationTimeAfter field's value.
17948func (s *ListCodeRepositoriesInput) SetCreationTimeAfter(v time.Time) *ListCodeRepositoriesInput {
17949	s.CreationTimeAfter = &v
17950	return s
17951}
17952
17953// SetCreationTimeBefore sets the CreationTimeBefore field's value.
17954func (s *ListCodeRepositoriesInput) SetCreationTimeBefore(v time.Time) *ListCodeRepositoriesInput {
17955	s.CreationTimeBefore = &v
17956	return s
17957}
17958
17959// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
17960func (s *ListCodeRepositoriesInput) SetLastModifiedTimeAfter(v time.Time) *ListCodeRepositoriesInput {
17961	s.LastModifiedTimeAfter = &v
17962	return s
17963}
17964
17965// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
17966func (s *ListCodeRepositoriesInput) SetLastModifiedTimeBefore(v time.Time) *ListCodeRepositoriesInput {
17967	s.LastModifiedTimeBefore = &v
17968	return s
17969}
17970
17971// SetMaxResults sets the MaxResults field's value.
17972func (s *ListCodeRepositoriesInput) SetMaxResults(v int64) *ListCodeRepositoriesInput {
17973	s.MaxResults = &v
17974	return s
17975}
17976
17977// SetNameContains sets the NameContains field's value.
17978func (s *ListCodeRepositoriesInput) SetNameContains(v string) *ListCodeRepositoriesInput {
17979	s.NameContains = &v
17980	return s
17981}
17982
17983// SetNextToken sets the NextToken field's value.
17984func (s *ListCodeRepositoriesInput) SetNextToken(v string) *ListCodeRepositoriesInput {
17985	s.NextToken = &v
17986	return s
17987}
17988
17989// SetSortBy sets the SortBy field's value.
17990func (s *ListCodeRepositoriesInput) SetSortBy(v string) *ListCodeRepositoriesInput {
17991	s.SortBy = &v
17992	return s
17993}
17994
17995// SetSortOrder sets the SortOrder field's value.
17996func (s *ListCodeRepositoriesInput) SetSortOrder(v string) *ListCodeRepositoriesInput {
17997	s.SortOrder = &v
17998	return s
17999}
18000
18001type ListCodeRepositoriesOutput struct {
18002	_ struct{} `type:"structure"`
18003
18004	// Gets a list of summaries of the Git repositories. Each summary specifies
18005	// the following values for the repository:
18006	//
18007	//    * Name
18008	//
18009	//    * Amazon Resource Name (ARN)
18010	//
18011	//    * Creation time
18012	//
18013	//    * Last modified time
18014	//
18015	//    * Configuration information, including the URL location of the repository
18016	//    and the ARN of the AWS Secrets Manager secret that contains the credentials
18017	//    used to access the repository.
18018	//
18019	// CodeRepositorySummaryList is a required field
18020	CodeRepositorySummaryList []*CodeRepositorySummary `type:"list" required:"true"`
18021
18022	// If the result of a ListCodeRepositoriesOutput request was truncated, the
18023	// response includes a NextToken. To get the next set of Git repositories, use
18024	// the token in the next request.
18025	NextToken *string `type:"string"`
18026}
18027
18028// String returns the string representation
18029func (s ListCodeRepositoriesOutput) String() string {
18030	return awsutil.Prettify(s)
18031}
18032
18033// GoString returns the string representation
18034func (s ListCodeRepositoriesOutput) GoString() string {
18035	return s.String()
18036}
18037
18038// SetCodeRepositorySummaryList sets the CodeRepositorySummaryList field's value.
18039func (s *ListCodeRepositoriesOutput) SetCodeRepositorySummaryList(v []*CodeRepositorySummary) *ListCodeRepositoriesOutput {
18040	s.CodeRepositorySummaryList = v
18041	return s
18042}
18043
18044// SetNextToken sets the NextToken field's value.
18045func (s *ListCodeRepositoriesOutput) SetNextToken(v string) *ListCodeRepositoriesOutput {
18046	s.NextToken = &v
18047	return s
18048}
18049
18050type ListCompilationJobsInput struct {
18051	_ struct{} `type:"structure"`
18052
18053	// A filter that returns the model compilation jobs that were created after
18054	// a specified time.
18055	CreationTimeAfter *time.Time `type:"timestamp"`
18056
18057	// A filter that returns the model compilation jobs that were created before
18058	// a specified time.
18059	CreationTimeBefore *time.Time `type:"timestamp"`
18060
18061	// A filter that returns the model compilation jobs that were modified after
18062	// a specified time.
18063	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18064
18065	// A filter that returns the model compilation jobs that were modified before
18066	// a specified time.
18067	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18068
18069	// The maximum number of model compilation jobs to return in the response.
18070	MaxResults *int64 `min:"1" type:"integer"`
18071
18072	// A filter that returns the model compilation jobs whose name contains a specified
18073	// string.
18074	NameContains *string `type:"string"`
18075
18076	// If the result of the previous ListCompilationJobs request was truncated,
18077	// the response includes a NextToken. To retrieve the next set of model compilation
18078	// jobs, use the token in the next request.
18079	NextToken *string `type:"string"`
18080
18081	// The field by which to sort results. The default is CreationTime.
18082	SortBy *string `type:"string" enum:"ListCompilationJobsSortBy"`
18083
18084	// The sort order for results. The default is Ascending.
18085	SortOrder *string `type:"string" enum:"SortOrder"`
18086
18087	// A filter that retrieves model compilation jobs with a specific DescribeCompilationJobResponse$CompilationJobStatus
18088	// status.
18089	StatusEquals *string `type:"string" enum:"CompilationJobStatus"`
18090}
18091
18092// String returns the string representation
18093func (s ListCompilationJobsInput) String() string {
18094	return awsutil.Prettify(s)
18095}
18096
18097// GoString returns the string representation
18098func (s ListCompilationJobsInput) GoString() string {
18099	return s.String()
18100}
18101
18102// Validate inspects the fields of the type to determine if they are valid.
18103func (s *ListCompilationJobsInput) Validate() error {
18104	invalidParams := request.ErrInvalidParams{Context: "ListCompilationJobsInput"}
18105	if s.MaxResults != nil && *s.MaxResults < 1 {
18106		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18107	}
18108
18109	if invalidParams.Len() > 0 {
18110		return invalidParams
18111	}
18112	return nil
18113}
18114
18115// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18116func (s *ListCompilationJobsInput) SetCreationTimeAfter(v time.Time) *ListCompilationJobsInput {
18117	s.CreationTimeAfter = &v
18118	return s
18119}
18120
18121// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18122func (s *ListCompilationJobsInput) SetCreationTimeBefore(v time.Time) *ListCompilationJobsInput {
18123	s.CreationTimeBefore = &v
18124	return s
18125}
18126
18127// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18128func (s *ListCompilationJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListCompilationJobsInput {
18129	s.LastModifiedTimeAfter = &v
18130	return s
18131}
18132
18133// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18134func (s *ListCompilationJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListCompilationJobsInput {
18135	s.LastModifiedTimeBefore = &v
18136	return s
18137}
18138
18139// SetMaxResults sets the MaxResults field's value.
18140func (s *ListCompilationJobsInput) SetMaxResults(v int64) *ListCompilationJobsInput {
18141	s.MaxResults = &v
18142	return s
18143}
18144
18145// SetNameContains sets the NameContains field's value.
18146func (s *ListCompilationJobsInput) SetNameContains(v string) *ListCompilationJobsInput {
18147	s.NameContains = &v
18148	return s
18149}
18150
18151// SetNextToken sets the NextToken field's value.
18152func (s *ListCompilationJobsInput) SetNextToken(v string) *ListCompilationJobsInput {
18153	s.NextToken = &v
18154	return s
18155}
18156
18157// SetSortBy sets the SortBy field's value.
18158func (s *ListCompilationJobsInput) SetSortBy(v string) *ListCompilationJobsInput {
18159	s.SortBy = &v
18160	return s
18161}
18162
18163// SetSortOrder sets the SortOrder field's value.
18164func (s *ListCompilationJobsInput) SetSortOrder(v string) *ListCompilationJobsInput {
18165	s.SortOrder = &v
18166	return s
18167}
18168
18169// SetStatusEquals sets the StatusEquals field's value.
18170func (s *ListCompilationJobsInput) SetStatusEquals(v string) *ListCompilationJobsInput {
18171	s.StatusEquals = &v
18172	return s
18173}
18174
18175type ListCompilationJobsOutput struct {
18176	_ struct{} `type:"structure"`
18177
18178	// An array of CompilationJobSummary objects, each describing a model compilation
18179	// job.
18180	//
18181	// CompilationJobSummaries is a required field
18182	CompilationJobSummaries []*CompilationJobSummary `type:"list" required:"true"`
18183
18184	// If the response is truncated, Amazon SageMaker returns this NextToken. To
18185	// retrieve the next set of model compilation jobs, use this token in the next
18186	// request.
18187	NextToken *string `type:"string"`
18188}
18189
18190// String returns the string representation
18191func (s ListCompilationJobsOutput) String() string {
18192	return awsutil.Prettify(s)
18193}
18194
18195// GoString returns the string representation
18196func (s ListCompilationJobsOutput) GoString() string {
18197	return s.String()
18198}
18199
18200// SetCompilationJobSummaries sets the CompilationJobSummaries field's value.
18201func (s *ListCompilationJobsOutput) SetCompilationJobSummaries(v []*CompilationJobSummary) *ListCompilationJobsOutput {
18202	s.CompilationJobSummaries = v
18203	return s
18204}
18205
18206// SetNextToken sets the NextToken field's value.
18207func (s *ListCompilationJobsOutput) SetNextToken(v string) *ListCompilationJobsOutput {
18208	s.NextToken = &v
18209	return s
18210}
18211
18212type ListEndpointConfigsInput struct {
18213	_ struct{} `type:"structure"`
18214
18215	// A filter that returns only endpoint configurations with a creation time greater
18216	// than or equal to the specified time (timestamp).
18217	CreationTimeAfter *time.Time `type:"timestamp"`
18218
18219	// A filter that returns only endpoint configurations created before the specified
18220	// time (timestamp).
18221	CreationTimeBefore *time.Time `type:"timestamp"`
18222
18223	// The maximum number of training jobs to return in the response.
18224	MaxResults *int64 `min:"1" type:"integer"`
18225
18226	// A string in the endpoint configuration name. This filter returns only endpoint
18227	// configurations whose name contains the specified string.
18228	NameContains *string `type:"string"`
18229
18230	// If the result of the previous ListEndpointConfig request was truncated, the
18231	// response includes a NextToken. To retrieve the next set of endpoint configurations,
18232	// use the token in the next request.
18233	NextToken *string `type:"string"`
18234
18235	// The field to sort results by. The default is CreationTime.
18236	SortBy *string `type:"string" enum:"EndpointConfigSortKey"`
18237
18238	// The sort order for results. The default is Descending.
18239	SortOrder *string `type:"string" enum:"OrderKey"`
18240}
18241
18242// String returns the string representation
18243func (s ListEndpointConfigsInput) String() string {
18244	return awsutil.Prettify(s)
18245}
18246
18247// GoString returns the string representation
18248func (s ListEndpointConfigsInput) GoString() string {
18249	return s.String()
18250}
18251
18252// Validate inspects the fields of the type to determine if they are valid.
18253func (s *ListEndpointConfigsInput) Validate() error {
18254	invalidParams := request.ErrInvalidParams{Context: "ListEndpointConfigsInput"}
18255	if s.MaxResults != nil && *s.MaxResults < 1 {
18256		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18257	}
18258
18259	if invalidParams.Len() > 0 {
18260		return invalidParams
18261	}
18262	return nil
18263}
18264
18265// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18266func (s *ListEndpointConfigsInput) SetCreationTimeAfter(v time.Time) *ListEndpointConfigsInput {
18267	s.CreationTimeAfter = &v
18268	return s
18269}
18270
18271// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18272func (s *ListEndpointConfigsInput) SetCreationTimeBefore(v time.Time) *ListEndpointConfigsInput {
18273	s.CreationTimeBefore = &v
18274	return s
18275}
18276
18277// SetMaxResults sets the MaxResults field's value.
18278func (s *ListEndpointConfigsInput) SetMaxResults(v int64) *ListEndpointConfigsInput {
18279	s.MaxResults = &v
18280	return s
18281}
18282
18283// SetNameContains sets the NameContains field's value.
18284func (s *ListEndpointConfigsInput) SetNameContains(v string) *ListEndpointConfigsInput {
18285	s.NameContains = &v
18286	return s
18287}
18288
18289// SetNextToken sets the NextToken field's value.
18290func (s *ListEndpointConfigsInput) SetNextToken(v string) *ListEndpointConfigsInput {
18291	s.NextToken = &v
18292	return s
18293}
18294
18295// SetSortBy sets the SortBy field's value.
18296func (s *ListEndpointConfigsInput) SetSortBy(v string) *ListEndpointConfigsInput {
18297	s.SortBy = &v
18298	return s
18299}
18300
18301// SetSortOrder sets the SortOrder field's value.
18302func (s *ListEndpointConfigsInput) SetSortOrder(v string) *ListEndpointConfigsInput {
18303	s.SortOrder = &v
18304	return s
18305}
18306
18307type ListEndpointConfigsOutput struct {
18308	_ struct{} `type:"structure"`
18309
18310	// An array of endpoint configurations.
18311	//
18312	// EndpointConfigs is a required field
18313	EndpointConfigs []*EndpointConfigSummary `type:"list" required:"true"`
18314
18315	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18316	// the next set of endpoint configurations, use it in the subsequent request
18317	NextToken *string `type:"string"`
18318}
18319
18320// String returns the string representation
18321func (s ListEndpointConfigsOutput) String() string {
18322	return awsutil.Prettify(s)
18323}
18324
18325// GoString returns the string representation
18326func (s ListEndpointConfigsOutput) GoString() string {
18327	return s.String()
18328}
18329
18330// SetEndpointConfigs sets the EndpointConfigs field's value.
18331func (s *ListEndpointConfigsOutput) SetEndpointConfigs(v []*EndpointConfigSummary) *ListEndpointConfigsOutput {
18332	s.EndpointConfigs = v
18333	return s
18334}
18335
18336// SetNextToken sets the NextToken field's value.
18337func (s *ListEndpointConfigsOutput) SetNextToken(v string) *ListEndpointConfigsOutput {
18338	s.NextToken = &v
18339	return s
18340}
18341
18342type ListEndpointsInput struct {
18343	_ struct{} `type:"structure"`
18344
18345	// A filter that returns only endpoints with a creation time greater than or
18346	// equal to the specified time (timestamp).
18347	CreationTimeAfter *time.Time `type:"timestamp"`
18348
18349	// A filter that returns only endpoints that were created before the specified
18350	// time (timestamp).
18351	CreationTimeBefore *time.Time `type:"timestamp"`
18352
18353	// A filter that returns only endpoints that were modified after the specified
18354	// timestamp.
18355	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18356
18357	// A filter that returns only endpoints that were modified before the specified
18358	// timestamp.
18359	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18360
18361	// The maximum number of endpoints to return in the response.
18362	MaxResults *int64 `min:"1" type:"integer"`
18363
18364	// A string in endpoint names. This filter returns only endpoints whose name
18365	// contains the specified string.
18366	NameContains *string `type:"string"`
18367
18368	// If the result of a ListEndpoints request was truncated, the response includes
18369	// a NextToken. To retrieve the next set of endpoints, use the token in the
18370	// next request.
18371	NextToken *string `type:"string"`
18372
18373	// Sorts the list of results. The default is CreationTime.
18374	SortBy *string `type:"string" enum:"EndpointSortKey"`
18375
18376	// The sort order for results. The default is Descending.
18377	SortOrder *string `type:"string" enum:"OrderKey"`
18378
18379	// A filter that returns only endpoints with the specified status.
18380	StatusEquals *string `type:"string" enum:"EndpointStatus"`
18381}
18382
18383// String returns the string representation
18384func (s ListEndpointsInput) String() string {
18385	return awsutil.Prettify(s)
18386}
18387
18388// GoString returns the string representation
18389func (s ListEndpointsInput) GoString() string {
18390	return s.String()
18391}
18392
18393// Validate inspects the fields of the type to determine if they are valid.
18394func (s *ListEndpointsInput) Validate() error {
18395	invalidParams := request.ErrInvalidParams{Context: "ListEndpointsInput"}
18396	if s.MaxResults != nil && *s.MaxResults < 1 {
18397		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18398	}
18399
18400	if invalidParams.Len() > 0 {
18401		return invalidParams
18402	}
18403	return nil
18404}
18405
18406// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18407func (s *ListEndpointsInput) SetCreationTimeAfter(v time.Time) *ListEndpointsInput {
18408	s.CreationTimeAfter = &v
18409	return s
18410}
18411
18412// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18413func (s *ListEndpointsInput) SetCreationTimeBefore(v time.Time) *ListEndpointsInput {
18414	s.CreationTimeBefore = &v
18415	return s
18416}
18417
18418// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18419func (s *ListEndpointsInput) SetLastModifiedTimeAfter(v time.Time) *ListEndpointsInput {
18420	s.LastModifiedTimeAfter = &v
18421	return s
18422}
18423
18424// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18425func (s *ListEndpointsInput) SetLastModifiedTimeBefore(v time.Time) *ListEndpointsInput {
18426	s.LastModifiedTimeBefore = &v
18427	return s
18428}
18429
18430// SetMaxResults sets the MaxResults field's value.
18431func (s *ListEndpointsInput) SetMaxResults(v int64) *ListEndpointsInput {
18432	s.MaxResults = &v
18433	return s
18434}
18435
18436// SetNameContains sets the NameContains field's value.
18437func (s *ListEndpointsInput) SetNameContains(v string) *ListEndpointsInput {
18438	s.NameContains = &v
18439	return s
18440}
18441
18442// SetNextToken sets the NextToken field's value.
18443func (s *ListEndpointsInput) SetNextToken(v string) *ListEndpointsInput {
18444	s.NextToken = &v
18445	return s
18446}
18447
18448// SetSortBy sets the SortBy field's value.
18449func (s *ListEndpointsInput) SetSortBy(v string) *ListEndpointsInput {
18450	s.SortBy = &v
18451	return s
18452}
18453
18454// SetSortOrder sets the SortOrder field's value.
18455func (s *ListEndpointsInput) SetSortOrder(v string) *ListEndpointsInput {
18456	s.SortOrder = &v
18457	return s
18458}
18459
18460// SetStatusEquals sets the StatusEquals field's value.
18461func (s *ListEndpointsInput) SetStatusEquals(v string) *ListEndpointsInput {
18462	s.StatusEquals = &v
18463	return s
18464}
18465
18466type ListEndpointsOutput struct {
18467	_ struct{} `type:"structure"`
18468
18469	// An array or endpoint objects.
18470	//
18471	// Endpoints is a required field
18472	Endpoints []*EndpointSummary `type:"list" required:"true"`
18473
18474	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18475	// the next set of training jobs, use it in the subsequent request.
18476	NextToken *string `type:"string"`
18477}
18478
18479// String returns the string representation
18480func (s ListEndpointsOutput) String() string {
18481	return awsutil.Prettify(s)
18482}
18483
18484// GoString returns the string representation
18485func (s ListEndpointsOutput) GoString() string {
18486	return s.String()
18487}
18488
18489// SetEndpoints sets the Endpoints field's value.
18490func (s *ListEndpointsOutput) SetEndpoints(v []*EndpointSummary) *ListEndpointsOutput {
18491	s.Endpoints = v
18492	return s
18493}
18494
18495// SetNextToken sets the NextToken field's value.
18496func (s *ListEndpointsOutput) SetNextToken(v string) *ListEndpointsOutput {
18497	s.NextToken = &v
18498	return s
18499}
18500
18501type ListHyperParameterTuningJobsInput struct {
18502	_ struct{} `type:"structure"`
18503
18504	// A filter that returns only tuning jobs that were created after the specified
18505	// time.
18506	CreationTimeAfter *time.Time `type:"timestamp"`
18507
18508	// A filter that returns only tuning jobs that were created before the specified
18509	// time.
18510	CreationTimeBefore *time.Time `type:"timestamp"`
18511
18512	// A filter that returns only tuning jobs that were modified after the specified
18513	// time.
18514	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18515
18516	// A filter that returns only tuning jobs that were modified before the specified
18517	// time.
18518	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18519
18520	// The maximum number of tuning jobs to return. The default value is 10.
18521	MaxResults *int64 `min:"1" type:"integer"`
18522
18523	// A string in the tuning job name. This filter returns only tuning jobs whose
18524	// name contains the specified string.
18525	NameContains *string `type:"string"`
18526
18527	// If the result of the previous ListHyperParameterTuningJobs request was truncated,
18528	// the response includes a NextToken. To retrieve the next set of tuning jobs,
18529	// use the token in the next request.
18530	NextToken *string `type:"string"`
18531
18532	// The field to sort results by. The default is Name.
18533	SortBy *string `type:"string" enum:"HyperParameterTuningJobSortByOptions"`
18534
18535	// The sort order for results. The default is Ascending.
18536	SortOrder *string `type:"string" enum:"SortOrder"`
18537
18538	// A filter that returns only tuning jobs with the specified status.
18539	StatusEquals *string `type:"string" enum:"HyperParameterTuningJobStatus"`
18540}
18541
18542// String returns the string representation
18543func (s ListHyperParameterTuningJobsInput) String() string {
18544	return awsutil.Prettify(s)
18545}
18546
18547// GoString returns the string representation
18548func (s ListHyperParameterTuningJobsInput) GoString() string {
18549	return s.String()
18550}
18551
18552// Validate inspects the fields of the type to determine if they are valid.
18553func (s *ListHyperParameterTuningJobsInput) Validate() error {
18554	invalidParams := request.ErrInvalidParams{Context: "ListHyperParameterTuningJobsInput"}
18555	if s.MaxResults != nil && *s.MaxResults < 1 {
18556		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18557	}
18558
18559	if invalidParams.Len() > 0 {
18560		return invalidParams
18561	}
18562	return nil
18563}
18564
18565// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18566func (s *ListHyperParameterTuningJobsInput) SetCreationTimeAfter(v time.Time) *ListHyperParameterTuningJobsInput {
18567	s.CreationTimeAfter = &v
18568	return s
18569}
18570
18571// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18572func (s *ListHyperParameterTuningJobsInput) SetCreationTimeBefore(v time.Time) *ListHyperParameterTuningJobsInput {
18573	s.CreationTimeBefore = &v
18574	return s
18575}
18576
18577// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18578func (s *ListHyperParameterTuningJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListHyperParameterTuningJobsInput {
18579	s.LastModifiedTimeAfter = &v
18580	return s
18581}
18582
18583// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18584func (s *ListHyperParameterTuningJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListHyperParameterTuningJobsInput {
18585	s.LastModifiedTimeBefore = &v
18586	return s
18587}
18588
18589// SetMaxResults sets the MaxResults field's value.
18590func (s *ListHyperParameterTuningJobsInput) SetMaxResults(v int64) *ListHyperParameterTuningJobsInput {
18591	s.MaxResults = &v
18592	return s
18593}
18594
18595// SetNameContains sets the NameContains field's value.
18596func (s *ListHyperParameterTuningJobsInput) SetNameContains(v string) *ListHyperParameterTuningJobsInput {
18597	s.NameContains = &v
18598	return s
18599}
18600
18601// SetNextToken sets the NextToken field's value.
18602func (s *ListHyperParameterTuningJobsInput) SetNextToken(v string) *ListHyperParameterTuningJobsInput {
18603	s.NextToken = &v
18604	return s
18605}
18606
18607// SetSortBy sets the SortBy field's value.
18608func (s *ListHyperParameterTuningJobsInput) SetSortBy(v string) *ListHyperParameterTuningJobsInput {
18609	s.SortBy = &v
18610	return s
18611}
18612
18613// SetSortOrder sets the SortOrder field's value.
18614func (s *ListHyperParameterTuningJobsInput) SetSortOrder(v string) *ListHyperParameterTuningJobsInput {
18615	s.SortOrder = &v
18616	return s
18617}
18618
18619// SetStatusEquals sets the StatusEquals field's value.
18620func (s *ListHyperParameterTuningJobsInput) SetStatusEquals(v string) *ListHyperParameterTuningJobsInput {
18621	s.StatusEquals = &v
18622	return s
18623}
18624
18625type ListHyperParameterTuningJobsOutput struct {
18626	_ struct{} `type:"structure"`
18627
18628	// A list of HyperParameterTuningJobSummary objects that describe the tuning
18629	// jobs that the ListHyperParameterTuningJobs request returned.
18630	//
18631	// HyperParameterTuningJobSummaries is a required field
18632	HyperParameterTuningJobSummaries []*HyperParameterTuningJobSummary `type:"list" required:"true"`
18633
18634	// If the result of this ListHyperParameterTuningJobs request was truncated,
18635	// the response includes a NextToken. To retrieve the next set of tuning jobs,
18636	// use the token in the next request.
18637	NextToken *string `type:"string"`
18638}
18639
18640// String returns the string representation
18641func (s ListHyperParameterTuningJobsOutput) String() string {
18642	return awsutil.Prettify(s)
18643}
18644
18645// GoString returns the string representation
18646func (s ListHyperParameterTuningJobsOutput) GoString() string {
18647	return s.String()
18648}
18649
18650// SetHyperParameterTuningJobSummaries sets the HyperParameterTuningJobSummaries field's value.
18651func (s *ListHyperParameterTuningJobsOutput) SetHyperParameterTuningJobSummaries(v []*HyperParameterTuningJobSummary) *ListHyperParameterTuningJobsOutput {
18652	s.HyperParameterTuningJobSummaries = v
18653	return s
18654}
18655
18656// SetNextToken sets the NextToken field's value.
18657func (s *ListHyperParameterTuningJobsOutput) SetNextToken(v string) *ListHyperParameterTuningJobsOutput {
18658	s.NextToken = &v
18659	return s
18660}
18661
18662type ListLabelingJobsForWorkteamInput struct {
18663	_ struct{} `type:"structure"`
18664
18665	// A filter that returns only labeling jobs created after the specified time
18666	// (timestamp).
18667	CreationTimeAfter *time.Time `type:"timestamp"`
18668
18669	// A filter that returns only labeling jobs created before the specified time
18670	// (timestamp).
18671	CreationTimeBefore *time.Time `type:"timestamp"`
18672
18673	// A filter the limits jobs to only the ones whose job reference code contains
18674	// the specified string.
18675	JobReferenceCodeContains *string `min:"1" type:"string"`
18676
18677	// The maximum number of labeling jobs to return in each page of the response.
18678	MaxResults *int64 `min:"1" type:"integer"`
18679
18680	// If the result of the previous ListLabelingJobsForWorkteam request was truncated,
18681	// the response includes a NextToken. To retrieve the next set of labeling jobs,
18682	// use the token in the next request.
18683	NextToken *string `type:"string"`
18684
18685	// The field to sort results by. The default is CreationTime.
18686	SortBy *string `type:"string" enum:"ListLabelingJobsForWorkteamSortByOptions"`
18687
18688	// The sort order for results. The default is Ascending.
18689	SortOrder *string `type:"string" enum:"SortOrder"`
18690
18691	// The Amazon Resource Name (ARN) of the work team for which you want to see
18692	// labeling jobs for.
18693	//
18694	// WorkteamArn is a required field
18695	WorkteamArn *string `type:"string" required:"true"`
18696}
18697
18698// String returns the string representation
18699func (s ListLabelingJobsForWorkteamInput) String() string {
18700	return awsutil.Prettify(s)
18701}
18702
18703// GoString returns the string representation
18704func (s ListLabelingJobsForWorkteamInput) GoString() string {
18705	return s.String()
18706}
18707
18708// Validate inspects the fields of the type to determine if they are valid.
18709func (s *ListLabelingJobsForWorkteamInput) Validate() error {
18710	invalidParams := request.ErrInvalidParams{Context: "ListLabelingJobsForWorkteamInput"}
18711	if s.JobReferenceCodeContains != nil && len(*s.JobReferenceCodeContains) < 1 {
18712		invalidParams.Add(request.NewErrParamMinLen("JobReferenceCodeContains", 1))
18713	}
18714	if s.MaxResults != nil && *s.MaxResults < 1 {
18715		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18716	}
18717	if s.WorkteamArn == nil {
18718		invalidParams.Add(request.NewErrParamRequired("WorkteamArn"))
18719	}
18720
18721	if invalidParams.Len() > 0 {
18722		return invalidParams
18723	}
18724	return nil
18725}
18726
18727// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18728func (s *ListLabelingJobsForWorkteamInput) SetCreationTimeAfter(v time.Time) *ListLabelingJobsForWorkteamInput {
18729	s.CreationTimeAfter = &v
18730	return s
18731}
18732
18733// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18734func (s *ListLabelingJobsForWorkteamInput) SetCreationTimeBefore(v time.Time) *ListLabelingJobsForWorkteamInput {
18735	s.CreationTimeBefore = &v
18736	return s
18737}
18738
18739// SetJobReferenceCodeContains sets the JobReferenceCodeContains field's value.
18740func (s *ListLabelingJobsForWorkteamInput) SetJobReferenceCodeContains(v string) *ListLabelingJobsForWorkteamInput {
18741	s.JobReferenceCodeContains = &v
18742	return s
18743}
18744
18745// SetMaxResults sets the MaxResults field's value.
18746func (s *ListLabelingJobsForWorkteamInput) SetMaxResults(v int64) *ListLabelingJobsForWorkteamInput {
18747	s.MaxResults = &v
18748	return s
18749}
18750
18751// SetNextToken sets the NextToken field's value.
18752func (s *ListLabelingJobsForWorkteamInput) SetNextToken(v string) *ListLabelingJobsForWorkteamInput {
18753	s.NextToken = &v
18754	return s
18755}
18756
18757// SetSortBy sets the SortBy field's value.
18758func (s *ListLabelingJobsForWorkteamInput) SetSortBy(v string) *ListLabelingJobsForWorkteamInput {
18759	s.SortBy = &v
18760	return s
18761}
18762
18763// SetSortOrder sets the SortOrder field's value.
18764func (s *ListLabelingJobsForWorkteamInput) SetSortOrder(v string) *ListLabelingJobsForWorkteamInput {
18765	s.SortOrder = &v
18766	return s
18767}
18768
18769// SetWorkteamArn sets the WorkteamArn field's value.
18770func (s *ListLabelingJobsForWorkteamInput) SetWorkteamArn(v string) *ListLabelingJobsForWorkteamInput {
18771	s.WorkteamArn = &v
18772	return s
18773}
18774
18775type ListLabelingJobsForWorkteamOutput struct {
18776	_ struct{} `type:"structure"`
18777
18778	// An array of LabelingJobSummary objects, each describing a labeling job.
18779	//
18780	// LabelingJobSummaryList is a required field
18781	LabelingJobSummaryList []*LabelingJobForWorkteamSummary `type:"list" required:"true"`
18782
18783	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18784	// the next set of labeling jobs, use it in the subsequent request.
18785	NextToken *string `type:"string"`
18786}
18787
18788// String returns the string representation
18789func (s ListLabelingJobsForWorkteamOutput) String() string {
18790	return awsutil.Prettify(s)
18791}
18792
18793// GoString returns the string representation
18794func (s ListLabelingJobsForWorkteamOutput) GoString() string {
18795	return s.String()
18796}
18797
18798// SetLabelingJobSummaryList sets the LabelingJobSummaryList field's value.
18799func (s *ListLabelingJobsForWorkteamOutput) SetLabelingJobSummaryList(v []*LabelingJobForWorkteamSummary) *ListLabelingJobsForWorkteamOutput {
18800	s.LabelingJobSummaryList = v
18801	return s
18802}
18803
18804// SetNextToken sets the NextToken field's value.
18805func (s *ListLabelingJobsForWorkteamOutput) SetNextToken(v string) *ListLabelingJobsForWorkteamOutput {
18806	s.NextToken = &v
18807	return s
18808}
18809
18810type ListLabelingJobsInput struct {
18811	_ struct{} `type:"structure"`
18812
18813	// A filter that returns only labeling jobs created after the specified time
18814	// (timestamp).
18815	CreationTimeAfter *time.Time `type:"timestamp"`
18816
18817	// A filter that returns only labeling jobs created before the specified time
18818	// (timestamp).
18819	CreationTimeBefore *time.Time `type:"timestamp"`
18820
18821	// A filter that returns only labeling jobs modified after the specified time
18822	// (timestamp).
18823	LastModifiedTimeAfter *time.Time `type:"timestamp"`
18824
18825	// A filter that returns only labeling jobs modified before the specified time
18826	// (timestamp).
18827	LastModifiedTimeBefore *time.Time `type:"timestamp"`
18828
18829	// The maximum number of labeling jobs to return in each page of the response.
18830	MaxResults *int64 `min:"1" type:"integer"`
18831
18832	// A string in the labeling job name. This filter returns only labeling jobs
18833	// whose name contains the specified string.
18834	NameContains *string `type:"string"`
18835
18836	// If the result of the previous ListLabelingJobs request was truncated, the
18837	// response includes a NextToken. To retrieve the next set of labeling jobs,
18838	// use the token in the next request.
18839	NextToken *string `type:"string"`
18840
18841	// The field to sort results by. The default is CreationTime.
18842	SortBy *string `type:"string" enum:"SortBy"`
18843
18844	// The sort order for results. The default is Ascending.
18845	SortOrder *string `type:"string" enum:"SortOrder"`
18846
18847	// A filter that retrieves only labeling jobs with a specific status.
18848	StatusEquals *string `type:"string" enum:"LabelingJobStatus"`
18849}
18850
18851// String returns the string representation
18852func (s ListLabelingJobsInput) String() string {
18853	return awsutil.Prettify(s)
18854}
18855
18856// GoString returns the string representation
18857func (s ListLabelingJobsInput) GoString() string {
18858	return s.String()
18859}
18860
18861// Validate inspects the fields of the type to determine if they are valid.
18862func (s *ListLabelingJobsInput) Validate() error {
18863	invalidParams := request.ErrInvalidParams{Context: "ListLabelingJobsInput"}
18864	if s.MaxResults != nil && *s.MaxResults < 1 {
18865		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
18866	}
18867
18868	if invalidParams.Len() > 0 {
18869		return invalidParams
18870	}
18871	return nil
18872}
18873
18874// SetCreationTimeAfter sets the CreationTimeAfter field's value.
18875func (s *ListLabelingJobsInput) SetCreationTimeAfter(v time.Time) *ListLabelingJobsInput {
18876	s.CreationTimeAfter = &v
18877	return s
18878}
18879
18880// SetCreationTimeBefore sets the CreationTimeBefore field's value.
18881func (s *ListLabelingJobsInput) SetCreationTimeBefore(v time.Time) *ListLabelingJobsInput {
18882	s.CreationTimeBefore = &v
18883	return s
18884}
18885
18886// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
18887func (s *ListLabelingJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListLabelingJobsInput {
18888	s.LastModifiedTimeAfter = &v
18889	return s
18890}
18891
18892// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
18893func (s *ListLabelingJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListLabelingJobsInput {
18894	s.LastModifiedTimeBefore = &v
18895	return s
18896}
18897
18898// SetMaxResults sets the MaxResults field's value.
18899func (s *ListLabelingJobsInput) SetMaxResults(v int64) *ListLabelingJobsInput {
18900	s.MaxResults = &v
18901	return s
18902}
18903
18904// SetNameContains sets the NameContains field's value.
18905func (s *ListLabelingJobsInput) SetNameContains(v string) *ListLabelingJobsInput {
18906	s.NameContains = &v
18907	return s
18908}
18909
18910// SetNextToken sets the NextToken field's value.
18911func (s *ListLabelingJobsInput) SetNextToken(v string) *ListLabelingJobsInput {
18912	s.NextToken = &v
18913	return s
18914}
18915
18916// SetSortBy sets the SortBy field's value.
18917func (s *ListLabelingJobsInput) SetSortBy(v string) *ListLabelingJobsInput {
18918	s.SortBy = &v
18919	return s
18920}
18921
18922// SetSortOrder sets the SortOrder field's value.
18923func (s *ListLabelingJobsInput) SetSortOrder(v string) *ListLabelingJobsInput {
18924	s.SortOrder = &v
18925	return s
18926}
18927
18928// SetStatusEquals sets the StatusEquals field's value.
18929func (s *ListLabelingJobsInput) SetStatusEquals(v string) *ListLabelingJobsInput {
18930	s.StatusEquals = &v
18931	return s
18932}
18933
18934type ListLabelingJobsOutput struct {
18935	_ struct{} `type:"structure"`
18936
18937	// An array of LabelingJobSummary objects, each describing a labeling job.
18938	LabelingJobSummaryList []*LabelingJobSummary `type:"list"`
18939
18940	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
18941	// the next set of labeling jobs, use it in the subsequent request.
18942	NextToken *string `type:"string"`
18943}
18944
18945// String returns the string representation
18946func (s ListLabelingJobsOutput) String() string {
18947	return awsutil.Prettify(s)
18948}
18949
18950// GoString returns the string representation
18951func (s ListLabelingJobsOutput) GoString() string {
18952	return s.String()
18953}
18954
18955// SetLabelingJobSummaryList sets the LabelingJobSummaryList field's value.
18956func (s *ListLabelingJobsOutput) SetLabelingJobSummaryList(v []*LabelingJobSummary) *ListLabelingJobsOutput {
18957	s.LabelingJobSummaryList = v
18958	return s
18959}
18960
18961// SetNextToken sets the NextToken field's value.
18962func (s *ListLabelingJobsOutput) SetNextToken(v string) *ListLabelingJobsOutput {
18963	s.NextToken = &v
18964	return s
18965}
18966
18967type ListModelPackagesInput struct {
18968	_ struct{} `type:"structure"`
18969
18970	// A filter that returns only model packages created after the specified time
18971	// (timestamp).
18972	CreationTimeAfter *time.Time `type:"timestamp"`
18973
18974	// A filter that returns only model packages created before the specified time
18975	// (timestamp).
18976	CreationTimeBefore *time.Time `type:"timestamp"`
18977
18978	// The maximum number of model packages to return in the response.
18979	MaxResults *int64 `min:"1" type:"integer"`
18980
18981	// A string in the model package name. This filter returns only model packages
18982	// whose name contains the specified string.
18983	NameContains *string `type:"string"`
18984
18985	// If the response to a previous ListModelPackages request was truncated, the
18986	// response includes a NextToken. To retrieve the next set of model packages,
18987	// use the token in the next request.
18988	NextToken *string `type:"string"`
18989
18990	// The parameter by which to sort the results. The default is CreationTime.
18991	SortBy *string `type:"string" enum:"ModelPackageSortBy"`
18992
18993	// The sort order for the results. The default is Ascending.
18994	SortOrder *string `type:"string" enum:"SortOrder"`
18995}
18996
18997// String returns the string representation
18998func (s ListModelPackagesInput) String() string {
18999	return awsutil.Prettify(s)
19000}
19001
19002// GoString returns the string representation
19003func (s ListModelPackagesInput) GoString() string {
19004	return s.String()
19005}
19006
19007// Validate inspects the fields of the type to determine if they are valid.
19008func (s *ListModelPackagesInput) Validate() error {
19009	invalidParams := request.ErrInvalidParams{Context: "ListModelPackagesInput"}
19010	if s.MaxResults != nil && *s.MaxResults < 1 {
19011		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19012	}
19013
19014	if invalidParams.Len() > 0 {
19015		return invalidParams
19016	}
19017	return nil
19018}
19019
19020// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19021func (s *ListModelPackagesInput) SetCreationTimeAfter(v time.Time) *ListModelPackagesInput {
19022	s.CreationTimeAfter = &v
19023	return s
19024}
19025
19026// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19027func (s *ListModelPackagesInput) SetCreationTimeBefore(v time.Time) *ListModelPackagesInput {
19028	s.CreationTimeBefore = &v
19029	return s
19030}
19031
19032// SetMaxResults sets the MaxResults field's value.
19033func (s *ListModelPackagesInput) SetMaxResults(v int64) *ListModelPackagesInput {
19034	s.MaxResults = &v
19035	return s
19036}
19037
19038// SetNameContains sets the NameContains field's value.
19039func (s *ListModelPackagesInput) SetNameContains(v string) *ListModelPackagesInput {
19040	s.NameContains = &v
19041	return s
19042}
19043
19044// SetNextToken sets the NextToken field's value.
19045func (s *ListModelPackagesInput) SetNextToken(v string) *ListModelPackagesInput {
19046	s.NextToken = &v
19047	return s
19048}
19049
19050// SetSortBy sets the SortBy field's value.
19051func (s *ListModelPackagesInput) SetSortBy(v string) *ListModelPackagesInput {
19052	s.SortBy = &v
19053	return s
19054}
19055
19056// SetSortOrder sets the SortOrder field's value.
19057func (s *ListModelPackagesInput) SetSortOrder(v string) *ListModelPackagesInput {
19058	s.SortOrder = &v
19059	return s
19060}
19061
19062type ListModelPackagesOutput struct {
19063	_ struct{} `type:"structure"`
19064
19065	// An array of ModelPackageSummary objects, each of which lists a model package.
19066	//
19067	// ModelPackageSummaryList is a required field
19068	ModelPackageSummaryList []*ModelPackageSummary `type:"list" required:"true"`
19069
19070	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19071	// the next set of model packages, use it in the subsequent request.
19072	NextToken *string `type:"string"`
19073}
19074
19075// String returns the string representation
19076func (s ListModelPackagesOutput) String() string {
19077	return awsutil.Prettify(s)
19078}
19079
19080// GoString returns the string representation
19081func (s ListModelPackagesOutput) GoString() string {
19082	return s.String()
19083}
19084
19085// SetModelPackageSummaryList sets the ModelPackageSummaryList field's value.
19086func (s *ListModelPackagesOutput) SetModelPackageSummaryList(v []*ModelPackageSummary) *ListModelPackagesOutput {
19087	s.ModelPackageSummaryList = v
19088	return s
19089}
19090
19091// SetNextToken sets the NextToken field's value.
19092func (s *ListModelPackagesOutput) SetNextToken(v string) *ListModelPackagesOutput {
19093	s.NextToken = &v
19094	return s
19095}
19096
19097type ListModelsInput struct {
19098	_ struct{} `type:"structure"`
19099
19100	// A filter that returns only models with a creation time greater than or equal
19101	// to the specified time (timestamp).
19102	CreationTimeAfter *time.Time `type:"timestamp"`
19103
19104	// A filter that returns only models created before the specified time (timestamp).
19105	CreationTimeBefore *time.Time `type:"timestamp"`
19106
19107	// The maximum number of models to return in the response.
19108	MaxResults *int64 `min:"1" type:"integer"`
19109
19110	// A string in the training job name. This filter returns only models in the
19111	// training job whose name contains the specified string.
19112	NameContains *string `type:"string"`
19113
19114	// If the response to a previous ListModels request was truncated, the response
19115	// includes a NextToken. To retrieve the next set of models, use the token in
19116	// the next request.
19117	NextToken *string `type:"string"`
19118
19119	// Sorts the list of results. The default is CreationTime.
19120	SortBy *string `type:"string" enum:"ModelSortKey"`
19121
19122	// The sort order for results. The default is Descending.
19123	SortOrder *string `type:"string" enum:"OrderKey"`
19124}
19125
19126// String returns the string representation
19127func (s ListModelsInput) String() string {
19128	return awsutil.Prettify(s)
19129}
19130
19131// GoString returns the string representation
19132func (s ListModelsInput) GoString() string {
19133	return s.String()
19134}
19135
19136// Validate inspects the fields of the type to determine if they are valid.
19137func (s *ListModelsInput) Validate() error {
19138	invalidParams := request.ErrInvalidParams{Context: "ListModelsInput"}
19139	if s.MaxResults != nil && *s.MaxResults < 1 {
19140		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19141	}
19142
19143	if invalidParams.Len() > 0 {
19144		return invalidParams
19145	}
19146	return nil
19147}
19148
19149// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19150func (s *ListModelsInput) SetCreationTimeAfter(v time.Time) *ListModelsInput {
19151	s.CreationTimeAfter = &v
19152	return s
19153}
19154
19155// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19156func (s *ListModelsInput) SetCreationTimeBefore(v time.Time) *ListModelsInput {
19157	s.CreationTimeBefore = &v
19158	return s
19159}
19160
19161// SetMaxResults sets the MaxResults field's value.
19162func (s *ListModelsInput) SetMaxResults(v int64) *ListModelsInput {
19163	s.MaxResults = &v
19164	return s
19165}
19166
19167// SetNameContains sets the NameContains field's value.
19168func (s *ListModelsInput) SetNameContains(v string) *ListModelsInput {
19169	s.NameContains = &v
19170	return s
19171}
19172
19173// SetNextToken sets the NextToken field's value.
19174func (s *ListModelsInput) SetNextToken(v string) *ListModelsInput {
19175	s.NextToken = &v
19176	return s
19177}
19178
19179// SetSortBy sets the SortBy field's value.
19180func (s *ListModelsInput) SetSortBy(v string) *ListModelsInput {
19181	s.SortBy = &v
19182	return s
19183}
19184
19185// SetSortOrder sets the SortOrder field's value.
19186func (s *ListModelsInput) SetSortOrder(v string) *ListModelsInput {
19187	s.SortOrder = &v
19188	return s
19189}
19190
19191type ListModelsOutput struct {
19192	_ struct{} `type:"structure"`
19193
19194	// An array of ModelSummary objects, each of which lists a model.
19195	//
19196	// Models is a required field
19197	Models []*ModelSummary `type:"list" required:"true"`
19198
19199	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19200	// the next set of models, use it in the subsequent request.
19201	NextToken *string `type:"string"`
19202}
19203
19204// String returns the string representation
19205func (s ListModelsOutput) String() string {
19206	return awsutil.Prettify(s)
19207}
19208
19209// GoString returns the string representation
19210func (s ListModelsOutput) GoString() string {
19211	return s.String()
19212}
19213
19214// SetModels sets the Models field's value.
19215func (s *ListModelsOutput) SetModels(v []*ModelSummary) *ListModelsOutput {
19216	s.Models = v
19217	return s
19218}
19219
19220// SetNextToken sets the NextToken field's value.
19221func (s *ListModelsOutput) SetNextToken(v string) *ListModelsOutput {
19222	s.NextToken = &v
19223	return s
19224}
19225
19226type ListNotebookInstanceLifecycleConfigsInput struct {
19227	_ struct{} `type:"structure"`
19228
19229	// A filter that returns only lifecycle configurations that were created after
19230	// the specified time (timestamp).
19231	CreationTimeAfter *time.Time `type:"timestamp"`
19232
19233	// A filter that returns only lifecycle configurations that were created before
19234	// the specified time (timestamp).
19235	CreationTimeBefore *time.Time `type:"timestamp"`
19236
19237	// A filter that returns only lifecycle configurations that were modified after
19238	// the specified time (timestamp).
19239	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19240
19241	// A filter that returns only lifecycle configurations that were modified before
19242	// the specified time (timestamp).
19243	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19244
19245	// The maximum number of lifecycle configurations to return in the response.
19246	MaxResults *int64 `min:"1" type:"integer"`
19247
19248	// A string in the lifecycle configuration name. This filter returns only lifecycle
19249	// configurations whose name contains the specified string.
19250	NameContains *string `type:"string"`
19251
19252	// If the result of a ListNotebookInstanceLifecycleConfigs request was truncated,
19253	// the response includes a NextToken. To get the next set of lifecycle configurations,
19254	// use the token in the next request.
19255	NextToken *string `type:"string"`
19256
19257	// Sorts the list of results. The default is CreationTime.
19258	SortBy *string `type:"string" enum:"NotebookInstanceLifecycleConfigSortKey"`
19259
19260	// The sort order for results.
19261	SortOrder *string `type:"string" enum:"NotebookInstanceLifecycleConfigSortOrder"`
19262}
19263
19264// String returns the string representation
19265func (s ListNotebookInstanceLifecycleConfigsInput) String() string {
19266	return awsutil.Prettify(s)
19267}
19268
19269// GoString returns the string representation
19270func (s ListNotebookInstanceLifecycleConfigsInput) GoString() string {
19271	return s.String()
19272}
19273
19274// Validate inspects the fields of the type to determine if they are valid.
19275func (s *ListNotebookInstanceLifecycleConfigsInput) Validate() error {
19276	invalidParams := request.ErrInvalidParams{Context: "ListNotebookInstanceLifecycleConfigsInput"}
19277	if s.MaxResults != nil && *s.MaxResults < 1 {
19278		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19279	}
19280
19281	if invalidParams.Len() > 0 {
19282		return invalidParams
19283	}
19284	return nil
19285}
19286
19287// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19288func (s *ListNotebookInstanceLifecycleConfigsInput) SetCreationTimeAfter(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19289	s.CreationTimeAfter = &v
19290	return s
19291}
19292
19293// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19294func (s *ListNotebookInstanceLifecycleConfigsInput) SetCreationTimeBefore(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19295	s.CreationTimeBefore = &v
19296	return s
19297}
19298
19299// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19300func (s *ListNotebookInstanceLifecycleConfigsInput) SetLastModifiedTimeAfter(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19301	s.LastModifiedTimeAfter = &v
19302	return s
19303}
19304
19305// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19306func (s *ListNotebookInstanceLifecycleConfigsInput) SetLastModifiedTimeBefore(v time.Time) *ListNotebookInstanceLifecycleConfigsInput {
19307	s.LastModifiedTimeBefore = &v
19308	return s
19309}
19310
19311// SetMaxResults sets the MaxResults field's value.
19312func (s *ListNotebookInstanceLifecycleConfigsInput) SetMaxResults(v int64) *ListNotebookInstanceLifecycleConfigsInput {
19313	s.MaxResults = &v
19314	return s
19315}
19316
19317// SetNameContains sets the NameContains field's value.
19318func (s *ListNotebookInstanceLifecycleConfigsInput) SetNameContains(v string) *ListNotebookInstanceLifecycleConfigsInput {
19319	s.NameContains = &v
19320	return s
19321}
19322
19323// SetNextToken sets the NextToken field's value.
19324func (s *ListNotebookInstanceLifecycleConfigsInput) SetNextToken(v string) *ListNotebookInstanceLifecycleConfigsInput {
19325	s.NextToken = &v
19326	return s
19327}
19328
19329// SetSortBy sets the SortBy field's value.
19330func (s *ListNotebookInstanceLifecycleConfigsInput) SetSortBy(v string) *ListNotebookInstanceLifecycleConfigsInput {
19331	s.SortBy = &v
19332	return s
19333}
19334
19335// SetSortOrder sets the SortOrder field's value.
19336func (s *ListNotebookInstanceLifecycleConfigsInput) SetSortOrder(v string) *ListNotebookInstanceLifecycleConfigsInput {
19337	s.SortOrder = &v
19338	return s
19339}
19340
19341type ListNotebookInstanceLifecycleConfigsOutput struct {
19342	_ struct{} `type:"structure"`
19343
19344	// If the response is truncated, Amazon SageMaker returns this token. To get
19345	// the next set of lifecycle configurations, use it in the next request.
19346	NextToken *string `type:"string"`
19347
19348	// An array of NotebookInstanceLifecycleConfiguration objects, each listing
19349	// a lifecycle configuration.
19350	NotebookInstanceLifecycleConfigs []*NotebookInstanceLifecycleConfigSummary `type:"list"`
19351}
19352
19353// String returns the string representation
19354func (s ListNotebookInstanceLifecycleConfigsOutput) String() string {
19355	return awsutil.Prettify(s)
19356}
19357
19358// GoString returns the string representation
19359func (s ListNotebookInstanceLifecycleConfigsOutput) GoString() string {
19360	return s.String()
19361}
19362
19363// SetNextToken sets the NextToken field's value.
19364func (s *ListNotebookInstanceLifecycleConfigsOutput) SetNextToken(v string) *ListNotebookInstanceLifecycleConfigsOutput {
19365	s.NextToken = &v
19366	return s
19367}
19368
19369// SetNotebookInstanceLifecycleConfigs sets the NotebookInstanceLifecycleConfigs field's value.
19370func (s *ListNotebookInstanceLifecycleConfigsOutput) SetNotebookInstanceLifecycleConfigs(v []*NotebookInstanceLifecycleConfigSummary) *ListNotebookInstanceLifecycleConfigsOutput {
19371	s.NotebookInstanceLifecycleConfigs = v
19372	return s
19373}
19374
19375type ListNotebookInstancesInput struct {
19376	_ struct{} `type:"structure"`
19377
19378	// A filter that returns only notebook instances with associated with the specified
19379	// git repository.
19380	AdditionalCodeRepositoryEquals *string `min:"1" type:"string"`
19381
19382	// A filter that returns only notebook instances that were created after the
19383	// specified time (timestamp).
19384	CreationTimeAfter *time.Time `type:"timestamp"`
19385
19386	// A filter that returns only notebook instances that were created before the
19387	// specified time (timestamp).
19388	CreationTimeBefore *time.Time `type:"timestamp"`
19389
19390	// A string in the name or URL of a Git repository associated with this notebook
19391	// instance. This filter returns only notebook instances associated with a git
19392	// repository with a name that contains the specified string.
19393	DefaultCodeRepositoryContains *string `type:"string"`
19394
19395	// A filter that returns only notebook instances that were modified after the
19396	// specified time (timestamp).
19397	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19398
19399	// A filter that returns only notebook instances that were modified before the
19400	// specified time (timestamp).
19401	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19402
19403	// The maximum number of notebook instances to return.
19404	MaxResults *int64 `min:"1" type:"integer"`
19405
19406	// A string in the notebook instances' name. This filter returns only notebook
19407	// instances whose name contains the specified string.
19408	NameContains *string `type:"string"`
19409
19410	// If the previous call to the ListNotebookInstances is truncated, the response
19411	// includes a NextToken. You can use this token in your subsequent ListNotebookInstances
19412	// request to fetch the next set of notebook instances.
19413	//
19414	// You might specify a filter or a sort order in your request. When response
19415	// is truncated, you must use the same values for the filer and sort order in
19416	// the next request.
19417	NextToken *string `type:"string"`
19418
19419	// A string in the name of a notebook instances lifecycle configuration associated
19420	// with this notebook instance. This filter returns only notebook instances
19421	// associated with a lifecycle configuration with a name that contains the specified
19422	// string.
19423	NotebookInstanceLifecycleConfigNameContains *string `type:"string"`
19424
19425	// The field to sort results by. The default is Name.
19426	SortBy *string `type:"string" enum:"NotebookInstanceSortKey"`
19427
19428	// The sort order for results.
19429	SortOrder *string `type:"string" enum:"NotebookInstanceSortOrder"`
19430
19431	// A filter that returns only notebook instances with the specified status.
19432	StatusEquals *string `type:"string" enum:"NotebookInstanceStatus"`
19433}
19434
19435// String returns the string representation
19436func (s ListNotebookInstancesInput) String() string {
19437	return awsutil.Prettify(s)
19438}
19439
19440// GoString returns the string representation
19441func (s ListNotebookInstancesInput) GoString() string {
19442	return s.String()
19443}
19444
19445// Validate inspects the fields of the type to determine if they are valid.
19446func (s *ListNotebookInstancesInput) Validate() error {
19447	invalidParams := request.ErrInvalidParams{Context: "ListNotebookInstancesInput"}
19448	if s.AdditionalCodeRepositoryEquals != nil && len(*s.AdditionalCodeRepositoryEquals) < 1 {
19449		invalidParams.Add(request.NewErrParamMinLen("AdditionalCodeRepositoryEquals", 1))
19450	}
19451	if s.MaxResults != nil && *s.MaxResults < 1 {
19452		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19453	}
19454
19455	if invalidParams.Len() > 0 {
19456		return invalidParams
19457	}
19458	return nil
19459}
19460
19461// SetAdditionalCodeRepositoryEquals sets the AdditionalCodeRepositoryEquals field's value.
19462func (s *ListNotebookInstancesInput) SetAdditionalCodeRepositoryEquals(v string) *ListNotebookInstancesInput {
19463	s.AdditionalCodeRepositoryEquals = &v
19464	return s
19465}
19466
19467// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19468func (s *ListNotebookInstancesInput) SetCreationTimeAfter(v time.Time) *ListNotebookInstancesInput {
19469	s.CreationTimeAfter = &v
19470	return s
19471}
19472
19473// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19474func (s *ListNotebookInstancesInput) SetCreationTimeBefore(v time.Time) *ListNotebookInstancesInput {
19475	s.CreationTimeBefore = &v
19476	return s
19477}
19478
19479// SetDefaultCodeRepositoryContains sets the DefaultCodeRepositoryContains field's value.
19480func (s *ListNotebookInstancesInput) SetDefaultCodeRepositoryContains(v string) *ListNotebookInstancesInput {
19481	s.DefaultCodeRepositoryContains = &v
19482	return s
19483}
19484
19485// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19486func (s *ListNotebookInstancesInput) SetLastModifiedTimeAfter(v time.Time) *ListNotebookInstancesInput {
19487	s.LastModifiedTimeAfter = &v
19488	return s
19489}
19490
19491// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19492func (s *ListNotebookInstancesInput) SetLastModifiedTimeBefore(v time.Time) *ListNotebookInstancesInput {
19493	s.LastModifiedTimeBefore = &v
19494	return s
19495}
19496
19497// SetMaxResults sets the MaxResults field's value.
19498func (s *ListNotebookInstancesInput) SetMaxResults(v int64) *ListNotebookInstancesInput {
19499	s.MaxResults = &v
19500	return s
19501}
19502
19503// SetNameContains sets the NameContains field's value.
19504func (s *ListNotebookInstancesInput) SetNameContains(v string) *ListNotebookInstancesInput {
19505	s.NameContains = &v
19506	return s
19507}
19508
19509// SetNextToken sets the NextToken field's value.
19510func (s *ListNotebookInstancesInput) SetNextToken(v string) *ListNotebookInstancesInput {
19511	s.NextToken = &v
19512	return s
19513}
19514
19515// SetNotebookInstanceLifecycleConfigNameContains sets the NotebookInstanceLifecycleConfigNameContains field's value.
19516func (s *ListNotebookInstancesInput) SetNotebookInstanceLifecycleConfigNameContains(v string) *ListNotebookInstancesInput {
19517	s.NotebookInstanceLifecycleConfigNameContains = &v
19518	return s
19519}
19520
19521// SetSortBy sets the SortBy field's value.
19522func (s *ListNotebookInstancesInput) SetSortBy(v string) *ListNotebookInstancesInput {
19523	s.SortBy = &v
19524	return s
19525}
19526
19527// SetSortOrder sets the SortOrder field's value.
19528func (s *ListNotebookInstancesInput) SetSortOrder(v string) *ListNotebookInstancesInput {
19529	s.SortOrder = &v
19530	return s
19531}
19532
19533// SetStatusEquals sets the StatusEquals field's value.
19534func (s *ListNotebookInstancesInput) SetStatusEquals(v string) *ListNotebookInstancesInput {
19535	s.StatusEquals = &v
19536	return s
19537}
19538
19539type ListNotebookInstancesOutput struct {
19540	_ struct{} `type:"structure"`
19541
19542	// If the response to the previous ListNotebookInstances request was truncated,
19543	// Amazon SageMaker returns this token. To retrieve the next set of notebook
19544	// instances, use the token in the next request.
19545	NextToken *string `type:"string"`
19546
19547	// An array of NotebookInstanceSummary objects, one for each notebook instance.
19548	NotebookInstances []*NotebookInstanceSummary `type:"list"`
19549}
19550
19551// String returns the string representation
19552func (s ListNotebookInstancesOutput) String() string {
19553	return awsutil.Prettify(s)
19554}
19555
19556// GoString returns the string representation
19557func (s ListNotebookInstancesOutput) GoString() string {
19558	return s.String()
19559}
19560
19561// SetNextToken sets the NextToken field's value.
19562func (s *ListNotebookInstancesOutput) SetNextToken(v string) *ListNotebookInstancesOutput {
19563	s.NextToken = &v
19564	return s
19565}
19566
19567// SetNotebookInstances sets the NotebookInstances field's value.
19568func (s *ListNotebookInstancesOutput) SetNotebookInstances(v []*NotebookInstanceSummary) *ListNotebookInstancesOutput {
19569	s.NotebookInstances = v
19570	return s
19571}
19572
19573type ListSubscribedWorkteamsInput struct {
19574	_ struct{} `type:"structure"`
19575
19576	// The maximum number of work teams to return in each page of the response.
19577	MaxResults *int64 `min:"1" type:"integer"`
19578
19579	// A string in the work team name. This filter returns only work teams whose
19580	// name contains the specified string.
19581	NameContains *string `min:"1" type:"string"`
19582
19583	// If the result of the previous ListSubscribedWorkteams request was truncated,
19584	// the response includes a NextToken. To retrieve the next set of labeling jobs,
19585	// use the token in the next request.
19586	NextToken *string `type:"string"`
19587}
19588
19589// String returns the string representation
19590func (s ListSubscribedWorkteamsInput) String() string {
19591	return awsutil.Prettify(s)
19592}
19593
19594// GoString returns the string representation
19595func (s ListSubscribedWorkteamsInput) GoString() string {
19596	return s.String()
19597}
19598
19599// Validate inspects the fields of the type to determine if they are valid.
19600func (s *ListSubscribedWorkteamsInput) Validate() error {
19601	invalidParams := request.ErrInvalidParams{Context: "ListSubscribedWorkteamsInput"}
19602	if s.MaxResults != nil && *s.MaxResults < 1 {
19603		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19604	}
19605	if s.NameContains != nil && len(*s.NameContains) < 1 {
19606		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
19607	}
19608
19609	if invalidParams.Len() > 0 {
19610		return invalidParams
19611	}
19612	return nil
19613}
19614
19615// SetMaxResults sets the MaxResults field's value.
19616func (s *ListSubscribedWorkteamsInput) SetMaxResults(v int64) *ListSubscribedWorkteamsInput {
19617	s.MaxResults = &v
19618	return s
19619}
19620
19621// SetNameContains sets the NameContains field's value.
19622func (s *ListSubscribedWorkteamsInput) SetNameContains(v string) *ListSubscribedWorkteamsInput {
19623	s.NameContains = &v
19624	return s
19625}
19626
19627// SetNextToken sets the NextToken field's value.
19628func (s *ListSubscribedWorkteamsInput) SetNextToken(v string) *ListSubscribedWorkteamsInput {
19629	s.NextToken = &v
19630	return s
19631}
19632
19633type ListSubscribedWorkteamsOutput struct {
19634	_ struct{} `type:"structure"`
19635
19636	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
19637	// the next set of work teams, use it in the subsequent request.
19638	NextToken *string `type:"string"`
19639
19640	// An array of Workteam objects, each describing a work team.
19641	//
19642	// SubscribedWorkteams is a required field
19643	SubscribedWorkteams []*SubscribedWorkteam `type:"list" required:"true"`
19644}
19645
19646// String returns the string representation
19647func (s ListSubscribedWorkteamsOutput) String() string {
19648	return awsutil.Prettify(s)
19649}
19650
19651// GoString returns the string representation
19652func (s ListSubscribedWorkteamsOutput) GoString() string {
19653	return s.String()
19654}
19655
19656// SetNextToken sets the NextToken field's value.
19657func (s *ListSubscribedWorkteamsOutput) SetNextToken(v string) *ListSubscribedWorkteamsOutput {
19658	s.NextToken = &v
19659	return s
19660}
19661
19662// SetSubscribedWorkteams sets the SubscribedWorkteams field's value.
19663func (s *ListSubscribedWorkteamsOutput) SetSubscribedWorkteams(v []*SubscribedWorkteam) *ListSubscribedWorkteamsOutput {
19664	s.SubscribedWorkteams = v
19665	return s
19666}
19667
19668type ListTagsInput struct {
19669	_ struct{} `type:"structure"`
19670
19671	// Maximum number of tags to return.
19672	MaxResults *int64 `min:"50" type:"integer"`
19673
19674	// If the response to the previous ListTags request is truncated, Amazon SageMaker
19675	// returns this token. To retrieve the next set of tags, use it in the subsequent
19676	// request.
19677	NextToken *string `type:"string"`
19678
19679	// The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve.
19680	//
19681	// ResourceArn is a required field
19682	ResourceArn *string `type:"string" required:"true"`
19683}
19684
19685// String returns the string representation
19686func (s ListTagsInput) String() string {
19687	return awsutil.Prettify(s)
19688}
19689
19690// GoString returns the string representation
19691func (s ListTagsInput) GoString() string {
19692	return s.String()
19693}
19694
19695// Validate inspects the fields of the type to determine if they are valid.
19696func (s *ListTagsInput) Validate() error {
19697	invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
19698	if s.MaxResults != nil && *s.MaxResults < 50 {
19699		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 50))
19700	}
19701	if s.ResourceArn == nil {
19702		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
19703	}
19704
19705	if invalidParams.Len() > 0 {
19706		return invalidParams
19707	}
19708	return nil
19709}
19710
19711// SetMaxResults sets the MaxResults field's value.
19712func (s *ListTagsInput) SetMaxResults(v int64) *ListTagsInput {
19713	s.MaxResults = &v
19714	return s
19715}
19716
19717// SetNextToken sets the NextToken field's value.
19718func (s *ListTagsInput) SetNextToken(v string) *ListTagsInput {
19719	s.NextToken = &v
19720	return s
19721}
19722
19723// SetResourceArn sets the ResourceArn field's value.
19724func (s *ListTagsInput) SetResourceArn(v string) *ListTagsInput {
19725	s.ResourceArn = &v
19726	return s
19727}
19728
19729type ListTagsOutput struct {
19730	_ struct{} `type:"structure"`
19731
19732	// If response is truncated, Amazon SageMaker includes a token in the response.
19733	// You can use this token in your subsequent request to fetch next set of tokens.
19734	NextToken *string `type:"string"`
19735
19736	// An array of Tag objects, each with a tag key and a value.
19737	Tags []*Tag `type:"list"`
19738}
19739
19740// String returns the string representation
19741func (s ListTagsOutput) String() string {
19742	return awsutil.Prettify(s)
19743}
19744
19745// GoString returns the string representation
19746func (s ListTagsOutput) GoString() string {
19747	return s.String()
19748}
19749
19750// SetNextToken sets the NextToken field's value.
19751func (s *ListTagsOutput) SetNextToken(v string) *ListTagsOutput {
19752	s.NextToken = &v
19753	return s
19754}
19755
19756// SetTags sets the Tags field's value.
19757func (s *ListTagsOutput) SetTags(v []*Tag) *ListTagsOutput {
19758	s.Tags = v
19759	return s
19760}
19761
19762type ListTrainingJobsForHyperParameterTuningJobInput struct {
19763	_ struct{} `type:"structure"`
19764
19765	// The name of the tuning job whose training jobs you want to list.
19766	//
19767	// HyperParameterTuningJobName is a required field
19768	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
19769
19770	// The maximum number of training jobs to return. The default value is 10.
19771	MaxResults *int64 `min:"1" type:"integer"`
19772
19773	// If the result of the previous ListTrainingJobsForHyperParameterTuningJob
19774	// request was truncated, the response includes a NextToken. To retrieve the
19775	// next set of training jobs, use the token in the next request.
19776	NextToken *string `type:"string"`
19777
19778	// The field to sort results by. The default is Name.
19779	//
19780	// If the value of this field is FinalObjectiveMetricValue, any training jobs
19781	// that did not return an objective metric are not listed.
19782	SortBy *string `type:"string" enum:"TrainingJobSortByOptions"`
19783
19784	// The sort order for results. The default is Ascending.
19785	SortOrder *string `type:"string" enum:"SortOrder"`
19786
19787	// A filter that returns only training jobs with the specified status.
19788	StatusEquals *string `type:"string" enum:"TrainingJobStatus"`
19789}
19790
19791// String returns the string representation
19792func (s ListTrainingJobsForHyperParameterTuningJobInput) String() string {
19793	return awsutil.Prettify(s)
19794}
19795
19796// GoString returns the string representation
19797func (s ListTrainingJobsForHyperParameterTuningJobInput) GoString() string {
19798	return s.String()
19799}
19800
19801// Validate inspects the fields of the type to determine if they are valid.
19802func (s *ListTrainingJobsForHyperParameterTuningJobInput) Validate() error {
19803	invalidParams := request.ErrInvalidParams{Context: "ListTrainingJobsForHyperParameterTuningJobInput"}
19804	if s.HyperParameterTuningJobName == nil {
19805		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
19806	}
19807	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
19808		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
19809	}
19810	if s.MaxResults != nil && *s.MaxResults < 1 {
19811		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19812	}
19813
19814	if invalidParams.Len() > 0 {
19815		return invalidParams
19816	}
19817	return nil
19818}
19819
19820// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
19821func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19822	s.HyperParameterTuningJobName = &v
19823	return s
19824}
19825
19826// SetMaxResults sets the MaxResults field's value.
19827func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetMaxResults(v int64) *ListTrainingJobsForHyperParameterTuningJobInput {
19828	s.MaxResults = &v
19829	return s
19830}
19831
19832// SetNextToken sets the NextToken field's value.
19833func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetNextToken(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19834	s.NextToken = &v
19835	return s
19836}
19837
19838// SetSortBy sets the SortBy field's value.
19839func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetSortBy(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19840	s.SortBy = &v
19841	return s
19842}
19843
19844// SetSortOrder sets the SortOrder field's value.
19845func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetSortOrder(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19846	s.SortOrder = &v
19847	return s
19848}
19849
19850// SetStatusEquals sets the StatusEquals field's value.
19851func (s *ListTrainingJobsForHyperParameterTuningJobInput) SetStatusEquals(v string) *ListTrainingJobsForHyperParameterTuningJobInput {
19852	s.StatusEquals = &v
19853	return s
19854}
19855
19856type ListTrainingJobsForHyperParameterTuningJobOutput struct {
19857	_ struct{} `type:"structure"`
19858
19859	// If the result of this ListTrainingJobsForHyperParameterTuningJob request
19860	// was truncated, the response includes a NextToken. To retrieve the next set
19861	// of training jobs, use the token in the next request.
19862	NextToken *string `type:"string"`
19863
19864	// A list of TrainingJobSummary objects that describe the training jobs that
19865	// the ListTrainingJobsForHyperParameterTuningJob request returned.
19866	//
19867	// TrainingJobSummaries is a required field
19868	TrainingJobSummaries []*HyperParameterTrainingJobSummary `type:"list" required:"true"`
19869}
19870
19871// String returns the string representation
19872func (s ListTrainingJobsForHyperParameterTuningJobOutput) String() string {
19873	return awsutil.Prettify(s)
19874}
19875
19876// GoString returns the string representation
19877func (s ListTrainingJobsForHyperParameterTuningJobOutput) GoString() string {
19878	return s.String()
19879}
19880
19881// SetNextToken sets the NextToken field's value.
19882func (s *ListTrainingJobsForHyperParameterTuningJobOutput) SetNextToken(v string) *ListTrainingJobsForHyperParameterTuningJobOutput {
19883	s.NextToken = &v
19884	return s
19885}
19886
19887// SetTrainingJobSummaries sets the TrainingJobSummaries field's value.
19888func (s *ListTrainingJobsForHyperParameterTuningJobOutput) SetTrainingJobSummaries(v []*HyperParameterTrainingJobSummary) *ListTrainingJobsForHyperParameterTuningJobOutput {
19889	s.TrainingJobSummaries = v
19890	return s
19891}
19892
19893type ListTrainingJobsInput struct {
19894	_ struct{} `type:"structure"`
19895
19896	// A filter that returns only training jobs created after the specified time
19897	// (timestamp).
19898	CreationTimeAfter *time.Time `type:"timestamp"`
19899
19900	// A filter that returns only training jobs created before the specified time
19901	// (timestamp).
19902	CreationTimeBefore *time.Time `type:"timestamp"`
19903
19904	// A filter that returns only training jobs modified after the specified time
19905	// (timestamp).
19906	LastModifiedTimeAfter *time.Time `type:"timestamp"`
19907
19908	// A filter that returns only training jobs modified before the specified time
19909	// (timestamp).
19910	LastModifiedTimeBefore *time.Time `type:"timestamp"`
19911
19912	// The maximum number of training jobs to return in the response.
19913	MaxResults *int64 `min:"1" type:"integer"`
19914
19915	// A string in the training job name. This filter returns only training jobs
19916	// whose name contains the specified string.
19917	NameContains *string `type:"string"`
19918
19919	// If the result of the previous ListTrainingJobs request was truncated, the
19920	// response includes a NextToken. To retrieve the next set of training jobs,
19921	// use the token in the next request.
19922	NextToken *string `type:"string"`
19923
19924	// The field to sort results by. The default is CreationTime.
19925	SortBy *string `type:"string" enum:"SortBy"`
19926
19927	// The sort order for results. The default is Ascending.
19928	SortOrder *string `type:"string" enum:"SortOrder"`
19929
19930	// A filter that retrieves only training jobs with a specific status.
19931	StatusEquals *string `type:"string" enum:"TrainingJobStatus"`
19932}
19933
19934// String returns the string representation
19935func (s ListTrainingJobsInput) String() string {
19936	return awsutil.Prettify(s)
19937}
19938
19939// GoString returns the string representation
19940func (s ListTrainingJobsInput) GoString() string {
19941	return s.String()
19942}
19943
19944// Validate inspects the fields of the type to determine if they are valid.
19945func (s *ListTrainingJobsInput) Validate() error {
19946	invalidParams := request.ErrInvalidParams{Context: "ListTrainingJobsInput"}
19947	if s.MaxResults != nil && *s.MaxResults < 1 {
19948		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
19949	}
19950
19951	if invalidParams.Len() > 0 {
19952		return invalidParams
19953	}
19954	return nil
19955}
19956
19957// SetCreationTimeAfter sets the CreationTimeAfter field's value.
19958func (s *ListTrainingJobsInput) SetCreationTimeAfter(v time.Time) *ListTrainingJobsInput {
19959	s.CreationTimeAfter = &v
19960	return s
19961}
19962
19963// SetCreationTimeBefore sets the CreationTimeBefore field's value.
19964func (s *ListTrainingJobsInput) SetCreationTimeBefore(v time.Time) *ListTrainingJobsInput {
19965	s.CreationTimeBefore = &v
19966	return s
19967}
19968
19969// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
19970func (s *ListTrainingJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListTrainingJobsInput {
19971	s.LastModifiedTimeAfter = &v
19972	return s
19973}
19974
19975// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
19976func (s *ListTrainingJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListTrainingJobsInput {
19977	s.LastModifiedTimeBefore = &v
19978	return s
19979}
19980
19981// SetMaxResults sets the MaxResults field's value.
19982func (s *ListTrainingJobsInput) SetMaxResults(v int64) *ListTrainingJobsInput {
19983	s.MaxResults = &v
19984	return s
19985}
19986
19987// SetNameContains sets the NameContains field's value.
19988func (s *ListTrainingJobsInput) SetNameContains(v string) *ListTrainingJobsInput {
19989	s.NameContains = &v
19990	return s
19991}
19992
19993// SetNextToken sets the NextToken field's value.
19994func (s *ListTrainingJobsInput) SetNextToken(v string) *ListTrainingJobsInput {
19995	s.NextToken = &v
19996	return s
19997}
19998
19999// SetSortBy sets the SortBy field's value.
20000func (s *ListTrainingJobsInput) SetSortBy(v string) *ListTrainingJobsInput {
20001	s.SortBy = &v
20002	return s
20003}
20004
20005// SetSortOrder sets the SortOrder field's value.
20006func (s *ListTrainingJobsInput) SetSortOrder(v string) *ListTrainingJobsInput {
20007	s.SortOrder = &v
20008	return s
20009}
20010
20011// SetStatusEquals sets the StatusEquals field's value.
20012func (s *ListTrainingJobsInput) SetStatusEquals(v string) *ListTrainingJobsInput {
20013	s.StatusEquals = &v
20014	return s
20015}
20016
20017type ListTrainingJobsOutput struct {
20018	_ struct{} `type:"structure"`
20019
20020	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20021	// the next set of training jobs, use it in the subsequent request.
20022	NextToken *string `type:"string"`
20023
20024	// An array of TrainingJobSummary objects, each listing a training job.
20025	//
20026	// TrainingJobSummaries is a required field
20027	TrainingJobSummaries []*TrainingJobSummary `type:"list" required:"true"`
20028}
20029
20030// String returns the string representation
20031func (s ListTrainingJobsOutput) String() string {
20032	return awsutil.Prettify(s)
20033}
20034
20035// GoString returns the string representation
20036func (s ListTrainingJobsOutput) GoString() string {
20037	return s.String()
20038}
20039
20040// SetNextToken sets the NextToken field's value.
20041func (s *ListTrainingJobsOutput) SetNextToken(v string) *ListTrainingJobsOutput {
20042	s.NextToken = &v
20043	return s
20044}
20045
20046// SetTrainingJobSummaries sets the TrainingJobSummaries field's value.
20047func (s *ListTrainingJobsOutput) SetTrainingJobSummaries(v []*TrainingJobSummary) *ListTrainingJobsOutput {
20048	s.TrainingJobSummaries = v
20049	return s
20050}
20051
20052type ListTransformJobsInput struct {
20053	_ struct{} `type:"structure"`
20054
20055	// A filter that returns only transform jobs created after the specified time.
20056	CreationTimeAfter *time.Time `type:"timestamp"`
20057
20058	// A filter that returns only transform jobs created before the specified time.
20059	CreationTimeBefore *time.Time `type:"timestamp"`
20060
20061	// A filter that returns only transform jobs modified after the specified time.
20062	LastModifiedTimeAfter *time.Time `type:"timestamp"`
20063
20064	// A filter that returns only transform jobs modified before the specified time.
20065	LastModifiedTimeBefore *time.Time `type:"timestamp"`
20066
20067	// The maximum number of transform jobs to return in the response. The default
20068	// value is 10.
20069	MaxResults *int64 `min:"1" type:"integer"`
20070
20071	// A string in the transform job name. This filter returns only transform jobs
20072	// whose name contains the specified string.
20073	NameContains *string `type:"string"`
20074
20075	// If the result of the previous ListTransformJobs request was truncated, the
20076	// response includes a NextToken. To retrieve the next set of transform jobs,
20077	// use the token in the next request.
20078	NextToken *string `type:"string"`
20079
20080	// The field to sort results by. The default is CreationTime.
20081	SortBy *string `type:"string" enum:"SortBy"`
20082
20083	// The sort order for results. The default is Descending.
20084	SortOrder *string `type:"string" enum:"SortOrder"`
20085
20086	// A filter that retrieves only transform jobs with a specific status.
20087	StatusEquals *string `type:"string" enum:"TransformJobStatus"`
20088}
20089
20090// String returns the string representation
20091func (s ListTransformJobsInput) String() string {
20092	return awsutil.Prettify(s)
20093}
20094
20095// GoString returns the string representation
20096func (s ListTransformJobsInput) GoString() string {
20097	return s.String()
20098}
20099
20100// Validate inspects the fields of the type to determine if they are valid.
20101func (s *ListTransformJobsInput) Validate() error {
20102	invalidParams := request.ErrInvalidParams{Context: "ListTransformJobsInput"}
20103	if s.MaxResults != nil && *s.MaxResults < 1 {
20104		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
20105	}
20106
20107	if invalidParams.Len() > 0 {
20108		return invalidParams
20109	}
20110	return nil
20111}
20112
20113// SetCreationTimeAfter sets the CreationTimeAfter field's value.
20114func (s *ListTransformJobsInput) SetCreationTimeAfter(v time.Time) *ListTransformJobsInput {
20115	s.CreationTimeAfter = &v
20116	return s
20117}
20118
20119// SetCreationTimeBefore sets the CreationTimeBefore field's value.
20120func (s *ListTransformJobsInput) SetCreationTimeBefore(v time.Time) *ListTransformJobsInput {
20121	s.CreationTimeBefore = &v
20122	return s
20123}
20124
20125// SetLastModifiedTimeAfter sets the LastModifiedTimeAfter field's value.
20126func (s *ListTransformJobsInput) SetLastModifiedTimeAfter(v time.Time) *ListTransformJobsInput {
20127	s.LastModifiedTimeAfter = &v
20128	return s
20129}
20130
20131// SetLastModifiedTimeBefore sets the LastModifiedTimeBefore field's value.
20132func (s *ListTransformJobsInput) SetLastModifiedTimeBefore(v time.Time) *ListTransformJobsInput {
20133	s.LastModifiedTimeBefore = &v
20134	return s
20135}
20136
20137// SetMaxResults sets the MaxResults field's value.
20138func (s *ListTransformJobsInput) SetMaxResults(v int64) *ListTransformJobsInput {
20139	s.MaxResults = &v
20140	return s
20141}
20142
20143// SetNameContains sets the NameContains field's value.
20144func (s *ListTransformJobsInput) SetNameContains(v string) *ListTransformJobsInput {
20145	s.NameContains = &v
20146	return s
20147}
20148
20149// SetNextToken sets the NextToken field's value.
20150func (s *ListTransformJobsInput) SetNextToken(v string) *ListTransformJobsInput {
20151	s.NextToken = &v
20152	return s
20153}
20154
20155// SetSortBy sets the SortBy field's value.
20156func (s *ListTransformJobsInput) SetSortBy(v string) *ListTransformJobsInput {
20157	s.SortBy = &v
20158	return s
20159}
20160
20161// SetSortOrder sets the SortOrder field's value.
20162func (s *ListTransformJobsInput) SetSortOrder(v string) *ListTransformJobsInput {
20163	s.SortOrder = &v
20164	return s
20165}
20166
20167// SetStatusEquals sets the StatusEquals field's value.
20168func (s *ListTransformJobsInput) SetStatusEquals(v string) *ListTransformJobsInput {
20169	s.StatusEquals = &v
20170	return s
20171}
20172
20173type ListTransformJobsOutput struct {
20174	_ struct{} `type:"structure"`
20175
20176	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20177	// the next set of transform jobs, use it in the next request.
20178	NextToken *string `type:"string"`
20179
20180	// An array of TransformJobSummary objects.
20181	//
20182	// TransformJobSummaries is a required field
20183	TransformJobSummaries []*TransformJobSummary `type:"list" required:"true"`
20184}
20185
20186// String returns the string representation
20187func (s ListTransformJobsOutput) String() string {
20188	return awsutil.Prettify(s)
20189}
20190
20191// GoString returns the string representation
20192func (s ListTransformJobsOutput) GoString() string {
20193	return s.String()
20194}
20195
20196// SetNextToken sets the NextToken field's value.
20197func (s *ListTransformJobsOutput) SetNextToken(v string) *ListTransformJobsOutput {
20198	s.NextToken = &v
20199	return s
20200}
20201
20202// SetTransformJobSummaries sets the TransformJobSummaries field's value.
20203func (s *ListTransformJobsOutput) SetTransformJobSummaries(v []*TransformJobSummary) *ListTransformJobsOutput {
20204	s.TransformJobSummaries = v
20205	return s
20206}
20207
20208type ListWorkteamsInput struct {
20209	_ struct{} `type:"structure"`
20210
20211	// The maximum number of work teams to return in each page of the response.
20212	MaxResults *int64 `min:"1" type:"integer"`
20213
20214	// A string in the work team's name. This filter returns only work teams whose
20215	// name contains the specified string.
20216	NameContains *string `min:"1" type:"string"`
20217
20218	// If the result of the previous ListWorkteams request was truncated, the response
20219	// includes a NextToken. To retrieve the next set of labeling jobs, use the
20220	// token in the next request.
20221	NextToken *string `type:"string"`
20222
20223	// The field to sort results by. The default is CreationTime.
20224	SortBy *string `type:"string" enum:"ListWorkteamsSortByOptions"`
20225
20226	// The sort order for results. The default is Ascending.
20227	SortOrder *string `type:"string" enum:"SortOrder"`
20228}
20229
20230// String returns the string representation
20231func (s ListWorkteamsInput) String() string {
20232	return awsutil.Prettify(s)
20233}
20234
20235// GoString returns the string representation
20236func (s ListWorkteamsInput) GoString() string {
20237	return s.String()
20238}
20239
20240// Validate inspects the fields of the type to determine if they are valid.
20241func (s *ListWorkteamsInput) Validate() error {
20242	invalidParams := request.ErrInvalidParams{Context: "ListWorkteamsInput"}
20243	if s.MaxResults != nil && *s.MaxResults < 1 {
20244		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
20245	}
20246	if s.NameContains != nil && len(*s.NameContains) < 1 {
20247		invalidParams.Add(request.NewErrParamMinLen("NameContains", 1))
20248	}
20249
20250	if invalidParams.Len() > 0 {
20251		return invalidParams
20252	}
20253	return nil
20254}
20255
20256// SetMaxResults sets the MaxResults field's value.
20257func (s *ListWorkteamsInput) SetMaxResults(v int64) *ListWorkteamsInput {
20258	s.MaxResults = &v
20259	return s
20260}
20261
20262// SetNameContains sets the NameContains field's value.
20263func (s *ListWorkteamsInput) SetNameContains(v string) *ListWorkteamsInput {
20264	s.NameContains = &v
20265	return s
20266}
20267
20268// SetNextToken sets the NextToken field's value.
20269func (s *ListWorkteamsInput) SetNextToken(v string) *ListWorkteamsInput {
20270	s.NextToken = &v
20271	return s
20272}
20273
20274// SetSortBy sets the SortBy field's value.
20275func (s *ListWorkteamsInput) SetSortBy(v string) *ListWorkteamsInput {
20276	s.SortBy = &v
20277	return s
20278}
20279
20280// SetSortOrder sets the SortOrder field's value.
20281func (s *ListWorkteamsInput) SetSortOrder(v string) *ListWorkteamsInput {
20282	s.SortOrder = &v
20283	return s
20284}
20285
20286type ListWorkteamsOutput struct {
20287	_ struct{} `type:"structure"`
20288
20289	// If the response is truncated, Amazon SageMaker returns this token. To retrieve
20290	// the next set of work teams, use it in the subsequent request.
20291	NextToken *string `type:"string"`
20292
20293	// An array of Workteam objects, each describing a work team.
20294	//
20295	// Workteams is a required field
20296	Workteams []*Workteam `type:"list" required:"true"`
20297}
20298
20299// String returns the string representation
20300func (s ListWorkteamsOutput) String() string {
20301	return awsutil.Prettify(s)
20302}
20303
20304// GoString returns the string representation
20305func (s ListWorkteamsOutput) GoString() string {
20306	return s.String()
20307}
20308
20309// SetNextToken sets the NextToken field's value.
20310func (s *ListWorkteamsOutput) SetNextToken(v string) *ListWorkteamsOutput {
20311	s.NextToken = &v
20312	return s
20313}
20314
20315// SetWorkteams sets the Workteams field's value.
20316func (s *ListWorkteamsOutput) SetWorkteams(v []*Workteam) *ListWorkteamsOutput {
20317	s.Workteams = v
20318	return s
20319}
20320
20321// Defines the Amazon Cognito user group that is part of a work team.
20322type MemberDefinition struct {
20323	_ struct{} `type:"structure"`
20324
20325	// The Amazon Cognito user group that is part of the work team.
20326	CognitoMemberDefinition *CognitoMemberDefinition `type:"structure"`
20327}
20328
20329// String returns the string representation
20330func (s MemberDefinition) String() string {
20331	return awsutil.Prettify(s)
20332}
20333
20334// GoString returns the string representation
20335func (s MemberDefinition) GoString() string {
20336	return s.String()
20337}
20338
20339// Validate inspects the fields of the type to determine if they are valid.
20340func (s *MemberDefinition) Validate() error {
20341	invalidParams := request.ErrInvalidParams{Context: "MemberDefinition"}
20342	if s.CognitoMemberDefinition != nil {
20343		if err := s.CognitoMemberDefinition.Validate(); err != nil {
20344			invalidParams.AddNested("CognitoMemberDefinition", err.(request.ErrInvalidParams))
20345		}
20346	}
20347
20348	if invalidParams.Len() > 0 {
20349		return invalidParams
20350	}
20351	return nil
20352}
20353
20354// SetCognitoMemberDefinition sets the CognitoMemberDefinition field's value.
20355func (s *MemberDefinition) SetCognitoMemberDefinition(v *CognitoMemberDefinition) *MemberDefinition {
20356	s.CognitoMemberDefinition = v
20357	return s
20358}
20359
20360// The name, value, and date and time of a metric that was emitted to Amazon
20361// CloudWatch.
20362type MetricData struct {
20363	_ struct{} `type:"structure"`
20364
20365	// The name of the metric.
20366	MetricName *string `min:"1" type:"string"`
20367
20368	// The date and time that the algorithm emitted the metric.
20369	Timestamp *time.Time `type:"timestamp"`
20370
20371	// The value of the metric.
20372	Value *float64 `type:"float"`
20373}
20374
20375// String returns the string representation
20376func (s MetricData) String() string {
20377	return awsutil.Prettify(s)
20378}
20379
20380// GoString returns the string representation
20381func (s MetricData) GoString() string {
20382	return s.String()
20383}
20384
20385// SetMetricName sets the MetricName field's value.
20386func (s *MetricData) SetMetricName(v string) *MetricData {
20387	s.MetricName = &v
20388	return s
20389}
20390
20391// SetTimestamp sets the Timestamp field's value.
20392func (s *MetricData) SetTimestamp(v time.Time) *MetricData {
20393	s.Timestamp = &v
20394	return s
20395}
20396
20397// SetValue sets the Value field's value.
20398func (s *MetricData) SetValue(v float64) *MetricData {
20399	s.Value = &v
20400	return s
20401}
20402
20403// Specifies a metric that the training algorithm writes to stderr or stdout
20404// . Amazon SageMakerhyperparameter tuning captures all defined metrics. You
20405// specify one metric that a hyperparameter tuning job uses as its objective
20406// metric to choose the best training job.
20407type MetricDefinition struct {
20408	_ struct{} `type:"structure"`
20409
20410	// The name of the metric.
20411	//
20412	// Name is a required field
20413	Name *string `min:"1" type:"string" required:"true"`
20414
20415	// A regular expression that searches the output of a training job and gets
20416	// the value of the metric. For more information about using regular expressions
20417	// to define metrics, see Defining Objective Metrics (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html).
20418	//
20419	// Regex is a required field
20420	Regex *string `min:"1" type:"string" required:"true"`
20421}
20422
20423// String returns the string representation
20424func (s MetricDefinition) String() string {
20425	return awsutil.Prettify(s)
20426}
20427
20428// GoString returns the string representation
20429func (s MetricDefinition) GoString() string {
20430	return s.String()
20431}
20432
20433// Validate inspects the fields of the type to determine if they are valid.
20434func (s *MetricDefinition) Validate() error {
20435	invalidParams := request.ErrInvalidParams{Context: "MetricDefinition"}
20436	if s.Name == nil {
20437		invalidParams.Add(request.NewErrParamRequired("Name"))
20438	}
20439	if s.Name != nil && len(*s.Name) < 1 {
20440		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
20441	}
20442	if s.Regex == nil {
20443		invalidParams.Add(request.NewErrParamRequired("Regex"))
20444	}
20445	if s.Regex != nil && len(*s.Regex) < 1 {
20446		invalidParams.Add(request.NewErrParamMinLen("Regex", 1))
20447	}
20448
20449	if invalidParams.Len() > 0 {
20450		return invalidParams
20451	}
20452	return nil
20453}
20454
20455// SetName sets the Name field's value.
20456func (s *MetricDefinition) SetName(v string) *MetricDefinition {
20457	s.Name = &v
20458	return s
20459}
20460
20461// SetRegex sets the Regex field's value.
20462func (s *MetricDefinition) SetRegex(v string) *MetricDefinition {
20463	s.Regex = &v
20464	return s
20465}
20466
20467// Provides information about the location that is configured for storing model
20468// artifacts.
20469type ModelArtifacts struct {
20470	_ struct{} `type:"structure"`
20471
20472	// The path of the S3 object that contains the model artifacts. For example,
20473	// s3://bucket-name/keynameprefix/model.tar.gz.
20474	//
20475	// S3ModelArtifacts is a required field
20476	S3ModelArtifacts *string `type:"string" required:"true"`
20477}
20478
20479// String returns the string representation
20480func (s ModelArtifacts) String() string {
20481	return awsutil.Prettify(s)
20482}
20483
20484// GoString returns the string representation
20485func (s ModelArtifacts) GoString() string {
20486	return s.String()
20487}
20488
20489// SetS3ModelArtifacts sets the S3ModelArtifacts field's value.
20490func (s *ModelArtifacts) SetS3ModelArtifacts(v string) *ModelArtifacts {
20491	s.S3ModelArtifacts = &v
20492	return s
20493}
20494
20495// Describes the Docker container for the model package.
20496type ModelPackageContainerDefinition struct {
20497	_ struct{} `type:"structure"`
20498
20499	// The DNS host name for the Docker container.
20500	ContainerHostname *string `type:"string"`
20501
20502	// The Amazon EC2 Container Registry (Amazon ECR) path where inference code
20503	// is stored.
20504	//
20505	// If you are using your own custom algorithm instead of an algorithm provided
20506	// by Amazon SageMaker, the inference code must meet Amazon SageMaker requirements.
20507	// Amazon SageMaker supports both registry/repository[:tag] and registry/repository[@digest]
20508	// image path formats. For more information, see Using Your Own Algorithms with
20509	// Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html).
20510	//
20511	// Image is a required field
20512	Image *string `type:"string" required:"true"`
20513
20514	// An MD5 hash of the training algorithm that identifies the Docker image used
20515	// for training.
20516	ImageDigest *string `type:"string"`
20517
20518	// The Amazon S3 path where the model artifacts, which result from model training,
20519	// are stored. This path must point to a single gzip compressed tar archive
20520	// (.tar.gz suffix).
20521	ModelDataUrl *string `type:"string"`
20522
20523	// The AWS Marketplace product ID of the model package.
20524	ProductId *string `type:"string"`
20525}
20526
20527// String returns the string representation
20528func (s ModelPackageContainerDefinition) String() string {
20529	return awsutil.Prettify(s)
20530}
20531
20532// GoString returns the string representation
20533func (s ModelPackageContainerDefinition) GoString() string {
20534	return s.String()
20535}
20536
20537// Validate inspects the fields of the type to determine if they are valid.
20538func (s *ModelPackageContainerDefinition) Validate() error {
20539	invalidParams := request.ErrInvalidParams{Context: "ModelPackageContainerDefinition"}
20540	if s.Image == nil {
20541		invalidParams.Add(request.NewErrParamRequired("Image"))
20542	}
20543
20544	if invalidParams.Len() > 0 {
20545		return invalidParams
20546	}
20547	return nil
20548}
20549
20550// SetContainerHostname sets the ContainerHostname field's value.
20551func (s *ModelPackageContainerDefinition) SetContainerHostname(v string) *ModelPackageContainerDefinition {
20552	s.ContainerHostname = &v
20553	return s
20554}
20555
20556// SetImage sets the Image field's value.
20557func (s *ModelPackageContainerDefinition) SetImage(v string) *ModelPackageContainerDefinition {
20558	s.Image = &v
20559	return s
20560}
20561
20562// SetImageDigest sets the ImageDigest field's value.
20563func (s *ModelPackageContainerDefinition) SetImageDigest(v string) *ModelPackageContainerDefinition {
20564	s.ImageDigest = &v
20565	return s
20566}
20567
20568// SetModelDataUrl sets the ModelDataUrl field's value.
20569func (s *ModelPackageContainerDefinition) SetModelDataUrl(v string) *ModelPackageContainerDefinition {
20570	s.ModelDataUrl = &v
20571	return s
20572}
20573
20574// SetProductId sets the ProductId field's value.
20575func (s *ModelPackageContainerDefinition) SetProductId(v string) *ModelPackageContainerDefinition {
20576	s.ProductId = &v
20577	return s
20578}
20579
20580// Specifies the validation and image scan statuses of the model package.
20581type ModelPackageStatusDetails struct {
20582	_ struct{} `type:"structure"`
20583
20584	// The status of the scan of the Docker image container for the model package.
20585	ImageScanStatuses []*ModelPackageStatusItem `type:"list"`
20586
20587	// The validation status of the model package.
20588	//
20589	// ValidationStatuses is a required field
20590	ValidationStatuses []*ModelPackageStatusItem `type:"list" required:"true"`
20591}
20592
20593// String returns the string representation
20594func (s ModelPackageStatusDetails) String() string {
20595	return awsutil.Prettify(s)
20596}
20597
20598// GoString returns the string representation
20599func (s ModelPackageStatusDetails) GoString() string {
20600	return s.String()
20601}
20602
20603// SetImageScanStatuses sets the ImageScanStatuses field's value.
20604func (s *ModelPackageStatusDetails) SetImageScanStatuses(v []*ModelPackageStatusItem) *ModelPackageStatusDetails {
20605	s.ImageScanStatuses = v
20606	return s
20607}
20608
20609// SetValidationStatuses sets the ValidationStatuses field's value.
20610func (s *ModelPackageStatusDetails) SetValidationStatuses(v []*ModelPackageStatusItem) *ModelPackageStatusDetails {
20611	s.ValidationStatuses = v
20612	return s
20613}
20614
20615// Represents the overall status of a model package.
20616type ModelPackageStatusItem struct {
20617	_ struct{} `type:"structure"`
20618
20619	// if the overall status is Failed, the reason for the failure.
20620	FailureReason *string `type:"string"`
20621
20622	// The name of the model package for which the overall status is being reported.
20623	//
20624	// Name is a required field
20625	Name *string `min:"1" type:"string" required:"true"`
20626
20627	// The current status.
20628	//
20629	// Status is a required field
20630	Status *string `type:"string" required:"true" enum:"DetailedModelPackageStatus"`
20631}
20632
20633// String returns the string representation
20634func (s ModelPackageStatusItem) String() string {
20635	return awsutil.Prettify(s)
20636}
20637
20638// GoString returns the string representation
20639func (s ModelPackageStatusItem) GoString() string {
20640	return s.String()
20641}
20642
20643// SetFailureReason sets the FailureReason field's value.
20644func (s *ModelPackageStatusItem) SetFailureReason(v string) *ModelPackageStatusItem {
20645	s.FailureReason = &v
20646	return s
20647}
20648
20649// SetName sets the Name field's value.
20650func (s *ModelPackageStatusItem) SetName(v string) *ModelPackageStatusItem {
20651	s.Name = &v
20652	return s
20653}
20654
20655// SetStatus sets the Status field's value.
20656func (s *ModelPackageStatusItem) SetStatus(v string) *ModelPackageStatusItem {
20657	s.Status = &v
20658	return s
20659}
20660
20661// Provides summary information about a model package.
20662type ModelPackageSummary struct {
20663	_ struct{} `type:"structure"`
20664
20665	// A timestamp that shows when the model package was created.
20666	//
20667	// CreationTime is a required field
20668	CreationTime *time.Time `type:"timestamp" required:"true"`
20669
20670	// The Amazon Resource Name (ARN) of the model package.
20671	//
20672	// ModelPackageArn is a required field
20673	ModelPackageArn *string `min:"1" type:"string" required:"true"`
20674
20675	// A brief description of the model package.
20676	ModelPackageDescription *string `type:"string"`
20677
20678	// The name of the model package.
20679	//
20680	// ModelPackageName is a required field
20681	ModelPackageName *string `min:"1" type:"string" required:"true"`
20682
20683	// The overall status of the model package.
20684	//
20685	// ModelPackageStatus is a required field
20686	ModelPackageStatus *string `type:"string" required:"true" enum:"ModelPackageStatus"`
20687}
20688
20689// String returns the string representation
20690func (s ModelPackageSummary) String() string {
20691	return awsutil.Prettify(s)
20692}
20693
20694// GoString returns the string representation
20695func (s ModelPackageSummary) GoString() string {
20696	return s.String()
20697}
20698
20699// SetCreationTime sets the CreationTime field's value.
20700func (s *ModelPackageSummary) SetCreationTime(v time.Time) *ModelPackageSummary {
20701	s.CreationTime = &v
20702	return s
20703}
20704
20705// SetModelPackageArn sets the ModelPackageArn field's value.
20706func (s *ModelPackageSummary) SetModelPackageArn(v string) *ModelPackageSummary {
20707	s.ModelPackageArn = &v
20708	return s
20709}
20710
20711// SetModelPackageDescription sets the ModelPackageDescription field's value.
20712func (s *ModelPackageSummary) SetModelPackageDescription(v string) *ModelPackageSummary {
20713	s.ModelPackageDescription = &v
20714	return s
20715}
20716
20717// SetModelPackageName sets the ModelPackageName field's value.
20718func (s *ModelPackageSummary) SetModelPackageName(v string) *ModelPackageSummary {
20719	s.ModelPackageName = &v
20720	return s
20721}
20722
20723// SetModelPackageStatus sets the ModelPackageStatus field's value.
20724func (s *ModelPackageSummary) SetModelPackageStatus(v string) *ModelPackageSummary {
20725	s.ModelPackageStatus = &v
20726	return s
20727}
20728
20729// Contains data, such as the inputs and targeted instance types that are used
20730// in the process of validating the model package.
20731//
20732// The data provided in the validation profile is made available to your buyers
20733// on AWS Marketplace.
20734type ModelPackageValidationProfile struct {
20735	_ struct{} `type:"structure"`
20736
20737	// The name of the profile for the model package.
20738	//
20739	// ProfileName is a required field
20740	ProfileName *string `min:"1" type:"string" required:"true"`
20741
20742	// The TransformJobDefinition object that describes the transform job used for
20743	// the validation of the model package.
20744	//
20745	// TransformJobDefinition is a required field
20746	TransformJobDefinition *TransformJobDefinition `type:"structure" required:"true"`
20747}
20748
20749// String returns the string representation
20750func (s ModelPackageValidationProfile) String() string {
20751	return awsutil.Prettify(s)
20752}
20753
20754// GoString returns the string representation
20755func (s ModelPackageValidationProfile) GoString() string {
20756	return s.String()
20757}
20758
20759// Validate inspects the fields of the type to determine if they are valid.
20760func (s *ModelPackageValidationProfile) Validate() error {
20761	invalidParams := request.ErrInvalidParams{Context: "ModelPackageValidationProfile"}
20762	if s.ProfileName == nil {
20763		invalidParams.Add(request.NewErrParamRequired("ProfileName"))
20764	}
20765	if s.ProfileName != nil && len(*s.ProfileName) < 1 {
20766		invalidParams.Add(request.NewErrParamMinLen("ProfileName", 1))
20767	}
20768	if s.TransformJobDefinition == nil {
20769		invalidParams.Add(request.NewErrParamRequired("TransformJobDefinition"))
20770	}
20771	if s.TransformJobDefinition != nil {
20772		if err := s.TransformJobDefinition.Validate(); err != nil {
20773			invalidParams.AddNested("TransformJobDefinition", err.(request.ErrInvalidParams))
20774		}
20775	}
20776
20777	if invalidParams.Len() > 0 {
20778		return invalidParams
20779	}
20780	return nil
20781}
20782
20783// SetProfileName sets the ProfileName field's value.
20784func (s *ModelPackageValidationProfile) SetProfileName(v string) *ModelPackageValidationProfile {
20785	s.ProfileName = &v
20786	return s
20787}
20788
20789// SetTransformJobDefinition sets the TransformJobDefinition field's value.
20790func (s *ModelPackageValidationProfile) SetTransformJobDefinition(v *TransformJobDefinition) *ModelPackageValidationProfile {
20791	s.TransformJobDefinition = v
20792	return s
20793}
20794
20795// Specifies batch transform jobs that Amazon SageMaker runs to validate your
20796// model package.
20797type ModelPackageValidationSpecification struct {
20798	_ struct{} `type:"structure"`
20799
20800	// An array of ModelPackageValidationProfile objects, each of which specifies
20801	// a batch transform job that Amazon SageMaker runs to validate your model package.
20802	//
20803	// ValidationProfiles is a required field
20804	ValidationProfiles []*ModelPackageValidationProfile `min:"1" type:"list" required:"true"`
20805
20806	// The IAM roles to be used for the validation of the model package.
20807	//
20808	// ValidationRole is a required field
20809	ValidationRole *string `min:"20" type:"string" required:"true"`
20810}
20811
20812// String returns the string representation
20813func (s ModelPackageValidationSpecification) String() string {
20814	return awsutil.Prettify(s)
20815}
20816
20817// GoString returns the string representation
20818func (s ModelPackageValidationSpecification) GoString() string {
20819	return s.String()
20820}
20821
20822// Validate inspects the fields of the type to determine if they are valid.
20823func (s *ModelPackageValidationSpecification) Validate() error {
20824	invalidParams := request.ErrInvalidParams{Context: "ModelPackageValidationSpecification"}
20825	if s.ValidationProfiles == nil {
20826		invalidParams.Add(request.NewErrParamRequired("ValidationProfiles"))
20827	}
20828	if s.ValidationProfiles != nil && len(s.ValidationProfiles) < 1 {
20829		invalidParams.Add(request.NewErrParamMinLen("ValidationProfiles", 1))
20830	}
20831	if s.ValidationRole == nil {
20832		invalidParams.Add(request.NewErrParamRequired("ValidationRole"))
20833	}
20834	if s.ValidationRole != nil && len(*s.ValidationRole) < 20 {
20835		invalidParams.Add(request.NewErrParamMinLen("ValidationRole", 20))
20836	}
20837	if s.ValidationProfiles != nil {
20838		for i, v := range s.ValidationProfiles {
20839			if v == nil {
20840				continue
20841			}
20842			if err := v.Validate(); err != nil {
20843				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ValidationProfiles", i), err.(request.ErrInvalidParams))
20844			}
20845		}
20846	}
20847
20848	if invalidParams.Len() > 0 {
20849		return invalidParams
20850	}
20851	return nil
20852}
20853
20854// SetValidationProfiles sets the ValidationProfiles field's value.
20855func (s *ModelPackageValidationSpecification) SetValidationProfiles(v []*ModelPackageValidationProfile) *ModelPackageValidationSpecification {
20856	s.ValidationProfiles = v
20857	return s
20858}
20859
20860// SetValidationRole sets the ValidationRole field's value.
20861func (s *ModelPackageValidationSpecification) SetValidationRole(v string) *ModelPackageValidationSpecification {
20862	s.ValidationRole = &v
20863	return s
20864}
20865
20866// Provides summary information about a model.
20867type ModelSummary struct {
20868	_ struct{} `type:"structure"`
20869
20870	// A timestamp that indicates when the model was created.
20871	//
20872	// CreationTime is a required field
20873	CreationTime *time.Time `type:"timestamp" required:"true"`
20874
20875	// The Amazon Resource Name (ARN) of the model.
20876	//
20877	// ModelArn is a required field
20878	ModelArn *string `min:"20" type:"string" required:"true"`
20879
20880	// The name of the model that you want a summary for.
20881	//
20882	// ModelName is a required field
20883	ModelName *string `type:"string" required:"true"`
20884}
20885
20886// String returns the string representation
20887func (s ModelSummary) String() string {
20888	return awsutil.Prettify(s)
20889}
20890
20891// GoString returns the string representation
20892func (s ModelSummary) GoString() string {
20893	return s.String()
20894}
20895
20896// SetCreationTime sets the CreationTime field's value.
20897func (s *ModelSummary) SetCreationTime(v time.Time) *ModelSummary {
20898	s.CreationTime = &v
20899	return s
20900}
20901
20902// SetModelArn sets the ModelArn field's value.
20903func (s *ModelSummary) SetModelArn(v string) *ModelSummary {
20904	s.ModelArn = &v
20905	return s
20906}
20907
20908// SetModelName sets the ModelName field's value.
20909func (s *ModelSummary) SetModelName(v string) *ModelSummary {
20910	s.ModelName = &v
20911	return s
20912}
20913
20914// Defines a list of NestedFilters objects. To satisfy the conditions specified
20915// in the NestedFilters call, a resource must satisfy the conditions of all
20916// of the filters.
20917//
20918// For example, you could define a NestedFilters using the training job's InputDataConfig
20919// property to filter on Channel objects.
20920//
20921// A NestedFilters object contains multiple filters. For example, to find all
20922// training jobs whose name contains train and that have cat/data in their S3Uri
20923// (specified in InputDataConfig), you need to create a NestedFilters object
20924// that specifies the InputDataConfig property with the following Filter objects:
20925//
20926//    * '{Name:"InputDataConfig.ChannelName", "Operator":"EQUALS", "Value":"train"}',
20927//
20928//    * '{Name:"InputDataConfig.DataSource.S3DataSource.S3Uri", "Operator":"CONTAINS",
20929//    "Value":"cat/data"}'
20930type NestedFilters struct {
20931	_ struct{} `type:"structure"`
20932
20933	// A list of filters. Each filter acts on a property. Filters must contain at
20934	// least one Filters value. For example, a NestedFilters call might include
20935	// a filter on the PropertyName parameter of the InputDataConfig property: InputDataConfig.DataSource.S3DataSource.S3Uri.
20936	//
20937	// Filters is a required field
20938	Filters []*Filter `min:"1" type:"list" required:"true"`
20939
20940	// The name of the property to use in the nested filters. The value must match
20941	// a listed property name, such as InputDataConfig .
20942	//
20943	// NestedPropertyName is a required field
20944	NestedPropertyName *string `min:"1" type:"string" required:"true"`
20945}
20946
20947// String returns the string representation
20948func (s NestedFilters) String() string {
20949	return awsutil.Prettify(s)
20950}
20951
20952// GoString returns the string representation
20953func (s NestedFilters) GoString() string {
20954	return s.String()
20955}
20956
20957// Validate inspects the fields of the type to determine if they are valid.
20958func (s *NestedFilters) Validate() error {
20959	invalidParams := request.ErrInvalidParams{Context: "NestedFilters"}
20960	if s.Filters == nil {
20961		invalidParams.Add(request.NewErrParamRequired("Filters"))
20962	}
20963	if s.Filters != nil && len(s.Filters) < 1 {
20964		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
20965	}
20966	if s.NestedPropertyName == nil {
20967		invalidParams.Add(request.NewErrParamRequired("NestedPropertyName"))
20968	}
20969	if s.NestedPropertyName != nil && len(*s.NestedPropertyName) < 1 {
20970		invalidParams.Add(request.NewErrParamMinLen("NestedPropertyName", 1))
20971	}
20972	if s.Filters != nil {
20973		for i, v := range s.Filters {
20974			if v == nil {
20975				continue
20976			}
20977			if err := v.Validate(); err != nil {
20978				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
20979			}
20980		}
20981	}
20982
20983	if invalidParams.Len() > 0 {
20984		return invalidParams
20985	}
20986	return nil
20987}
20988
20989// SetFilters sets the Filters field's value.
20990func (s *NestedFilters) SetFilters(v []*Filter) *NestedFilters {
20991	s.Filters = v
20992	return s
20993}
20994
20995// SetNestedPropertyName sets the NestedPropertyName field's value.
20996func (s *NestedFilters) SetNestedPropertyName(v string) *NestedFilters {
20997	s.NestedPropertyName = &v
20998	return s
20999}
21000
21001// Provides a summary of a notebook instance lifecycle configuration.
21002type NotebookInstanceLifecycleConfigSummary struct {
21003	_ struct{} `type:"structure"`
21004
21005	// A timestamp that tells when the lifecycle configuration was created.
21006	CreationTime *time.Time `type:"timestamp"`
21007
21008	// A timestamp that tells when the lifecycle configuration was last modified.
21009	LastModifiedTime *time.Time `type:"timestamp"`
21010
21011	// The Amazon Resource Name (ARN) of the lifecycle configuration.
21012	//
21013	// NotebookInstanceLifecycleConfigArn is a required field
21014	NotebookInstanceLifecycleConfigArn *string `type:"string" required:"true"`
21015
21016	// The name of the lifecycle configuration.
21017	//
21018	// NotebookInstanceLifecycleConfigName is a required field
21019	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
21020}
21021
21022// String returns the string representation
21023func (s NotebookInstanceLifecycleConfigSummary) String() string {
21024	return awsutil.Prettify(s)
21025}
21026
21027// GoString returns the string representation
21028func (s NotebookInstanceLifecycleConfigSummary) GoString() string {
21029	return s.String()
21030}
21031
21032// SetCreationTime sets the CreationTime field's value.
21033func (s *NotebookInstanceLifecycleConfigSummary) SetCreationTime(v time.Time) *NotebookInstanceLifecycleConfigSummary {
21034	s.CreationTime = &v
21035	return s
21036}
21037
21038// SetLastModifiedTime sets the LastModifiedTime field's value.
21039func (s *NotebookInstanceLifecycleConfigSummary) SetLastModifiedTime(v time.Time) *NotebookInstanceLifecycleConfigSummary {
21040	s.LastModifiedTime = &v
21041	return s
21042}
21043
21044// SetNotebookInstanceLifecycleConfigArn sets the NotebookInstanceLifecycleConfigArn field's value.
21045func (s *NotebookInstanceLifecycleConfigSummary) SetNotebookInstanceLifecycleConfigArn(v string) *NotebookInstanceLifecycleConfigSummary {
21046	s.NotebookInstanceLifecycleConfigArn = &v
21047	return s
21048}
21049
21050// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
21051func (s *NotebookInstanceLifecycleConfigSummary) SetNotebookInstanceLifecycleConfigName(v string) *NotebookInstanceLifecycleConfigSummary {
21052	s.NotebookInstanceLifecycleConfigName = &v
21053	return s
21054}
21055
21056// Contains the notebook instance lifecycle configuration script.
21057//
21058// Each lifecycle configuration script has a limit of 16384 characters.
21059//
21060// The value of the $PATH environment variable that is available to both scripts
21061// is /sbin:bin:/usr/sbin:/usr/bin.
21062//
21063// View CloudWatch Logs for notebook instance lifecycle configurations in log
21064// group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook].
21065//
21066// Lifecycle configuration scripts cannot run for longer than 5 minutes. If
21067// a script runs for longer than 5 minutes, it fails and the notebook instance
21068// is not created or started.
21069//
21070// For information about notebook instance lifestyle configurations, see Step
21071// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
21072type NotebookInstanceLifecycleHook struct {
21073	_ struct{} `type:"structure"`
21074
21075	// A base64-encoded string that contains a shell script for a notebook instance
21076	// lifecycle configuration.
21077	Content *string `min:"1" type:"string"`
21078}
21079
21080// String returns the string representation
21081func (s NotebookInstanceLifecycleHook) String() string {
21082	return awsutil.Prettify(s)
21083}
21084
21085// GoString returns the string representation
21086func (s NotebookInstanceLifecycleHook) GoString() string {
21087	return s.String()
21088}
21089
21090// Validate inspects the fields of the type to determine if they are valid.
21091func (s *NotebookInstanceLifecycleHook) Validate() error {
21092	invalidParams := request.ErrInvalidParams{Context: "NotebookInstanceLifecycleHook"}
21093	if s.Content != nil && len(*s.Content) < 1 {
21094		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
21095	}
21096
21097	if invalidParams.Len() > 0 {
21098		return invalidParams
21099	}
21100	return nil
21101}
21102
21103// SetContent sets the Content field's value.
21104func (s *NotebookInstanceLifecycleHook) SetContent(v string) *NotebookInstanceLifecycleHook {
21105	s.Content = &v
21106	return s
21107}
21108
21109// Provides summary information for an Amazon SageMaker notebook instance.
21110type NotebookInstanceSummary struct {
21111	_ struct{} `type:"structure"`
21112
21113	// An array of up to three Git repositories associated with the notebook instance.
21114	// These can be either the names of Git repositories stored as resources in
21115	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
21116	// or in any other Git repository. These repositories are cloned at the same
21117	// level as the default repository of your notebook instance. For more information,
21118	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
21119	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
21120	AdditionalCodeRepositories []*string `type:"list"`
21121
21122	// A timestamp that shows when the notebook instance was created.
21123	CreationTime *time.Time `type:"timestamp"`
21124
21125	// The Git repository associated with the notebook instance as its default code
21126	// repository. This can be either the name of a Git repository stored as a resource
21127	// in your account, or the URL of a Git repository in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
21128	// or in any other Git repository. When you open a notebook instance, it opens
21129	// in the directory that contains this repository. For more information, see
21130	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
21131	DefaultCodeRepository *string `min:"1" type:"string"`
21132
21133	// The type of ML compute instance that the notebook instance is running on.
21134	InstanceType *string `type:"string" enum:"InstanceType"`
21135
21136	// A timestamp that shows when the notebook instance was last modified.
21137	LastModifiedTime *time.Time `type:"timestamp"`
21138
21139	// The Amazon Resource Name (ARN) of the notebook instance.
21140	//
21141	// NotebookInstanceArn is a required field
21142	NotebookInstanceArn *string `type:"string" required:"true"`
21143
21144	// The name of a notebook instance lifecycle configuration associated with this
21145	// notebook instance.
21146	//
21147	// For information about notebook instance lifestyle configurations, see Step
21148	// 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
21149	NotebookInstanceLifecycleConfigName *string `type:"string"`
21150
21151	// The name of the notebook instance that you want a summary for.
21152	//
21153	// NotebookInstanceName is a required field
21154	NotebookInstanceName *string `type:"string" required:"true"`
21155
21156	// The status of the notebook instance.
21157	NotebookInstanceStatus *string `type:"string" enum:"NotebookInstanceStatus"`
21158
21159	// The URL that you use to connect to the Jupyter instance running in your notebook
21160	// instance.
21161	Url *string `type:"string"`
21162}
21163
21164// String returns the string representation
21165func (s NotebookInstanceSummary) String() string {
21166	return awsutil.Prettify(s)
21167}
21168
21169// GoString returns the string representation
21170func (s NotebookInstanceSummary) GoString() string {
21171	return s.String()
21172}
21173
21174// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
21175func (s *NotebookInstanceSummary) SetAdditionalCodeRepositories(v []*string) *NotebookInstanceSummary {
21176	s.AdditionalCodeRepositories = v
21177	return s
21178}
21179
21180// SetCreationTime sets the CreationTime field's value.
21181func (s *NotebookInstanceSummary) SetCreationTime(v time.Time) *NotebookInstanceSummary {
21182	s.CreationTime = &v
21183	return s
21184}
21185
21186// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
21187func (s *NotebookInstanceSummary) SetDefaultCodeRepository(v string) *NotebookInstanceSummary {
21188	s.DefaultCodeRepository = &v
21189	return s
21190}
21191
21192// SetInstanceType sets the InstanceType field's value.
21193func (s *NotebookInstanceSummary) SetInstanceType(v string) *NotebookInstanceSummary {
21194	s.InstanceType = &v
21195	return s
21196}
21197
21198// SetLastModifiedTime sets the LastModifiedTime field's value.
21199func (s *NotebookInstanceSummary) SetLastModifiedTime(v time.Time) *NotebookInstanceSummary {
21200	s.LastModifiedTime = &v
21201	return s
21202}
21203
21204// SetNotebookInstanceArn sets the NotebookInstanceArn field's value.
21205func (s *NotebookInstanceSummary) SetNotebookInstanceArn(v string) *NotebookInstanceSummary {
21206	s.NotebookInstanceArn = &v
21207	return s
21208}
21209
21210// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
21211func (s *NotebookInstanceSummary) SetNotebookInstanceLifecycleConfigName(v string) *NotebookInstanceSummary {
21212	s.NotebookInstanceLifecycleConfigName = &v
21213	return s
21214}
21215
21216// SetNotebookInstanceName sets the NotebookInstanceName field's value.
21217func (s *NotebookInstanceSummary) SetNotebookInstanceName(v string) *NotebookInstanceSummary {
21218	s.NotebookInstanceName = &v
21219	return s
21220}
21221
21222// SetNotebookInstanceStatus sets the NotebookInstanceStatus field's value.
21223func (s *NotebookInstanceSummary) SetNotebookInstanceStatus(v string) *NotebookInstanceSummary {
21224	s.NotebookInstanceStatus = &v
21225	return s
21226}
21227
21228// SetUrl sets the Url field's value.
21229func (s *NotebookInstanceSummary) SetUrl(v string) *NotebookInstanceSummary {
21230	s.Url = &v
21231	return s
21232}
21233
21234// Configures SNS notifications of available or expiring work items for work
21235// teams.
21236type NotificationConfiguration struct {
21237	_ struct{} `type:"structure"`
21238
21239	// The ARN for the SNS topic to which notifications should be published.
21240	NotificationTopicArn *string `type:"string"`
21241}
21242
21243// String returns the string representation
21244func (s NotificationConfiguration) String() string {
21245	return awsutil.Prettify(s)
21246}
21247
21248// GoString returns the string representation
21249func (s NotificationConfiguration) GoString() string {
21250	return s.String()
21251}
21252
21253// SetNotificationTopicArn sets the NotificationTopicArn field's value.
21254func (s *NotificationConfiguration) SetNotificationTopicArn(v string) *NotificationConfiguration {
21255	s.NotificationTopicArn = &v
21256	return s
21257}
21258
21259// Specifies the number of training jobs that this hyperparameter tuning job
21260// launched, categorized by the status of their objective metric. The objective
21261// metric status shows whether the final objective metric for the training job
21262// has been evaluated by the tuning job and used in the hyperparameter tuning
21263// process.
21264type ObjectiveStatusCounters struct {
21265	_ struct{} `type:"structure"`
21266
21267	// The number of training jobs whose final objective metric was not evaluated
21268	// and used in the hyperparameter tuning process. This typically occurs when
21269	// the training job failed or did not emit an objective metric.
21270	Failed *int64 `type:"integer"`
21271
21272	// The number of training jobs that are in progress and pending evaluation of
21273	// their final objective metric.
21274	Pending *int64 `type:"integer"`
21275
21276	// The number of training jobs whose final objective metric was evaluated by
21277	// the hyperparameter tuning job and used in the hyperparameter tuning process.
21278	Succeeded *int64 `type:"integer"`
21279}
21280
21281// String returns the string representation
21282func (s ObjectiveStatusCounters) String() string {
21283	return awsutil.Prettify(s)
21284}
21285
21286// GoString returns the string representation
21287func (s ObjectiveStatusCounters) GoString() string {
21288	return s.String()
21289}
21290
21291// SetFailed sets the Failed field's value.
21292func (s *ObjectiveStatusCounters) SetFailed(v int64) *ObjectiveStatusCounters {
21293	s.Failed = &v
21294	return s
21295}
21296
21297// SetPending sets the Pending field's value.
21298func (s *ObjectiveStatusCounters) SetPending(v int64) *ObjectiveStatusCounters {
21299	s.Pending = &v
21300	return s
21301}
21302
21303// SetSucceeded sets the Succeeded field's value.
21304func (s *ObjectiveStatusCounters) SetSucceeded(v int64) *ObjectiveStatusCounters {
21305	s.Succeeded = &v
21306	return s
21307}
21308
21309// Contains information about the output location for the compiled model and
21310// the device (target) that the model runs on.
21311type OutputConfig struct {
21312	_ struct{} `type:"structure"`
21313
21314	// Identifies the S3 path where you want Amazon SageMaker to store the model
21315	// artifacts. For example, s3://bucket-name/key-name-prefix.
21316	//
21317	// S3OutputLocation is a required field
21318	S3OutputLocation *string `type:"string" required:"true"`
21319
21320	// Identifies the device that you want to run your model on after it has been
21321	// compiled. For example: ml_c5.
21322	//
21323	// TargetDevice is a required field
21324	TargetDevice *string `type:"string" required:"true" enum:"TargetDevice"`
21325}
21326
21327// String returns the string representation
21328func (s OutputConfig) String() string {
21329	return awsutil.Prettify(s)
21330}
21331
21332// GoString returns the string representation
21333func (s OutputConfig) GoString() string {
21334	return s.String()
21335}
21336
21337// Validate inspects the fields of the type to determine if they are valid.
21338func (s *OutputConfig) Validate() error {
21339	invalidParams := request.ErrInvalidParams{Context: "OutputConfig"}
21340	if s.S3OutputLocation == nil {
21341		invalidParams.Add(request.NewErrParamRequired("S3OutputLocation"))
21342	}
21343	if s.TargetDevice == nil {
21344		invalidParams.Add(request.NewErrParamRequired("TargetDevice"))
21345	}
21346
21347	if invalidParams.Len() > 0 {
21348		return invalidParams
21349	}
21350	return nil
21351}
21352
21353// SetS3OutputLocation sets the S3OutputLocation field's value.
21354func (s *OutputConfig) SetS3OutputLocation(v string) *OutputConfig {
21355	s.S3OutputLocation = &v
21356	return s
21357}
21358
21359// SetTargetDevice sets the TargetDevice field's value.
21360func (s *OutputConfig) SetTargetDevice(v string) *OutputConfig {
21361	s.TargetDevice = &v
21362	return s
21363}
21364
21365// Provides information about how to store model training results (model artifacts).
21366type OutputDataConfig struct {
21367	_ struct{} `type:"structure"`
21368
21369	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
21370	// encrypt the model artifacts at rest using Amazon S3 server-side encryption.
21371	// The KmsKeyId can be any of the following formats:
21372	//
21373	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
21374	//
21375	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
21376	//
21377	//    * // KMS Key Alias "alias/ExampleAlias"
21378	//
21379	//    * // Amazon Resource Name (ARN) of a KMS Key Alias "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
21380	//
21381	// If you use a KMS key ID or an alias of your master key, the Amazon SageMaker
21382	// execution role must include permissions to call kms:Encrypt. If you don't
21383	// provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon
21384	// S3 for your role's account. Amazon SageMaker uses server-side encryption
21385	// with KMS-managed keys for OutputDataConfig. If you use a bucket policy with
21386	// an s3:PutObject permission that only allows objects with server-side encryption,
21387	// set the condition key of s3:x-amz-server-side-encryption to "aws:kms". For
21388	// more information, see KMS-Managed Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
21389	// in the Amazon Simple Storage Service Developer Guide.
21390	//
21391	// The KMS key policy must grant permission to the IAM role that you specify
21392	// in your CreateTrainingJob, CreateTransformJob, or CreateHyperParameterTuningJob
21393	// 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)
21394	// in the AWS Key Management Service Developer Guide.
21395	KmsKeyId *string `type:"string"`
21396
21397	// Identifies the S3 path where you want Amazon SageMaker to store the model
21398	// artifacts. For example, s3://bucket-name/key-name-prefix.
21399	//
21400	// S3OutputPath is a required field
21401	S3OutputPath *string `type:"string" required:"true"`
21402}
21403
21404// String returns the string representation
21405func (s OutputDataConfig) String() string {
21406	return awsutil.Prettify(s)
21407}
21408
21409// GoString returns the string representation
21410func (s OutputDataConfig) GoString() string {
21411	return s.String()
21412}
21413
21414// Validate inspects the fields of the type to determine if they are valid.
21415func (s *OutputDataConfig) Validate() error {
21416	invalidParams := request.ErrInvalidParams{Context: "OutputDataConfig"}
21417	if s.S3OutputPath == nil {
21418		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
21419	}
21420
21421	if invalidParams.Len() > 0 {
21422		return invalidParams
21423	}
21424	return nil
21425}
21426
21427// SetKmsKeyId sets the KmsKeyId field's value.
21428func (s *OutputDataConfig) SetKmsKeyId(v string) *OutputDataConfig {
21429	s.KmsKeyId = &v
21430	return s
21431}
21432
21433// SetS3OutputPath sets the S3OutputPath field's value.
21434func (s *OutputDataConfig) SetS3OutputPath(v string) *OutputDataConfig {
21435	s.S3OutputPath = &v
21436	return s
21437}
21438
21439// Defines the possible values for categorical, continuous, and integer hyperparameters
21440// to be used by an algorithm.
21441type ParameterRange struct {
21442	_ struct{} `type:"structure"`
21443
21444	// A CategoricalParameterRangeSpecification object that defines the possible
21445	// values for a categorical hyperparameter.
21446	CategoricalParameterRangeSpecification *CategoricalParameterRangeSpecification `type:"structure"`
21447
21448	// A ContinuousParameterRangeSpecification object that defines the possible
21449	// values for a continuous hyperparameter.
21450	ContinuousParameterRangeSpecification *ContinuousParameterRangeSpecification `type:"structure"`
21451
21452	// A IntegerParameterRangeSpecification object that defines the possible values
21453	// for an integer hyperparameter.
21454	IntegerParameterRangeSpecification *IntegerParameterRangeSpecification `type:"structure"`
21455}
21456
21457// String returns the string representation
21458func (s ParameterRange) String() string {
21459	return awsutil.Prettify(s)
21460}
21461
21462// GoString returns the string representation
21463func (s ParameterRange) GoString() string {
21464	return s.String()
21465}
21466
21467// Validate inspects the fields of the type to determine if they are valid.
21468func (s *ParameterRange) Validate() error {
21469	invalidParams := request.ErrInvalidParams{Context: "ParameterRange"}
21470	if s.CategoricalParameterRangeSpecification != nil {
21471		if err := s.CategoricalParameterRangeSpecification.Validate(); err != nil {
21472			invalidParams.AddNested("CategoricalParameterRangeSpecification", err.(request.ErrInvalidParams))
21473		}
21474	}
21475	if s.ContinuousParameterRangeSpecification != nil {
21476		if err := s.ContinuousParameterRangeSpecification.Validate(); err != nil {
21477			invalidParams.AddNested("ContinuousParameterRangeSpecification", err.(request.ErrInvalidParams))
21478		}
21479	}
21480	if s.IntegerParameterRangeSpecification != nil {
21481		if err := s.IntegerParameterRangeSpecification.Validate(); err != nil {
21482			invalidParams.AddNested("IntegerParameterRangeSpecification", err.(request.ErrInvalidParams))
21483		}
21484	}
21485
21486	if invalidParams.Len() > 0 {
21487		return invalidParams
21488	}
21489	return nil
21490}
21491
21492// SetCategoricalParameterRangeSpecification sets the CategoricalParameterRangeSpecification field's value.
21493func (s *ParameterRange) SetCategoricalParameterRangeSpecification(v *CategoricalParameterRangeSpecification) *ParameterRange {
21494	s.CategoricalParameterRangeSpecification = v
21495	return s
21496}
21497
21498// SetContinuousParameterRangeSpecification sets the ContinuousParameterRangeSpecification field's value.
21499func (s *ParameterRange) SetContinuousParameterRangeSpecification(v *ContinuousParameterRangeSpecification) *ParameterRange {
21500	s.ContinuousParameterRangeSpecification = v
21501	return s
21502}
21503
21504// SetIntegerParameterRangeSpecification sets the IntegerParameterRangeSpecification field's value.
21505func (s *ParameterRange) SetIntegerParameterRangeSpecification(v *IntegerParameterRangeSpecification) *ParameterRange {
21506	s.IntegerParameterRangeSpecification = v
21507	return s
21508}
21509
21510// Specifies ranges of integer, continuous, and categorical hyperparameters
21511// that a hyperparameter tuning job searches. The hyperparameter tuning job
21512// launches training jobs with hyperparameter values within these ranges to
21513// find the combination of values that result in the training job with the best
21514// performance as measured by the objective metric of the hyperparameter tuning
21515// job.
21516//
21517// You can specify a maximum of 20 hyperparameters that a hyperparameter tuning
21518// job can search over. Every possible value of a categorical parameter range
21519// counts against this limit.
21520type ParameterRanges struct {
21521	_ struct{} `type:"structure"`
21522
21523	// The array of CategoricalParameterRange objects that specify ranges of categorical
21524	// hyperparameters that a hyperparameter tuning job searches.
21525	CategoricalParameterRanges []*CategoricalParameterRange `type:"list"`
21526
21527	// The array of ContinuousParameterRange objects that specify ranges of continuous
21528	// hyperparameters that a hyperparameter tuning job searches.
21529	ContinuousParameterRanges []*ContinuousParameterRange `type:"list"`
21530
21531	// The array of IntegerParameterRange objects that specify ranges of integer
21532	// hyperparameters that a hyperparameter tuning job searches.
21533	IntegerParameterRanges []*IntegerParameterRange `type:"list"`
21534}
21535
21536// String returns the string representation
21537func (s ParameterRanges) String() string {
21538	return awsutil.Prettify(s)
21539}
21540
21541// GoString returns the string representation
21542func (s ParameterRanges) GoString() string {
21543	return s.String()
21544}
21545
21546// Validate inspects the fields of the type to determine if they are valid.
21547func (s *ParameterRanges) Validate() error {
21548	invalidParams := request.ErrInvalidParams{Context: "ParameterRanges"}
21549	if s.CategoricalParameterRanges != nil {
21550		for i, v := range s.CategoricalParameterRanges {
21551			if v == nil {
21552				continue
21553			}
21554			if err := v.Validate(); err != nil {
21555				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CategoricalParameterRanges", i), err.(request.ErrInvalidParams))
21556			}
21557		}
21558	}
21559	if s.ContinuousParameterRanges != nil {
21560		for i, v := range s.ContinuousParameterRanges {
21561			if v == nil {
21562				continue
21563			}
21564			if err := v.Validate(); err != nil {
21565				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ContinuousParameterRanges", i), err.(request.ErrInvalidParams))
21566			}
21567		}
21568	}
21569	if s.IntegerParameterRanges != nil {
21570		for i, v := range s.IntegerParameterRanges {
21571			if v == nil {
21572				continue
21573			}
21574			if err := v.Validate(); err != nil {
21575				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "IntegerParameterRanges", i), err.(request.ErrInvalidParams))
21576			}
21577		}
21578	}
21579
21580	if invalidParams.Len() > 0 {
21581		return invalidParams
21582	}
21583	return nil
21584}
21585
21586// SetCategoricalParameterRanges sets the CategoricalParameterRanges field's value.
21587func (s *ParameterRanges) SetCategoricalParameterRanges(v []*CategoricalParameterRange) *ParameterRanges {
21588	s.CategoricalParameterRanges = v
21589	return s
21590}
21591
21592// SetContinuousParameterRanges sets the ContinuousParameterRanges field's value.
21593func (s *ParameterRanges) SetContinuousParameterRanges(v []*ContinuousParameterRange) *ParameterRanges {
21594	s.ContinuousParameterRanges = v
21595	return s
21596}
21597
21598// SetIntegerParameterRanges sets the IntegerParameterRanges field's value.
21599func (s *ParameterRanges) SetIntegerParameterRanges(v []*IntegerParameterRange) *ParameterRanges {
21600	s.IntegerParameterRanges = v
21601	return s
21602}
21603
21604// A previously completed or stopped hyperparameter tuning job to be used as
21605// a starting point for a new hyperparameter tuning job.
21606type ParentHyperParameterTuningJob struct {
21607	_ struct{} `type:"structure"`
21608
21609	// The name of the hyperparameter tuning job to be used as a starting point
21610	// for a new hyperparameter tuning job.
21611	HyperParameterTuningJobName *string `min:"1" type:"string"`
21612}
21613
21614// String returns the string representation
21615func (s ParentHyperParameterTuningJob) String() string {
21616	return awsutil.Prettify(s)
21617}
21618
21619// GoString returns the string representation
21620func (s ParentHyperParameterTuningJob) GoString() string {
21621	return s.String()
21622}
21623
21624// Validate inspects the fields of the type to determine if they are valid.
21625func (s *ParentHyperParameterTuningJob) Validate() error {
21626	invalidParams := request.ErrInvalidParams{Context: "ParentHyperParameterTuningJob"}
21627	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
21628		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
21629	}
21630
21631	if invalidParams.Len() > 0 {
21632		return invalidParams
21633	}
21634	return nil
21635}
21636
21637// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
21638func (s *ParentHyperParameterTuningJob) SetHyperParameterTuningJobName(v string) *ParentHyperParameterTuningJob {
21639	s.HyperParameterTuningJobName = &v
21640	return s
21641}
21642
21643// Identifies a model that you want to host and the resources to deploy for
21644// hosting it. If you are deploying multiple models, tell Amazon SageMaker how
21645// to distribute traffic among the models by specifying variant weights.
21646type ProductionVariant struct {
21647	_ struct{} `type:"structure"`
21648
21649	// The size of the Elastic Inference (EI) instance to use for the production
21650	// variant. EI instances provide on-demand GPU computing for inference. For
21651	// more information, see Using Elastic Inference in Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html).
21652	AcceleratorType *string `type:"string" enum:"ProductionVariantAcceleratorType"`
21653
21654	// Number of instances to launch initially.
21655	//
21656	// InitialInstanceCount is a required field
21657	InitialInstanceCount *int64 `min:"1" type:"integer" required:"true"`
21658
21659	// Determines initial traffic distribution among all of the models that you
21660	// specify in the endpoint configuration. The traffic to a production variant
21661	// is determined by the ratio of the VariantWeight to the sum of all VariantWeight
21662	// values across all ProductionVariants. If unspecified, it defaults to 1.0.
21663	InitialVariantWeight *float64 `type:"float"`
21664
21665	// The ML compute instance type.
21666	//
21667	// InstanceType is a required field
21668	InstanceType *string `type:"string" required:"true" enum:"ProductionVariantInstanceType"`
21669
21670	// The name of the model that you want to host. This is the name that you specified
21671	// when creating the model.
21672	//
21673	// ModelName is a required field
21674	ModelName *string `type:"string" required:"true"`
21675
21676	// The name of the production variant.
21677	//
21678	// VariantName is a required field
21679	VariantName *string `type:"string" required:"true"`
21680}
21681
21682// String returns the string representation
21683func (s ProductionVariant) String() string {
21684	return awsutil.Prettify(s)
21685}
21686
21687// GoString returns the string representation
21688func (s ProductionVariant) GoString() string {
21689	return s.String()
21690}
21691
21692// Validate inspects the fields of the type to determine if they are valid.
21693func (s *ProductionVariant) Validate() error {
21694	invalidParams := request.ErrInvalidParams{Context: "ProductionVariant"}
21695	if s.InitialInstanceCount == nil {
21696		invalidParams.Add(request.NewErrParamRequired("InitialInstanceCount"))
21697	}
21698	if s.InitialInstanceCount != nil && *s.InitialInstanceCount < 1 {
21699		invalidParams.Add(request.NewErrParamMinValue("InitialInstanceCount", 1))
21700	}
21701	if s.InstanceType == nil {
21702		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
21703	}
21704	if s.ModelName == nil {
21705		invalidParams.Add(request.NewErrParamRequired("ModelName"))
21706	}
21707	if s.VariantName == nil {
21708		invalidParams.Add(request.NewErrParamRequired("VariantName"))
21709	}
21710
21711	if invalidParams.Len() > 0 {
21712		return invalidParams
21713	}
21714	return nil
21715}
21716
21717// SetAcceleratorType sets the AcceleratorType field's value.
21718func (s *ProductionVariant) SetAcceleratorType(v string) *ProductionVariant {
21719	s.AcceleratorType = &v
21720	return s
21721}
21722
21723// SetInitialInstanceCount sets the InitialInstanceCount field's value.
21724func (s *ProductionVariant) SetInitialInstanceCount(v int64) *ProductionVariant {
21725	s.InitialInstanceCount = &v
21726	return s
21727}
21728
21729// SetInitialVariantWeight sets the InitialVariantWeight field's value.
21730func (s *ProductionVariant) SetInitialVariantWeight(v float64) *ProductionVariant {
21731	s.InitialVariantWeight = &v
21732	return s
21733}
21734
21735// SetInstanceType sets the InstanceType field's value.
21736func (s *ProductionVariant) SetInstanceType(v string) *ProductionVariant {
21737	s.InstanceType = &v
21738	return s
21739}
21740
21741// SetModelName sets the ModelName field's value.
21742func (s *ProductionVariant) SetModelName(v string) *ProductionVariant {
21743	s.ModelName = &v
21744	return s
21745}
21746
21747// SetVariantName sets the VariantName field's value.
21748func (s *ProductionVariant) SetVariantName(v string) *ProductionVariant {
21749	s.VariantName = &v
21750	return s
21751}
21752
21753// Describes weight and capacities for a production variant associated with
21754// an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities
21755// API and the endpoint status is Updating, you get different desired and current
21756// values.
21757type ProductionVariantSummary struct {
21758	_ struct{} `type:"structure"`
21759
21760	// The number of instances associated with the variant.
21761	CurrentInstanceCount *int64 `min:"1" type:"integer"`
21762
21763	// The weight associated with the variant.
21764	CurrentWeight *float64 `type:"float"`
21765
21766	// An array of DeployedImage objects that specify the Amazon EC2 Container Registry
21767	// paths of the inference images deployed on instances of this ProductionVariant.
21768	DeployedImages []*DeployedImage `type:"list"`
21769
21770	// The number of instances requested in the UpdateEndpointWeightsAndCapacities
21771	// request.
21772	DesiredInstanceCount *int64 `min:"1" type:"integer"`
21773
21774	// The requested weight, as specified in the UpdateEndpointWeightsAndCapacities
21775	// request.
21776	DesiredWeight *float64 `type:"float"`
21777
21778	// The name of the variant.
21779	//
21780	// VariantName is a required field
21781	VariantName *string `type:"string" required:"true"`
21782}
21783
21784// String returns the string representation
21785func (s ProductionVariantSummary) String() string {
21786	return awsutil.Prettify(s)
21787}
21788
21789// GoString returns the string representation
21790func (s ProductionVariantSummary) GoString() string {
21791	return s.String()
21792}
21793
21794// SetCurrentInstanceCount sets the CurrentInstanceCount field's value.
21795func (s *ProductionVariantSummary) SetCurrentInstanceCount(v int64) *ProductionVariantSummary {
21796	s.CurrentInstanceCount = &v
21797	return s
21798}
21799
21800// SetCurrentWeight sets the CurrentWeight field's value.
21801func (s *ProductionVariantSummary) SetCurrentWeight(v float64) *ProductionVariantSummary {
21802	s.CurrentWeight = &v
21803	return s
21804}
21805
21806// SetDeployedImages sets the DeployedImages field's value.
21807func (s *ProductionVariantSummary) SetDeployedImages(v []*DeployedImage) *ProductionVariantSummary {
21808	s.DeployedImages = v
21809	return s
21810}
21811
21812// SetDesiredInstanceCount sets the DesiredInstanceCount field's value.
21813func (s *ProductionVariantSummary) SetDesiredInstanceCount(v int64) *ProductionVariantSummary {
21814	s.DesiredInstanceCount = &v
21815	return s
21816}
21817
21818// SetDesiredWeight sets the DesiredWeight field's value.
21819func (s *ProductionVariantSummary) SetDesiredWeight(v float64) *ProductionVariantSummary {
21820	s.DesiredWeight = &v
21821	return s
21822}
21823
21824// SetVariantName sets the VariantName field's value.
21825func (s *ProductionVariantSummary) SetVariantName(v string) *ProductionVariantSummary {
21826	s.VariantName = &v
21827	return s
21828}
21829
21830// A type of SuggestionQuery. A suggestion query for retrieving property names
21831// that match the specified hint.
21832type PropertyNameQuery struct {
21833	_ struct{} `type:"structure"`
21834
21835	// Text that is part of a property's name. The property names of hyperparameter,
21836	// metric, and tag key names that begin with the specified text in the PropertyNameHint.
21837	//
21838	// PropertyNameHint is a required field
21839	PropertyNameHint *string `type:"string" required:"true"`
21840}
21841
21842// String returns the string representation
21843func (s PropertyNameQuery) String() string {
21844	return awsutil.Prettify(s)
21845}
21846
21847// GoString returns the string representation
21848func (s PropertyNameQuery) GoString() string {
21849	return s.String()
21850}
21851
21852// Validate inspects the fields of the type to determine if they are valid.
21853func (s *PropertyNameQuery) Validate() error {
21854	invalidParams := request.ErrInvalidParams{Context: "PropertyNameQuery"}
21855	if s.PropertyNameHint == nil {
21856		invalidParams.Add(request.NewErrParamRequired("PropertyNameHint"))
21857	}
21858
21859	if invalidParams.Len() > 0 {
21860		return invalidParams
21861	}
21862	return nil
21863}
21864
21865// SetPropertyNameHint sets the PropertyNameHint field's value.
21866func (s *PropertyNameQuery) SetPropertyNameHint(v string) *PropertyNameQuery {
21867	s.PropertyNameHint = &v
21868	return s
21869}
21870
21871// A property name returned from a GetSearchSuggestions call that specifies
21872// a value in the PropertyNameQuery field.
21873type PropertyNameSuggestion struct {
21874	_ struct{} `type:"structure"`
21875
21876	// A suggested property name based on what you entered in the search textbox
21877	// in the Amazon SageMaker console.
21878	PropertyName *string `min:"1" type:"string"`
21879}
21880
21881// String returns the string representation
21882func (s PropertyNameSuggestion) String() string {
21883	return awsutil.Prettify(s)
21884}
21885
21886// GoString returns the string representation
21887func (s PropertyNameSuggestion) GoString() string {
21888	return s.String()
21889}
21890
21891// SetPropertyName sets the PropertyName field's value.
21892func (s *PropertyNameSuggestion) SetPropertyName(v string) *PropertyNameSuggestion {
21893	s.PropertyName = &v
21894	return s
21895}
21896
21897// Defines the amount of money paid to an Amazon Mechanical Turk worker for
21898// each task performed.
21899//
21900// Use one of the following prices for bounding box tasks. Prices are in US
21901// dollars and should be based on the complexity of the task; the longer it
21902// takes in your initial testing, the more you should offer.
21903//
21904//    * 0.036
21905//
21906//    * 0.048
21907//
21908//    * 0.060
21909//
21910//    * 0.072
21911//
21912//    * 0.120
21913//
21914//    * 0.240
21915//
21916//    * 0.360
21917//
21918//    * 0.480
21919//
21920//    * 0.600
21921//
21922//    * 0.720
21923//
21924//    * 0.840
21925//
21926//    * 0.960
21927//
21928//    * 1.080
21929//
21930//    * 1.200
21931//
21932// Use one of the following prices for image classification, text classification,
21933// and custom tasks. Prices are in US dollars.
21934//
21935//    * 0.012
21936//
21937//    * 0.024
21938//
21939//    * 0.036
21940//
21941//    * 0.048
21942//
21943//    * 0.060
21944//
21945//    * 0.072
21946//
21947//    * 0.120
21948//
21949//    * 0.240
21950//
21951//    * 0.360
21952//
21953//    * 0.480
21954//
21955//    * 0.600
21956//
21957//    * 0.720
21958//
21959//    * 0.840
21960//
21961//    * 0.960
21962//
21963//    * 1.080
21964//
21965//    * 1.200
21966//
21967// Use one of the following prices for semantic segmentation tasks. Prices are
21968// in US dollars.
21969//
21970//    * 0.840
21971//
21972//    * 0.960
21973//
21974//    * 1.080
21975//
21976//    * 1.200
21977type PublicWorkforceTaskPrice struct {
21978	_ struct{} `type:"structure"`
21979
21980	// Defines the amount of money paid to an Amazon Mechanical Turk worker in United
21981	// States dollars.
21982	AmountInUsd *USD `type:"structure"`
21983}
21984
21985// String returns the string representation
21986func (s PublicWorkforceTaskPrice) String() string {
21987	return awsutil.Prettify(s)
21988}
21989
21990// GoString returns the string representation
21991func (s PublicWorkforceTaskPrice) GoString() string {
21992	return s.String()
21993}
21994
21995// SetAmountInUsd sets the AmountInUsd field's value.
21996func (s *PublicWorkforceTaskPrice) SetAmountInUsd(v *USD) *PublicWorkforceTaskPrice {
21997	s.AmountInUsd = v
21998	return s
21999}
22000
22001type RenderUiTemplateInput struct {
22002	_ struct{} `type:"structure"`
22003
22004	// The Amazon Resource Name (ARN) that has access to the S3 objects that are
22005	// used by the template.
22006	//
22007	// RoleArn is a required field
22008	RoleArn *string `min:"20" type:"string" required:"true"`
22009
22010	// A RenderableTask object containing a representative task to render.
22011	//
22012	// Task is a required field
22013	Task *RenderableTask `type:"structure" required:"true"`
22014
22015	// A Template object containing the worker UI template to render.
22016	//
22017	// UiTemplate is a required field
22018	UiTemplate *UiTemplate `type:"structure" required:"true"`
22019}
22020
22021// String returns the string representation
22022func (s RenderUiTemplateInput) String() string {
22023	return awsutil.Prettify(s)
22024}
22025
22026// GoString returns the string representation
22027func (s RenderUiTemplateInput) GoString() string {
22028	return s.String()
22029}
22030
22031// Validate inspects the fields of the type to determine if they are valid.
22032func (s *RenderUiTemplateInput) Validate() error {
22033	invalidParams := request.ErrInvalidParams{Context: "RenderUiTemplateInput"}
22034	if s.RoleArn == nil {
22035		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
22036	}
22037	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
22038		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
22039	}
22040	if s.Task == nil {
22041		invalidParams.Add(request.NewErrParamRequired("Task"))
22042	}
22043	if s.UiTemplate == nil {
22044		invalidParams.Add(request.NewErrParamRequired("UiTemplate"))
22045	}
22046	if s.Task != nil {
22047		if err := s.Task.Validate(); err != nil {
22048			invalidParams.AddNested("Task", err.(request.ErrInvalidParams))
22049		}
22050	}
22051	if s.UiTemplate != nil {
22052		if err := s.UiTemplate.Validate(); err != nil {
22053			invalidParams.AddNested("UiTemplate", err.(request.ErrInvalidParams))
22054		}
22055	}
22056
22057	if invalidParams.Len() > 0 {
22058		return invalidParams
22059	}
22060	return nil
22061}
22062
22063// SetRoleArn sets the RoleArn field's value.
22064func (s *RenderUiTemplateInput) SetRoleArn(v string) *RenderUiTemplateInput {
22065	s.RoleArn = &v
22066	return s
22067}
22068
22069// SetTask sets the Task field's value.
22070func (s *RenderUiTemplateInput) SetTask(v *RenderableTask) *RenderUiTemplateInput {
22071	s.Task = v
22072	return s
22073}
22074
22075// SetUiTemplate sets the UiTemplate field's value.
22076func (s *RenderUiTemplateInput) SetUiTemplate(v *UiTemplate) *RenderUiTemplateInput {
22077	s.UiTemplate = v
22078	return s
22079}
22080
22081type RenderUiTemplateOutput struct {
22082	_ struct{} `type:"structure"`
22083
22084	// A list of one or more RenderingError objects if any were encountered while
22085	// rendering the template. If there were no errors, the list is empty.
22086	//
22087	// Errors is a required field
22088	Errors []*RenderingError `type:"list" required:"true"`
22089
22090	// A Liquid template that renders the HTML for the worker UI.
22091	//
22092	// RenderedContent is a required field
22093	RenderedContent *string `type:"string" required:"true"`
22094}
22095
22096// String returns the string representation
22097func (s RenderUiTemplateOutput) String() string {
22098	return awsutil.Prettify(s)
22099}
22100
22101// GoString returns the string representation
22102func (s RenderUiTemplateOutput) GoString() string {
22103	return s.String()
22104}
22105
22106// SetErrors sets the Errors field's value.
22107func (s *RenderUiTemplateOutput) SetErrors(v []*RenderingError) *RenderUiTemplateOutput {
22108	s.Errors = v
22109	return s
22110}
22111
22112// SetRenderedContent sets the RenderedContent field's value.
22113func (s *RenderUiTemplateOutput) SetRenderedContent(v string) *RenderUiTemplateOutput {
22114	s.RenderedContent = &v
22115	return s
22116}
22117
22118// Contains input values for a task.
22119type RenderableTask struct {
22120	_ struct{} `type:"structure"`
22121
22122	// A JSON object that contains values for the variables defined in the template.
22123	// It is made available to the template under the substitution variable task.input.
22124	// For example, if you define a variable task.input.text in your template, you
22125	// can supply the variable in the JSON object as "text": "sample text".
22126	//
22127	// Input is a required field
22128	Input *string `min:"2" type:"string" required:"true"`
22129}
22130
22131// String returns the string representation
22132func (s RenderableTask) String() string {
22133	return awsutil.Prettify(s)
22134}
22135
22136// GoString returns the string representation
22137func (s RenderableTask) GoString() string {
22138	return s.String()
22139}
22140
22141// Validate inspects the fields of the type to determine if they are valid.
22142func (s *RenderableTask) Validate() error {
22143	invalidParams := request.ErrInvalidParams{Context: "RenderableTask"}
22144	if s.Input == nil {
22145		invalidParams.Add(request.NewErrParamRequired("Input"))
22146	}
22147	if s.Input != nil && len(*s.Input) < 2 {
22148		invalidParams.Add(request.NewErrParamMinLen("Input", 2))
22149	}
22150
22151	if invalidParams.Len() > 0 {
22152		return invalidParams
22153	}
22154	return nil
22155}
22156
22157// SetInput sets the Input field's value.
22158func (s *RenderableTask) SetInput(v string) *RenderableTask {
22159	s.Input = &v
22160	return s
22161}
22162
22163// A description of an error that occurred while rendering the template.
22164type RenderingError struct {
22165	_ struct{} `type:"structure"`
22166
22167	// A unique identifier for a specific class of errors.
22168	//
22169	// Code is a required field
22170	Code *string `type:"string" required:"true"`
22171
22172	// A human-readable message describing the error.
22173	//
22174	// Message is a required field
22175	Message *string `type:"string" required:"true"`
22176}
22177
22178// String returns the string representation
22179func (s RenderingError) String() string {
22180	return awsutil.Prettify(s)
22181}
22182
22183// GoString returns the string representation
22184func (s RenderingError) GoString() string {
22185	return s.String()
22186}
22187
22188// SetCode sets the Code field's value.
22189func (s *RenderingError) SetCode(v string) *RenderingError {
22190	s.Code = &v
22191	return s
22192}
22193
22194// SetMessage sets the Message field's value.
22195func (s *RenderingError) SetMessage(v string) *RenderingError {
22196	s.Message = &v
22197	return s
22198}
22199
22200// Describes the resources, including ML compute instances and ML storage volumes,
22201// to use for model training.
22202type ResourceConfig struct {
22203	_ struct{} `type:"structure"`
22204
22205	// The number of ML compute instances to use. For distributed training, provide
22206	// a value greater than 1.
22207	//
22208	// InstanceCount is a required field
22209	InstanceCount *int64 `min:"1" type:"integer" required:"true"`
22210
22211	// The ML compute instance type.
22212	//
22213	// InstanceType is a required field
22214	InstanceType *string `type:"string" required:"true" enum:"TrainingInstanceType"`
22215
22216	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
22217	// encrypt data on the storage volume attached to the ML compute instance(s)
22218	// that run the training job. The VolumeKmsKeyId can be any of the following
22219	// formats:
22220	//
22221	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
22222	//
22223	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
22224	VolumeKmsKeyId *string `type:"string"`
22225
22226	// The size of the ML storage volume that you want to provision.
22227	//
22228	// ML storage volumes store model artifacts and incremental states. Training
22229	// algorithms might also use the ML storage volume for scratch space. If you
22230	// want to store the training data in the ML storage volume, choose File as
22231	// the TrainingInputMode in the algorithm specification.
22232	//
22233	// You must specify sufficient ML storage for your scenario.
22234	//
22235	// Amazon SageMaker supports only the General Purpose SSD (gp2) ML storage volume
22236	// type.
22237	//
22238	// VolumeSizeInGB is a required field
22239	VolumeSizeInGB *int64 `min:"1" type:"integer" required:"true"`
22240}
22241
22242// String returns the string representation
22243func (s ResourceConfig) String() string {
22244	return awsutil.Prettify(s)
22245}
22246
22247// GoString returns the string representation
22248func (s ResourceConfig) GoString() string {
22249	return s.String()
22250}
22251
22252// Validate inspects the fields of the type to determine if they are valid.
22253func (s *ResourceConfig) Validate() error {
22254	invalidParams := request.ErrInvalidParams{Context: "ResourceConfig"}
22255	if s.InstanceCount == nil {
22256		invalidParams.Add(request.NewErrParamRequired("InstanceCount"))
22257	}
22258	if s.InstanceCount != nil && *s.InstanceCount < 1 {
22259		invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1))
22260	}
22261	if s.InstanceType == nil {
22262		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
22263	}
22264	if s.VolumeSizeInGB == nil {
22265		invalidParams.Add(request.NewErrParamRequired("VolumeSizeInGB"))
22266	}
22267	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 1 {
22268		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 1))
22269	}
22270
22271	if invalidParams.Len() > 0 {
22272		return invalidParams
22273	}
22274	return nil
22275}
22276
22277// SetInstanceCount sets the InstanceCount field's value.
22278func (s *ResourceConfig) SetInstanceCount(v int64) *ResourceConfig {
22279	s.InstanceCount = &v
22280	return s
22281}
22282
22283// SetInstanceType sets the InstanceType field's value.
22284func (s *ResourceConfig) SetInstanceType(v string) *ResourceConfig {
22285	s.InstanceType = &v
22286	return s
22287}
22288
22289// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
22290func (s *ResourceConfig) SetVolumeKmsKeyId(v string) *ResourceConfig {
22291	s.VolumeKmsKeyId = &v
22292	return s
22293}
22294
22295// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
22296func (s *ResourceConfig) SetVolumeSizeInGB(v int64) *ResourceConfig {
22297	s.VolumeSizeInGB = &v
22298	return s
22299}
22300
22301// Specifies the maximum number of training jobs and parallel training jobs
22302// that a hyperparameter tuning job can launch.
22303type ResourceLimits struct {
22304	_ struct{} `type:"structure"`
22305
22306	// The maximum number of training jobs that a hyperparameter tuning job can
22307	// launch.
22308	//
22309	// MaxNumberOfTrainingJobs is a required field
22310	MaxNumberOfTrainingJobs *int64 `min:"1" type:"integer" required:"true"`
22311
22312	// The maximum number of concurrent training jobs that a hyperparameter tuning
22313	// job can launch.
22314	//
22315	// MaxParallelTrainingJobs is a required field
22316	MaxParallelTrainingJobs *int64 `min:"1" type:"integer" required:"true"`
22317}
22318
22319// String returns the string representation
22320func (s ResourceLimits) String() string {
22321	return awsutil.Prettify(s)
22322}
22323
22324// GoString returns the string representation
22325func (s ResourceLimits) GoString() string {
22326	return s.String()
22327}
22328
22329// Validate inspects the fields of the type to determine if they are valid.
22330func (s *ResourceLimits) Validate() error {
22331	invalidParams := request.ErrInvalidParams{Context: "ResourceLimits"}
22332	if s.MaxNumberOfTrainingJobs == nil {
22333		invalidParams.Add(request.NewErrParamRequired("MaxNumberOfTrainingJobs"))
22334	}
22335	if s.MaxNumberOfTrainingJobs != nil && *s.MaxNumberOfTrainingJobs < 1 {
22336		invalidParams.Add(request.NewErrParamMinValue("MaxNumberOfTrainingJobs", 1))
22337	}
22338	if s.MaxParallelTrainingJobs == nil {
22339		invalidParams.Add(request.NewErrParamRequired("MaxParallelTrainingJobs"))
22340	}
22341	if s.MaxParallelTrainingJobs != nil && *s.MaxParallelTrainingJobs < 1 {
22342		invalidParams.Add(request.NewErrParamMinValue("MaxParallelTrainingJobs", 1))
22343	}
22344
22345	if invalidParams.Len() > 0 {
22346		return invalidParams
22347	}
22348	return nil
22349}
22350
22351// SetMaxNumberOfTrainingJobs sets the MaxNumberOfTrainingJobs field's value.
22352func (s *ResourceLimits) SetMaxNumberOfTrainingJobs(v int64) *ResourceLimits {
22353	s.MaxNumberOfTrainingJobs = &v
22354	return s
22355}
22356
22357// SetMaxParallelTrainingJobs sets the MaxParallelTrainingJobs field's value.
22358func (s *ResourceLimits) SetMaxParallelTrainingJobs(v int64) *ResourceLimits {
22359	s.MaxParallelTrainingJobs = &v
22360	return s
22361}
22362
22363// Describes the S3 data source.
22364type S3DataSource struct {
22365	_ struct{} `type:"structure"`
22366
22367	// A list of one or more attribute names to use that are found in a specified
22368	// augmented manifest file.
22369	AttributeNames []*string `type:"list"`
22370
22371	// If you want Amazon SageMaker to replicate the entire dataset on each ML compute
22372	// instance that is launched for model training, specify FullyReplicated.
22373	//
22374	// If you want Amazon SageMaker to replicate a subset of data on each ML compute
22375	// instance that is launched for model training, specify ShardedByS3Key. If
22376	// there are n ML compute instances launched for a training job, each instance
22377	// gets approximately 1/n of the number of S3 objects. In this case, model training
22378	// on each machine uses only the subset of training data.
22379	//
22380	// Don't choose more ML compute instances for training than available S3 objects.
22381	// If you do, some nodes won't get any data and you will pay for nodes that
22382	// aren't getting any training data. This applies in both File and Pipe modes.
22383	// Keep this in mind when developing algorithms.
22384	//
22385	// In distributed training, where you use multiple ML compute EC2 instances,
22386	// you might choose ShardedByS3Key. If the algorithm requires copying training
22387	// data to the ML storage volume (when TrainingInputMode is set to File), this
22388	// copies 1/n of the number of objects.
22389	S3DataDistributionType *string `type:"string" enum:"S3DataDistribution"`
22390
22391	// If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker
22392	// uses all objects that match the specified key name prefix for model training.
22393	//
22394	// If you choose ManifestFile, S3Uri identifies an object that is a manifest
22395	// file containing a list of object keys that you want Amazon SageMaker to use
22396	// for model training.
22397	//
22398	// If you choose AugmentedManifestFile, S3Uri identifies an object that is an
22399	// augmented manifest file in JSON lines format. This file contains the data
22400	// you want to use for model training. AugmentedManifestFile can only be used
22401	// if the Channel's input mode is Pipe.
22402	//
22403	// S3DataType is a required field
22404	S3DataType *string `type:"string" required:"true" enum:"S3DataType"`
22405
22406	// Depending on the value specified for the S3DataType, identifies either a
22407	// key name prefix or a manifest. For example:
22408	//
22409	//    * A key name prefix might look like this: s3://bucketname/exampleprefix.
22410	//
22411	//    * A manifest might look like this: s3://bucketname/example.manifest The
22412	//    manifest is an S3 object which is a JSON file with the following format:
22413	//    [ {"prefix": "s3://customer_bucket/some/prefix/"}, "relative/path/to/custdata-1",
22414	//    "relative/path/custdata-2", ... ] The preceding JSON matches the following
22415	//    s3Uris: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 s3://customer_bucket/some/prefix/relative/path/custdata-2
22416	//    ... The complete set of s3uris in this manifest is the input data for
22417	//    the channel for this datasource. The object that each s3uris points to
22418	//    must be readable by the IAM role that Amazon SageMaker uses to perform
22419	//    tasks on your behalf.
22420	//
22421	// S3Uri is a required field
22422	S3Uri *string `type:"string" required:"true"`
22423}
22424
22425// String returns the string representation
22426func (s S3DataSource) String() string {
22427	return awsutil.Prettify(s)
22428}
22429
22430// GoString returns the string representation
22431func (s S3DataSource) GoString() string {
22432	return s.String()
22433}
22434
22435// Validate inspects the fields of the type to determine if they are valid.
22436func (s *S3DataSource) Validate() error {
22437	invalidParams := request.ErrInvalidParams{Context: "S3DataSource"}
22438	if s.S3DataType == nil {
22439		invalidParams.Add(request.NewErrParamRequired("S3DataType"))
22440	}
22441	if s.S3Uri == nil {
22442		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
22443	}
22444
22445	if invalidParams.Len() > 0 {
22446		return invalidParams
22447	}
22448	return nil
22449}
22450
22451// SetAttributeNames sets the AttributeNames field's value.
22452func (s *S3DataSource) SetAttributeNames(v []*string) *S3DataSource {
22453	s.AttributeNames = v
22454	return s
22455}
22456
22457// SetS3DataDistributionType sets the S3DataDistributionType field's value.
22458func (s *S3DataSource) SetS3DataDistributionType(v string) *S3DataSource {
22459	s.S3DataDistributionType = &v
22460	return s
22461}
22462
22463// SetS3DataType sets the S3DataType field's value.
22464func (s *S3DataSource) SetS3DataType(v string) *S3DataSource {
22465	s.S3DataType = &v
22466	return s
22467}
22468
22469// SetS3Uri sets the S3Uri field's value.
22470func (s *S3DataSource) SetS3Uri(v string) *S3DataSource {
22471	s.S3Uri = &v
22472	return s
22473}
22474
22475// A multi-expression that searches for the specified resource or resources
22476// in a search. All resource objects that satisfy the expression's condition
22477// are included in the search results. You must specify at least one subexpression,
22478// filter, or nested filter. A SearchExpression can contain up to twenty elements.
22479//
22480// A SearchExpression contains the following components:
22481//
22482//    * A list of Filter objects. Each filter defines a simple Boolean expression
22483//    comprised of a resource property name, Boolean operator, and value.
22484//
22485//    * A list of NestedFilter objects. Each nested filter defines a list of
22486//    Boolean expressions using a list of resource properties. A nested filter
22487//    is satisfied if a single object in the list satisfies all Boolean expressions.
22488//
22489//    * A list of SearchExpression objects. A search expression object can be
22490//    nested in a list of search expression objects.
22491//
22492//    * A Boolean operator: And or Or.
22493type SearchExpression struct {
22494	_ struct{} `type:"structure"`
22495
22496	// A list of filter objects.
22497	Filters []*Filter `min:"1" type:"list"`
22498
22499	// A list of nested filter objects.
22500	NestedFilters []*NestedFilters `min:"1" type:"list"`
22501
22502	// A Boolean operator used to evaluate the search expression. If you want every
22503	// conditional statement in all lists to be satisfied for the entire search
22504	// expression to be true, specify And. If only a single conditional statement
22505	// needs to be true for the entire search expression to be true, specify Or.
22506	// The default value is And.
22507	Operator *string `type:"string" enum:"BooleanOperator"`
22508
22509	// A list of search expression objects.
22510	SubExpressions []*SearchExpression `min:"1" type:"list"`
22511}
22512
22513// String returns the string representation
22514func (s SearchExpression) String() string {
22515	return awsutil.Prettify(s)
22516}
22517
22518// GoString returns the string representation
22519func (s SearchExpression) GoString() string {
22520	return s.String()
22521}
22522
22523// Validate inspects the fields of the type to determine if they are valid.
22524func (s *SearchExpression) Validate() error {
22525	invalidParams := request.ErrInvalidParams{Context: "SearchExpression"}
22526	if s.Filters != nil && len(s.Filters) < 1 {
22527		invalidParams.Add(request.NewErrParamMinLen("Filters", 1))
22528	}
22529	if s.NestedFilters != nil && len(s.NestedFilters) < 1 {
22530		invalidParams.Add(request.NewErrParamMinLen("NestedFilters", 1))
22531	}
22532	if s.SubExpressions != nil && len(s.SubExpressions) < 1 {
22533		invalidParams.Add(request.NewErrParamMinLen("SubExpressions", 1))
22534	}
22535	if s.Filters != nil {
22536		for i, v := range s.Filters {
22537			if v == nil {
22538				continue
22539			}
22540			if err := v.Validate(); err != nil {
22541				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
22542			}
22543		}
22544	}
22545	if s.NestedFilters != nil {
22546		for i, v := range s.NestedFilters {
22547			if v == nil {
22548				continue
22549			}
22550			if err := v.Validate(); err != nil {
22551				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NestedFilters", i), err.(request.ErrInvalidParams))
22552			}
22553		}
22554	}
22555	if s.SubExpressions != nil {
22556		for i, v := range s.SubExpressions {
22557			if v == nil {
22558				continue
22559			}
22560			if err := v.Validate(); err != nil {
22561				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubExpressions", i), err.(request.ErrInvalidParams))
22562			}
22563		}
22564	}
22565
22566	if invalidParams.Len() > 0 {
22567		return invalidParams
22568	}
22569	return nil
22570}
22571
22572// SetFilters sets the Filters field's value.
22573func (s *SearchExpression) SetFilters(v []*Filter) *SearchExpression {
22574	s.Filters = v
22575	return s
22576}
22577
22578// SetNestedFilters sets the NestedFilters field's value.
22579func (s *SearchExpression) SetNestedFilters(v []*NestedFilters) *SearchExpression {
22580	s.NestedFilters = v
22581	return s
22582}
22583
22584// SetOperator sets the Operator field's value.
22585func (s *SearchExpression) SetOperator(v string) *SearchExpression {
22586	s.Operator = &v
22587	return s
22588}
22589
22590// SetSubExpressions sets the SubExpressions field's value.
22591func (s *SearchExpression) SetSubExpressions(v []*SearchExpression) *SearchExpression {
22592	s.SubExpressions = v
22593	return s
22594}
22595
22596type SearchInput struct {
22597	_ struct{} `type:"structure"`
22598
22599	// The maximum number of results to return in a SearchResponse.
22600	MaxResults *int64 `min:"1" type:"integer"`
22601
22602	// If more than MaxResults resource objects match the specified SearchExpression,
22603	// the SearchResponse includes a NextToken. The NextToken can be passed to the
22604	// next SearchRequest to continue retrieving results for the specified SearchExpression
22605	// and Sort parameters.
22606	NextToken *string `type:"string"`
22607
22608	// The name of the Amazon SageMaker resource to search for. Currently, the only
22609	// valid Resource value is TrainingJob.
22610	//
22611	// Resource is a required field
22612	Resource *string `type:"string" required:"true" enum:"ResourceType"`
22613
22614	// A Boolean conditional statement. Resource objects must satisfy this condition
22615	// to be included in search results. You must provide at least one subexpression,
22616	// filter, or nested filter. The maximum number of recursive SubExpressions,
22617	// NestedFilters, and Filters that can be included in a SearchExpression object
22618	// is 50.
22619	SearchExpression *SearchExpression `type:"structure"`
22620
22621	// The name of the resource property used to sort the SearchResults. The default
22622	// is LastModifiedTime.
22623	SortBy *string `min:"1" type:"string"`
22624
22625	// How SearchResults are ordered. Valid values are Ascending or Descending.
22626	// The default is Descending.
22627	SortOrder *string `type:"string" enum:"SearchSortOrder"`
22628}
22629
22630// String returns the string representation
22631func (s SearchInput) String() string {
22632	return awsutil.Prettify(s)
22633}
22634
22635// GoString returns the string representation
22636func (s SearchInput) GoString() string {
22637	return s.String()
22638}
22639
22640// Validate inspects the fields of the type to determine if they are valid.
22641func (s *SearchInput) Validate() error {
22642	invalidParams := request.ErrInvalidParams{Context: "SearchInput"}
22643	if s.MaxResults != nil && *s.MaxResults < 1 {
22644		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
22645	}
22646	if s.Resource == nil {
22647		invalidParams.Add(request.NewErrParamRequired("Resource"))
22648	}
22649	if s.SortBy != nil && len(*s.SortBy) < 1 {
22650		invalidParams.Add(request.NewErrParamMinLen("SortBy", 1))
22651	}
22652	if s.SearchExpression != nil {
22653		if err := s.SearchExpression.Validate(); err != nil {
22654			invalidParams.AddNested("SearchExpression", err.(request.ErrInvalidParams))
22655		}
22656	}
22657
22658	if invalidParams.Len() > 0 {
22659		return invalidParams
22660	}
22661	return nil
22662}
22663
22664// SetMaxResults sets the MaxResults field's value.
22665func (s *SearchInput) SetMaxResults(v int64) *SearchInput {
22666	s.MaxResults = &v
22667	return s
22668}
22669
22670// SetNextToken sets the NextToken field's value.
22671func (s *SearchInput) SetNextToken(v string) *SearchInput {
22672	s.NextToken = &v
22673	return s
22674}
22675
22676// SetResource sets the Resource field's value.
22677func (s *SearchInput) SetResource(v string) *SearchInput {
22678	s.Resource = &v
22679	return s
22680}
22681
22682// SetSearchExpression sets the SearchExpression field's value.
22683func (s *SearchInput) SetSearchExpression(v *SearchExpression) *SearchInput {
22684	s.SearchExpression = v
22685	return s
22686}
22687
22688// SetSortBy sets the SortBy field's value.
22689func (s *SearchInput) SetSortBy(v string) *SearchInput {
22690	s.SortBy = &v
22691	return s
22692}
22693
22694// SetSortOrder sets the SortOrder field's value.
22695func (s *SearchInput) SetSortOrder(v string) *SearchInput {
22696	s.SortOrder = &v
22697	return s
22698}
22699
22700type SearchOutput struct {
22701	_ struct{} `type:"structure"`
22702
22703	// If the result of the previous Search request was truncated, the response
22704	// includes a NextToken. To retrieve the next set of results, use the token
22705	// in the next request.
22706	NextToken *string `type:"string"`
22707
22708	// A list of SearchResult objects.
22709	Results []*SearchRecord `type:"list"`
22710}
22711
22712// String returns the string representation
22713func (s SearchOutput) String() string {
22714	return awsutil.Prettify(s)
22715}
22716
22717// GoString returns the string representation
22718func (s SearchOutput) GoString() string {
22719	return s.String()
22720}
22721
22722// SetNextToken sets the NextToken field's value.
22723func (s *SearchOutput) SetNextToken(v string) *SearchOutput {
22724	s.NextToken = &v
22725	return s
22726}
22727
22728// SetResults sets the Results field's value.
22729func (s *SearchOutput) SetResults(v []*SearchRecord) *SearchOutput {
22730	s.Results = v
22731	return s
22732}
22733
22734// An individual search result record that contains a single resource object.
22735type SearchRecord struct {
22736	_ struct{} `type:"structure"`
22737
22738	// A TrainingJob object that is returned as part of a Search request.
22739	TrainingJob *TrainingJob `type:"structure"`
22740}
22741
22742// String returns the string representation
22743func (s SearchRecord) String() string {
22744	return awsutil.Prettify(s)
22745}
22746
22747// GoString returns the string representation
22748func (s SearchRecord) GoString() string {
22749	return s.String()
22750}
22751
22752// SetTrainingJob sets the TrainingJob field's value.
22753func (s *SearchRecord) SetTrainingJob(v *TrainingJob) *SearchRecord {
22754	s.TrainingJob = v
22755	return s
22756}
22757
22758// An array element of DescribeTrainingJobResponse$SecondaryStatusTransitions.
22759// It provides additional details about a status that the training job has transitioned
22760// through. A training job can be in one of several states, for example, starting,
22761// downloading, training, or uploading. Within each state, there are a number
22762// of intermediate states. For example, within the starting state, Amazon SageMaker
22763// could be starting the training job or launching the ML instances. These transitional
22764// states are referred to as the job's secondary status.
22765type SecondaryStatusTransition struct {
22766	_ struct{} `type:"structure"`
22767
22768	// A timestamp that shows when the training job transitioned out of this secondary
22769	// status state into another secondary status state or when the training job
22770	// has ended.
22771	EndTime *time.Time `type:"timestamp"`
22772
22773	// A timestamp that shows when the training job transitioned to the current
22774	// secondary status state.
22775	//
22776	// StartTime is a required field
22777	StartTime *time.Time `type:"timestamp" required:"true"`
22778
22779	// Contains a secondary status information from a training job.
22780	//
22781	// Status might be one of the following secondary statuses:
22782	//
22783	// InProgress
22784	//
22785	//    * Starting - Starting the training job.
22786	//
22787	//    * Downloading - An optional stage for algorithms that support File training
22788	//    input mode. It indicates that data is being downloaded to the ML storage
22789	//    volumes.
22790	//
22791	//    * Training - Training is in progress.
22792	//
22793	//    * Uploading - Training is complete and the model artifacts are being uploaded
22794	//    to the S3 location.
22795	//
22796	// Completed
22797	//
22798	//    * Completed - The training job has completed.
22799	//
22800	// Failed
22801	//
22802	//    * Failed - The training job has failed. The reason for the failure is
22803	//    returned in the FailureReason field of DescribeTrainingJobResponse.
22804	//
22805	// Stopped
22806	//
22807	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
22808	//    allowed runtime.
22809	//
22810	//    * Stopped - The training job has stopped.
22811	//
22812	// Stopping
22813	//
22814	//    * Stopping - Stopping the training job.
22815	//
22816	// We no longer support the following secondary statuses:
22817	//
22818	//    * LaunchingMLInstances
22819	//
22820	//    * PreparingTrainingStack
22821	//
22822	//    * DownloadingTrainingImage
22823	//
22824	// Status is a required field
22825	Status *string `type:"string" required:"true" enum:"SecondaryStatus"`
22826
22827	// A detailed description of the progress within a secondary status.
22828	//
22829	// Amazon SageMaker provides secondary statuses and status messages that apply
22830	// to each of them:
22831	//
22832	// Starting
22833	//
22834	//    * Starting the training job.
22835	//
22836	//    * Launching requested ML instances.
22837	//
22838	//    * Insufficient capacity error from EC2 while launching instances, retrying!
22839	//
22840	//    * Launched instance was unhealthy, replacing it!
22841	//
22842	//    * Preparing the instances for training.
22843	//
22844	// Training
22845	//
22846	//    * Downloading the training image.
22847	//
22848	//    * Training image download completed. Training in progress.
22849	//
22850	// Status messages are subject to change. Therefore, we recommend not including
22851	// them in code that programmatically initiates actions. For examples, don't
22852	// use status messages in if statements.
22853	//
22854	// To have an overview of your training job's progress, view TrainingJobStatus
22855	// and SecondaryStatus in DescribeTrainingJob, and StatusMessage together. For
22856	// example, at the start of a training job, you might see the following:
22857	//
22858	//    * TrainingJobStatus - InProgress
22859	//
22860	//    * SecondaryStatus - Training
22861	//
22862	//    * StatusMessage - Downloading the training image
22863	StatusMessage *string `type:"string"`
22864}
22865
22866// String returns the string representation
22867func (s SecondaryStatusTransition) String() string {
22868	return awsutil.Prettify(s)
22869}
22870
22871// GoString returns the string representation
22872func (s SecondaryStatusTransition) GoString() string {
22873	return s.String()
22874}
22875
22876// SetEndTime sets the EndTime field's value.
22877func (s *SecondaryStatusTransition) SetEndTime(v time.Time) *SecondaryStatusTransition {
22878	s.EndTime = &v
22879	return s
22880}
22881
22882// SetStartTime sets the StartTime field's value.
22883func (s *SecondaryStatusTransition) SetStartTime(v time.Time) *SecondaryStatusTransition {
22884	s.StartTime = &v
22885	return s
22886}
22887
22888// SetStatus sets the Status field's value.
22889func (s *SecondaryStatusTransition) SetStatus(v string) *SecondaryStatusTransition {
22890	s.Status = &v
22891	return s
22892}
22893
22894// SetStatusMessage sets the StatusMessage field's value.
22895func (s *SecondaryStatusTransition) SetStatusMessage(v string) *SecondaryStatusTransition {
22896	s.StatusMessage = &v
22897	return s
22898}
22899
22900// A configuration for a shuffle option for input data in a channel. If you
22901// use S3Prefix for S3DataType, the results of the S3 key prefix matches are
22902// shuffled. If you use ManifestFile, the order of the S3 object references
22903// in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order
22904// of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling
22905// order is determined using the Seed value.
22906//
22907// For Pipe input mode, shuffling is done at the start of every epoch. With
22908// large datasets, this ensures that the order of the training data is different
22909// for each epoch, and it helps reduce bias and possible overfitting. In a multi-node
22910// training job when ShuffleConfig is combined with S3DataDistributionType of
22911// ShardedByS3Key, the data is shuffled across nodes so that the content sent
22912// to a particular node on the first epoch might be sent to a different node
22913// on the second epoch.
22914type ShuffleConfig struct {
22915	_ struct{} `type:"structure"`
22916
22917	// Determines the shuffling order in ShuffleConfig value.
22918	//
22919	// Seed is a required field
22920	Seed *int64 `type:"long" required:"true"`
22921}
22922
22923// String returns the string representation
22924func (s ShuffleConfig) String() string {
22925	return awsutil.Prettify(s)
22926}
22927
22928// GoString returns the string representation
22929func (s ShuffleConfig) GoString() string {
22930	return s.String()
22931}
22932
22933// Validate inspects the fields of the type to determine if they are valid.
22934func (s *ShuffleConfig) Validate() error {
22935	invalidParams := request.ErrInvalidParams{Context: "ShuffleConfig"}
22936	if s.Seed == nil {
22937		invalidParams.Add(request.NewErrParamRequired("Seed"))
22938	}
22939
22940	if invalidParams.Len() > 0 {
22941		return invalidParams
22942	}
22943	return nil
22944}
22945
22946// SetSeed sets the Seed field's value.
22947func (s *ShuffleConfig) SetSeed(v int64) *ShuffleConfig {
22948	s.Seed = &v
22949	return s
22950}
22951
22952// Specifies an algorithm that was used to create the model package. The algorithm
22953// must be either an algorithm resource in your Amazon SageMaker account or
22954// an algorithm in AWS Marketplace that you are subscribed to.
22955type SourceAlgorithm struct {
22956	_ struct{} `type:"structure"`
22957
22958	// The name of an algorithm that was used to create the model package. The algorithm
22959	// must be either an algorithm resource in your Amazon SageMaker account or
22960	// an algorithm in AWS Marketplace that you are subscribed to.
22961	//
22962	// AlgorithmName is a required field
22963	AlgorithmName *string `min:"1" type:"string" required:"true"`
22964
22965	// The Amazon S3 path where the model artifacts, which result from model training,
22966	// are stored. This path must point to a single gzip compressed tar archive
22967	// (.tar.gz suffix).
22968	ModelDataUrl *string `type:"string"`
22969}
22970
22971// String returns the string representation
22972func (s SourceAlgorithm) String() string {
22973	return awsutil.Prettify(s)
22974}
22975
22976// GoString returns the string representation
22977func (s SourceAlgorithm) GoString() string {
22978	return s.String()
22979}
22980
22981// Validate inspects the fields of the type to determine if they are valid.
22982func (s *SourceAlgorithm) Validate() error {
22983	invalidParams := request.ErrInvalidParams{Context: "SourceAlgorithm"}
22984	if s.AlgorithmName == nil {
22985		invalidParams.Add(request.NewErrParamRequired("AlgorithmName"))
22986	}
22987	if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 {
22988		invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1))
22989	}
22990
22991	if invalidParams.Len() > 0 {
22992		return invalidParams
22993	}
22994	return nil
22995}
22996
22997// SetAlgorithmName sets the AlgorithmName field's value.
22998func (s *SourceAlgorithm) SetAlgorithmName(v string) *SourceAlgorithm {
22999	s.AlgorithmName = &v
23000	return s
23001}
23002
23003// SetModelDataUrl sets the ModelDataUrl field's value.
23004func (s *SourceAlgorithm) SetModelDataUrl(v string) *SourceAlgorithm {
23005	s.ModelDataUrl = &v
23006	return s
23007}
23008
23009// A list of algorithms that were used to create a model package.
23010type SourceAlgorithmSpecification struct {
23011	_ struct{} `type:"structure"`
23012
23013	// A list of the algorithms that were used to create a model package.
23014	//
23015	// SourceAlgorithms is a required field
23016	SourceAlgorithms []*SourceAlgorithm `min:"1" type:"list" required:"true"`
23017}
23018
23019// String returns the string representation
23020func (s SourceAlgorithmSpecification) String() string {
23021	return awsutil.Prettify(s)
23022}
23023
23024// GoString returns the string representation
23025func (s SourceAlgorithmSpecification) GoString() string {
23026	return s.String()
23027}
23028
23029// Validate inspects the fields of the type to determine if they are valid.
23030func (s *SourceAlgorithmSpecification) Validate() error {
23031	invalidParams := request.ErrInvalidParams{Context: "SourceAlgorithmSpecification"}
23032	if s.SourceAlgorithms == nil {
23033		invalidParams.Add(request.NewErrParamRequired("SourceAlgorithms"))
23034	}
23035	if s.SourceAlgorithms != nil && len(s.SourceAlgorithms) < 1 {
23036		invalidParams.Add(request.NewErrParamMinLen("SourceAlgorithms", 1))
23037	}
23038	if s.SourceAlgorithms != nil {
23039		for i, v := range s.SourceAlgorithms {
23040			if v == nil {
23041				continue
23042			}
23043			if err := v.Validate(); err != nil {
23044				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SourceAlgorithms", i), err.(request.ErrInvalidParams))
23045			}
23046		}
23047	}
23048
23049	if invalidParams.Len() > 0 {
23050		return invalidParams
23051	}
23052	return nil
23053}
23054
23055// SetSourceAlgorithms sets the SourceAlgorithms field's value.
23056func (s *SourceAlgorithmSpecification) SetSourceAlgorithms(v []*SourceAlgorithm) *SourceAlgorithmSpecification {
23057	s.SourceAlgorithms = v
23058	return s
23059}
23060
23061type StartNotebookInstanceInput struct {
23062	_ struct{} `type:"structure"`
23063
23064	// The name of the notebook instance to start.
23065	//
23066	// NotebookInstanceName is a required field
23067	NotebookInstanceName *string `type:"string" required:"true"`
23068}
23069
23070// String returns the string representation
23071func (s StartNotebookInstanceInput) String() string {
23072	return awsutil.Prettify(s)
23073}
23074
23075// GoString returns the string representation
23076func (s StartNotebookInstanceInput) GoString() string {
23077	return s.String()
23078}
23079
23080// Validate inspects the fields of the type to determine if they are valid.
23081func (s *StartNotebookInstanceInput) Validate() error {
23082	invalidParams := request.ErrInvalidParams{Context: "StartNotebookInstanceInput"}
23083	if s.NotebookInstanceName == nil {
23084		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
23085	}
23086
23087	if invalidParams.Len() > 0 {
23088		return invalidParams
23089	}
23090	return nil
23091}
23092
23093// SetNotebookInstanceName sets the NotebookInstanceName field's value.
23094func (s *StartNotebookInstanceInput) SetNotebookInstanceName(v string) *StartNotebookInstanceInput {
23095	s.NotebookInstanceName = &v
23096	return s
23097}
23098
23099type StartNotebookInstanceOutput struct {
23100	_ struct{} `type:"structure"`
23101}
23102
23103// String returns the string representation
23104func (s StartNotebookInstanceOutput) String() string {
23105	return awsutil.Prettify(s)
23106}
23107
23108// GoString returns the string representation
23109func (s StartNotebookInstanceOutput) GoString() string {
23110	return s.String()
23111}
23112
23113type StopCompilationJobInput struct {
23114	_ struct{} `type:"structure"`
23115
23116	// The name of the model compilation job to stop.
23117	//
23118	// CompilationJobName is a required field
23119	CompilationJobName *string `min:"1" type:"string" required:"true"`
23120}
23121
23122// String returns the string representation
23123func (s StopCompilationJobInput) String() string {
23124	return awsutil.Prettify(s)
23125}
23126
23127// GoString returns the string representation
23128func (s StopCompilationJobInput) GoString() string {
23129	return s.String()
23130}
23131
23132// Validate inspects the fields of the type to determine if they are valid.
23133func (s *StopCompilationJobInput) Validate() error {
23134	invalidParams := request.ErrInvalidParams{Context: "StopCompilationJobInput"}
23135	if s.CompilationJobName == nil {
23136		invalidParams.Add(request.NewErrParamRequired("CompilationJobName"))
23137	}
23138	if s.CompilationJobName != nil && len(*s.CompilationJobName) < 1 {
23139		invalidParams.Add(request.NewErrParamMinLen("CompilationJobName", 1))
23140	}
23141
23142	if invalidParams.Len() > 0 {
23143		return invalidParams
23144	}
23145	return nil
23146}
23147
23148// SetCompilationJobName sets the CompilationJobName field's value.
23149func (s *StopCompilationJobInput) SetCompilationJobName(v string) *StopCompilationJobInput {
23150	s.CompilationJobName = &v
23151	return s
23152}
23153
23154type StopCompilationJobOutput struct {
23155	_ struct{} `type:"structure"`
23156}
23157
23158// String returns the string representation
23159func (s StopCompilationJobOutput) String() string {
23160	return awsutil.Prettify(s)
23161}
23162
23163// GoString returns the string representation
23164func (s StopCompilationJobOutput) GoString() string {
23165	return s.String()
23166}
23167
23168type StopHyperParameterTuningJobInput struct {
23169	_ struct{} `type:"structure"`
23170
23171	// The name of the tuning job to stop.
23172	//
23173	// HyperParameterTuningJobName is a required field
23174	HyperParameterTuningJobName *string `min:"1" type:"string" required:"true"`
23175}
23176
23177// String returns the string representation
23178func (s StopHyperParameterTuningJobInput) String() string {
23179	return awsutil.Prettify(s)
23180}
23181
23182// GoString returns the string representation
23183func (s StopHyperParameterTuningJobInput) GoString() string {
23184	return s.String()
23185}
23186
23187// Validate inspects the fields of the type to determine if they are valid.
23188func (s *StopHyperParameterTuningJobInput) Validate() error {
23189	invalidParams := request.ErrInvalidParams{Context: "StopHyperParameterTuningJobInput"}
23190	if s.HyperParameterTuningJobName == nil {
23191		invalidParams.Add(request.NewErrParamRequired("HyperParameterTuningJobName"))
23192	}
23193	if s.HyperParameterTuningJobName != nil && len(*s.HyperParameterTuningJobName) < 1 {
23194		invalidParams.Add(request.NewErrParamMinLen("HyperParameterTuningJobName", 1))
23195	}
23196
23197	if invalidParams.Len() > 0 {
23198		return invalidParams
23199	}
23200	return nil
23201}
23202
23203// SetHyperParameterTuningJobName sets the HyperParameterTuningJobName field's value.
23204func (s *StopHyperParameterTuningJobInput) SetHyperParameterTuningJobName(v string) *StopHyperParameterTuningJobInput {
23205	s.HyperParameterTuningJobName = &v
23206	return s
23207}
23208
23209type StopHyperParameterTuningJobOutput struct {
23210	_ struct{} `type:"structure"`
23211}
23212
23213// String returns the string representation
23214func (s StopHyperParameterTuningJobOutput) String() string {
23215	return awsutil.Prettify(s)
23216}
23217
23218// GoString returns the string representation
23219func (s StopHyperParameterTuningJobOutput) GoString() string {
23220	return s.String()
23221}
23222
23223type StopLabelingJobInput struct {
23224	_ struct{} `type:"structure"`
23225
23226	// The name of the labeling job to stop.
23227	//
23228	// LabelingJobName is a required field
23229	LabelingJobName *string `min:"1" type:"string" required:"true"`
23230}
23231
23232// String returns the string representation
23233func (s StopLabelingJobInput) String() string {
23234	return awsutil.Prettify(s)
23235}
23236
23237// GoString returns the string representation
23238func (s StopLabelingJobInput) GoString() string {
23239	return s.String()
23240}
23241
23242// Validate inspects the fields of the type to determine if they are valid.
23243func (s *StopLabelingJobInput) Validate() error {
23244	invalidParams := request.ErrInvalidParams{Context: "StopLabelingJobInput"}
23245	if s.LabelingJobName == nil {
23246		invalidParams.Add(request.NewErrParamRequired("LabelingJobName"))
23247	}
23248	if s.LabelingJobName != nil && len(*s.LabelingJobName) < 1 {
23249		invalidParams.Add(request.NewErrParamMinLen("LabelingJobName", 1))
23250	}
23251
23252	if invalidParams.Len() > 0 {
23253		return invalidParams
23254	}
23255	return nil
23256}
23257
23258// SetLabelingJobName sets the LabelingJobName field's value.
23259func (s *StopLabelingJobInput) SetLabelingJobName(v string) *StopLabelingJobInput {
23260	s.LabelingJobName = &v
23261	return s
23262}
23263
23264type StopLabelingJobOutput struct {
23265	_ struct{} `type:"structure"`
23266}
23267
23268// String returns the string representation
23269func (s StopLabelingJobOutput) String() string {
23270	return awsutil.Prettify(s)
23271}
23272
23273// GoString returns the string representation
23274func (s StopLabelingJobOutput) GoString() string {
23275	return s.String()
23276}
23277
23278type StopNotebookInstanceInput struct {
23279	_ struct{} `type:"structure"`
23280
23281	// The name of the notebook instance to terminate.
23282	//
23283	// NotebookInstanceName is a required field
23284	NotebookInstanceName *string `type:"string" required:"true"`
23285}
23286
23287// String returns the string representation
23288func (s StopNotebookInstanceInput) String() string {
23289	return awsutil.Prettify(s)
23290}
23291
23292// GoString returns the string representation
23293func (s StopNotebookInstanceInput) GoString() string {
23294	return s.String()
23295}
23296
23297// Validate inspects the fields of the type to determine if they are valid.
23298func (s *StopNotebookInstanceInput) Validate() error {
23299	invalidParams := request.ErrInvalidParams{Context: "StopNotebookInstanceInput"}
23300	if s.NotebookInstanceName == nil {
23301		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
23302	}
23303
23304	if invalidParams.Len() > 0 {
23305		return invalidParams
23306	}
23307	return nil
23308}
23309
23310// SetNotebookInstanceName sets the NotebookInstanceName field's value.
23311func (s *StopNotebookInstanceInput) SetNotebookInstanceName(v string) *StopNotebookInstanceInput {
23312	s.NotebookInstanceName = &v
23313	return s
23314}
23315
23316type StopNotebookInstanceOutput struct {
23317	_ struct{} `type:"structure"`
23318}
23319
23320// String returns the string representation
23321func (s StopNotebookInstanceOutput) String() string {
23322	return awsutil.Prettify(s)
23323}
23324
23325// GoString returns the string representation
23326func (s StopNotebookInstanceOutput) GoString() string {
23327	return s.String()
23328}
23329
23330type StopTrainingJobInput struct {
23331	_ struct{} `type:"structure"`
23332
23333	// The name of the training job to stop.
23334	//
23335	// TrainingJobName is a required field
23336	TrainingJobName *string `min:"1" type:"string" required:"true"`
23337}
23338
23339// String returns the string representation
23340func (s StopTrainingJobInput) String() string {
23341	return awsutil.Prettify(s)
23342}
23343
23344// GoString returns the string representation
23345func (s StopTrainingJobInput) GoString() string {
23346	return s.String()
23347}
23348
23349// Validate inspects the fields of the type to determine if they are valid.
23350func (s *StopTrainingJobInput) Validate() error {
23351	invalidParams := request.ErrInvalidParams{Context: "StopTrainingJobInput"}
23352	if s.TrainingJobName == nil {
23353		invalidParams.Add(request.NewErrParamRequired("TrainingJobName"))
23354	}
23355	if s.TrainingJobName != nil && len(*s.TrainingJobName) < 1 {
23356		invalidParams.Add(request.NewErrParamMinLen("TrainingJobName", 1))
23357	}
23358
23359	if invalidParams.Len() > 0 {
23360		return invalidParams
23361	}
23362	return nil
23363}
23364
23365// SetTrainingJobName sets the TrainingJobName field's value.
23366func (s *StopTrainingJobInput) SetTrainingJobName(v string) *StopTrainingJobInput {
23367	s.TrainingJobName = &v
23368	return s
23369}
23370
23371type StopTrainingJobOutput struct {
23372	_ struct{} `type:"structure"`
23373}
23374
23375// String returns the string representation
23376func (s StopTrainingJobOutput) String() string {
23377	return awsutil.Prettify(s)
23378}
23379
23380// GoString returns the string representation
23381func (s StopTrainingJobOutput) GoString() string {
23382	return s.String()
23383}
23384
23385type StopTransformJobInput struct {
23386	_ struct{} `type:"structure"`
23387
23388	// The name of the transform job to stop.
23389	//
23390	// TransformJobName is a required field
23391	TransformJobName *string `min:"1" type:"string" required:"true"`
23392}
23393
23394// String returns the string representation
23395func (s StopTransformJobInput) String() string {
23396	return awsutil.Prettify(s)
23397}
23398
23399// GoString returns the string representation
23400func (s StopTransformJobInput) GoString() string {
23401	return s.String()
23402}
23403
23404// Validate inspects the fields of the type to determine if they are valid.
23405func (s *StopTransformJobInput) Validate() error {
23406	invalidParams := request.ErrInvalidParams{Context: "StopTransformJobInput"}
23407	if s.TransformJobName == nil {
23408		invalidParams.Add(request.NewErrParamRequired("TransformJobName"))
23409	}
23410	if s.TransformJobName != nil && len(*s.TransformJobName) < 1 {
23411		invalidParams.Add(request.NewErrParamMinLen("TransformJobName", 1))
23412	}
23413
23414	if invalidParams.Len() > 0 {
23415		return invalidParams
23416	}
23417	return nil
23418}
23419
23420// SetTransformJobName sets the TransformJobName field's value.
23421func (s *StopTransformJobInput) SetTransformJobName(v string) *StopTransformJobInput {
23422	s.TransformJobName = &v
23423	return s
23424}
23425
23426type StopTransformJobOutput struct {
23427	_ struct{} `type:"structure"`
23428}
23429
23430// String returns the string representation
23431func (s StopTransformJobOutput) String() string {
23432	return awsutil.Prettify(s)
23433}
23434
23435// GoString returns the string representation
23436func (s StopTransformJobOutput) GoString() string {
23437	return s.String()
23438}
23439
23440// Specifies a limit to how long a model training or compilation job can run.
23441// It also specifies how long you are willing to wait for a managed spot training
23442// job to complete. When the job reaches the time limit, Amazon SageMaker ends
23443// the training or compilation job. Use this API to cap model training costs.
23444//
23445// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
23446// delays job termination for 120 seconds. Algorithms can use this 120-second
23447// window to save the model artifacts, so the results of training are not lost.
23448//
23449// The training algorithms provided by Amazon SageMaker automatically save the
23450// intermediate results of a model training job when possible. This attempt
23451// to save artifacts is only a best effort case as model might not be in a state
23452// from which it can be saved. For example, if training has just started, the
23453// model might not be ready to save. When saved, this intermediate data is a
23454// valid model artifact. You can use it to create a model with CreateModel.
23455//
23456// The Neural Topic Model (NTM) currently does not support saving intermediate
23457// model artifacts. When training NTMs, make sure that the maximum runtime is
23458// sufficient for the training job to complete.
23459type StoppingCondition struct {
23460	_ struct{} `type:"structure"`
23461
23462	// The maximum length of time, in seconds, that the training or compilation
23463	// job can run. If job does not complete during this time, Amazon SageMaker
23464	// ends the job. If value is not specified, default value is 1 day. The maximum
23465	// value is 28 days.
23466	MaxRuntimeInSeconds *int64 `min:"1" type:"integer"`
23467
23468	// The maximum length of time, in seconds, how long you are willing to wait
23469	// for a managed spot training job to complete. It is the amount of time spent
23470	// waiting for Spot capacity plus the amount of time the training job runs.
23471	// It must be equal to or greater than MaxRuntimeInSeconds.
23472	MaxWaitTimeInSeconds *int64 `min:"1" type:"integer"`
23473}
23474
23475// String returns the string representation
23476func (s StoppingCondition) String() string {
23477	return awsutil.Prettify(s)
23478}
23479
23480// GoString returns the string representation
23481func (s StoppingCondition) GoString() string {
23482	return s.String()
23483}
23484
23485// Validate inspects the fields of the type to determine if they are valid.
23486func (s *StoppingCondition) Validate() error {
23487	invalidParams := request.ErrInvalidParams{Context: "StoppingCondition"}
23488	if s.MaxRuntimeInSeconds != nil && *s.MaxRuntimeInSeconds < 1 {
23489		invalidParams.Add(request.NewErrParamMinValue("MaxRuntimeInSeconds", 1))
23490	}
23491	if s.MaxWaitTimeInSeconds != nil && *s.MaxWaitTimeInSeconds < 1 {
23492		invalidParams.Add(request.NewErrParamMinValue("MaxWaitTimeInSeconds", 1))
23493	}
23494
23495	if invalidParams.Len() > 0 {
23496		return invalidParams
23497	}
23498	return nil
23499}
23500
23501// SetMaxRuntimeInSeconds sets the MaxRuntimeInSeconds field's value.
23502func (s *StoppingCondition) SetMaxRuntimeInSeconds(v int64) *StoppingCondition {
23503	s.MaxRuntimeInSeconds = &v
23504	return s
23505}
23506
23507// SetMaxWaitTimeInSeconds sets the MaxWaitTimeInSeconds field's value.
23508func (s *StoppingCondition) SetMaxWaitTimeInSeconds(v int64) *StoppingCondition {
23509	s.MaxWaitTimeInSeconds = &v
23510	return s
23511}
23512
23513// Describes a work team of a vendor that does the a labelling job.
23514type SubscribedWorkteam struct {
23515	_ struct{} `type:"structure"`
23516
23517	ListingId *string `type:"string"`
23518
23519	// The description of the vendor from the Amazon Marketplace.
23520	MarketplaceDescription *string `min:"1" type:"string"`
23521
23522	// The title of the service provided by the vendor in the Amazon Marketplace.
23523	MarketplaceTitle *string `min:"1" type:"string"`
23524
23525	// The name of the vendor in the Amazon Marketplace.
23526	SellerName *string `type:"string"`
23527
23528	// The Amazon Resource Name (ARN) of the vendor that you have subscribed.
23529	//
23530	// WorkteamArn is a required field
23531	WorkteamArn *string `type:"string" required:"true"`
23532}
23533
23534// String returns the string representation
23535func (s SubscribedWorkteam) String() string {
23536	return awsutil.Prettify(s)
23537}
23538
23539// GoString returns the string representation
23540func (s SubscribedWorkteam) GoString() string {
23541	return s.String()
23542}
23543
23544// SetListingId sets the ListingId field's value.
23545func (s *SubscribedWorkteam) SetListingId(v string) *SubscribedWorkteam {
23546	s.ListingId = &v
23547	return s
23548}
23549
23550// SetMarketplaceDescription sets the MarketplaceDescription field's value.
23551func (s *SubscribedWorkteam) SetMarketplaceDescription(v string) *SubscribedWorkteam {
23552	s.MarketplaceDescription = &v
23553	return s
23554}
23555
23556// SetMarketplaceTitle sets the MarketplaceTitle field's value.
23557func (s *SubscribedWorkteam) SetMarketplaceTitle(v string) *SubscribedWorkteam {
23558	s.MarketplaceTitle = &v
23559	return s
23560}
23561
23562// SetSellerName sets the SellerName field's value.
23563func (s *SubscribedWorkteam) SetSellerName(v string) *SubscribedWorkteam {
23564	s.SellerName = &v
23565	return s
23566}
23567
23568// SetWorkteamArn sets the WorkteamArn field's value.
23569func (s *SubscribedWorkteam) SetWorkteamArn(v string) *SubscribedWorkteam {
23570	s.WorkteamArn = &v
23571	return s
23572}
23573
23574// Limits the property names that are included in the response.
23575type SuggestionQuery struct {
23576	_ struct{} `type:"structure"`
23577
23578	// A type of SuggestionQuery. Defines a property name hint. Only property names
23579	// that match the specified hint are included in the response.
23580	PropertyNameQuery *PropertyNameQuery `type:"structure"`
23581}
23582
23583// String returns the string representation
23584func (s SuggestionQuery) String() string {
23585	return awsutil.Prettify(s)
23586}
23587
23588// GoString returns the string representation
23589func (s SuggestionQuery) GoString() string {
23590	return s.String()
23591}
23592
23593// Validate inspects the fields of the type to determine if they are valid.
23594func (s *SuggestionQuery) Validate() error {
23595	invalidParams := request.ErrInvalidParams{Context: "SuggestionQuery"}
23596	if s.PropertyNameQuery != nil {
23597		if err := s.PropertyNameQuery.Validate(); err != nil {
23598			invalidParams.AddNested("PropertyNameQuery", err.(request.ErrInvalidParams))
23599		}
23600	}
23601
23602	if invalidParams.Len() > 0 {
23603		return invalidParams
23604	}
23605	return nil
23606}
23607
23608// SetPropertyNameQuery sets the PropertyNameQuery field's value.
23609func (s *SuggestionQuery) SetPropertyNameQuery(v *PropertyNameQuery) *SuggestionQuery {
23610	s.PropertyNameQuery = v
23611	return s
23612}
23613
23614// Describes a tag.
23615type Tag struct {
23616	_ struct{} `type:"structure"`
23617
23618	// The tag key.
23619	//
23620	// Key is a required field
23621	Key *string `min:"1" type:"string" required:"true"`
23622
23623	// The tag value.
23624	//
23625	// Value is a required field
23626	Value *string `type:"string" required:"true"`
23627}
23628
23629// String returns the string representation
23630func (s Tag) String() string {
23631	return awsutil.Prettify(s)
23632}
23633
23634// GoString returns the string representation
23635func (s Tag) GoString() string {
23636	return s.String()
23637}
23638
23639// Validate inspects the fields of the type to determine if they are valid.
23640func (s *Tag) Validate() error {
23641	invalidParams := request.ErrInvalidParams{Context: "Tag"}
23642	if s.Key == nil {
23643		invalidParams.Add(request.NewErrParamRequired("Key"))
23644	}
23645	if s.Key != nil && len(*s.Key) < 1 {
23646		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
23647	}
23648	if s.Value == nil {
23649		invalidParams.Add(request.NewErrParamRequired("Value"))
23650	}
23651
23652	if invalidParams.Len() > 0 {
23653		return invalidParams
23654	}
23655	return nil
23656}
23657
23658// SetKey sets the Key field's value.
23659func (s *Tag) SetKey(v string) *Tag {
23660	s.Key = &v
23661	return s
23662}
23663
23664// SetValue sets the Value field's value.
23665func (s *Tag) SetValue(v string) *Tag {
23666	s.Value = &v
23667	return s
23668}
23669
23670// Contains information about a training job.
23671type TrainingJob struct {
23672	_ struct{} `type:"structure"`
23673
23674	// Information about the algorithm used for training, and algorithm metadata.
23675	AlgorithmSpecification *AlgorithmSpecification `type:"structure"`
23676
23677	// A timestamp that indicates when the training job was created.
23678	CreationTime *time.Time `type:"timestamp"`
23679
23680	// To encrypt all communications between ML compute instances in distributed
23681	// training, choose True. Encryption provides greater security for distributed
23682	// training, but training might take longer. How long it takes depends on the
23683	// amount of communication between compute instances, especially if you use
23684	// a deep learning algorithm in distributed training.
23685	EnableInterContainerTrafficEncryption *bool `type:"boolean"`
23686
23687	// If the TrainingJob was created with network isolation, the value is set to
23688	// true. If network isolation is enabled, nodes can't communicate beyond the
23689	// VPC they run in.
23690	EnableNetworkIsolation *bool `type:"boolean"`
23691
23692	// If the training job failed, the reason it failed.
23693	FailureReason *string `type:"string"`
23694
23695	// A list of final metric values that are set when the training job completes.
23696	// Used only if the training job was configured to use metrics.
23697	FinalMetricDataList []*MetricData `type:"list"`
23698
23699	// Algorithm-specific parameters.
23700	HyperParameters map[string]*string `type:"map"`
23701
23702	// An array of Channel objects that describes each data input channel.
23703	InputDataConfig []*Channel `min:"1" type:"list"`
23704
23705	// The Amazon Resource Name (ARN) of the labeling job.
23706	LabelingJobArn *string `type:"string"`
23707
23708	// A timestamp that indicates when the status of the training job was last modified.
23709	LastModifiedTime *time.Time `type:"timestamp"`
23710
23711	// Information about the Amazon S3 location that is configured for storing model
23712	// artifacts.
23713	ModelArtifacts *ModelArtifacts `type:"structure"`
23714
23715	// The S3 path where model artifacts that you configured when creating the job
23716	// are stored. Amazon SageMaker creates subfolders for model artifacts.
23717	OutputDataConfig *OutputDataConfig `type:"structure"`
23718
23719	// Resources, including ML compute instances and ML storage volumes, that are
23720	// configured for model training.
23721	ResourceConfig *ResourceConfig `type:"structure"`
23722
23723	// The AWS Identity and Access Management (IAM) role configured for the training
23724	// job.
23725	RoleArn *string `min:"20" type:"string"`
23726
23727	// Provides detailed information about the state of the training job. For detailed
23728	// information about the secondary status of the training job, see StatusMessage
23729	// under SecondaryStatusTransition.
23730	//
23731	// Amazon SageMaker provides primary statuses and secondary statuses that apply
23732	// to each of them:
23733	//
23734	// InProgress
23735	//
23736	//    * Starting - Starting the training job.
23737	//
23738	//    * Downloading - An optional stage for algorithms that support File training
23739	//    input mode. It indicates that data is being downloaded to the ML storage
23740	//    volumes.
23741	//
23742	//    * Training - Training is in progress.
23743	//
23744	//    * Uploading - Training is complete and the model artifacts are being uploaded
23745	//    to the S3 location.
23746	//
23747	// Completed
23748	//
23749	//    * Completed - The training job has completed.
23750	//
23751	// Failed
23752	//
23753	//    * Failed - The training job has failed. The reason for the failure is
23754	//    returned in the FailureReason field of DescribeTrainingJobResponse.
23755	//
23756	// Stopped
23757	//
23758	//    * MaxRuntimeExceeded - The job stopped because it exceeded the maximum
23759	//    allowed runtime.
23760	//
23761	//    * Stopped - The training job has stopped.
23762	//
23763	// Stopping
23764	//
23765	//    * Stopping - Stopping the training job.
23766	//
23767	// Valid values for SecondaryStatus are subject to change.
23768	//
23769	// We no longer support the following secondary statuses:
23770	//
23771	//    * LaunchingMLInstances
23772	//
23773	//    * PreparingTrainingStack
23774	//
23775	//    * DownloadingTrainingImage
23776	SecondaryStatus *string `type:"string" enum:"SecondaryStatus"`
23777
23778	// A history of all of the secondary statuses that the training job has transitioned
23779	// through.
23780	SecondaryStatusTransitions []*SecondaryStatusTransition `type:"list"`
23781
23782	// Specifies a limit to how long a model training job can run. When the job
23783	// reaches the time limit, Amazon SageMaker ends the training job. Use this
23784	// API to cap model training costs.
23785	//
23786	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
23787	// delays job termination for 120 seconds. Algorithms can use this 120-second
23788	// window to save the model artifacts, so the results of training are not lost.
23789	StoppingCondition *StoppingCondition `type:"structure"`
23790
23791	// An array of key-value pairs. For more information, see Using Cost Allocation
23792	// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what)
23793	// in the AWS Billing and Cost Management User Guide.
23794	Tags []*Tag `type:"list"`
23795
23796	// Indicates the time when the training job ends on training instances. You
23797	// are billed for the time interval between the value of TrainingStartTime and
23798	// this time. For successful jobs and stopped jobs, this is the time after model
23799	// artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker
23800	// detects a job failure.
23801	TrainingEndTime *time.Time `type:"timestamp"`
23802
23803	// The Amazon Resource Name (ARN) of the training job.
23804	TrainingJobArn *string `type:"string"`
23805
23806	// The name of the training job.
23807	TrainingJobName *string `min:"1" type:"string"`
23808
23809	// The status of the training job.
23810	//
23811	// Training job statuses are:
23812	//
23813	//    * InProgress - The training is in progress.
23814	//
23815	//    * Completed - The training job has completed.
23816	//
23817	//    * Failed - The training job has failed. To see the reason for the failure,
23818	//    see the FailureReason field in the response to a DescribeTrainingJobResponse
23819	//    call.
23820	//
23821	//    * Stopping - The training job is stopping.
23822	//
23823	//    * Stopped - The training job has stopped.
23824	//
23825	// For more detailed information, see SecondaryStatus.
23826	TrainingJobStatus *string `type:"string" enum:"TrainingJobStatus"`
23827
23828	// Indicates the time when the training job starts on training instances. You
23829	// are billed for the time interval between this time and the value of TrainingEndTime.
23830	// The start time in CloudWatch Logs might be later than this time. The difference
23831	// is due to the time it takes to download the training data and to the size
23832	// of the training container.
23833	TrainingStartTime *time.Time `type:"timestamp"`
23834
23835	// The Amazon Resource Name (ARN) of the associated hyperparameter tuning job
23836	// if the training job was launched by a hyperparameter tuning job.
23837	TuningJobArn *string `type:"string"`
23838
23839	// A VpcConfig object that specifies the VPC that this training job has access
23840	// to. For more information, see Protect Training Jobs by Using an Amazon Virtual
23841	// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
23842	VpcConfig *VpcConfig `type:"structure"`
23843}
23844
23845// String returns the string representation
23846func (s TrainingJob) String() string {
23847	return awsutil.Prettify(s)
23848}
23849
23850// GoString returns the string representation
23851func (s TrainingJob) GoString() string {
23852	return s.String()
23853}
23854
23855// SetAlgorithmSpecification sets the AlgorithmSpecification field's value.
23856func (s *TrainingJob) SetAlgorithmSpecification(v *AlgorithmSpecification) *TrainingJob {
23857	s.AlgorithmSpecification = v
23858	return s
23859}
23860
23861// SetCreationTime sets the CreationTime field's value.
23862func (s *TrainingJob) SetCreationTime(v time.Time) *TrainingJob {
23863	s.CreationTime = &v
23864	return s
23865}
23866
23867// SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.
23868func (s *TrainingJob) SetEnableInterContainerTrafficEncryption(v bool) *TrainingJob {
23869	s.EnableInterContainerTrafficEncryption = &v
23870	return s
23871}
23872
23873// SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.
23874func (s *TrainingJob) SetEnableNetworkIsolation(v bool) *TrainingJob {
23875	s.EnableNetworkIsolation = &v
23876	return s
23877}
23878
23879// SetFailureReason sets the FailureReason field's value.
23880func (s *TrainingJob) SetFailureReason(v string) *TrainingJob {
23881	s.FailureReason = &v
23882	return s
23883}
23884
23885// SetFinalMetricDataList sets the FinalMetricDataList field's value.
23886func (s *TrainingJob) SetFinalMetricDataList(v []*MetricData) *TrainingJob {
23887	s.FinalMetricDataList = v
23888	return s
23889}
23890
23891// SetHyperParameters sets the HyperParameters field's value.
23892func (s *TrainingJob) SetHyperParameters(v map[string]*string) *TrainingJob {
23893	s.HyperParameters = v
23894	return s
23895}
23896
23897// SetInputDataConfig sets the InputDataConfig field's value.
23898func (s *TrainingJob) SetInputDataConfig(v []*Channel) *TrainingJob {
23899	s.InputDataConfig = v
23900	return s
23901}
23902
23903// SetLabelingJobArn sets the LabelingJobArn field's value.
23904func (s *TrainingJob) SetLabelingJobArn(v string) *TrainingJob {
23905	s.LabelingJobArn = &v
23906	return s
23907}
23908
23909// SetLastModifiedTime sets the LastModifiedTime field's value.
23910func (s *TrainingJob) SetLastModifiedTime(v time.Time) *TrainingJob {
23911	s.LastModifiedTime = &v
23912	return s
23913}
23914
23915// SetModelArtifacts sets the ModelArtifacts field's value.
23916func (s *TrainingJob) SetModelArtifacts(v *ModelArtifacts) *TrainingJob {
23917	s.ModelArtifacts = v
23918	return s
23919}
23920
23921// SetOutputDataConfig sets the OutputDataConfig field's value.
23922func (s *TrainingJob) SetOutputDataConfig(v *OutputDataConfig) *TrainingJob {
23923	s.OutputDataConfig = v
23924	return s
23925}
23926
23927// SetResourceConfig sets the ResourceConfig field's value.
23928func (s *TrainingJob) SetResourceConfig(v *ResourceConfig) *TrainingJob {
23929	s.ResourceConfig = v
23930	return s
23931}
23932
23933// SetRoleArn sets the RoleArn field's value.
23934func (s *TrainingJob) SetRoleArn(v string) *TrainingJob {
23935	s.RoleArn = &v
23936	return s
23937}
23938
23939// SetSecondaryStatus sets the SecondaryStatus field's value.
23940func (s *TrainingJob) SetSecondaryStatus(v string) *TrainingJob {
23941	s.SecondaryStatus = &v
23942	return s
23943}
23944
23945// SetSecondaryStatusTransitions sets the SecondaryStatusTransitions field's value.
23946func (s *TrainingJob) SetSecondaryStatusTransitions(v []*SecondaryStatusTransition) *TrainingJob {
23947	s.SecondaryStatusTransitions = v
23948	return s
23949}
23950
23951// SetStoppingCondition sets the StoppingCondition field's value.
23952func (s *TrainingJob) SetStoppingCondition(v *StoppingCondition) *TrainingJob {
23953	s.StoppingCondition = v
23954	return s
23955}
23956
23957// SetTags sets the Tags field's value.
23958func (s *TrainingJob) SetTags(v []*Tag) *TrainingJob {
23959	s.Tags = v
23960	return s
23961}
23962
23963// SetTrainingEndTime sets the TrainingEndTime field's value.
23964func (s *TrainingJob) SetTrainingEndTime(v time.Time) *TrainingJob {
23965	s.TrainingEndTime = &v
23966	return s
23967}
23968
23969// SetTrainingJobArn sets the TrainingJobArn field's value.
23970func (s *TrainingJob) SetTrainingJobArn(v string) *TrainingJob {
23971	s.TrainingJobArn = &v
23972	return s
23973}
23974
23975// SetTrainingJobName sets the TrainingJobName field's value.
23976func (s *TrainingJob) SetTrainingJobName(v string) *TrainingJob {
23977	s.TrainingJobName = &v
23978	return s
23979}
23980
23981// SetTrainingJobStatus sets the TrainingJobStatus field's value.
23982func (s *TrainingJob) SetTrainingJobStatus(v string) *TrainingJob {
23983	s.TrainingJobStatus = &v
23984	return s
23985}
23986
23987// SetTrainingStartTime sets the TrainingStartTime field's value.
23988func (s *TrainingJob) SetTrainingStartTime(v time.Time) *TrainingJob {
23989	s.TrainingStartTime = &v
23990	return s
23991}
23992
23993// SetTuningJobArn sets the TuningJobArn field's value.
23994func (s *TrainingJob) SetTuningJobArn(v string) *TrainingJob {
23995	s.TuningJobArn = &v
23996	return s
23997}
23998
23999// SetVpcConfig sets the VpcConfig field's value.
24000func (s *TrainingJob) SetVpcConfig(v *VpcConfig) *TrainingJob {
24001	s.VpcConfig = v
24002	return s
24003}
24004
24005// Defines the input needed to run a training job using the algorithm.
24006type TrainingJobDefinition struct {
24007	_ struct{} `type:"structure"`
24008
24009	// The hyperparameters used for the training job.
24010	HyperParameters map[string]*string `type:"map"`
24011
24012	// An array of Channel objects, each of which specifies an input source.
24013	//
24014	// InputDataConfig is a required field
24015	InputDataConfig []*Channel `min:"1" type:"list" required:"true"`
24016
24017	// the path to the S3 bucket where you want to store model artifacts. Amazon
24018	// SageMaker creates subfolders for the artifacts.
24019	//
24020	// OutputDataConfig is a required field
24021	OutputDataConfig *OutputDataConfig `type:"structure" required:"true"`
24022
24023	// The resources, including the ML compute instances and ML storage volumes,
24024	// to use for model training.
24025	//
24026	// ResourceConfig is a required field
24027	ResourceConfig *ResourceConfig `type:"structure" required:"true"`
24028
24029	// Specifies a limit to how long a model training job can run. When the job
24030	// reaches the time limit, Amazon SageMaker ends the training job. Use this
24031	// API to cap model training costs.
24032	//
24033	// To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which
24034	// delays job termination for 120 seconds. Algorithms can use this 120-second
24035	// window to save the model artifacts.
24036	//
24037	// StoppingCondition is a required field
24038	StoppingCondition *StoppingCondition `type:"structure" required:"true"`
24039
24040	// The input mode used by the algorithm for the training job. For the input
24041	// modes that Amazon SageMaker algorithms support, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html).
24042	//
24043	// If an algorithm supports the File input mode, Amazon SageMaker downloads
24044	// the training data from S3 to the provisioned ML storage Volume, and mounts
24045	// the directory to docker volume for training container. If an algorithm supports
24046	// the Pipe input mode, Amazon SageMaker streams data directly from S3 to the
24047	// container.
24048	//
24049	// TrainingInputMode is a required field
24050	TrainingInputMode *string `type:"string" required:"true" enum:"TrainingInputMode"`
24051}
24052
24053// String returns the string representation
24054func (s TrainingJobDefinition) String() string {
24055	return awsutil.Prettify(s)
24056}
24057
24058// GoString returns the string representation
24059func (s TrainingJobDefinition) GoString() string {
24060	return s.String()
24061}
24062
24063// Validate inspects the fields of the type to determine if they are valid.
24064func (s *TrainingJobDefinition) Validate() error {
24065	invalidParams := request.ErrInvalidParams{Context: "TrainingJobDefinition"}
24066	if s.InputDataConfig == nil {
24067		invalidParams.Add(request.NewErrParamRequired("InputDataConfig"))
24068	}
24069	if s.InputDataConfig != nil && len(s.InputDataConfig) < 1 {
24070		invalidParams.Add(request.NewErrParamMinLen("InputDataConfig", 1))
24071	}
24072	if s.OutputDataConfig == nil {
24073		invalidParams.Add(request.NewErrParamRequired("OutputDataConfig"))
24074	}
24075	if s.ResourceConfig == nil {
24076		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
24077	}
24078	if s.StoppingCondition == nil {
24079		invalidParams.Add(request.NewErrParamRequired("StoppingCondition"))
24080	}
24081	if s.TrainingInputMode == nil {
24082		invalidParams.Add(request.NewErrParamRequired("TrainingInputMode"))
24083	}
24084	if s.InputDataConfig != nil {
24085		for i, v := range s.InputDataConfig {
24086			if v == nil {
24087				continue
24088			}
24089			if err := v.Validate(); err != nil {
24090				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputDataConfig", i), err.(request.ErrInvalidParams))
24091			}
24092		}
24093	}
24094	if s.OutputDataConfig != nil {
24095		if err := s.OutputDataConfig.Validate(); err != nil {
24096			invalidParams.AddNested("OutputDataConfig", err.(request.ErrInvalidParams))
24097		}
24098	}
24099	if s.ResourceConfig != nil {
24100		if err := s.ResourceConfig.Validate(); err != nil {
24101			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
24102		}
24103	}
24104	if s.StoppingCondition != nil {
24105		if err := s.StoppingCondition.Validate(); err != nil {
24106			invalidParams.AddNested("StoppingCondition", err.(request.ErrInvalidParams))
24107		}
24108	}
24109
24110	if invalidParams.Len() > 0 {
24111		return invalidParams
24112	}
24113	return nil
24114}
24115
24116// SetHyperParameters sets the HyperParameters field's value.
24117func (s *TrainingJobDefinition) SetHyperParameters(v map[string]*string) *TrainingJobDefinition {
24118	s.HyperParameters = v
24119	return s
24120}
24121
24122// SetInputDataConfig sets the InputDataConfig field's value.
24123func (s *TrainingJobDefinition) SetInputDataConfig(v []*Channel) *TrainingJobDefinition {
24124	s.InputDataConfig = v
24125	return s
24126}
24127
24128// SetOutputDataConfig sets the OutputDataConfig field's value.
24129func (s *TrainingJobDefinition) SetOutputDataConfig(v *OutputDataConfig) *TrainingJobDefinition {
24130	s.OutputDataConfig = v
24131	return s
24132}
24133
24134// SetResourceConfig sets the ResourceConfig field's value.
24135func (s *TrainingJobDefinition) SetResourceConfig(v *ResourceConfig) *TrainingJobDefinition {
24136	s.ResourceConfig = v
24137	return s
24138}
24139
24140// SetStoppingCondition sets the StoppingCondition field's value.
24141func (s *TrainingJobDefinition) SetStoppingCondition(v *StoppingCondition) *TrainingJobDefinition {
24142	s.StoppingCondition = v
24143	return s
24144}
24145
24146// SetTrainingInputMode sets the TrainingInputMode field's value.
24147func (s *TrainingJobDefinition) SetTrainingInputMode(v string) *TrainingJobDefinition {
24148	s.TrainingInputMode = &v
24149	return s
24150}
24151
24152// The numbers of training jobs launched by a hyperparameter tuning job, categorized
24153// by status.
24154type TrainingJobStatusCounters struct {
24155	_ struct{} `type:"structure"`
24156
24157	// The number of completed training jobs launched by the hyperparameter tuning
24158	// job.
24159	Completed *int64 `type:"integer"`
24160
24161	// The number of in-progress training jobs launched by a hyperparameter tuning
24162	// job.
24163	InProgress *int64 `type:"integer"`
24164
24165	// The number of training jobs that failed and can't be retried. A failed training
24166	// job can't be retried if it failed because a client error occurred.
24167	NonRetryableError *int64 `type:"integer"`
24168
24169	// The number of training jobs that failed, but can be retried. A failed training
24170	// job can be retried only if it failed because an internal service error occurred.
24171	RetryableError *int64 `type:"integer"`
24172
24173	// The number of training jobs launched by a hyperparameter tuning job that
24174	// were manually stopped.
24175	Stopped *int64 `type:"integer"`
24176}
24177
24178// String returns the string representation
24179func (s TrainingJobStatusCounters) String() string {
24180	return awsutil.Prettify(s)
24181}
24182
24183// GoString returns the string representation
24184func (s TrainingJobStatusCounters) GoString() string {
24185	return s.String()
24186}
24187
24188// SetCompleted sets the Completed field's value.
24189func (s *TrainingJobStatusCounters) SetCompleted(v int64) *TrainingJobStatusCounters {
24190	s.Completed = &v
24191	return s
24192}
24193
24194// SetInProgress sets the InProgress field's value.
24195func (s *TrainingJobStatusCounters) SetInProgress(v int64) *TrainingJobStatusCounters {
24196	s.InProgress = &v
24197	return s
24198}
24199
24200// SetNonRetryableError sets the NonRetryableError field's value.
24201func (s *TrainingJobStatusCounters) SetNonRetryableError(v int64) *TrainingJobStatusCounters {
24202	s.NonRetryableError = &v
24203	return s
24204}
24205
24206// SetRetryableError sets the RetryableError field's value.
24207func (s *TrainingJobStatusCounters) SetRetryableError(v int64) *TrainingJobStatusCounters {
24208	s.RetryableError = &v
24209	return s
24210}
24211
24212// SetStopped sets the Stopped field's value.
24213func (s *TrainingJobStatusCounters) SetStopped(v int64) *TrainingJobStatusCounters {
24214	s.Stopped = &v
24215	return s
24216}
24217
24218// Provides summary information about a training job.
24219type TrainingJobSummary struct {
24220	_ struct{} `type:"structure"`
24221
24222	// A timestamp that shows when the training job was created.
24223	//
24224	// CreationTime is a required field
24225	CreationTime *time.Time `type:"timestamp" required:"true"`
24226
24227	// Timestamp when the training job was last modified.
24228	LastModifiedTime *time.Time `type:"timestamp"`
24229
24230	// A timestamp that shows when the training job ended. This field is set only
24231	// if the training job has one of the terminal statuses (Completed, Failed,
24232	// or Stopped).
24233	TrainingEndTime *time.Time `type:"timestamp"`
24234
24235	// The Amazon Resource Name (ARN) of the training job.
24236	//
24237	// TrainingJobArn is a required field
24238	TrainingJobArn *string `type:"string" required:"true"`
24239
24240	// The name of the training job that you want a summary for.
24241	//
24242	// TrainingJobName is a required field
24243	TrainingJobName *string `min:"1" type:"string" required:"true"`
24244
24245	// The status of the training job.
24246	//
24247	// TrainingJobStatus is a required field
24248	TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"`
24249}
24250
24251// String returns the string representation
24252func (s TrainingJobSummary) String() string {
24253	return awsutil.Prettify(s)
24254}
24255
24256// GoString returns the string representation
24257func (s TrainingJobSummary) GoString() string {
24258	return s.String()
24259}
24260
24261// SetCreationTime sets the CreationTime field's value.
24262func (s *TrainingJobSummary) SetCreationTime(v time.Time) *TrainingJobSummary {
24263	s.CreationTime = &v
24264	return s
24265}
24266
24267// SetLastModifiedTime sets the LastModifiedTime field's value.
24268func (s *TrainingJobSummary) SetLastModifiedTime(v time.Time) *TrainingJobSummary {
24269	s.LastModifiedTime = &v
24270	return s
24271}
24272
24273// SetTrainingEndTime sets the TrainingEndTime field's value.
24274func (s *TrainingJobSummary) SetTrainingEndTime(v time.Time) *TrainingJobSummary {
24275	s.TrainingEndTime = &v
24276	return s
24277}
24278
24279// SetTrainingJobArn sets the TrainingJobArn field's value.
24280func (s *TrainingJobSummary) SetTrainingJobArn(v string) *TrainingJobSummary {
24281	s.TrainingJobArn = &v
24282	return s
24283}
24284
24285// SetTrainingJobName sets the TrainingJobName field's value.
24286func (s *TrainingJobSummary) SetTrainingJobName(v string) *TrainingJobSummary {
24287	s.TrainingJobName = &v
24288	return s
24289}
24290
24291// SetTrainingJobStatus sets the TrainingJobStatus field's value.
24292func (s *TrainingJobSummary) SetTrainingJobStatus(v string) *TrainingJobSummary {
24293	s.TrainingJobStatus = &v
24294	return s
24295}
24296
24297// Defines how the algorithm is used for a training job.
24298type TrainingSpecification struct {
24299	_ struct{} `type:"structure"`
24300
24301	// A list of MetricDefinition objects, which are used for parsing metrics generated
24302	// by the algorithm.
24303	MetricDefinitions []*MetricDefinition `type:"list"`
24304
24305	// A list of the HyperParameterSpecification objects, that define the supported
24306	// hyperparameters. This is required if the algorithm supports automatic model
24307	// tuning.>
24308	SupportedHyperParameters []*HyperParameterSpecification `type:"list"`
24309
24310	// A list of the instance types that this algorithm can use for training.
24311	//
24312	// SupportedTrainingInstanceTypes is a required field
24313	SupportedTrainingInstanceTypes []*string `type:"list" required:"true"`
24314
24315	// A list of the metrics that the algorithm emits that can be used as the objective
24316	// metric in a hyperparameter tuning job.
24317	SupportedTuningJobObjectiveMetrics []*HyperParameterTuningJobObjective `type:"list"`
24318
24319	// Indicates whether the algorithm supports distributed training. If set to
24320	// false, buyers can’t request more than one instance during training.
24321	SupportsDistributedTraining *bool `type:"boolean"`
24322
24323	// A list of ChannelSpecification objects, which specify the input sources to
24324	// be used by the algorithm.
24325	//
24326	// TrainingChannels is a required field
24327	TrainingChannels []*ChannelSpecification `min:"1" type:"list" required:"true"`
24328
24329	// The Amazon ECR registry path of the Docker image that contains the training
24330	// algorithm.
24331	//
24332	// TrainingImage is a required field
24333	TrainingImage *string `type:"string" required:"true"`
24334
24335	// An MD5 hash of the training algorithm that identifies the Docker image used
24336	// for training.
24337	TrainingImageDigest *string `type:"string"`
24338}
24339
24340// String returns the string representation
24341func (s TrainingSpecification) String() string {
24342	return awsutil.Prettify(s)
24343}
24344
24345// GoString returns the string representation
24346func (s TrainingSpecification) GoString() string {
24347	return s.String()
24348}
24349
24350// Validate inspects the fields of the type to determine if they are valid.
24351func (s *TrainingSpecification) Validate() error {
24352	invalidParams := request.ErrInvalidParams{Context: "TrainingSpecification"}
24353	if s.SupportedTrainingInstanceTypes == nil {
24354		invalidParams.Add(request.NewErrParamRequired("SupportedTrainingInstanceTypes"))
24355	}
24356	if s.TrainingChannels == nil {
24357		invalidParams.Add(request.NewErrParamRequired("TrainingChannels"))
24358	}
24359	if s.TrainingChannels != nil && len(s.TrainingChannels) < 1 {
24360		invalidParams.Add(request.NewErrParamMinLen("TrainingChannels", 1))
24361	}
24362	if s.TrainingImage == nil {
24363		invalidParams.Add(request.NewErrParamRequired("TrainingImage"))
24364	}
24365	if s.MetricDefinitions != nil {
24366		for i, v := range s.MetricDefinitions {
24367			if v == nil {
24368				continue
24369			}
24370			if err := v.Validate(); err != nil {
24371				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetricDefinitions", i), err.(request.ErrInvalidParams))
24372			}
24373		}
24374	}
24375	if s.SupportedHyperParameters != nil {
24376		for i, v := range s.SupportedHyperParameters {
24377			if v == nil {
24378				continue
24379			}
24380			if err := v.Validate(); err != nil {
24381				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SupportedHyperParameters", i), err.(request.ErrInvalidParams))
24382			}
24383		}
24384	}
24385	if s.SupportedTuningJobObjectiveMetrics != nil {
24386		for i, v := range s.SupportedTuningJobObjectiveMetrics {
24387			if v == nil {
24388				continue
24389			}
24390			if err := v.Validate(); err != nil {
24391				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SupportedTuningJobObjectiveMetrics", i), err.(request.ErrInvalidParams))
24392			}
24393		}
24394	}
24395	if s.TrainingChannels != nil {
24396		for i, v := range s.TrainingChannels {
24397			if v == nil {
24398				continue
24399			}
24400			if err := v.Validate(); err != nil {
24401				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TrainingChannels", i), err.(request.ErrInvalidParams))
24402			}
24403		}
24404	}
24405
24406	if invalidParams.Len() > 0 {
24407		return invalidParams
24408	}
24409	return nil
24410}
24411
24412// SetMetricDefinitions sets the MetricDefinitions field's value.
24413func (s *TrainingSpecification) SetMetricDefinitions(v []*MetricDefinition) *TrainingSpecification {
24414	s.MetricDefinitions = v
24415	return s
24416}
24417
24418// SetSupportedHyperParameters sets the SupportedHyperParameters field's value.
24419func (s *TrainingSpecification) SetSupportedHyperParameters(v []*HyperParameterSpecification) *TrainingSpecification {
24420	s.SupportedHyperParameters = v
24421	return s
24422}
24423
24424// SetSupportedTrainingInstanceTypes sets the SupportedTrainingInstanceTypes field's value.
24425func (s *TrainingSpecification) SetSupportedTrainingInstanceTypes(v []*string) *TrainingSpecification {
24426	s.SupportedTrainingInstanceTypes = v
24427	return s
24428}
24429
24430// SetSupportedTuningJobObjectiveMetrics sets the SupportedTuningJobObjectiveMetrics field's value.
24431func (s *TrainingSpecification) SetSupportedTuningJobObjectiveMetrics(v []*HyperParameterTuningJobObjective) *TrainingSpecification {
24432	s.SupportedTuningJobObjectiveMetrics = v
24433	return s
24434}
24435
24436// SetSupportsDistributedTraining sets the SupportsDistributedTraining field's value.
24437func (s *TrainingSpecification) SetSupportsDistributedTraining(v bool) *TrainingSpecification {
24438	s.SupportsDistributedTraining = &v
24439	return s
24440}
24441
24442// SetTrainingChannels sets the TrainingChannels field's value.
24443func (s *TrainingSpecification) SetTrainingChannels(v []*ChannelSpecification) *TrainingSpecification {
24444	s.TrainingChannels = v
24445	return s
24446}
24447
24448// SetTrainingImage sets the TrainingImage field's value.
24449func (s *TrainingSpecification) SetTrainingImage(v string) *TrainingSpecification {
24450	s.TrainingImage = &v
24451	return s
24452}
24453
24454// SetTrainingImageDigest sets the TrainingImageDigest field's value.
24455func (s *TrainingSpecification) SetTrainingImageDigest(v string) *TrainingSpecification {
24456	s.TrainingImageDigest = &v
24457	return s
24458}
24459
24460// Describes the location of the channel data.
24461type TransformDataSource struct {
24462	_ struct{} `type:"structure"`
24463
24464	// The S3 location of the data source that is associated with a channel.
24465	//
24466	// S3DataSource is a required field
24467	S3DataSource *TransformS3DataSource `type:"structure" required:"true"`
24468}
24469
24470// String returns the string representation
24471func (s TransformDataSource) String() string {
24472	return awsutil.Prettify(s)
24473}
24474
24475// GoString returns the string representation
24476func (s TransformDataSource) GoString() string {
24477	return s.String()
24478}
24479
24480// Validate inspects the fields of the type to determine if they are valid.
24481func (s *TransformDataSource) Validate() error {
24482	invalidParams := request.ErrInvalidParams{Context: "TransformDataSource"}
24483	if s.S3DataSource == nil {
24484		invalidParams.Add(request.NewErrParamRequired("S3DataSource"))
24485	}
24486	if s.S3DataSource != nil {
24487		if err := s.S3DataSource.Validate(); err != nil {
24488			invalidParams.AddNested("S3DataSource", err.(request.ErrInvalidParams))
24489		}
24490	}
24491
24492	if invalidParams.Len() > 0 {
24493		return invalidParams
24494	}
24495	return nil
24496}
24497
24498// SetS3DataSource sets the S3DataSource field's value.
24499func (s *TransformDataSource) SetS3DataSource(v *TransformS3DataSource) *TransformDataSource {
24500	s.S3DataSource = v
24501	return s
24502}
24503
24504// Describes the input source of a transform job and the way the transform job
24505// consumes it.
24506type TransformInput struct {
24507	_ struct{} `type:"structure"`
24508
24509	// If your transform data is compressed, specify the compression type. Amazon
24510	// SageMaker automatically decompresses the data for the transform job accordingly.
24511	// The default value is None.
24512	CompressionType *string `type:"string" enum:"CompressionType"`
24513
24514	// The multipurpose internet mail extension (MIME) type of the data. Amazon
24515	// SageMaker uses the MIME type with each http call to transfer data to the
24516	// transform job.
24517	ContentType *string `type:"string"`
24518
24519	// Describes the location of the channel data, which is, the S3 location of
24520	// the input data that the model can consume.
24521	//
24522	// DataSource is a required field
24523	DataSource *TransformDataSource `type:"structure" required:"true"`
24524
24525	// The method to use to split the transform job's data files into smaller batches.
24526	// Splitting is necessary when the total size of each object is too large to
24527	// fit in a single request. You can also use data splitting to improve performance
24528	// by processing multiple concurrent mini-batches. The default value for SplitType
24529	// is None, which indicates that input data files are not split, and request
24530	// payloads contain the entire contents of an input object. Set the value of
24531	// this parameter to Line to split records on a newline character boundary.
24532	// SplitType also supports a number of record-oriented binary data formats.
24533	//
24534	// When splitting is enabled, the size of a mini-batch depends on the values
24535	// of the BatchStrategy and MaxPayloadInMB parameters. When the value of BatchStrategy
24536	// is MultiRecord, Amazon SageMaker sends the maximum number of records in each
24537	// request, up to the MaxPayloadInMB limit. If the value of BatchStrategy is
24538	// SingleRecord, Amazon SageMaker sends individual records in each request.
24539	//
24540	// Some data formats represent a record as a binary payload wrapped with extra
24541	// padding bytes. When splitting is applied to a binary data format, padding
24542	// is removed if the value of BatchStrategy is set to SingleRecord. Padding
24543	// is not removed if the value of BatchStrategy is set to MultiRecord.
24544	//
24545	// For more information about the RecordIO, see Data Format (http://mxnet.io/architecture/note_data_loading.html#data-format)
24546	// in the MXNet documentation. For more information about the TFRecord, see
24547	// Consuming TFRecord data (https://www.tensorflow.org/guide/datasets#consuming_tfrecord_data)
24548	// in the TensorFlow documentation.
24549	SplitType *string `type:"string" enum:"SplitType"`
24550}
24551
24552// String returns the string representation
24553func (s TransformInput) String() string {
24554	return awsutil.Prettify(s)
24555}
24556
24557// GoString returns the string representation
24558func (s TransformInput) GoString() string {
24559	return s.String()
24560}
24561
24562// Validate inspects the fields of the type to determine if they are valid.
24563func (s *TransformInput) Validate() error {
24564	invalidParams := request.ErrInvalidParams{Context: "TransformInput"}
24565	if s.DataSource == nil {
24566		invalidParams.Add(request.NewErrParamRequired("DataSource"))
24567	}
24568	if s.DataSource != nil {
24569		if err := s.DataSource.Validate(); err != nil {
24570			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
24571		}
24572	}
24573
24574	if invalidParams.Len() > 0 {
24575		return invalidParams
24576	}
24577	return nil
24578}
24579
24580// SetCompressionType sets the CompressionType field's value.
24581func (s *TransformInput) SetCompressionType(v string) *TransformInput {
24582	s.CompressionType = &v
24583	return s
24584}
24585
24586// SetContentType sets the ContentType field's value.
24587func (s *TransformInput) SetContentType(v string) *TransformInput {
24588	s.ContentType = &v
24589	return s
24590}
24591
24592// SetDataSource sets the DataSource field's value.
24593func (s *TransformInput) SetDataSource(v *TransformDataSource) *TransformInput {
24594	s.DataSource = v
24595	return s
24596}
24597
24598// SetSplitType sets the SplitType field's value.
24599func (s *TransformInput) SetSplitType(v string) *TransformInput {
24600	s.SplitType = &v
24601	return s
24602}
24603
24604// Defines the input needed to run a transform job using the inference specification
24605// specified in the algorithm.
24606type TransformJobDefinition struct {
24607	_ struct{} `type:"structure"`
24608
24609	// A string that determines the number of records included in a single mini-batch.
24610	//
24611	// SingleRecord means only one record is used per mini-batch. MultiRecord means
24612	// a mini-batch is set to contain as many records that can fit within the MaxPayloadInMB
24613	// limit.
24614	BatchStrategy *string `type:"string" enum:"BatchStrategy"`
24615
24616	// The environment variables to set in the Docker container. We support up to
24617	// 16 key and values entries in the map.
24618	Environment map[string]*string `type:"map"`
24619
24620	// The maximum number of parallel requests that can be sent to each instance
24621	// in a transform job. The default value is 1.
24622	MaxConcurrentTransforms *int64 `type:"integer"`
24623
24624	// The maximum payload size allowed, in MB. A payload is the data portion of
24625	// a record (without metadata).
24626	MaxPayloadInMB *int64 `type:"integer"`
24627
24628	// A description of the input source and the way the transform job consumes
24629	// it.
24630	//
24631	// TransformInput is a required field
24632	TransformInput *TransformInput `type:"structure" required:"true"`
24633
24634	// Identifies the Amazon S3 location where you want Amazon SageMaker to save
24635	// the results from the transform job.
24636	//
24637	// TransformOutput is a required field
24638	TransformOutput *TransformOutput `type:"structure" required:"true"`
24639
24640	// Identifies the ML compute instances for the transform job.
24641	//
24642	// TransformResources is a required field
24643	TransformResources *TransformResources `type:"structure" required:"true"`
24644}
24645
24646// String returns the string representation
24647func (s TransformJobDefinition) String() string {
24648	return awsutil.Prettify(s)
24649}
24650
24651// GoString returns the string representation
24652func (s TransformJobDefinition) GoString() string {
24653	return s.String()
24654}
24655
24656// Validate inspects the fields of the type to determine if they are valid.
24657func (s *TransformJobDefinition) Validate() error {
24658	invalidParams := request.ErrInvalidParams{Context: "TransformJobDefinition"}
24659	if s.TransformInput == nil {
24660		invalidParams.Add(request.NewErrParamRequired("TransformInput"))
24661	}
24662	if s.TransformOutput == nil {
24663		invalidParams.Add(request.NewErrParamRequired("TransformOutput"))
24664	}
24665	if s.TransformResources == nil {
24666		invalidParams.Add(request.NewErrParamRequired("TransformResources"))
24667	}
24668	if s.TransformInput != nil {
24669		if err := s.TransformInput.Validate(); err != nil {
24670			invalidParams.AddNested("TransformInput", err.(request.ErrInvalidParams))
24671		}
24672	}
24673	if s.TransformOutput != nil {
24674		if err := s.TransformOutput.Validate(); err != nil {
24675			invalidParams.AddNested("TransformOutput", err.(request.ErrInvalidParams))
24676		}
24677	}
24678	if s.TransformResources != nil {
24679		if err := s.TransformResources.Validate(); err != nil {
24680			invalidParams.AddNested("TransformResources", err.(request.ErrInvalidParams))
24681		}
24682	}
24683
24684	if invalidParams.Len() > 0 {
24685		return invalidParams
24686	}
24687	return nil
24688}
24689
24690// SetBatchStrategy sets the BatchStrategy field's value.
24691func (s *TransformJobDefinition) SetBatchStrategy(v string) *TransformJobDefinition {
24692	s.BatchStrategy = &v
24693	return s
24694}
24695
24696// SetEnvironment sets the Environment field's value.
24697func (s *TransformJobDefinition) SetEnvironment(v map[string]*string) *TransformJobDefinition {
24698	s.Environment = v
24699	return s
24700}
24701
24702// SetMaxConcurrentTransforms sets the MaxConcurrentTransforms field's value.
24703func (s *TransformJobDefinition) SetMaxConcurrentTransforms(v int64) *TransformJobDefinition {
24704	s.MaxConcurrentTransforms = &v
24705	return s
24706}
24707
24708// SetMaxPayloadInMB sets the MaxPayloadInMB field's value.
24709func (s *TransformJobDefinition) SetMaxPayloadInMB(v int64) *TransformJobDefinition {
24710	s.MaxPayloadInMB = &v
24711	return s
24712}
24713
24714// SetTransformInput sets the TransformInput field's value.
24715func (s *TransformJobDefinition) SetTransformInput(v *TransformInput) *TransformJobDefinition {
24716	s.TransformInput = v
24717	return s
24718}
24719
24720// SetTransformOutput sets the TransformOutput field's value.
24721func (s *TransformJobDefinition) SetTransformOutput(v *TransformOutput) *TransformJobDefinition {
24722	s.TransformOutput = v
24723	return s
24724}
24725
24726// SetTransformResources sets the TransformResources field's value.
24727func (s *TransformJobDefinition) SetTransformResources(v *TransformResources) *TransformJobDefinition {
24728	s.TransformResources = v
24729	return s
24730}
24731
24732// Provides a summary of a transform job. Multiple TransformJobSummary objects
24733// are returned as a list after in response to a ListTransformJobs call.
24734type TransformJobSummary struct {
24735	_ struct{} `type:"structure"`
24736
24737	// A timestamp that shows when the transform Job was created.
24738	//
24739	// CreationTime is a required field
24740	CreationTime *time.Time `type:"timestamp" required:"true"`
24741
24742	// If the transform job failed, the reason it failed.
24743	FailureReason *string `type:"string"`
24744
24745	// Indicates when the transform job was last modified.
24746	LastModifiedTime *time.Time `type:"timestamp"`
24747
24748	// Indicates when the transform job ends on compute instances. For successful
24749	// jobs and stopped jobs, this is the exact time recorded after the results
24750	// are uploaded. For failed jobs, this is when Amazon SageMaker detected that
24751	// the job failed.
24752	TransformEndTime *time.Time `type:"timestamp"`
24753
24754	// The Amazon Resource Name (ARN) of the transform job.
24755	//
24756	// TransformJobArn is a required field
24757	TransformJobArn *string `type:"string" required:"true"`
24758
24759	// The name of the transform job.
24760	//
24761	// TransformJobName is a required field
24762	TransformJobName *string `min:"1" type:"string" required:"true"`
24763
24764	// The status of the transform job.
24765	//
24766	// TransformJobStatus is a required field
24767	TransformJobStatus *string `type:"string" required:"true" enum:"TransformJobStatus"`
24768}
24769
24770// String returns the string representation
24771func (s TransformJobSummary) String() string {
24772	return awsutil.Prettify(s)
24773}
24774
24775// GoString returns the string representation
24776func (s TransformJobSummary) GoString() string {
24777	return s.String()
24778}
24779
24780// SetCreationTime sets the CreationTime field's value.
24781func (s *TransformJobSummary) SetCreationTime(v time.Time) *TransformJobSummary {
24782	s.CreationTime = &v
24783	return s
24784}
24785
24786// SetFailureReason sets the FailureReason field's value.
24787func (s *TransformJobSummary) SetFailureReason(v string) *TransformJobSummary {
24788	s.FailureReason = &v
24789	return s
24790}
24791
24792// SetLastModifiedTime sets the LastModifiedTime field's value.
24793func (s *TransformJobSummary) SetLastModifiedTime(v time.Time) *TransformJobSummary {
24794	s.LastModifiedTime = &v
24795	return s
24796}
24797
24798// SetTransformEndTime sets the TransformEndTime field's value.
24799func (s *TransformJobSummary) SetTransformEndTime(v time.Time) *TransformJobSummary {
24800	s.TransformEndTime = &v
24801	return s
24802}
24803
24804// SetTransformJobArn sets the TransformJobArn field's value.
24805func (s *TransformJobSummary) SetTransformJobArn(v string) *TransformJobSummary {
24806	s.TransformJobArn = &v
24807	return s
24808}
24809
24810// SetTransformJobName sets the TransformJobName field's value.
24811func (s *TransformJobSummary) SetTransformJobName(v string) *TransformJobSummary {
24812	s.TransformJobName = &v
24813	return s
24814}
24815
24816// SetTransformJobStatus sets the TransformJobStatus field's value.
24817func (s *TransformJobSummary) SetTransformJobStatus(v string) *TransformJobSummary {
24818	s.TransformJobStatus = &v
24819	return s
24820}
24821
24822// Describes the results of a transform job.
24823type TransformOutput struct {
24824	_ struct{} `type:"structure"`
24825
24826	// The MIME type used to specify the output data. Amazon SageMaker uses the
24827	// MIME type with each http call to transfer data from the transform job.
24828	Accept *string `type:"string"`
24829
24830	// Defines how to assemble the results of the transform job as a single S3 object.
24831	// Choose a format that is most convenient to you. To concatenate the results
24832	// in binary format, specify None. To add a newline character at the end of
24833	// every transformed record, specify Line.
24834	AssembleWith *string `type:"string" enum:"AssemblyType"`
24835
24836	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
24837	// encrypt the model artifacts at rest using Amazon S3 server-side encryption.
24838	// The KmsKeyId can be any of the following formats:
24839	//
24840	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
24841	//
24842	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
24843	//
24844	//    * // KMS Key Alias "alias/ExampleAlias"
24845	//
24846	//    * // Amazon Resource Name (ARN) of a KMS Key Alias "arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias"
24847	//
24848	// If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS
24849	// key for Amazon S3 for your role's account. For more information, see KMS-Managed
24850	// Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html)
24851	// in the Amazon Simple Storage Service Developer Guide.
24852	//
24853	// The KMS key policy must grant permission to the IAM role that you specify
24854	// in your CreateTramsformJob request. For more information, see Using Key Policies
24855	// in AWS KMS (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)
24856	// in the AWS Key Management Service Developer Guide.
24857	KmsKeyId *string `type:"string"`
24858
24859	// The Amazon S3 path where you want Amazon SageMaker to store the results of
24860	// the transform job. For example, s3://bucket-name/key-name-prefix.
24861	//
24862	// For every S3 object used as input for the transform job, batch transform
24863	// stores the transformed data with an .out suffix in a corresponding subfolder
24864	// in the location in the output prefix. For example, for the input data stored
24865	// at s3://bucket-name/input-name-prefix/dataset01/data.csv, batch transform
24866	// stores the transformed data at s3://bucket-name/output-name-prefix/input-name-prefix/data.csv.out.
24867	// Batch transform doesn't upload partially processed objects. For an input
24868	// S3 object that contains multiple records, it creates an .out file only if
24869	// the transform job succeeds on the entire file. When the input contains multiple
24870	// S3 objects, the batch transform job processes the listed S3 objects and uploads
24871	// only the output for successfully processed objects. If any object fails in
24872	// the transform job batch transform marks the job as failed to prompt investigation.
24873	//
24874	// S3OutputPath is a required field
24875	S3OutputPath *string `type:"string" required:"true"`
24876}
24877
24878// String returns the string representation
24879func (s TransformOutput) String() string {
24880	return awsutil.Prettify(s)
24881}
24882
24883// GoString returns the string representation
24884func (s TransformOutput) GoString() string {
24885	return s.String()
24886}
24887
24888// Validate inspects the fields of the type to determine if they are valid.
24889func (s *TransformOutput) Validate() error {
24890	invalidParams := request.ErrInvalidParams{Context: "TransformOutput"}
24891	if s.S3OutputPath == nil {
24892		invalidParams.Add(request.NewErrParamRequired("S3OutputPath"))
24893	}
24894
24895	if invalidParams.Len() > 0 {
24896		return invalidParams
24897	}
24898	return nil
24899}
24900
24901// SetAccept sets the Accept field's value.
24902func (s *TransformOutput) SetAccept(v string) *TransformOutput {
24903	s.Accept = &v
24904	return s
24905}
24906
24907// SetAssembleWith sets the AssembleWith field's value.
24908func (s *TransformOutput) SetAssembleWith(v string) *TransformOutput {
24909	s.AssembleWith = &v
24910	return s
24911}
24912
24913// SetKmsKeyId sets the KmsKeyId field's value.
24914func (s *TransformOutput) SetKmsKeyId(v string) *TransformOutput {
24915	s.KmsKeyId = &v
24916	return s
24917}
24918
24919// SetS3OutputPath sets the S3OutputPath field's value.
24920func (s *TransformOutput) SetS3OutputPath(v string) *TransformOutput {
24921	s.S3OutputPath = &v
24922	return s
24923}
24924
24925// Describes the resources, including ML instance types and ML instance count,
24926// to use for transform job.
24927type TransformResources struct {
24928	_ struct{} `type:"structure"`
24929
24930	// The number of ML compute instances to use in the transform job. For distributed
24931	// transform jobs, specify a value greater than 1. The default value is 1.
24932	//
24933	// InstanceCount is a required field
24934	InstanceCount *int64 `min:"1" type:"integer" required:"true"`
24935
24936	// The ML compute instance type for the transform job. If you are using built-in
24937	// algorithms to transform moderately sized datasets, we recommend using ml.m4.xlarge
24938	// or ml.m5.large instance types.
24939	//
24940	// InstanceType is a required field
24941	InstanceType *string `type:"string" required:"true" enum:"TransformInstanceType"`
24942
24943	// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
24944	// encrypt data on the storage volume attached to the ML compute instance(s)
24945	// that run the batch transform job. The VolumeKmsKeyId can be any of the following
24946	// formats:
24947	//
24948	//    * // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
24949	//
24950	//    * // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
24951	VolumeKmsKeyId *string `type:"string"`
24952}
24953
24954// String returns the string representation
24955func (s TransformResources) String() string {
24956	return awsutil.Prettify(s)
24957}
24958
24959// GoString returns the string representation
24960func (s TransformResources) GoString() string {
24961	return s.String()
24962}
24963
24964// Validate inspects the fields of the type to determine if they are valid.
24965func (s *TransformResources) Validate() error {
24966	invalidParams := request.ErrInvalidParams{Context: "TransformResources"}
24967	if s.InstanceCount == nil {
24968		invalidParams.Add(request.NewErrParamRequired("InstanceCount"))
24969	}
24970	if s.InstanceCount != nil && *s.InstanceCount < 1 {
24971		invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1))
24972	}
24973	if s.InstanceType == nil {
24974		invalidParams.Add(request.NewErrParamRequired("InstanceType"))
24975	}
24976
24977	if invalidParams.Len() > 0 {
24978		return invalidParams
24979	}
24980	return nil
24981}
24982
24983// SetInstanceCount sets the InstanceCount field's value.
24984func (s *TransformResources) SetInstanceCount(v int64) *TransformResources {
24985	s.InstanceCount = &v
24986	return s
24987}
24988
24989// SetInstanceType sets the InstanceType field's value.
24990func (s *TransformResources) SetInstanceType(v string) *TransformResources {
24991	s.InstanceType = &v
24992	return s
24993}
24994
24995// SetVolumeKmsKeyId sets the VolumeKmsKeyId field's value.
24996func (s *TransformResources) SetVolumeKmsKeyId(v string) *TransformResources {
24997	s.VolumeKmsKeyId = &v
24998	return s
24999}
25000
25001// Describes the S3 data source.
25002type TransformS3DataSource struct {
25003	_ struct{} `type:"structure"`
25004
25005	// If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker
25006	// uses all objects with the specified key name prefix for batch transform.
25007	//
25008	// If you choose ManifestFile, S3Uri identifies an object that is a manifest
25009	// file containing a list of object keys that you want Amazon SageMaker to use
25010	// for batch transform.
25011	//
25012	// The following values are compatible: ManifestFile, S3Prefix
25013	//
25014	// The following value is not compatible: AugmentedManifestFile
25015	//
25016	// S3DataType is a required field
25017	S3DataType *string `type:"string" required:"true" enum:"S3DataType"`
25018
25019	// Depending on the value specified for the S3DataType, identifies either a
25020	// key name prefix or a manifest. For example:
25021	//
25022	//    * A key name prefix might look like this: s3://bucketname/exampleprefix.
25023	//
25024	//    * A manifest might look like this: s3://bucketname/example.manifest The
25025	//    manifest is an S3 object which is a JSON file with the following format:
25026	//    [ {"prefix": "s3://customer_bucket/some/prefix/"}, "relative/path/to/custdata-1",
25027	//    "relative/path/custdata-2", ... ] The preceding JSON matches the following
25028	//    S3Uris: s3://customer_bucket/some/prefix/relative/path/to/custdata-1 s3://customer_bucket/some/prefix/relative/path/custdata-1
25029	//    ... The complete set of S3Uris in this manifest constitutes the input
25030	//    data for the channel for this datasource. The object that each S3Uris
25031	//    points to must be readable by the IAM role that Amazon SageMaker uses
25032	//    to perform tasks on your behalf.
25033	//
25034	// S3Uri is a required field
25035	S3Uri *string `type:"string" required:"true"`
25036}
25037
25038// String returns the string representation
25039func (s TransformS3DataSource) String() string {
25040	return awsutil.Prettify(s)
25041}
25042
25043// GoString returns the string representation
25044func (s TransformS3DataSource) GoString() string {
25045	return s.String()
25046}
25047
25048// Validate inspects the fields of the type to determine if they are valid.
25049func (s *TransformS3DataSource) Validate() error {
25050	invalidParams := request.ErrInvalidParams{Context: "TransformS3DataSource"}
25051	if s.S3DataType == nil {
25052		invalidParams.Add(request.NewErrParamRequired("S3DataType"))
25053	}
25054	if s.S3Uri == nil {
25055		invalidParams.Add(request.NewErrParamRequired("S3Uri"))
25056	}
25057
25058	if invalidParams.Len() > 0 {
25059		return invalidParams
25060	}
25061	return nil
25062}
25063
25064// SetS3DataType sets the S3DataType field's value.
25065func (s *TransformS3DataSource) SetS3DataType(v string) *TransformS3DataSource {
25066	s.S3DataType = &v
25067	return s
25068}
25069
25070// SetS3Uri sets the S3Uri field's value.
25071func (s *TransformS3DataSource) SetS3Uri(v string) *TransformS3DataSource {
25072	s.S3Uri = &v
25073	return s
25074}
25075
25076// Represents an amount of money in United States dollars/
25077type USD struct {
25078	_ struct{} `type:"structure"`
25079
25080	// The fractional portion, in cents, of the amount.
25081	Cents *int64 `type:"integer"`
25082
25083	// The whole number of dollars in the amount.
25084	Dollars *int64 `type:"integer"`
25085
25086	// Fractions of a cent, in tenths.
25087	TenthFractionsOfACent *int64 `type:"integer"`
25088}
25089
25090// String returns the string representation
25091func (s USD) String() string {
25092	return awsutil.Prettify(s)
25093}
25094
25095// GoString returns the string representation
25096func (s USD) GoString() string {
25097	return s.String()
25098}
25099
25100// SetCents sets the Cents field's value.
25101func (s *USD) SetCents(v int64) *USD {
25102	s.Cents = &v
25103	return s
25104}
25105
25106// SetDollars sets the Dollars field's value.
25107func (s *USD) SetDollars(v int64) *USD {
25108	s.Dollars = &v
25109	return s
25110}
25111
25112// SetTenthFractionsOfACent sets the TenthFractionsOfACent field's value.
25113func (s *USD) SetTenthFractionsOfACent(v int64) *USD {
25114	s.TenthFractionsOfACent = &v
25115	return s
25116}
25117
25118// Provided configuration information for the worker UI for a labeling job.
25119type UiConfig struct {
25120	_ struct{} `type:"structure"`
25121
25122	// The Amazon S3 bucket location of the UI template. For more information about
25123	// the contents of a UI template, see Creating Your Custom Labeling Task Template
25124	// (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step2.html).
25125	//
25126	// UiTemplateS3Uri is a required field
25127	UiTemplateS3Uri *string `type:"string" required:"true"`
25128}
25129
25130// String returns the string representation
25131func (s UiConfig) String() string {
25132	return awsutil.Prettify(s)
25133}
25134
25135// GoString returns the string representation
25136func (s UiConfig) GoString() string {
25137	return s.String()
25138}
25139
25140// Validate inspects the fields of the type to determine if they are valid.
25141func (s *UiConfig) Validate() error {
25142	invalidParams := request.ErrInvalidParams{Context: "UiConfig"}
25143	if s.UiTemplateS3Uri == nil {
25144		invalidParams.Add(request.NewErrParamRequired("UiTemplateS3Uri"))
25145	}
25146
25147	if invalidParams.Len() > 0 {
25148		return invalidParams
25149	}
25150	return nil
25151}
25152
25153// SetUiTemplateS3Uri sets the UiTemplateS3Uri field's value.
25154func (s *UiConfig) SetUiTemplateS3Uri(v string) *UiConfig {
25155	s.UiTemplateS3Uri = &v
25156	return s
25157}
25158
25159// The Liquid template for the worker user interface.
25160type UiTemplate struct {
25161	_ struct{} `type:"structure"`
25162
25163	// The content of the Liquid template for the worker user interface.
25164	//
25165	// Content is a required field
25166	Content *string `min:"1" type:"string" required:"true"`
25167}
25168
25169// String returns the string representation
25170func (s UiTemplate) String() string {
25171	return awsutil.Prettify(s)
25172}
25173
25174// GoString returns the string representation
25175func (s UiTemplate) GoString() string {
25176	return s.String()
25177}
25178
25179// Validate inspects the fields of the type to determine if they are valid.
25180func (s *UiTemplate) Validate() error {
25181	invalidParams := request.ErrInvalidParams{Context: "UiTemplate"}
25182	if s.Content == nil {
25183		invalidParams.Add(request.NewErrParamRequired("Content"))
25184	}
25185	if s.Content != nil && len(*s.Content) < 1 {
25186		invalidParams.Add(request.NewErrParamMinLen("Content", 1))
25187	}
25188
25189	if invalidParams.Len() > 0 {
25190		return invalidParams
25191	}
25192	return nil
25193}
25194
25195// SetContent sets the Content field's value.
25196func (s *UiTemplate) SetContent(v string) *UiTemplate {
25197	s.Content = &v
25198	return s
25199}
25200
25201type UpdateCodeRepositoryInput struct {
25202	_ struct{} `type:"structure"`
25203
25204	// The name of the Git repository to update.
25205	//
25206	// CodeRepositoryName is a required field
25207	CodeRepositoryName *string `min:"1" type:"string" required:"true"`
25208
25209	// The configuration of the git repository, including the URL and the Amazon
25210	// Resource Name (ARN) of the AWS Secrets Manager secret that contains the credentials
25211	// used to access the repository. The secret must have a staging label of AWSCURRENT
25212	// and must be in the following format:
25213	//
25214	// {"username": UserName, "password": Password}
25215	GitConfig *GitConfigForUpdate `type:"structure"`
25216}
25217
25218// String returns the string representation
25219func (s UpdateCodeRepositoryInput) String() string {
25220	return awsutil.Prettify(s)
25221}
25222
25223// GoString returns the string representation
25224func (s UpdateCodeRepositoryInput) GoString() string {
25225	return s.String()
25226}
25227
25228// Validate inspects the fields of the type to determine if they are valid.
25229func (s *UpdateCodeRepositoryInput) Validate() error {
25230	invalidParams := request.ErrInvalidParams{Context: "UpdateCodeRepositoryInput"}
25231	if s.CodeRepositoryName == nil {
25232		invalidParams.Add(request.NewErrParamRequired("CodeRepositoryName"))
25233	}
25234	if s.CodeRepositoryName != nil && len(*s.CodeRepositoryName) < 1 {
25235		invalidParams.Add(request.NewErrParamMinLen("CodeRepositoryName", 1))
25236	}
25237	if s.GitConfig != nil {
25238		if err := s.GitConfig.Validate(); err != nil {
25239			invalidParams.AddNested("GitConfig", err.(request.ErrInvalidParams))
25240		}
25241	}
25242
25243	if invalidParams.Len() > 0 {
25244		return invalidParams
25245	}
25246	return nil
25247}
25248
25249// SetCodeRepositoryName sets the CodeRepositoryName field's value.
25250func (s *UpdateCodeRepositoryInput) SetCodeRepositoryName(v string) *UpdateCodeRepositoryInput {
25251	s.CodeRepositoryName = &v
25252	return s
25253}
25254
25255// SetGitConfig sets the GitConfig field's value.
25256func (s *UpdateCodeRepositoryInput) SetGitConfig(v *GitConfigForUpdate) *UpdateCodeRepositoryInput {
25257	s.GitConfig = v
25258	return s
25259}
25260
25261type UpdateCodeRepositoryOutput struct {
25262	_ struct{} `type:"structure"`
25263
25264	// The ARN of the Git repository.
25265	//
25266	// CodeRepositoryArn is a required field
25267	CodeRepositoryArn *string `min:"1" type:"string" required:"true"`
25268}
25269
25270// String returns the string representation
25271func (s UpdateCodeRepositoryOutput) String() string {
25272	return awsutil.Prettify(s)
25273}
25274
25275// GoString returns the string representation
25276func (s UpdateCodeRepositoryOutput) GoString() string {
25277	return s.String()
25278}
25279
25280// SetCodeRepositoryArn sets the CodeRepositoryArn field's value.
25281func (s *UpdateCodeRepositoryOutput) SetCodeRepositoryArn(v string) *UpdateCodeRepositoryOutput {
25282	s.CodeRepositoryArn = &v
25283	return s
25284}
25285
25286type UpdateEndpointInput struct {
25287	_ struct{} `type:"structure"`
25288
25289	// The name of the new endpoint configuration.
25290	//
25291	// EndpointConfigName is a required field
25292	EndpointConfigName *string `type:"string" required:"true"`
25293
25294	// The name of the endpoint whose configuration you want to update.
25295	//
25296	// EndpointName is a required field
25297	EndpointName *string `type:"string" required:"true"`
25298}
25299
25300// String returns the string representation
25301func (s UpdateEndpointInput) String() string {
25302	return awsutil.Prettify(s)
25303}
25304
25305// GoString returns the string representation
25306func (s UpdateEndpointInput) GoString() string {
25307	return s.String()
25308}
25309
25310// Validate inspects the fields of the type to determine if they are valid.
25311func (s *UpdateEndpointInput) Validate() error {
25312	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointInput"}
25313	if s.EndpointConfigName == nil {
25314		invalidParams.Add(request.NewErrParamRequired("EndpointConfigName"))
25315	}
25316	if s.EndpointName == nil {
25317		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
25318	}
25319
25320	if invalidParams.Len() > 0 {
25321		return invalidParams
25322	}
25323	return nil
25324}
25325
25326// SetEndpointConfigName sets the EndpointConfigName field's value.
25327func (s *UpdateEndpointInput) SetEndpointConfigName(v string) *UpdateEndpointInput {
25328	s.EndpointConfigName = &v
25329	return s
25330}
25331
25332// SetEndpointName sets the EndpointName field's value.
25333func (s *UpdateEndpointInput) SetEndpointName(v string) *UpdateEndpointInput {
25334	s.EndpointName = &v
25335	return s
25336}
25337
25338type UpdateEndpointOutput struct {
25339	_ struct{} `type:"structure"`
25340
25341	// The Amazon Resource Name (ARN) of the endpoint.
25342	//
25343	// EndpointArn is a required field
25344	EndpointArn *string `min:"20" type:"string" required:"true"`
25345}
25346
25347// String returns the string representation
25348func (s UpdateEndpointOutput) String() string {
25349	return awsutil.Prettify(s)
25350}
25351
25352// GoString returns the string representation
25353func (s UpdateEndpointOutput) GoString() string {
25354	return s.String()
25355}
25356
25357// SetEndpointArn sets the EndpointArn field's value.
25358func (s *UpdateEndpointOutput) SetEndpointArn(v string) *UpdateEndpointOutput {
25359	s.EndpointArn = &v
25360	return s
25361}
25362
25363type UpdateEndpointWeightsAndCapacitiesInput struct {
25364	_ struct{} `type:"structure"`
25365
25366	// An object that provides new capacity and weight values for a variant.
25367	//
25368	// DesiredWeightsAndCapacities is a required field
25369	DesiredWeightsAndCapacities []*DesiredWeightAndCapacity `min:"1" type:"list" required:"true"`
25370
25371	// The name of an existing Amazon SageMaker endpoint.
25372	//
25373	// EndpointName is a required field
25374	EndpointName *string `type:"string" required:"true"`
25375}
25376
25377// String returns the string representation
25378func (s UpdateEndpointWeightsAndCapacitiesInput) String() string {
25379	return awsutil.Prettify(s)
25380}
25381
25382// GoString returns the string representation
25383func (s UpdateEndpointWeightsAndCapacitiesInput) GoString() string {
25384	return s.String()
25385}
25386
25387// Validate inspects the fields of the type to determine if they are valid.
25388func (s *UpdateEndpointWeightsAndCapacitiesInput) Validate() error {
25389	invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointWeightsAndCapacitiesInput"}
25390	if s.DesiredWeightsAndCapacities == nil {
25391		invalidParams.Add(request.NewErrParamRequired("DesiredWeightsAndCapacities"))
25392	}
25393	if s.DesiredWeightsAndCapacities != nil && len(s.DesiredWeightsAndCapacities) < 1 {
25394		invalidParams.Add(request.NewErrParamMinLen("DesiredWeightsAndCapacities", 1))
25395	}
25396	if s.EndpointName == nil {
25397		invalidParams.Add(request.NewErrParamRequired("EndpointName"))
25398	}
25399	if s.DesiredWeightsAndCapacities != nil {
25400		for i, v := range s.DesiredWeightsAndCapacities {
25401			if v == nil {
25402				continue
25403			}
25404			if err := v.Validate(); err != nil {
25405				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DesiredWeightsAndCapacities", i), err.(request.ErrInvalidParams))
25406			}
25407		}
25408	}
25409
25410	if invalidParams.Len() > 0 {
25411		return invalidParams
25412	}
25413	return nil
25414}
25415
25416// SetDesiredWeightsAndCapacities sets the DesiredWeightsAndCapacities field's value.
25417func (s *UpdateEndpointWeightsAndCapacitiesInput) SetDesiredWeightsAndCapacities(v []*DesiredWeightAndCapacity) *UpdateEndpointWeightsAndCapacitiesInput {
25418	s.DesiredWeightsAndCapacities = v
25419	return s
25420}
25421
25422// SetEndpointName sets the EndpointName field's value.
25423func (s *UpdateEndpointWeightsAndCapacitiesInput) SetEndpointName(v string) *UpdateEndpointWeightsAndCapacitiesInput {
25424	s.EndpointName = &v
25425	return s
25426}
25427
25428type UpdateEndpointWeightsAndCapacitiesOutput struct {
25429	_ struct{} `type:"structure"`
25430
25431	// The Amazon Resource Name (ARN) of the updated endpoint.
25432	//
25433	// EndpointArn is a required field
25434	EndpointArn *string `min:"20" type:"string" required:"true"`
25435}
25436
25437// String returns the string representation
25438func (s UpdateEndpointWeightsAndCapacitiesOutput) String() string {
25439	return awsutil.Prettify(s)
25440}
25441
25442// GoString returns the string representation
25443func (s UpdateEndpointWeightsAndCapacitiesOutput) GoString() string {
25444	return s.String()
25445}
25446
25447// SetEndpointArn sets the EndpointArn field's value.
25448func (s *UpdateEndpointWeightsAndCapacitiesOutput) SetEndpointArn(v string) *UpdateEndpointWeightsAndCapacitiesOutput {
25449	s.EndpointArn = &v
25450	return s
25451}
25452
25453type UpdateNotebookInstanceInput struct {
25454	_ struct{} `type:"structure"`
25455
25456	// A list of the Elastic Inference (EI) instance types to associate with this
25457	// notebook instance. Currently only one EI instance type can be associated
25458	// with a notebook instance. For more information, see Using Elastic Inference
25459	// in Amazon SageMaker (sagemaker/latest/dg/ei.html).
25460	AcceleratorTypes []*string `type:"list"`
25461
25462	// An array of up to three Git repositories to associate with the notebook instance.
25463	// These can be either the names of Git repositories stored as resources in
25464	// your account, or the URL of Git repositories in AWS CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)
25465	// or in any other Git repository. These repositories are cloned at the same
25466	// level as the default repository of your notebook instance. For more information,
25467	// see Associating Git Repositories with Amazon SageMaker Notebook Instances
25468	// (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
25469	AdditionalCodeRepositories []*string `type:"list"`
25470
25471	// The Git repository to associate with the notebook instance as its default
25472	// code repository. This can be either the name of a Git repository stored as
25473	// a resource in your account, or the URL of a Git repository in AWS CodeCommit
25474	// (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or
25475	// in any other Git repository. When you open a notebook instance, it opens
25476	// in the directory that contains this repository. For more information, see
25477	// Associating Git Repositories with Amazon SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html).
25478	DefaultCodeRepository *string `min:"1" type:"string"`
25479
25480	// A list of the Elastic Inference (EI) instance types to remove from this notebook
25481	// instance. This operation is idempotent. If you specify an accelerator type
25482	// that is not associated with the notebook instance when you call this method,
25483	// it does not throw an error.
25484	DisassociateAcceleratorTypes *bool `type:"boolean"`
25485
25486	// A list of names or URLs of the default Git repositories to remove from this
25487	// notebook instance. This operation is idempotent. If you specify a Git repository
25488	// that is not associated with the notebook instance when you call this method,
25489	// it does not throw an error.
25490	DisassociateAdditionalCodeRepositories *bool `type:"boolean"`
25491
25492	// The name or URL of the default Git repository to remove from this notebook
25493	// instance. This operation is idempotent. If you specify a Git repository that
25494	// is not associated with the notebook instance when you call this method, it
25495	// does not throw an error.
25496	DisassociateDefaultCodeRepository *bool `type:"boolean"`
25497
25498	// Set to true to remove the notebook instance lifecycle configuration currently
25499	// associated with the notebook instance. This operation is idempotent. If you
25500	// specify a lifecycle configuration that is not associated with the notebook
25501	// instance when you call this method, it does not throw an error.
25502	DisassociateLifecycleConfig *bool `type:"boolean"`
25503
25504	// The Amazon ML compute instance type.
25505	InstanceType *string `type:"string" enum:"InstanceType"`
25506
25507	// The name of a lifecycle configuration to associate with the notebook instance.
25508	// For information about lifestyle configurations, see Step 2.1: (Optional)
25509	// Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).
25510	LifecycleConfigName *string `type:"string"`
25511
25512	// The name of the notebook instance to update.
25513	//
25514	// NotebookInstanceName is a required field
25515	NotebookInstanceName *string `type:"string" required:"true"`
25516
25517	// The Amazon Resource Name (ARN) of the IAM role that Amazon SageMaker can
25518	// assume to access the notebook instance. For more information, see Amazon
25519	// SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html).
25520	//
25521	// To be able to pass this role to Amazon SageMaker, the caller of this API
25522	// must have the iam:PassRole permission.
25523	RoleArn *string `min:"20" type:"string"`
25524
25525	// Whether root access is enabled or disabled for users of the notebook instance.
25526	// The default value is Enabled.
25527	//
25528	// If you set this to Disabled, users don't have root access on the notebook
25529	// instance, but lifecycle configuration scripts still run with root permissions.
25530	RootAccess *string `type:"string" enum:"RootAccess"`
25531
25532	// The size, in GB, of the ML storage volume to attach to the notebook instance.
25533	// The default value is 5 GB. ML storage volumes are encrypted, so Amazon SageMaker
25534	// can't determine the amount of available free space on the volume. Because
25535	// of this, you can increase the volume size when you update a notebook instance,
25536	// but you can't decrease the volume size. If you want to decrease the size
25537	// of the ML storage volume in use, create a new notebook instance with the
25538	// desired size.
25539	VolumeSizeInGB *int64 `min:"5" type:"integer"`
25540}
25541
25542// String returns the string representation
25543func (s UpdateNotebookInstanceInput) String() string {
25544	return awsutil.Prettify(s)
25545}
25546
25547// GoString returns the string representation
25548func (s UpdateNotebookInstanceInput) GoString() string {
25549	return s.String()
25550}
25551
25552// Validate inspects the fields of the type to determine if they are valid.
25553func (s *UpdateNotebookInstanceInput) Validate() error {
25554	invalidParams := request.ErrInvalidParams{Context: "UpdateNotebookInstanceInput"}
25555	if s.DefaultCodeRepository != nil && len(*s.DefaultCodeRepository) < 1 {
25556		invalidParams.Add(request.NewErrParamMinLen("DefaultCodeRepository", 1))
25557	}
25558	if s.NotebookInstanceName == nil {
25559		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceName"))
25560	}
25561	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
25562		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
25563	}
25564	if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 5 {
25565		invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 5))
25566	}
25567
25568	if invalidParams.Len() > 0 {
25569		return invalidParams
25570	}
25571	return nil
25572}
25573
25574// SetAcceleratorTypes sets the AcceleratorTypes field's value.
25575func (s *UpdateNotebookInstanceInput) SetAcceleratorTypes(v []*string) *UpdateNotebookInstanceInput {
25576	s.AcceleratorTypes = v
25577	return s
25578}
25579
25580// SetAdditionalCodeRepositories sets the AdditionalCodeRepositories field's value.
25581func (s *UpdateNotebookInstanceInput) SetAdditionalCodeRepositories(v []*string) *UpdateNotebookInstanceInput {
25582	s.AdditionalCodeRepositories = v
25583	return s
25584}
25585
25586// SetDefaultCodeRepository sets the DefaultCodeRepository field's value.
25587func (s *UpdateNotebookInstanceInput) SetDefaultCodeRepository(v string) *UpdateNotebookInstanceInput {
25588	s.DefaultCodeRepository = &v
25589	return s
25590}
25591
25592// SetDisassociateAcceleratorTypes sets the DisassociateAcceleratorTypes field's value.
25593func (s *UpdateNotebookInstanceInput) SetDisassociateAcceleratorTypes(v bool) *UpdateNotebookInstanceInput {
25594	s.DisassociateAcceleratorTypes = &v
25595	return s
25596}
25597
25598// SetDisassociateAdditionalCodeRepositories sets the DisassociateAdditionalCodeRepositories field's value.
25599func (s *UpdateNotebookInstanceInput) SetDisassociateAdditionalCodeRepositories(v bool) *UpdateNotebookInstanceInput {
25600	s.DisassociateAdditionalCodeRepositories = &v
25601	return s
25602}
25603
25604// SetDisassociateDefaultCodeRepository sets the DisassociateDefaultCodeRepository field's value.
25605func (s *UpdateNotebookInstanceInput) SetDisassociateDefaultCodeRepository(v bool) *UpdateNotebookInstanceInput {
25606	s.DisassociateDefaultCodeRepository = &v
25607	return s
25608}
25609
25610// SetDisassociateLifecycleConfig sets the DisassociateLifecycleConfig field's value.
25611func (s *UpdateNotebookInstanceInput) SetDisassociateLifecycleConfig(v bool) *UpdateNotebookInstanceInput {
25612	s.DisassociateLifecycleConfig = &v
25613	return s
25614}
25615
25616// SetInstanceType sets the InstanceType field's value.
25617func (s *UpdateNotebookInstanceInput) SetInstanceType(v string) *UpdateNotebookInstanceInput {
25618	s.InstanceType = &v
25619	return s
25620}
25621
25622// SetLifecycleConfigName sets the LifecycleConfigName field's value.
25623func (s *UpdateNotebookInstanceInput) SetLifecycleConfigName(v string) *UpdateNotebookInstanceInput {
25624	s.LifecycleConfigName = &v
25625	return s
25626}
25627
25628// SetNotebookInstanceName sets the NotebookInstanceName field's value.
25629func (s *UpdateNotebookInstanceInput) SetNotebookInstanceName(v string) *UpdateNotebookInstanceInput {
25630	s.NotebookInstanceName = &v
25631	return s
25632}
25633
25634// SetRoleArn sets the RoleArn field's value.
25635func (s *UpdateNotebookInstanceInput) SetRoleArn(v string) *UpdateNotebookInstanceInput {
25636	s.RoleArn = &v
25637	return s
25638}
25639
25640// SetRootAccess sets the RootAccess field's value.
25641func (s *UpdateNotebookInstanceInput) SetRootAccess(v string) *UpdateNotebookInstanceInput {
25642	s.RootAccess = &v
25643	return s
25644}
25645
25646// SetVolumeSizeInGB sets the VolumeSizeInGB field's value.
25647func (s *UpdateNotebookInstanceInput) SetVolumeSizeInGB(v int64) *UpdateNotebookInstanceInput {
25648	s.VolumeSizeInGB = &v
25649	return s
25650}
25651
25652type UpdateNotebookInstanceLifecycleConfigInput struct {
25653	_ struct{} `type:"structure"`
25654
25655	// The name of the lifecycle configuration.
25656	//
25657	// NotebookInstanceLifecycleConfigName is a required field
25658	NotebookInstanceLifecycleConfigName *string `type:"string" required:"true"`
25659
25660	// The shell script that runs only once, when you create a notebook instance.
25661	// The shell script must be a base64-encoded string.
25662	OnCreate []*NotebookInstanceLifecycleHook `type:"list"`
25663
25664	// The shell script that runs every time you start a notebook instance, including
25665	// when you create the notebook instance. The shell script must be a base64-encoded
25666	// string.
25667	OnStart []*NotebookInstanceLifecycleHook `type:"list"`
25668}
25669
25670// String returns the string representation
25671func (s UpdateNotebookInstanceLifecycleConfigInput) String() string {
25672	return awsutil.Prettify(s)
25673}
25674
25675// GoString returns the string representation
25676func (s UpdateNotebookInstanceLifecycleConfigInput) GoString() string {
25677	return s.String()
25678}
25679
25680// Validate inspects the fields of the type to determine if they are valid.
25681func (s *UpdateNotebookInstanceLifecycleConfigInput) Validate() error {
25682	invalidParams := request.ErrInvalidParams{Context: "UpdateNotebookInstanceLifecycleConfigInput"}
25683	if s.NotebookInstanceLifecycleConfigName == nil {
25684		invalidParams.Add(request.NewErrParamRequired("NotebookInstanceLifecycleConfigName"))
25685	}
25686	if s.OnCreate != nil {
25687		for i, v := range s.OnCreate {
25688			if v == nil {
25689				continue
25690			}
25691			if err := v.Validate(); err != nil {
25692				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnCreate", i), err.(request.ErrInvalidParams))
25693			}
25694		}
25695	}
25696	if s.OnStart != nil {
25697		for i, v := range s.OnStart {
25698			if v == nil {
25699				continue
25700			}
25701			if err := v.Validate(); err != nil {
25702				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OnStart", i), err.(request.ErrInvalidParams))
25703			}
25704		}
25705	}
25706
25707	if invalidParams.Len() > 0 {
25708		return invalidParams
25709	}
25710	return nil
25711}
25712
25713// SetNotebookInstanceLifecycleConfigName sets the NotebookInstanceLifecycleConfigName field's value.
25714func (s *UpdateNotebookInstanceLifecycleConfigInput) SetNotebookInstanceLifecycleConfigName(v string) *UpdateNotebookInstanceLifecycleConfigInput {
25715	s.NotebookInstanceLifecycleConfigName = &v
25716	return s
25717}
25718
25719// SetOnCreate sets the OnCreate field's value.
25720func (s *UpdateNotebookInstanceLifecycleConfigInput) SetOnCreate(v []*NotebookInstanceLifecycleHook) *UpdateNotebookInstanceLifecycleConfigInput {
25721	s.OnCreate = v
25722	return s
25723}
25724
25725// SetOnStart sets the OnStart field's value.
25726func (s *UpdateNotebookInstanceLifecycleConfigInput) SetOnStart(v []*NotebookInstanceLifecycleHook) *UpdateNotebookInstanceLifecycleConfigInput {
25727	s.OnStart = v
25728	return s
25729}
25730
25731type UpdateNotebookInstanceLifecycleConfigOutput struct {
25732	_ struct{} `type:"structure"`
25733}
25734
25735// String returns the string representation
25736func (s UpdateNotebookInstanceLifecycleConfigOutput) String() string {
25737	return awsutil.Prettify(s)
25738}
25739
25740// GoString returns the string representation
25741func (s UpdateNotebookInstanceLifecycleConfigOutput) GoString() string {
25742	return s.String()
25743}
25744
25745type UpdateNotebookInstanceOutput struct {
25746	_ struct{} `type:"structure"`
25747}
25748
25749// String returns the string representation
25750func (s UpdateNotebookInstanceOutput) String() string {
25751	return awsutil.Prettify(s)
25752}
25753
25754// GoString returns the string representation
25755func (s UpdateNotebookInstanceOutput) GoString() string {
25756	return s.String()
25757}
25758
25759type UpdateWorkteamInput struct {
25760	_ struct{} `type:"structure"`
25761
25762	// An updated description for the work team.
25763	Description *string `min:"1" type:"string"`
25764
25765	// A list of MemberDefinition objects that contain the updated work team members.
25766	MemberDefinitions []*MemberDefinition `min:"1" type:"list"`
25767
25768	// Configures SNS topic notifications for available or expiring work items
25769	NotificationConfiguration *NotificationConfiguration `type:"structure"`
25770
25771	// The name of the work team to update.
25772	//
25773	// WorkteamName is a required field
25774	WorkteamName *string `min:"1" type:"string" required:"true"`
25775}
25776
25777// String returns the string representation
25778func (s UpdateWorkteamInput) String() string {
25779	return awsutil.Prettify(s)
25780}
25781
25782// GoString returns the string representation
25783func (s UpdateWorkteamInput) GoString() string {
25784	return s.String()
25785}
25786
25787// Validate inspects the fields of the type to determine if they are valid.
25788func (s *UpdateWorkteamInput) Validate() error {
25789	invalidParams := request.ErrInvalidParams{Context: "UpdateWorkteamInput"}
25790	if s.Description != nil && len(*s.Description) < 1 {
25791		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
25792	}
25793	if s.MemberDefinitions != nil && len(s.MemberDefinitions) < 1 {
25794		invalidParams.Add(request.NewErrParamMinLen("MemberDefinitions", 1))
25795	}
25796	if s.WorkteamName == nil {
25797		invalidParams.Add(request.NewErrParamRequired("WorkteamName"))
25798	}
25799	if s.WorkteamName != nil && len(*s.WorkteamName) < 1 {
25800		invalidParams.Add(request.NewErrParamMinLen("WorkteamName", 1))
25801	}
25802	if s.MemberDefinitions != nil {
25803		for i, v := range s.MemberDefinitions {
25804			if v == nil {
25805				continue
25806			}
25807			if err := v.Validate(); err != nil {
25808				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MemberDefinitions", i), err.(request.ErrInvalidParams))
25809			}
25810		}
25811	}
25812
25813	if invalidParams.Len() > 0 {
25814		return invalidParams
25815	}
25816	return nil
25817}
25818
25819// SetDescription sets the Description field's value.
25820func (s *UpdateWorkteamInput) SetDescription(v string) *UpdateWorkteamInput {
25821	s.Description = &v
25822	return s
25823}
25824
25825// SetMemberDefinitions sets the MemberDefinitions field's value.
25826func (s *UpdateWorkteamInput) SetMemberDefinitions(v []*MemberDefinition) *UpdateWorkteamInput {
25827	s.MemberDefinitions = v
25828	return s
25829}
25830
25831// SetNotificationConfiguration sets the NotificationConfiguration field's value.
25832func (s *UpdateWorkteamInput) SetNotificationConfiguration(v *NotificationConfiguration) *UpdateWorkteamInput {
25833	s.NotificationConfiguration = v
25834	return s
25835}
25836
25837// SetWorkteamName sets the WorkteamName field's value.
25838func (s *UpdateWorkteamInput) SetWorkteamName(v string) *UpdateWorkteamInput {
25839	s.WorkteamName = &v
25840	return s
25841}
25842
25843type UpdateWorkteamOutput struct {
25844	_ struct{} `type:"structure"`
25845
25846	// A Workteam object that describes the updated work team.
25847	//
25848	// Workteam is a required field
25849	Workteam *Workteam `type:"structure" required:"true"`
25850}
25851
25852// String returns the string representation
25853func (s UpdateWorkteamOutput) String() string {
25854	return awsutil.Prettify(s)
25855}
25856
25857// GoString returns the string representation
25858func (s UpdateWorkteamOutput) GoString() string {
25859	return s.String()
25860}
25861
25862// SetWorkteam sets the Workteam field's value.
25863func (s *UpdateWorkteamOutput) SetWorkteam(v *Workteam) *UpdateWorkteamOutput {
25864	s.Workteam = v
25865	return s
25866}
25867
25868// Specifies a VPC that your training jobs and hosted models have access to.
25869// Control access to and from your training and model containers by configuring
25870// the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual
25871// Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html)
25872// and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html).
25873type VpcConfig struct {
25874	_ struct{} `type:"structure"`
25875
25876	// The VPC security group IDs, in the form sg-xxxxxxxx. Specify the security
25877	// groups for the VPC that is specified in the Subnets field.
25878	//
25879	// SecurityGroupIds is a required field
25880	SecurityGroupIds []*string `min:"1" type:"list" required:"true"`
25881
25882	// The ID of the subnets in the VPC to which you want to connect your training
25883	// job or model.
25884	//
25885	// Amazon EC2 P3 accelerated computing instances are not available in the c/d/e
25886	// availability zones of region us-east-1. If you want to create endpoints with
25887	// P3 instances in VPC mode in region us-east-1, create subnets in a/b/f availability
25888	// zones instead.
25889	//
25890	// Subnets is a required field
25891	Subnets []*string `min:"1" type:"list" required:"true"`
25892}
25893
25894// String returns the string representation
25895func (s VpcConfig) String() string {
25896	return awsutil.Prettify(s)
25897}
25898
25899// GoString returns the string representation
25900func (s VpcConfig) GoString() string {
25901	return s.String()
25902}
25903
25904// Validate inspects the fields of the type to determine if they are valid.
25905func (s *VpcConfig) Validate() error {
25906	invalidParams := request.ErrInvalidParams{Context: "VpcConfig"}
25907	if s.SecurityGroupIds == nil {
25908		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
25909	}
25910	if s.SecurityGroupIds != nil && len(s.SecurityGroupIds) < 1 {
25911		invalidParams.Add(request.NewErrParamMinLen("SecurityGroupIds", 1))
25912	}
25913	if s.Subnets == nil {
25914		invalidParams.Add(request.NewErrParamRequired("Subnets"))
25915	}
25916	if s.Subnets != nil && len(s.Subnets) < 1 {
25917		invalidParams.Add(request.NewErrParamMinLen("Subnets", 1))
25918	}
25919
25920	if invalidParams.Len() > 0 {
25921		return invalidParams
25922	}
25923	return nil
25924}
25925
25926// SetSecurityGroupIds sets the SecurityGroupIds field's value.
25927func (s *VpcConfig) SetSecurityGroupIds(v []*string) *VpcConfig {
25928	s.SecurityGroupIds = v
25929	return s
25930}
25931
25932// SetSubnets sets the Subnets field's value.
25933func (s *VpcConfig) SetSubnets(v []*string) *VpcConfig {
25934	s.Subnets = v
25935	return s
25936}
25937
25938// Provides details about a labeling work team.
25939type Workteam struct {
25940	_ struct{} `type:"structure"`
25941
25942	// The date and time that the work team was created (timestamp).
25943	CreateDate *time.Time `type:"timestamp"`
25944
25945	// A description of the work team.
25946	//
25947	// Description is a required field
25948	Description *string `min:"1" type:"string" required:"true"`
25949
25950	// The date and time that the work team was last updated (timestamp).
25951	LastUpdatedDate *time.Time `type:"timestamp"`
25952
25953	// The Amazon Cognito user groups that make up the work team.
25954	//
25955	// MemberDefinitions is a required field
25956	MemberDefinitions []*MemberDefinition `min:"1" type:"list" required:"true"`
25957
25958	// Configures SNS notifications of available or expiring work items for work
25959	// teams.
25960	NotificationConfiguration *NotificationConfiguration `type:"structure"`
25961
25962	// The Amazon Marketplace identifier for a vendor's work team.
25963	ProductListingIds []*string `type:"list"`
25964
25965	// The URI of the labeling job's user interface. Workers open this URI to start
25966	// labeling your data objects.
25967	SubDomain *string `type:"string"`
25968
25969	// The Amazon Resource Name (ARN) that identifies the work team.
25970	//
25971	// WorkteamArn is a required field
25972	WorkteamArn *string `type:"string" required:"true"`
25973
25974	// The name of the work team.
25975	//
25976	// WorkteamName is a required field
25977	WorkteamName *string `min:"1" type:"string" required:"true"`
25978}
25979
25980// String returns the string representation
25981func (s Workteam) String() string {
25982	return awsutil.Prettify(s)
25983}
25984
25985// GoString returns the string representation
25986func (s Workteam) GoString() string {
25987	return s.String()
25988}
25989
25990// SetCreateDate sets the CreateDate field's value.
25991func (s *Workteam) SetCreateDate(v time.Time) *Workteam {
25992	s.CreateDate = &v
25993	return s
25994}
25995
25996// SetDescription sets the Description field's value.
25997func (s *Workteam) SetDescription(v string) *Workteam {
25998	s.Description = &v
25999	return s
26000}
26001
26002// SetLastUpdatedDate sets the LastUpdatedDate field's value.
26003func (s *Workteam) SetLastUpdatedDate(v time.Time) *Workteam {
26004	s.LastUpdatedDate = &v
26005	return s
26006}
26007
26008// SetMemberDefinitions sets the MemberDefinitions field's value.
26009func (s *Workteam) SetMemberDefinitions(v []*MemberDefinition) *Workteam {
26010	s.MemberDefinitions = v
26011	return s
26012}
26013
26014// SetNotificationConfiguration sets the NotificationConfiguration field's value.
26015func (s *Workteam) SetNotificationConfiguration(v *NotificationConfiguration) *Workteam {
26016	s.NotificationConfiguration = v
26017	return s
26018}
26019
26020// SetProductListingIds sets the ProductListingIds field's value.
26021func (s *Workteam) SetProductListingIds(v []*string) *Workteam {
26022	s.ProductListingIds = v
26023	return s
26024}
26025
26026// SetSubDomain sets the SubDomain field's value.
26027func (s *Workteam) SetSubDomain(v string) *Workteam {
26028	s.SubDomain = &v
26029	return s
26030}
26031
26032// SetWorkteamArn sets the WorkteamArn field's value.
26033func (s *Workteam) SetWorkteamArn(v string) *Workteam {
26034	s.WorkteamArn = &v
26035	return s
26036}
26037
26038// SetWorkteamName sets the WorkteamName field's value.
26039func (s *Workteam) SetWorkteamName(v string) *Workteam {
26040	s.WorkteamName = &v
26041	return s
26042}
26043
26044const (
26045	// AlgorithmSortByName is a AlgorithmSortBy enum value
26046	AlgorithmSortByName = "Name"
26047
26048	// AlgorithmSortByCreationTime is a AlgorithmSortBy enum value
26049	AlgorithmSortByCreationTime = "CreationTime"
26050)
26051
26052const (
26053	// AlgorithmStatusPending is a AlgorithmStatus enum value
26054	AlgorithmStatusPending = "Pending"
26055
26056	// AlgorithmStatusInProgress is a AlgorithmStatus enum value
26057	AlgorithmStatusInProgress = "InProgress"
26058
26059	// AlgorithmStatusCompleted is a AlgorithmStatus enum value
26060	AlgorithmStatusCompleted = "Completed"
26061
26062	// AlgorithmStatusFailed is a AlgorithmStatus enum value
26063	AlgorithmStatusFailed = "Failed"
26064
26065	// AlgorithmStatusDeleting is a AlgorithmStatus enum value
26066	AlgorithmStatusDeleting = "Deleting"
26067)
26068
26069const (
26070	// AssemblyTypeNone is a AssemblyType enum value
26071	AssemblyTypeNone = "None"
26072
26073	// AssemblyTypeLine is a AssemblyType enum value
26074	AssemblyTypeLine = "Line"
26075)
26076
26077const (
26078	// BatchStrategyMultiRecord is a BatchStrategy enum value
26079	BatchStrategyMultiRecord = "MultiRecord"
26080
26081	// BatchStrategySingleRecord is a BatchStrategy enum value
26082	BatchStrategySingleRecord = "SingleRecord"
26083)
26084
26085const (
26086	// BooleanOperatorAnd is a BooleanOperator enum value
26087	BooleanOperatorAnd = "And"
26088
26089	// BooleanOperatorOr is a BooleanOperator enum value
26090	BooleanOperatorOr = "Or"
26091)
26092
26093const (
26094	// CodeRepositorySortByName is a CodeRepositorySortBy enum value
26095	CodeRepositorySortByName = "Name"
26096
26097	// CodeRepositorySortByCreationTime is a CodeRepositorySortBy enum value
26098	CodeRepositorySortByCreationTime = "CreationTime"
26099
26100	// CodeRepositorySortByLastModifiedTime is a CodeRepositorySortBy enum value
26101	CodeRepositorySortByLastModifiedTime = "LastModifiedTime"
26102)
26103
26104const (
26105	// CodeRepositorySortOrderAscending is a CodeRepositorySortOrder enum value
26106	CodeRepositorySortOrderAscending = "Ascending"
26107
26108	// CodeRepositorySortOrderDescending is a CodeRepositorySortOrder enum value
26109	CodeRepositorySortOrderDescending = "Descending"
26110)
26111
26112const (
26113	// CompilationJobStatusInprogress is a CompilationJobStatus enum value
26114	CompilationJobStatusInprogress = "INPROGRESS"
26115
26116	// CompilationJobStatusCompleted is a CompilationJobStatus enum value
26117	CompilationJobStatusCompleted = "COMPLETED"
26118
26119	// CompilationJobStatusFailed is a CompilationJobStatus enum value
26120	CompilationJobStatusFailed = "FAILED"
26121
26122	// CompilationJobStatusStarting is a CompilationJobStatus enum value
26123	CompilationJobStatusStarting = "STARTING"
26124
26125	// CompilationJobStatusStopping is a CompilationJobStatus enum value
26126	CompilationJobStatusStopping = "STOPPING"
26127
26128	// CompilationJobStatusStopped is a CompilationJobStatus enum value
26129	CompilationJobStatusStopped = "STOPPED"
26130)
26131
26132const (
26133	// CompressionTypeNone is a CompressionType enum value
26134	CompressionTypeNone = "None"
26135
26136	// CompressionTypeGzip is a CompressionType enum value
26137	CompressionTypeGzip = "Gzip"
26138)
26139
26140const (
26141	// ContentClassifierFreeOfPersonallyIdentifiableInformation is a ContentClassifier enum value
26142	ContentClassifierFreeOfPersonallyIdentifiableInformation = "FreeOfPersonallyIdentifiableInformation"
26143
26144	// ContentClassifierFreeOfAdultContent is a ContentClassifier enum value
26145	ContentClassifierFreeOfAdultContent = "FreeOfAdultContent"
26146)
26147
26148const (
26149	// DetailedAlgorithmStatusNotStarted is a DetailedAlgorithmStatus enum value
26150	DetailedAlgorithmStatusNotStarted = "NotStarted"
26151
26152	// DetailedAlgorithmStatusInProgress is a DetailedAlgorithmStatus enum value
26153	DetailedAlgorithmStatusInProgress = "InProgress"
26154
26155	// DetailedAlgorithmStatusCompleted is a DetailedAlgorithmStatus enum value
26156	DetailedAlgorithmStatusCompleted = "Completed"
26157
26158	// DetailedAlgorithmStatusFailed is a DetailedAlgorithmStatus enum value
26159	DetailedAlgorithmStatusFailed = "Failed"
26160)
26161
26162const (
26163	// DetailedModelPackageStatusNotStarted is a DetailedModelPackageStatus enum value
26164	DetailedModelPackageStatusNotStarted = "NotStarted"
26165
26166	// DetailedModelPackageStatusInProgress is a DetailedModelPackageStatus enum value
26167	DetailedModelPackageStatusInProgress = "InProgress"
26168
26169	// DetailedModelPackageStatusCompleted is a DetailedModelPackageStatus enum value
26170	DetailedModelPackageStatusCompleted = "Completed"
26171
26172	// DetailedModelPackageStatusFailed is a DetailedModelPackageStatus enum value
26173	DetailedModelPackageStatusFailed = "Failed"
26174)
26175
26176const (
26177	// DirectInternetAccessEnabled is a DirectInternetAccess enum value
26178	DirectInternetAccessEnabled = "Enabled"
26179
26180	// DirectInternetAccessDisabled is a DirectInternetAccess enum value
26181	DirectInternetAccessDisabled = "Disabled"
26182)
26183
26184const (
26185	// EndpointConfigSortKeyName is a EndpointConfigSortKey enum value
26186	EndpointConfigSortKeyName = "Name"
26187
26188	// EndpointConfigSortKeyCreationTime is a EndpointConfigSortKey enum value
26189	EndpointConfigSortKeyCreationTime = "CreationTime"
26190)
26191
26192const (
26193	// EndpointSortKeyName is a EndpointSortKey enum value
26194	EndpointSortKeyName = "Name"
26195
26196	// EndpointSortKeyCreationTime is a EndpointSortKey enum value
26197	EndpointSortKeyCreationTime = "CreationTime"
26198
26199	// EndpointSortKeyStatus is a EndpointSortKey enum value
26200	EndpointSortKeyStatus = "Status"
26201)
26202
26203const (
26204	// EndpointStatusOutOfService is a EndpointStatus enum value
26205	EndpointStatusOutOfService = "OutOfService"
26206
26207	// EndpointStatusCreating is a EndpointStatus enum value
26208	EndpointStatusCreating = "Creating"
26209
26210	// EndpointStatusUpdating is a EndpointStatus enum value
26211	EndpointStatusUpdating = "Updating"
26212
26213	// EndpointStatusSystemUpdating is a EndpointStatus enum value
26214	EndpointStatusSystemUpdating = "SystemUpdating"
26215
26216	// EndpointStatusRollingBack is a EndpointStatus enum value
26217	EndpointStatusRollingBack = "RollingBack"
26218
26219	// EndpointStatusInService is a EndpointStatus enum value
26220	EndpointStatusInService = "InService"
26221
26222	// EndpointStatusDeleting is a EndpointStatus enum value
26223	EndpointStatusDeleting = "Deleting"
26224
26225	// EndpointStatusFailed is a EndpointStatus enum value
26226	EndpointStatusFailed = "Failed"
26227)
26228
26229const (
26230	// FileSystemAccessModeRw is a FileSystemAccessMode enum value
26231	FileSystemAccessModeRw = "rw"
26232
26233	// FileSystemAccessModeRo is a FileSystemAccessMode enum value
26234	FileSystemAccessModeRo = "ro"
26235)
26236
26237const (
26238	// FileSystemTypeEfs is a FileSystemType enum value
26239	FileSystemTypeEfs = "EFS"
26240
26241	// FileSystemTypeFsxLustre is a FileSystemType enum value
26242	FileSystemTypeFsxLustre = "FSxLustre"
26243)
26244
26245const (
26246	// FrameworkTensorflow is a Framework enum value
26247	FrameworkTensorflow = "TENSORFLOW"
26248
26249	// FrameworkMxnet is a Framework enum value
26250	FrameworkMxnet = "MXNET"
26251
26252	// FrameworkOnnx is a Framework enum value
26253	FrameworkOnnx = "ONNX"
26254
26255	// FrameworkPytorch is a Framework enum value
26256	FrameworkPytorch = "PYTORCH"
26257
26258	// FrameworkXgboost is a Framework enum value
26259	FrameworkXgboost = "XGBOOST"
26260)
26261
26262const (
26263	// HyperParameterScalingTypeAuto is a HyperParameterScalingType enum value
26264	HyperParameterScalingTypeAuto = "Auto"
26265
26266	// HyperParameterScalingTypeLinear is a HyperParameterScalingType enum value
26267	HyperParameterScalingTypeLinear = "Linear"
26268
26269	// HyperParameterScalingTypeLogarithmic is a HyperParameterScalingType enum value
26270	HyperParameterScalingTypeLogarithmic = "Logarithmic"
26271
26272	// HyperParameterScalingTypeReverseLogarithmic is a HyperParameterScalingType enum value
26273	HyperParameterScalingTypeReverseLogarithmic = "ReverseLogarithmic"
26274)
26275
26276const (
26277	// HyperParameterTuningJobObjectiveTypeMaximize is a HyperParameterTuningJobObjectiveType enum value
26278	HyperParameterTuningJobObjectiveTypeMaximize = "Maximize"
26279
26280	// HyperParameterTuningJobObjectiveTypeMinimize is a HyperParameterTuningJobObjectiveType enum value
26281	HyperParameterTuningJobObjectiveTypeMinimize = "Minimize"
26282)
26283
26284const (
26285	// HyperParameterTuningJobSortByOptionsName is a HyperParameterTuningJobSortByOptions enum value
26286	HyperParameterTuningJobSortByOptionsName = "Name"
26287
26288	// HyperParameterTuningJobSortByOptionsStatus is a HyperParameterTuningJobSortByOptions enum value
26289	HyperParameterTuningJobSortByOptionsStatus = "Status"
26290
26291	// HyperParameterTuningJobSortByOptionsCreationTime is a HyperParameterTuningJobSortByOptions enum value
26292	HyperParameterTuningJobSortByOptionsCreationTime = "CreationTime"
26293)
26294
26295const (
26296	// HyperParameterTuningJobStatusCompleted is a HyperParameterTuningJobStatus enum value
26297	HyperParameterTuningJobStatusCompleted = "Completed"
26298
26299	// HyperParameterTuningJobStatusInProgress is a HyperParameterTuningJobStatus enum value
26300	HyperParameterTuningJobStatusInProgress = "InProgress"
26301
26302	// HyperParameterTuningJobStatusFailed is a HyperParameterTuningJobStatus enum value
26303	HyperParameterTuningJobStatusFailed = "Failed"
26304
26305	// HyperParameterTuningJobStatusStopped is a HyperParameterTuningJobStatus enum value
26306	HyperParameterTuningJobStatusStopped = "Stopped"
26307
26308	// HyperParameterTuningJobStatusStopping is a HyperParameterTuningJobStatus enum value
26309	HyperParameterTuningJobStatusStopping = "Stopping"
26310)
26311
26312// The strategy hyperparameter tuning uses to find the best combination of hyperparameters
26313// for your model. Currently, the only supported value is Bayesian.
26314const (
26315	// HyperParameterTuningJobStrategyTypeBayesian is a HyperParameterTuningJobStrategyType enum value
26316	HyperParameterTuningJobStrategyTypeBayesian = "Bayesian"
26317
26318	// HyperParameterTuningJobStrategyTypeRandom is a HyperParameterTuningJobStrategyType enum value
26319	HyperParameterTuningJobStrategyTypeRandom = "Random"
26320)
26321
26322const (
26323	// HyperParameterTuningJobWarmStartTypeIdenticalDataAndAlgorithm is a HyperParameterTuningJobWarmStartType enum value
26324	HyperParameterTuningJobWarmStartTypeIdenticalDataAndAlgorithm = "IdenticalDataAndAlgorithm"
26325
26326	// HyperParameterTuningJobWarmStartTypeTransferLearning is a HyperParameterTuningJobWarmStartType enum value
26327	HyperParameterTuningJobWarmStartTypeTransferLearning = "TransferLearning"
26328)
26329
26330const (
26331	// InstanceTypeMlT2Medium is a InstanceType enum value
26332	InstanceTypeMlT2Medium = "ml.t2.medium"
26333
26334	// InstanceTypeMlT2Large is a InstanceType enum value
26335	InstanceTypeMlT2Large = "ml.t2.large"
26336
26337	// InstanceTypeMlT2Xlarge is a InstanceType enum value
26338	InstanceTypeMlT2Xlarge = "ml.t2.xlarge"
26339
26340	// InstanceTypeMlT22xlarge is a InstanceType enum value
26341	InstanceTypeMlT22xlarge = "ml.t2.2xlarge"
26342
26343	// InstanceTypeMlT3Medium is a InstanceType enum value
26344	InstanceTypeMlT3Medium = "ml.t3.medium"
26345
26346	// InstanceTypeMlT3Large is a InstanceType enum value
26347	InstanceTypeMlT3Large = "ml.t3.large"
26348
26349	// InstanceTypeMlT3Xlarge is a InstanceType enum value
26350	InstanceTypeMlT3Xlarge = "ml.t3.xlarge"
26351
26352	// InstanceTypeMlT32xlarge is a InstanceType enum value
26353	InstanceTypeMlT32xlarge = "ml.t3.2xlarge"
26354
26355	// InstanceTypeMlM4Xlarge is a InstanceType enum value
26356	InstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26357
26358	// InstanceTypeMlM42xlarge is a InstanceType enum value
26359	InstanceTypeMlM42xlarge = "ml.m4.2xlarge"
26360
26361	// InstanceTypeMlM44xlarge is a InstanceType enum value
26362	InstanceTypeMlM44xlarge = "ml.m4.4xlarge"
26363
26364	// InstanceTypeMlM410xlarge is a InstanceType enum value
26365	InstanceTypeMlM410xlarge = "ml.m4.10xlarge"
26366
26367	// InstanceTypeMlM416xlarge is a InstanceType enum value
26368	InstanceTypeMlM416xlarge = "ml.m4.16xlarge"
26369
26370	// InstanceTypeMlM5Xlarge is a InstanceType enum value
26371	InstanceTypeMlM5Xlarge = "ml.m5.xlarge"
26372
26373	// InstanceTypeMlM52xlarge is a InstanceType enum value
26374	InstanceTypeMlM52xlarge = "ml.m5.2xlarge"
26375
26376	// InstanceTypeMlM54xlarge is a InstanceType enum value
26377	InstanceTypeMlM54xlarge = "ml.m5.4xlarge"
26378
26379	// InstanceTypeMlM512xlarge is a InstanceType enum value
26380	InstanceTypeMlM512xlarge = "ml.m5.12xlarge"
26381
26382	// InstanceTypeMlM524xlarge is a InstanceType enum value
26383	InstanceTypeMlM524xlarge = "ml.m5.24xlarge"
26384
26385	// InstanceTypeMlC4Xlarge is a InstanceType enum value
26386	InstanceTypeMlC4Xlarge = "ml.c4.xlarge"
26387
26388	// InstanceTypeMlC42xlarge is a InstanceType enum value
26389	InstanceTypeMlC42xlarge = "ml.c4.2xlarge"
26390
26391	// InstanceTypeMlC44xlarge is a InstanceType enum value
26392	InstanceTypeMlC44xlarge = "ml.c4.4xlarge"
26393
26394	// InstanceTypeMlC48xlarge is a InstanceType enum value
26395	InstanceTypeMlC48xlarge = "ml.c4.8xlarge"
26396
26397	// InstanceTypeMlC5Xlarge is a InstanceType enum value
26398	InstanceTypeMlC5Xlarge = "ml.c5.xlarge"
26399
26400	// InstanceTypeMlC52xlarge is a InstanceType enum value
26401	InstanceTypeMlC52xlarge = "ml.c5.2xlarge"
26402
26403	// InstanceTypeMlC54xlarge is a InstanceType enum value
26404	InstanceTypeMlC54xlarge = "ml.c5.4xlarge"
26405
26406	// InstanceTypeMlC59xlarge is a InstanceType enum value
26407	InstanceTypeMlC59xlarge = "ml.c5.9xlarge"
26408
26409	// InstanceTypeMlC518xlarge is a InstanceType enum value
26410	InstanceTypeMlC518xlarge = "ml.c5.18xlarge"
26411
26412	// InstanceTypeMlC5dXlarge is a InstanceType enum value
26413	InstanceTypeMlC5dXlarge = "ml.c5d.xlarge"
26414
26415	// InstanceTypeMlC5d2xlarge is a InstanceType enum value
26416	InstanceTypeMlC5d2xlarge = "ml.c5d.2xlarge"
26417
26418	// InstanceTypeMlC5d4xlarge is a InstanceType enum value
26419	InstanceTypeMlC5d4xlarge = "ml.c5d.4xlarge"
26420
26421	// InstanceTypeMlC5d9xlarge is a InstanceType enum value
26422	InstanceTypeMlC5d9xlarge = "ml.c5d.9xlarge"
26423
26424	// InstanceTypeMlC5d18xlarge is a InstanceType enum value
26425	InstanceTypeMlC5d18xlarge = "ml.c5d.18xlarge"
26426
26427	// InstanceTypeMlP2Xlarge is a InstanceType enum value
26428	InstanceTypeMlP2Xlarge = "ml.p2.xlarge"
26429
26430	// InstanceTypeMlP28xlarge is a InstanceType enum value
26431	InstanceTypeMlP28xlarge = "ml.p2.8xlarge"
26432
26433	// InstanceTypeMlP216xlarge is a InstanceType enum value
26434	InstanceTypeMlP216xlarge = "ml.p2.16xlarge"
26435
26436	// InstanceTypeMlP32xlarge is a InstanceType enum value
26437	InstanceTypeMlP32xlarge = "ml.p3.2xlarge"
26438
26439	// InstanceTypeMlP38xlarge is a InstanceType enum value
26440	InstanceTypeMlP38xlarge = "ml.p3.8xlarge"
26441
26442	// InstanceTypeMlP316xlarge is a InstanceType enum value
26443	InstanceTypeMlP316xlarge = "ml.p3.16xlarge"
26444)
26445
26446const (
26447	// JoinSourceInput is a JoinSource enum value
26448	JoinSourceInput = "Input"
26449
26450	// JoinSourceNone is a JoinSource enum value
26451	JoinSourceNone = "None"
26452)
26453
26454const (
26455	// LabelingJobStatusInProgress is a LabelingJobStatus enum value
26456	LabelingJobStatusInProgress = "InProgress"
26457
26458	// LabelingJobStatusCompleted is a LabelingJobStatus enum value
26459	LabelingJobStatusCompleted = "Completed"
26460
26461	// LabelingJobStatusFailed is a LabelingJobStatus enum value
26462	LabelingJobStatusFailed = "Failed"
26463
26464	// LabelingJobStatusStopping is a LabelingJobStatus enum value
26465	LabelingJobStatusStopping = "Stopping"
26466
26467	// LabelingJobStatusStopped is a LabelingJobStatus enum value
26468	LabelingJobStatusStopped = "Stopped"
26469)
26470
26471const (
26472	// ListCompilationJobsSortByName is a ListCompilationJobsSortBy enum value
26473	ListCompilationJobsSortByName = "Name"
26474
26475	// ListCompilationJobsSortByCreationTime is a ListCompilationJobsSortBy enum value
26476	ListCompilationJobsSortByCreationTime = "CreationTime"
26477
26478	// ListCompilationJobsSortByStatus is a ListCompilationJobsSortBy enum value
26479	ListCompilationJobsSortByStatus = "Status"
26480)
26481
26482const (
26483	// ListLabelingJobsForWorkteamSortByOptionsCreationTime is a ListLabelingJobsForWorkteamSortByOptions enum value
26484	ListLabelingJobsForWorkteamSortByOptionsCreationTime = "CreationTime"
26485)
26486
26487const (
26488	// ListWorkteamsSortByOptionsName is a ListWorkteamsSortByOptions enum value
26489	ListWorkteamsSortByOptionsName = "Name"
26490
26491	// ListWorkteamsSortByOptionsCreateDate is a ListWorkteamsSortByOptions enum value
26492	ListWorkteamsSortByOptionsCreateDate = "CreateDate"
26493)
26494
26495const (
26496	// ModelPackageSortByName is a ModelPackageSortBy enum value
26497	ModelPackageSortByName = "Name"
26498
26499	// ModelPackageSortByCreationTime is a ModelPackageSortBy enum value
26500	ModelPackageSortByCreationTime = "CreationTime"
26501)
26502
26503const (
26504	// ModelPackageStatusPending is a ModelPackageStatus enum value
26505	ModelPackageStatusPending = "Pending"
26506
26507	// ModelPackageStatusInProgress is a ModelPackageStatus enum value
26508	ModelPackageStatusInProgress = "InProgress"
26509
26510	// ModelPackageStatusCompleted is a ModelPackageStatus enum value
26511	ModelPackageStatusCompleted = "Completed"
26512
26513	// ModelPackageStatusFailed is a ModelPackageStatus enum value
26514	ModelPackageStatusFailed = "Failed"
26515
26516	// ModelPackageStatusDeleting is a ModelPackageStatus enum value
26517	ModelPackageStatusDeleting = "Deleting"
26518)
26519
26520const (
26521	// ModelSortKeyName is a ModelSortKey enum value
26522	ModelSortKeyName = "Name"
26523
26524	// ModelSortKeyCreationTime is a ModelSortKey enum value
26525	ModelSortKeyCreationTime = "CreationTime"
26526)
26527
26528const (
26529	// NotebookInstanceAcceleratorTypeMlEia1Medium is a NotebookInstanceAcceleratorType enum value
26530	NotebookInstanceAcceleratorTypeMlEia1Medium = "ml.eia1.medium"
26531
26532	// NotebookInstanceAcceleratorTypeMlEia1Large is a NotebookInstanceAcceleratorType enum value
26533	NotebookInstanceAcceleratorTypeMlEia1Large = "ml.eia1.large"
26534
26535	// NotebookInstanceAcceleratorTypeMlEia1Xlarge is a NotebookInstanceAcceleratorType enum value
26536	NotebookInstanceAcceleratorTypeMlEia1Xlarge = "ml.eia1.xlarge"
26537)
26538
26539const (
26540	// NotebookInstanceLifecycleConfigSortKeyName is a NotebookInstanceLifecycleConfigSortKey enum value
26541	NotebookInstanceLifecycleConfigSortKeyName = "Name"
26542
26543	// NotebookInstanceLifecycleConfigSortKeyCreationTime is a NotebookInstanceLifecycleConfigSortKey enum value
26544	NotebookInstanceLifecycleConfigSortKeyCreationTime = "CreationTime"
26545
26546	// NotebookInstanceLifecycleConfigSortKeyLastModifiedTime is a NotebookInstanceLifecycleConfigSortKey enum value
26547	NotebookInstanceLifecycleConfigSortKeyLastModifiedTime = "LastModifiedTime"
26548)
26549
26550const (
26551	// NotebookInstanceLifecycleConfigSortOrderAscending is a NotebookInstanceLifecycleConfigSortOrder enum value
26552	NotebookInstanceLifecycleConfigSortOrderAscending = "Ascending"
26553
26554	// NotebookInstanceLifecycleConfigSortOrderDescending is a NotebookInstanceLifecycleConfigSortOrder enum value
26555	NotebookInstanceLifecycleConfigSortOrderDescending = "Descending"
26556)
26557
26558const (
26559	// NotebookInstanceSortKeyName is a NotebookInstanceSortKey enum value
26560	NotebookInstanceSortKeyName = "Name"
26561
26562	// NotebookInstanceSortKeyCreationTime is a NotebookInstanceSortKey enum value
26563	NotebookInstanceSortKeyCreationTime = "CreationTime"
26564
26565	// NotebookInstanceSortKeyStatus is a NotebookInstanceSortKey enum value
26566	NotebookInstanceSortKeyStatus = "Status"
26567)
26568
26569const (
26570	// NotebookInstanceSortOrderAscending is a NotebookInstanceSortOrder enum value
26571	NotebookInstanceSortOrderAscending = "Ascending"
26572
26573	// NotebookInstanceSortOrderDescending is a NotebookInstanceSortOrder enum value
26574	NotebookInstanceSortOrderDescending = "Descending"
26575)
26576
26577const (
26578	// NotebookInstanceStatusPending is a NotebookInstanceStatus enum value
26579	NotebookInstanceStatusPending = "Pending"
26580
26581	// NotebookInstanceStatusInService is a NotebookInstanceStatus enum value
26582	NotebookInstanceStatusInService = "InService"
26583
26584	// NotebookInstanceStatusStopping is a NotebookInstanceStatus enum value
26585	NotebookInstanceStatusStopping = "Stopping"
26586
26587	// NotebookInstanceStatusStopped is a NotebookInstanceStatus enum value
26588	NotebookInstanceStatusStopped = "Stopped"
26589
26590	// NotebookInstanceStatusFailed is a NotebookInstanceStatus enum value
26591	NotebookInstanceStatusFailed = "Failed"
26592
26593	// NotebookInstanceStatusDeleting is a NotebookInstanceStatus enum value
26594	NotebookInstanceStatusDeleting = "Deleting"
26595
26596	// NotebookInstanceStatusUpdating is a NotebookInstanceStatus enum value
26597	NotebookInstanceStatusUpdating = "Updating"
26598)
26599
26600const (
26601	// ObjectiveStatusSucceeded is a ObjectiveStatus enum value
26602	ObjectiveStatusSucceeded = "Succeeded"
26603
26604	// ObjectiveStatusPending is a ObjectiveStatus enum value
26605	ObjectiveStatusPending = "Pending"
26606
26607	// ObjectiveStatusFailed is a ObjectiveStatus enum value
26608	ObjectiveStatusFailed = "Failed"
26609)
26610
26611const (
26612	// OperatorEquals is a Operator enum value
26613	OperatorEquals = "Equals"
26614
26615	// OperatorNotEquals is a Operator enum value
26616	OperatorNotEquals = "NotEquals"
26617
26618	// OperatorGreaterThan is a Operator enum value
26619	OperatorGreaterThan = "GreaterThan"
26620
26621	// OperatorGreaterThanOrEqualTo is a Operator enum value
26622	OperatorGreaterThanOrEqualTo = "GreaterThanOrEqualTo"
26623
26624	// OperatorLessThan is a Operator enum value
26625	OperatorLessThan = "LessThan"
26626
26627	// OperatorLessThanOrEqualTo is a Operator enum value
26628	OperatorLessThanOrEqualTo = "LessThanOrEqualTo"
26629
26630	// OperatorContains is a Operator enum value
26631	OperatorContains = "Contains"
26632)
26633
26634const (
26635	// OrderKeyAscending is a OrderKey enum value
26636	OrderKeyAscending = "Ascending"
26637
26638	// OrderKeyDescending is a OrderKey enum value
26639	OrderKeyDescending = "Descending"
26640)
26641
26642const (
26643	// ParameterTypeInteger is a ParameterType enum value
26644	ParameterTypeInteger = "Integer"
26645
26646	// ParameterTypeContinuous is a ParameterType enum value
26647	ParameterTypeContinuous = "Continuous"
26648
26649	// ParameterTypeCategorical is a ParameterType enum value
26650	ParameterTypeCategorical = "Categorical"
26651
26652	// ParameterTypeFreeText is a ParameterType enum value
26653	ParameterTypeFreeText = "FreeText"
26654)
26655
26656const (
26657	// ProductionVariantAcceleratorTypeMlEia1Medium is a ProductionVariantAcceleratorType enum value
26658	ProductionVariantAcceleratorTypeMlEia1Medium = "ml.eia1.medium"
26659
26660	// ProductionVariantAcceleratorTypeMlEia1Large is a ProductionVariantAcceleratorType enum value
26661	ProductionVariantAcceleratorTypeMlEia1Large = "ml.eia1.large"
26662
26663	// ProductionVariantAcceleratorTypeMlEia1Xlarge is a ProductionVariantAcceleratorType enum value
26664	ProductionVariantAcceleratorTypeMlEia1Xlarge = "ml.eia1.xlarge"
26665)
26666
26667const (
26668	// ProductionVariantInstanceTypeMlT2Medium is a ProductionVariantInstanceType enum value
26669	ProductionVariantInstanceTypeMlT2Medium = "ml.t2.medium"
26670
26671	// ProductionVariantInstanceTypeMlT2Large is a ProductionVariantInstanceType enum value
26672	ProductionVariantInstanceTypeMlT2Large = "ml.t2.large"
26673
26674	// ProductionVariantInstanceTypeMlT2Xlarge is a ProductionVariantInstanceType enum value
26675	ProductionVariantInstanceTypeMlT2Xlarge = "ml.t2.xlarge"
26676
26677	// ProductionVariantInstanceTypeMlT22xlarge is a ProductionVariantInstanceType enum value
26678	ProductionVariantInstanceTypeMlT22xlarge = "ml.t2.2xlarge"
26679
26680	// ProductionVariantInstanceTypeMlM4Xlarge is a ProductionVariantInstanceType enum value
26681	ProductionVariantInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26682
26683	// ProductionVariantInstanceTypeMlM42xlarge is a ProductionVariantInstanceType enum value
26684	ProductionVariantInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
26685
26686	// ProductionVariantInstanceTypeMlM44xlarge is a ProductionVariantInstanceType enum value
26687	ProductionVariantInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
26688
26689	// ProductionVariantInstanceTypeMlM410xlarge is a ProductionVariantInstanceType enum value
26690	ProductionVariantInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
26691
26692	// ProductionVariantInstanceTypeMlM416xlarge is a ProductionVariantInstanceType enum value
26693	ProductionVariantInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
26694
26695	// ProductionVariantInstanceTypeMlM5Large is a ProductionVariantInstanceType enum value
26696	ProductionVariantInstanceTypeMlM5Large = "ml.m5.large"
26697
26698	// ProductionVariantInstanceTypeMlM5Xlarge is a ProductionVariantInstanceType enum value
26699	ProductionVariantInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
26700
26701	// ProductionVariantInstanceTypeMlM52xlarge is a ProductionVariantInstanceType enum value
26702	ProductionVariantInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
26703
26704	// ProductionVariantInstanceTypeMlM54xlarge is a ProductionVariantInstanceType enum value
26705	ProductionVariantInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
26706
26707	// ProductionVariantInstanceTypeMlM512xlarge is a ProductionVariantInstanceType enum value
26708	ProductionVariantInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
26709
26710	// ProductionVariantInstanceTypeMlM524xlarge is a ProductionVariantInstanceType enum value
26711	ProductionVariantInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
26712
26713	// ProductionVariantInstanceTypeMlC4Large is a ProductionVariantInstanceType enum value
26714	ProductionVariantInstanceTypeMlC4Large = "ml.c4.large"
26715
26716	// ProductionVariantInstanceTypeMlC4Xlarge is a ProductionVariantInstanceType enum value
26717	ProductionVariantInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
26718
26719	// ProductionVariantInstanceTypeMlC42xlarge is a ProductionVariantInstanceType enum value
26720	ProductionVariantInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
26721
26722	// ProductionVariantInstanceTypeMlC44xlarge is a ProductionVariantInstanceType enum value
26723	ProductionVariantInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
26724
26725	// ProductionVariantInstanceTypeMlC48xlarge is a ProductionVariantInstanceType enum value
26726	ProductionVariantInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
26727
26728	// ProductionVariantInstanceTypeMlP2Xlarge is a ProductionVariantInstanceType enum value
26729	ProductionVariantInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
26730
26731	// ProductionVariantInstanceTypeMlP28xlarge is a ProductionVariantInstanceType enum value
26732	ProductionVariantInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
26733
26734	// ProductionVariantInstanceTypeMlP216xlarge is a ProductionVariantInstanceType enum value
26735	ProductionVariantInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
26736
26737	// ProductionVariantInstanceTypeMlP32xlarge is a ProductionVariantInstanceType enum value
26738	ProductionVariantInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
26739
26740	// ProductionVariantInstanceTypeMlP38xlarge is a ProductionVariantInstanceType enum value
26741	ProductionVariantInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
26742
26743	// ProductionVariantInstanceTypeMlP316xlarge is a ProductionVariantInstanceType enum value
26744	ProductionVariantInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
26745
26746	// ProductionVariantInstanceTypeMlC5Large is a ProductionVariantInstanceType enum value
26747	ProductionVariantInstanceTypeMlC5Large = "ml.c5.large"
26748
26749	// ProductionVariantInstanceTypeMlC5Xlarge is a ProductionVariantInstanceType enum value
26750	ProductionVariantInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
26751
26752	// ProductionVariantInstanceTypeMlC52xlarge is a ProductionVariantInstanceType enum value
26753	ProductionVariantInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
26754
26755	// ProductionVariantInstanceTypeMlC54xlarge is a ProductionVariantInstanceType enum value
26756	ProductionVariantInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
26757
26758	// ProductionVariantInstanceTypeMlC59xlarge is a ProductionVariantInstanceType enum value
26759	ProductionVariantInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
26760
26761	// ProductionVariantInstanceTypeMlC518xlarge is a ProductionVariantInstanceType enum value
26762	ProductionVariantInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
26763)
26764
26765const (
26766	// RecordWrapperNone is a RecordWrapper enum value
26767	RecordWrapperNone = "None"
26768
26769	// RecordWrapperRecordIo is a RecordWrapper enum value
26770	RecordWrapperRecordIo = "RecordIO"
26771)
26772
26773const (
26774	// ResourceTypeTrainingJob is a ResourceType enum value
26775	ResourceTypeTrainingJob = "TrainingJob"
26776)
26777
26778const (
26779	// RootAccessEnabled is a RootAccess enum value
26780	RootAccessEnabled = "Enabled"
26781
26782	// RootAccessDisabled is a RootAccess enum value
26783	RootAccessDisabled = "Disabled"
26784)
26785
26786const (
26787	// S3DataDistributionFullyReplicated is a S3DataDistribution enum value
26788	S3DataDistributionFullyReplicated = "FullyReplicated"
26789
26790	// S3DataDistributionShardedByS3key is a S3DataDistribution enum value
26791	S3DataDistributionShardedByS3key = "ShardedByS3Key"
26792)
26793
26794const (
26795	// S3DataTypeManifestFile is a S3DataType enum value
26796	S3DataTypeManifestFile = "ManifestFile"
26797
26798	// S3DataTypeS3prefix is a S3DataType enum value
26799	S3DataTypeS3prefix = "S3Prefix"
26800
26801	// S3DataTypeAugmentedManifestFile is a S3DataType enum value
26802	S3DataTypeAugmentedManifestFile = "AugmentedManifestFile"
26803)
26804
26805const (
26806	// SearchSortOrderAscending is a SearchSortOrder enum value
26807	SearchSortOrderAscending = "Ascending"
26808
26809	// SearchSortOrderDescending is a SearchSortOrder enum value
26810	SearchSortOrderDescending = "Descending"
26811)
26812
26813const (
26814	// SecondaryStatusStarting is a SecondaryStatus enum value
26815	SecondaryStatusStarting = "Starting"
26816
26817	// SecondaryStatusLaunchingMlinstances is a SecondaryStatus enum value
26818	SecondaryStatusLaunchingMlinstances = "LaunchingMLInstances"
26819
26820	// SecondaryStatusPreparingTrainingStack is a SecondaryStatus enum value
26821	SecondaryStatusPreparingTrainingStack = "PreparingTrainingStack"
26822
26823	// SecondaryStatusDownloading is a SecondaryStatus enum value
26824	SecondaryStatusDownloading = "Downloading"
26825
26826	// SecondaryStatusDownloadingTrainingImage is a SecondaryStatus enum value
26827	SecondaryStatusDownloadingTrainingImage = "DownloadingTrainingImage"
26828
26829	// SecondaryStatusTraining is a SecondaryStatus enum value
26830	SecondaryStatusTraining = "Training"
26831
26832	// SecondaryStatusUploading is a SecondaryStatus enum value
26833	SecondaryStatusUploading = "Uploading"
26834
26835	// SecondaryStatusStopping is a SecondaryStatus enum value
26836	SecondaryStatusStopping = "Stopping"
26837
26838	// SecondaryStatusStopped is a SecondaryStatus enum value
26839	SecondaryStatusStopped = "Stopped"
26840
26841	// SecondaryStatusMaxRuntimeExceeded is a SecondaryStatus enum value
26842	SecondaryStatusMaxRuntimeExceeded = "MaxRuntimeExceeded"
26843
26844	// SecondaryStatusCompleted is a SecondaryStatus enum value
26845	SecondaryStatusCompleted = "Completed"
26846
26847	// SecondaryStatusFailed is a SecondaryStatus enum value
26848	SecondaryStatusFailed = "Failed"
26849
26850	// SecondaryStatusInterrupted is a SecondaryStatus enum value
26851	SecondaryStatusInterrupted = "Interrupted"
26852
26853	// SecondaryStatusMaxWaitTimeExceeded is a SecondaryStatus enum value
26854	SecondaryStatusMaxWaitTimeExceeded = "MaxWaitTimeExceeded"
26855)
26856
26857const (
26858	// SortByName is a SortBy enum value
26859	SortByName = "Name"
26860
26861	// SortByCreationTime is a SortBy enum value
26862	SortByCreationTime = "CreationTime"
26863
26864	// SortByStatus is a SortBy enum value
26865	SortByStatus = "Status"
26866)
26867
26868const (
26869	// SortOrderAscending is a SortOrder enum value
26870	SortOrderAscending = "Ascending"
26871
26872	// SortOrderDescending is a SortOrder enum value
26873	SortOrderDescending = "Descending"
26874)
26875
26876const (
26877	// SplitTypeNone is a SplitType enum value
26878	SplitTypeNone = "None"
26879
26880	// SplitTypeLine is a SplitType enum value
26881	SplitTypeLine = "Line"
26882
26883	// SplitTypeRecordIo is a SplitType enum value
26884	SplitTypeRecordIo = "RecordIO"
26885
26886	// SplitTypeTfrecord is a SplitType enum value
26887	SplitTypeTfrecord = "TFRecord"
26888)
26889
26890const (
26891	// TargetDeviceLambda is a TargetDevice enum value
26892	TargetDeviceLambda = "lambda"
26893
26894	// TargetDeviceMlM4 is a TargetDevice enum value
26895	TargetDeviceMlM4 = "ml_m4"
26896
26897	// TargetDeviceMlM5 is a TargetDevice enum value
26898	TargetDeviceMlM5 = "ml_m5"
26899
26900	// TargetDeviceMlC4 is a TargetDevice enum value
26901	TargetDeviceMlC4 = "ml_c4"
26902
26903	// TargetDeviceMlC5 is a TargetDevice enum value
26904	TargetDeviceMlC5 = "ml_c5"
26905
26906	// TargetDeviceMlP2 is a TargetDevice enum value
26907	TargetDeviceMlP2 = "ml_p2"
26908
26909	// TargetDeviceMlP3 is a TargetDevice enum value
26910	TargetDeviceMlP3 = "ml_p3"
26911
26912	// TargetDeviceJetsonTx1 is a TargetDevice enum value
26913	TargetDeviceJetsonTx1 = "jetson_tx1"
26914
26915	// TargetDeviceJetsonTx2 is a TargetDevice enum value
26916	TargetDeviceJetsonTx2 = "jetson_tx2"
26917
26918	// TargetDeviceJetsonNano is a TargetDevice enum value
26919	TargetDeviceJetsonNano = "jetson_nano"
26920
26921	// TargetDeviceRasp3b is a TargetDevice enum value
26922	TargetDeviceRasp3b = "rasp3b"
26923
26924	// TargetDeviceDeeplens is a TargetDevice enum value
26925	TargetDeviceDeeplens = "deeplens"
26926
26927	// TargetDeviceRk3399 is a TargetDevice enum value
26928	TargetDeviceRk3399 = "rk3399"
26929
26930	// TargetDeviceRk3288 is a TargetDevice enum value
26931	TargetDeviceRk3288 = "rk3288"
26932
26933	// TargetDeviceAisage is a TargetDevice enum value
26934	TargetDeviceAisage = "aisage"
26935
26936	// TargetDeviceSbeC is a TargetDevice enum value
26937	TargetDeviceSbeC = "sbe_c"
26938
26939	// TargetDeviceQcs605 is a TargetDevice enum value
26940	TargetDeviceQcs605 = "qcs605"
26941
26942	// TargetDeviceQcs603 is a TargetDevice enum value
26943	TargetDeviceQcs603 = "qcs603"
26944)
26945
26946const (
26947	// TrainingInputModePipe is a TrainingInputMode enum value
26948	TrainingInputModePipe = "Pipe"
26949
26950	// TrainingInputModeFile is a TrainingInputMode enum value
26951	TrainingInputModeFile = "File"
26952)
26953
26954const (
26955	// TrainingInstanceTypeMlM4Xlarge is a TrainingInstanceType enum value
26956	TrainingInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
26957
26958	// TrainingInstanceTypeMlM42xlarge is a TrainingInstanceType enum value
26959	TrainingInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
26960
26961	// TrainingInstanceTypeMlM44xlarge is a TrainingInstanceType enum value
26962	TrainingInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
26963
26964	// TrainingInstanceTypeMlM410xlarge is a TrainingInstanceType enum value
26965	TrainingInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
26966
26967	// TrainingInstanceTypeMlM416xlarge is a TrainingInstanceType enum value
26968	TrainingInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
26969
26970	// TrainingInstanceTypeMlM5Large is a TrainingInstanceType enum value
26971	TrainingInstanceTypeMlM5Large = "ml.m5.large"
26972
26973	// TrainingInstanceTypeMlM5Xlarge is a TrainingInstanceType enum value
26974	TrainingInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
26975
26976	// TrainingInstanceTypeMlM52xlarge is a TrainingInstanceType enum value
26977	TrainingInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
26978
26979	// TrainingInstanceTypeMlM54xlarge is a TrainingInstanceType enum value
26980	TrainingInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
26981
26982	// TrainingInstanceTypeMlM512xlarge is a TrainingInstanceType enum value
26983	TrainingInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
26984
26985	// TrainingInstanceTypeMlM524xlarge is a TrainingInstanceType enum value
26986	TrainingInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
26987
26988	// TrainingInstanceTypeMlC4Xlarge is a TrainingInstanceType enum value
26989	TrainingInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
26990
26991	// TrainingInstanceTypeMlC42xlarge is a TrainingInstanceType enum value
26992	TrainingInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
26993
26994	// TrainingInstanceTypeMlC44xlarge is a TrainingInstanceType enum value
26995	TrainingInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
26996
26997	// TrainingInstanceTypeMlC48xlarge is a TrainingInstanceType enum value
26998	TrainingInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
26999
27000	// TrainingInstanceTypeMlP2Xlarge is a TrainingInstanceType enum value
27001	TrainingInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
27002
27003	// TrainingInstanceTypeMlP28xlarge is a TrainingInstanceType enum value
27004	TrainingInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
27005
27006	// TrainingInstanceTypeMlP216xlarge is a TrainingInstanceType enum value
27007	TrainingInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
27008
27009	// TrainingInstanceTypeMlP32xlarge is a TrainingInstanceType enum value
27010	TrainingInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
27011
27012	// TrainingInstanceTypeMlP38xlarge is a TrainingInstanceType enum value
27013	TrainingInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
27014
27015	// TrainingInstanceTypeMlP316xlarge is a TrainingInstanceType enum value
27016	TrainingInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
27017
27018	// TrainingInstanceTypeMlC5Xlarge is a TrainingInstanceType enum value
27019	TrainingInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
27020
27021	// TrainingInstanceTypeMlC52xlarge is a TrainingInstanceType enum value
27022	TrainingInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
27023
27024	// TrainingInstanceTypeMlC54xlarge is a TrainingInstanceType enum value
27025	TrainingInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
27026
27027	// TrainingInstanceTypeMlC59xlarge is a TrainingInstanceType enum value
27028	TrainingInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
27029
27030	// TrainingInstanceTypeMlC518xlarge is a TrainingInstanceType enum value
27031	TrainingInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
27032
27033	// TrainingInstanceTypeMlP3dn24xlarge is a TrainingInstanceType enum value
27034	TrainingInstanceTypeMlP3dn24xlarge = "ml.p3dn.24xlarge"
27035)
27036
27037const (
27038	// TrainingJobEarlyStoppingTypeOff is a TrainingJobEarlyStoppingType enum value
27039	TrainingJobEarlyStoppingTypeOff = "Off"
27040
27041	// TrainingJobEarlyStoppingTypeAuto is a TrainingJobEarlyStoppingType enum value
27042	TrainingJobEarlyStoppingTypeAuto = "Auto"
27043)
27044
27045const (
27046	// TrainingJobSortByOptionsName is a TrainingJobSortByOptions enum value
27047	TrainingJobSortByOptionsName = "Name"
27048
27049	// TrainingJobSortByOptionsCreationTime is a TrainingJobSortByOptions enum value
27050	TrainingJobSortByOptionsCreationTime = "CreationTime"
27051
27052	// TrainingJobSortByOptionsStatus is a TrainingJobSortByOptions enum value
27053	TrainingJobSortByOptionsStatus = "Status"
27054
27055	// TrainingJobSortByOptionsFinalObjectiveMetricValue is a TrainingJobSortByOptions enum value
27056	TrainingJobSortByOptionsFinalObjectiveMetricValue = "FinalObjectiveMetricValue"
27057)
27058
27059const (
27060	// TrainingJobStatusInProgress is a TrainingJobStatus enum value
27061	TrainingJobStatusInProgress = "InProgress"
27062
27063	// TrainingJobStatusCompleted is a TrainingJobStatus enum value
27064	TrainingJobStatusCompleted = "Completed"
27065
27066	// TrainingJobStatusFailed is a TrainingJobStatus enum value
27067	TrainingJobStatusFailed = "Failed"
27068
27069	// TrainingJobStatusStopping is a TrainingJobStatus enum value
27070	TrainingJobStatusStopping = "Stopping"
27071
27072	// TrainingJobStatusStopped is a TrainingJobStatus enum value
27073	TrainingJobStatusStopped = "Stopped"
27074)
27075
27076const (
27077	// TransformInstanceTypeMlM4Xlarge is a TransformInstanceType enum value
27078	TransformInstanceTypeMlM4Xlarge = "ml.m4.xlarge"
27079
27080	// TransformInstanceTypeMlM42xlarge is a TransformInstanceType enum value
27081	TransformInstanceTypeMlM42xlarge = "ml.m4.2xlarge"
27082
27083	// TransformInstanceTypeMlM44xlarge is a TransformInstanceType enum value
27084	TransformInstanceTypeMlM44xlarge = "ml.m4.4xlarge"
27085
27086	// TransformInstanceTypeMlM410xlarge is a TransformInstanceType enum value
27087	TransformInstanceTypeMlM410xlarge = "ml.m4.10xlarge"
27088
27089	// TransformInstanceTypeMlM416xlarge is a TransformInstanceType enum value
27090	TransformInstanceTypeMlM416xlarge = "ml.m4.16xlarge"
27091
27092	// TransformInstanceTypeMlC4Xlarge is a TransformInstanceType enum value
27093	TransformInstanceTypeMlC4Xlarge = "ml.c4.xlarge"
27094
27095	// TransformInstanceTypeMlC42xlarge is a TransformInstanceType enum value
27096	TransformInstanceTypeMlC42xlarge = "ml.c4.2xlarge"
27097
27098	// TransformInstanceTypeMlC44xlarge is a TransformInstanceType enum value
27099	TransformInstanceTypeMlC44xlarge = "ml.c4.4xlarge"
27100
27101	// TransformInstanceTypeMlC48xlarge is a TransformInstanceType enum value
27102	TransformInstanceTypeMlC48xlarge = "ml.c4.8xlarge"
27103
27104	// TransformInstanceTypeMlP2Xlarge is a TransformInstanceType enum value
27105	TransformInstanceTypeMlP2Xlarge = "ml.p2.xlarge"
27106
27107	// TransformInstanceTypeMlP28xlarge is a TransformInstanceType enum value
27108	TransformInstanceTypeMlP28xlarge = "ml.p2.8xlarge"
27109
27110	// TransformInstanceTypeMlP216xlarge is a TransformInstanceType enum value
27111	TransformInstanceTypeMlP216xlarge = "ml.p2.16xlarge"
27112
27113	// TransformInstanceTypeMlP32xlarge is a TransformInstanceType enum value
27114	TransformInstanceTypeMlP32xlarge = "ml.p3.2xlarge"
27115
27116	// TransformInstanceTypeMlP38xlarge is a TransformInstanceType enum value
27117	TransformInstanceTypeMlP38xlarge = "ml.p3.8xlarge"
27118
27119	// TransformInstanceTypeMlP316xlarge is a TransformInstanceType enum value
27120	TransformInstanceTypeMlP316xlarge = "ml.p3.16xlarge"
27121
27122	// TransformInstanceTypeMlC5Xlarge is a TransformInstanceType enum value
27123	TransformInstanceTypeMlC5Xlarge = "ml.c5.xlarge"
27124
27125	// TransformInstanceTypeMlC52xlarge is a TransformInstanceType enum value
27126	TransformInstanceTypeMlC52xlarge = "ml.c5.2xlarge"
27127
27128	// TransformInstanceTypeMlC54xlarge is a TransformInstanceType enum value
27129	TransformInstanceTypeMlC54xlarge = "ml.c5.4xlarge"
27130
27131	// TransformInstanceTypeMlC59xlarge is a TransformInstanceType enum value
27132	TransformInstanceTypeMlC59xlarge = "ml.c5.9xlarge"
27133
27134	// TransformInstanceTypeMlC518xlarge is a TransformInstanceType enum value
27135	TransformInstanceTypeMlC518xlarge = "ml.c5.18xlarge"
27136
27137	// TransformInstanceTypeMlM5Large is a TransformInstanceType enum value
27138	TransformInstanceTypeMlM5Large = "ml.m5.large"
27139
27140	// TransformInstanceTypeMlM5Xlarge is a TransformInstanceType enum value
27141	TransformInstanceTypeMlM5Xlarge = "ml.m5.xlarge"
27142
27143	// TransformInstanceTypeMlM52xlarge is a TransformInstanceType enum value
27144	TransformInstanceTypeMlM52xlarge = "ml.m5.2xlarge"
27145
27146	// TransformInstanceTypeMlM54xlarge is a TransformInstanceType enum value
27147	TransformInstanceTypeMlM54xlarge = "ml.m5.4xlarge"
27148
27149	// TransformInstanceTypeMlM512xlarge is a TransformInstanceType enum value
27150	TransformInstanceTypeMlM512xlarge = "ml.m5.12xlarge"
27151
27152	// TransformInstanceTypeMlM524xlarge is a TransformInstanceType enum value
27153	TransformInstanceTypeMlM524xlarge = "ml.m5.24xlarge"
27154)
27155
27156const (
27157	// TransformJobStatusInProgress is a TransformJobStatus enum value
27158	TransformJobStatusInProgress = "InProgress"
27159
27160	// TransformJobStatusCompleted is a TransformJobStatus enum value
27161	TransformJobStatusCompleted = "Completed"
27162
27163	// TransformJobStatusFailed is a TransformJobStatus enum value
27164	TransformJobStatusFailed = "Failed"
27165
27166	// TransformJobStatusStopping is a TransformJobStatus enum value
27167	TransformJobStatusStopping = "Stopping"
27168
27169	// TransformJobStatusStopped is a TransformJobStatus enum value
27170	TransformJobStatusStopped = "Stopped"
27171)
27172