/*
* 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 personalize-2018-05-22.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.Personalize.Model
{
///
/// An object that provides information about a specific version of a Solution
/// in a Custom dataset group.
///
public partial class SolutionVersion
{
private DateTime? _creationDateTime;
private string _datasetGroupArn;
private string _eventType;
private string _failureReason;
private DateTime? _lastUpdatedDateTime;
private string _name;
private bool? _performAutoML;
private bool? _performhpo;
private string _recipeArn;
private string _solutionArn;
private SolutionConfig _solutionConfig;
private string _solutionVersionArn;
private string _status;
private double? _trainingHours;
private TrainingMode _trainingMode;
private TunedHPOParams _tunedhpoParams;
///
/// Gets and sets the property CreationDateTime.
///
/// The date and time (in Unix time) that this version of the solution was created.
///
///
public DateTime CreationDateTime
{
get { return this._creationDateTime.GetValueOrDefault(); }
set { this._creationDateTime = value; }
}
// Check to see if CreationDateTime property is set
internal bool IsSetCreationDateTime()
{
return this._creationDateTime.HasValue;
}
///
/// Gets and sets the property DatasetGroupArn.
///
/// The Amazon Resource Name (ARN) of the dataset group providing the training data.
///
///
[AWSProperty(Max=256)]
public string DatasetGroupArn
{
get { return this._datasetGroupArn; }
set { this._datasetGroupArn = value; }
}
// Check to see if DatasetGroupArn property is set
internal bool IsSetDatasetGroupArn()
{
return this._datasetGroupArn != null;
}
///
/// Gets and sets the property EventType.
///
/// The event type (for example, 'click' or 'like') that is used for training the model.
///
///
[AWSProperty(Max=256)]
public string EventType
{
get { return this._eventType; }
set { this._eventType = value; }
}
// Check to see if EventType property is set
internal bool IsSetEventType()
{
return this._eventType != null;
}
///
/// Gets and sets the property FailureReason.
///
/// If training a solution version fails, the reason for the failure.
///
///
public string FailureReason
{
get { return this._failureReason; }
set { this._failureReason = value; }
}
// Check to see if FailureReason property is set
internal bool IsSetFailureReason()
{
return this._failureReason != null;
}
///
/// Gets and sets the property LastUpdatedDateTime.
///
/// The date and time (in Unix time) that the solution was last updated.
///
///
public DateTime LastUpdatedDateTime
{
get { return this._lastUpdatedDateTime.GetValueOrDefault(); }
set { this._lastUpdatedDateTime = value; }
}
// Check to see if LastUpdatedDateTime property is set
internal bool IsSetLastUpdatedDateTime()
{
return this._lastUpdatedDateTime.HasValue;
}
///
/// Gets and sets the property Name.
///
/// The name of the solution version.
///
///
[AWSProperty(Min=1, Max=63)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property PerformAutoML.
///
/// When true, Amazon Personalize searches for the most optimal recipe according to the
/// solution configuration. When false (the default), Amazon Personalize uses recipeArn
.
///
///
public bool PerformAutoML
{
get { return this._performAutoML.GetValueOrDefault(); }
set { this._performAutoML = value; }
}
// Check to see if PerformAutoML property is set
internal bool IsSetPerformAutoML()
{
return this._performAutoML.HasValue;
}
///
/// Gets and sets the property PerformHPO.
///
/// Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default
/// is false
.
///
///
public bool PerformHPO
{
get { return this._performhpo.GetValueOrDefault(); }
set { this._performhpo = value; }
}
// Check to see if PerformHPO property is set
internal bool IsSetPerformHPO()
{
return this._performhpo.HasValue;
}
///
/// Gets and sets the property RecipeArn.
///
/// The ARN of the recipe used in the solution.
///
///
[AWSProperty(Max=256)]
public string RecipeArn
{
get { return this._recipeArn; }
set { this._recipeArn = value; }
}
// Check to see if RecipeArn property is set
internal bool IsSetRecipeArn()
{
return this._recipeArn != null;
}
///
/// Gets and sets the property SolutionArn.
///
/// The ARN of the solution.
///
///
[AWSProperty(Max=256)]
public string SolutionArn
{
get { return this._solutionArn; }
set { this._solutionArn = value; }
}
// Check to see if SolutionArn property is set
internal bool IsSetSolutionArn()
{
return this._solutionArn != null;
}
///
/// Gets and sets the property SolutionConfig.
///
/// Describes the configuration properties for the solution.
///
///
public SolutionConfig SolutionConfig
{
get { return this._solutionConfig; }
set { this._solutionConfig = value; }
}
// Check to see if SolutionConfig property is set
internal bool IsSetSolutionConfig()
{
return this._solutionConfig != null;
}
///
/// Gets and sets the property SolutionVersionArn.
///
/// The ARN of the solution version.
///
///
[AWSProperty(Max=256)]
public string SolutionVersionArn
{
get { return this._solutionVersionArn; }
set { this._solutionVersionArn = value; }
}
// Check to see if SolutionVersionArn property is set
internal bool IsSetSolutionVersionArn()
{
return this._solutionVersionArn != null;
}
///
/// Gets and sets the property Status.
///
/// The status of the solution version.
///
///
///
/// A solution version can be in one of the following states:
///
/// -
///
/// CREATE PENDING
///
///
-
///
/// CREATE IN_PROGRESS
///
///
-
///
/// ACTIVE
///
///
-
///
/// CREATE FAILED
///
///
-
///
/// CREATE STOPPING
///
///
-
///
/// CREATE STOPPED
///
///
///
[AWSProperty(Max=256)]
public string Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property TrainingHours.
///
/// The time used to train the model. You are billed for the time it takes to train a
/// model. This field is visible only after Amazon Personalize successfully trains a model.
///
///
[AWSProperty(Min=0)]
public double TrainingHours
{
get { return this._trainingHours.GetValueOrDefault(); }
set { this._trainingHours = value; }
}
// Check to see if TrainingHours property is set
internal bool IsSetTrainingHours()
{
return this._trainingHours.HasValue;
}
///
/// Gets and sets the property TrainingMode.
///
/// The scope of training to be performed when creating the solution version. The FULL
/// option trains the solution version based on the entirety of the input solution's training
/// data, while the UPDATE
option processes only the data that has changed
/// in comparison to the input solution. Choose UPDATE
when you want to incrementally
/// update your solution version instead of creating an entirely new one.
///
///
///
/// The UPDATE
option can only be used when you already have an active solution
/// version created from the input solution using the FULL
option and the
/// input solution was trained with the User-Personalization
/// recipe or the HRNN-Coldstart
/// recipe.
///
///
///
public TrainingMode TrainingMode
{
get { return this._trainingMode; }
set { this._trainingMode = value; }
}
// Check to see if TrainingMode property is set
internal bool IsSetTrainingMode()
{
return this._trainingMode != null;
}
///
/// Gets and sets the property TunedHPOParams.
///
/// If hyperparameter optimization was performed, contains the hyperparameter values of
/// the best performing model.
///
///
public TunedHPOParams TunedHPOParams
{
get { return this._tunedhpoParams; }
set { this._tunedhpoParams = value; }
}
// Check to see if TunedHPOParams property is set
internal bool IsSetTunedHPOParams()
{
return this._tunedhpoParams != null;
}
}
}