/*
* 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 lookoutvision-2020-11-20.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.LookoutforVision.Model
{
///
/// Container for the parameters to the CreateModel operation.
/// Creates a new version of a model within an an Amazon Lookout for Vision project. CreateModel
/// is an asynchronous operation in which Amazon Lookout for Vision trains, tests, and
/// evaluates a new version of a model.
///
///
///
/// To get the current status, check the Status
field returned in the response
/// from DescribeModel.
///
///
///
/// If the project has a single dataset, Amazon Lookout for Vision internally splits the
/// dataset to create a training and a test dataset. If the project has a training and
/// a test dataset, Lookout for Vision uses the respective datasets to train and test
/// the model.
///
///
///
/// After training completes, the evaluation metrics are stored at the location specified
/// in OutputConfig
.
///
///
///
/// This operation requires permissions to perform the lookoutvision:CreateModel
/// operation. If you want to tag your model, you also require permission to the lookoutvision:TagResource
/// operation.
///
///
public partial class CreateModelRequest : AmazonLookoutforVisionRequest
{
private string _clientToken;
private string _description;
private string _kmsKeyId;
private OutputConfig _outputConfig;
private string _projectName;
private List _tags = new List();
///
/// Gets and sets the property ClientToken.
///
/// ClientToken is an idempotency token that ensures a call to CreateModel
/// completes only once. You choose the value to pass. For example, An issue might prevent
/// you from getting a response from CreateModel
. In this case, safely retry
/// your call to CreateModel
by using the same ClientToken
parameter
/// value.
///
///
///
/// If you don't supply a value for ClientToken
, the AWS SDK you are using
/// inserts a value for you. This prevents retries after a network error from starting
/// multiple training jobs. You'll need to provide your own value for other use cases.
///
///
///
///
/// An error occurs if the other input parameters are not the same as in the first request.
/// Using a different value for ClientToken
is considered a new call to CreateModel
.
/// An idempotency token is active for 8 hours.
///
///
[AWSProperty(Min=1, Max=64)]
public string ClientToken
{
get { return this._clientToken; }
set { this._clientToken = value; }
}
// Check to see if ClientToken property is set
internal bool IsSetClientToken()
{
return this._clientToken != null;
}
///
/// Gets and sets the property Description.
///
/// A description for the version of the model.
///
///
[AWSProperty(Min=1, Max=500)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property KmsKeyId.
///
/// The identifier for your AWS KMS key. The key is used to encrypt training and test
/// images copied into the service for model training. Your source images are unaffected.
/// If this parameter is not specified, the copied images are encrypted by a key that
/// AWS owns and manages.
///
///
[AWSProperty(Min=1, Max=2048)]
public string KmsKeyId
{
get { return this._kmsKeyId; }
set { this._kmsKeyId = value; }
}
// Check to see if KmsKeyId property is set
internal bool IsSetKmsKeyId()
{
return this._kmsKeyId != null;
}
///
/// Gets and sets the property OutputConfig.
///
/// The location where Amazon Lookout for Vision saves the training results.
///
///
[AWSProperty(Required=true)]
public OutputConfig OutputConfig
{
get { return this._outputConfig; }
set { this._outputConfig = value; }
}
// Check to see if OutputConfig property is set
internal bool IsSetOutputConfig()
{
return this._outputConfig != null;
}
///
/// Gets and sets the property ProjectName.
///
/// The name of the project in which you want to create a model version.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string ProjectName
{
get { return this._projectName; }
set { this._projectName = value; }
}
// Check to see if ProjectName property is set
internal bool IsSetProjectName()
{
return this._projectName != null;
}
///
/// Gets and sets the property Tags.
///
/// A set of tags (key-value pairs) that you want to attach to the model.
///
///
[AWSProperty(Min=0, Max=200)]
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;
}
}
}