/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the sagemaker-2017-07-24.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.SageMaker.Model
{
///
/// Container for the parameters to the CreateAutoMLJob operation.
/// Creates an Autopilot job also referred to as Autopilot experiment or AutoML job.
///
///
///
/// We recommend using the new versions CreateAutoMLJobV2
/// and DescribeAutoMLJobV2,
/// which offer backward compatibility.
///
///
///
/// CreateAutoMLJobV2
can manage tabular problem types identical to those
/// of its previous version CreateAutoMLJob
, as well as non-tabular problem
/// types such as image or text classification.
///
///
///
/// Find guidelines about how to migrate a CreateAutoMLJob
to CreateAutoMLJobV2
/// in Migrate
/// a CreateAutoMLJob to CreateAutoMLJobV2.
///
///
///
/// You can find the best-performing model after you run an AutoML job by calling DescribeAutoMLJobV2
/// (recommended) or DescribeAutoMLJob.
///
///
public partial class CreateAutoMLJobRequest : AmazonSageMakerRequest
{
private AutoMLJobConfig _autoMLJobConfig;
private string _autoMLJobName;
private AutoMLJobObjective _autoMLJobObjective;
private bool? _generateCandidateDefinitionsOnly;
private List _inputDataConfig = new List();
private ModelDeployConfig _modelDeployConfig;
private AutoMLOutputDataConfig _outputDataConfig;
private ProblemType _problemType;
private string _roleArn;
private List _tags = new List();
///
/// Gets and sets the property AutoMLJobConfig.
///
/// A collection of settings used to configure an AutoML job.
///
///
public AutoMLJobConfig AutoMLJobConfig
{
get { return this._autoMLJobConfig; }
set { this._autoMLJobConfig = value; }
}
// Check to see if AutoMLJobConfig property is set
internal bool IsSetAutoMLJobConfig()
{
return this._autoMLJobConfig != null;
}
///
/// Gets and sets the property AutoMLJobName.
///
/// Identifies an Autopilot job. The name must be unique to your account and is case insensitive.
///
///
[AWSProperty(Required=true, Min=1, Max=32)]
public string AutoMLJobName
{
get { return this._autoMLJobName; }
set { this._autoMLJobName = value; }
}
// Check to see if AutoMLJobName property is set
internal bool IsSetAutoMLJobName()
{
return this._autoMLJobName != null;
}
///
/// Gets and sets the property AutoMLJobObjective.
///
/// Specifies a metric to minimize or maximize as the objective of a job. If not specified,
/// the default objective metric depends on the problem type. See AutoMLJobObjective
/// for the default values.
///
///
public AutoMLJobObjective AutoMLJobObjective
{
get { return this._autoMLJobObjective; }
set { this._autoMLJobObjective = value; }
}
// Check to see if AutoMLJobObjective property is set
internal bool IsSetAutoMLJobObjective()
{
return this._autoMLJobObjective != null;
}
///
/// Gets and sets the property GenerateCandidateDefinitionsOnly.
///
/// Generates possible candidates without training the models. A candidate is a combination
/// of data preprocessors, algorithms, and algorithm parameter settings.
///
///
public bool GenerateCandidateDefinitionsOnly
{
get { return this._generateCandidateDefinitionsOnly.GetValueOrDefault(); }
set { this._generateCandidateDefinitionsOnly = value; }
}
// Check to see if GenerateCandidateDefinitionsOnly property is set
internal bool IsSetGenerateCandidateDefinitionsOnly()
{
return this._generateCandidateDefinitionsOnly.HasValue;
}
///
/// Gets and sets the property InputDataConfig.
///
/// An array of channel objects that describes the input data and its location. Each channel
/// is a named input source. Similar to InputDataConfig
supported by HyperParameterTrainingJobDefinition.
/// Format(s) supported: CSV, Parquet. A minimum of 500 rows is required for the training
/// dataset. There is not a minimum number of rows required for the validation dataset.
///
///
[AWSProperty(Required=true, Min=1, Max=2)]
public List InputDataConfig
{
get { return this._inputDataConfig; }
set { this._inputDataConfig = value; }
}
// Check to see if InputDataConfig property is set
internal bool IsSetInputDataConfig()
{
return this._inputDataConfig != null && this._inputDataConfig.Count > 0;
}
///
/// Gets and sets the property ModelDeployConfig.
///
/// Specifies how to generate the endpoint name for an automatic one-click Autopilot model
/// deployment.
///
///
public ModelDeployConfig ModelDeployConfig
{
get { return this._modelDeployConfig; }
set { this._modelDeployConfig = value; }
}
// Check to see if ModelDeployConfig property is set
internal bool IsSetModelDeployConfig()
{
return this._modelDeployConfig != null;
}
///
/// Gets and sets the property OutputDataConfig.
///
/// Provides information about encryption and the Amazon S3 output path needed to store
/// artifacts from an AutoML job. Format(s) supported: CSV.
///
///
[AWSProperty(Required=true)]
public AutoMLOutputDataConfig OutputDataConfig
{
get { return this._outputDataConfig; }
set { this._outputDataConfig = value; }
}
// Check to see if OutputDataConfig property is set
internal bool IsSetOutputDataConfig()
{
return this._outputDataConfig != null;
}
///
/// Gets and sets the property ProblemType.
///
/// Defines the type of supervised learning problem available for the candidates. For
/// more information, see
/// Amazon SageMaker Autopilot problem types.
///
///
public ProblemType ProblemType
{
get { return this._problemType; }
set { this._problemType = value; }
}
// Check to see if ProblemType property is set
internal bool IsSetProblemType()
{
return this._problemType != null;
}
///
/// Gets and sets the property RoleArn.
///
/// The ARN of the role that is used to access the data.
///
///
[AWSProperty(Required=true, Min=20, Max=2048)]
public string RoleArn
{
get { return this._roleArn; }
set { this._roleArn = value; }
}
// Check to see if RoleArn property is set
internal bool IsSetRoleArn()
{
return this._roleArn != null;
}
///
/// Gets and sets the property Tags.
///
/// An array of key-value pairs. You can use tags to categorize your Amazon Web Services
/// resources in different ways, for example, by purpose, owner, or environment. For more
/// information, see Tagging
/// Amazon Web ServicesResources. Tag keys must be unique per resource.
///
///
[AWSProperty(Min=0, Max=50)]
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}