/* * 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 CreateTransformJob operation. /// Starts a transform job. A transform job uses a trained model to get inferences on /// a dataset and saves these results to an Amazon S3 location that you specify. /// /// /// /// To perform batch transformations, you create a transform job and use the data that /// you have readily available. /// /// /// /// In the request body, you provide the following: /// /// /// /// For more information about how batch transformation works, see Batch /// Transform. /// /// public partial class CreateTransformJobRequest : AmazonSageMakerRequest { private BatchStrategy _batchStrategy; private BatchDataCaptureConfig _dataCaptureConfig; private DataProcessing _dataProcessing; private Dictionary _environment = new Dictionary(); private ExperimentConfig _experimentConfig; private int? _maxConcurrentTransforms; private int? _maxPayloadInMB; private ModelClientConfig _modelClientConfig; private string _modelName; private List _tags = new List(); private TransformInput _transformInput; private string _transformJobName; private TransformOutput _transformOutput; private TransformResources _transformResources; /// /// Gets and sets the property BatchStrategy. /// /// Specifies the number of records to include in a mini-batch for an HTTP inference request. /// A record is a single unit of input data that inference can be made on. /// For example, a single line in a CSV file is a record. /// /// /// /// To enable the batch strategy, you must set the SplitType property to /// Line, RecordIO, or TFRecord. /// /// /// /// To use only one record when making an HTTP invocation request to a container, set /// BatchStrategy to SingleRecord and SplitType /// to Line. /// /// /// /// To fit as many records in a mini-batch as can fit within the MaxPayloadInMB /// limit, set BatchStrategy to MultiRecord and SplitType /// to Line. /// /// public BatchStrategy BatchStrategy { get { return this._batchStrategy; } set { this._batchStrategy = value; } } // Check to see if BatchStrategy property is set internal bool IsSetBatchStrategy() { return this._batchStrategy != null; } /// /// Gets and sets the property DataCaptureConfig. /// /// Configuration to control how SageMaker captures inference data. /// /// public BatchDataCaptureConfig DataCaptureConfig { get { return this._dataCaptureConfig; } set { this._dataCaptureConfig = value; } } // Check to see if DataCaptureConfig property is set internal bool IsSetDataCaptureConfig() { return this._dataCaptureConfig != null; } /// /// Gets and sets the property DataProcessing. /// /// The data structure used to specify the data to be used for inference in a batch transform /// job and to associate the data that is relevant to the prediction results in the output. /// The input filter provided allows you to exclude input data that is not needed for /// inference in a batch transform job. The output filter provided allows you to include /// input data relevant to interpreting the predictions in the output from the job. For /// more information, see Associate /// Prediction Results with their Corresponding Input Records. /// /// public DataProcessing DataProcessing { get { return this._dataProcessing; } set { this._dataProcessing = value; } } // Check to see if DataProcessing property is set internal bool IsSetDataProcessing() { return this._dataProcessing != null; } /// /// Gets and sets the property Environment. /// /// The environment variables to set in the Docker container. We support up to 16 key /// and values entries in the map. /// /// [AWSProperty(Max=16)] public Dictionary Environment { get { return this._environment; } set { this._environment = value; } } // Check to see if Environment property is set internal bool IsSetEnvironment() { return this._environment != null && this._environment.Count > 0; } /// /// Gets and sets the property ExperimentConfig. /// public ExperimentConfig ExperimentConfig { get { return this._experimentConfig; } set { this._experimentConfig = value; } } // Check to see if ExperimentConfig property is set internal bool IsSetExperimentConfig() { return this._experimentConfig != null; } /// /// Gets and sets the property MaxConcurrentTransforms. /// /// The maximum number of parallel requests that can be sent to each instance in a transform /// job. If MaxConcurrentTransforms is set to 0 or left unset, /// Amazon SageMaker checks the optional execution-parameters to determine the settings /// for your chosen algorithm. If the execution-parameters endpoint is not enabled, the /// default value is 1. For more information on execution-parameters, see /// How /// Containers Serve Requests. For built-in algorithms, you don't need to set a value /// for MaxConcurrentTransforms. /// /// [AWSProperty(Min=0)] public int MaxConcurrentTransforms { get { return this._maxConcurrentTransforms.GetValueOrDefault(); } set { this._maxConcurrentTransforms = value; } } // Check to see if MaxConcurrentTransforms property is set internal bool IsSetMaxConcurrentTransforms() { return this._maxConcurrentTransforms.HasValue; } /// /// Gets and sets the property MaxPayloadInMB. /// /// The maximum allowed size of the payload, in MB. A payload is the data portion /// of a record (without metadata). The value in MaxPayloadInMB must be greater /// than, or equal to, the size of a single record. To estimate the size of a record in /// MB, divide the size of your dataset by the number of records. To ensure that the records /// fit within the maximum payload size, we recommend using a slightly larger value. The /// default value is 6 MB. /// /// /// /// The value of MaxPayloadInMB cannot be greater than 100 MB. If you specify /// the MaxConcurrentTransforms parameter, the value of (MaxConcurrentTransforms /// * MaxPayloadInMB) also cannot exceed 100 MB. /// /// /// /// For cases where the payload might be arbitrarily large and is transmitted using HTTP /// chunked encoding, set the value to 0. This feature works only in supported /// algorithms. Currently, Amazon SageMaker built-in algorithms do not support HTTP chunked /// encoding. /// /// [AWSProperty(Min=0)] public int MaxPayloadInMB { get { return this._maxPayloadInMB.GetValueOrDefault(); } set { this._maxPayloadInMB = value; } } // Check to see if MaxPayloadInMB property is set internal bool IsSetMaxPayloadInMB() { return this._maxPayloadInMB.HasValue; } /// /// Gets and sets the property ModelClientConfig. /// /// Configures the timeout and maximum number of retries for processing a transform job /// invocation. /// /// public ModelClientConfig ModelClientConfig { get { return this._modelClientConfig; } set { this._modelClientConfig = value; } } // Check to see if ModelClientConfig property is set internal bool IsSetModelClientConfig() { return this._modelClientConfig != null; } /// /// Gets and sets the property ModelName. /// /// The name of the model that you want to use for the transform job. ModelName /// must be the name of an existing Amazon SageMaker model within an Amazon Web Services /// Region in an Amazon Web Services account. /// /// [AWSProperty(Required=true, Max=63)] public string ModelName { get { return this._modelName; } set { this._modelName = value; } } // Check to see if ModelName property is set internal bool IsSetModelName() { return this._modelName != null; } /// /// Gets and sets the property Tags. /// /// (Optional) An array of key-value pairs. For more information, see Using /// Cost Allocation Tags in the Amazon Web Services Billing and Cost Management /// User Guide. /// /// [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; } /// /// Gets and sets the property TransformInput. /// /// Describes the input source and the way the transform job consumes it. /// /// [AWSProperty(Required=true)] public TransformInput TransformInput { get { return this._transformInput; } set { this._transformInput = value; } } // Check to see if TransformInput property is set internal bool IsSetTransformInput() { return this._transformInput != null; } /// /// Gets and sets the property TransformJobName. /// /// The name of the transform job. The name must be unique within an Amazon Web Services /// Region in an Amazon Web Services account. /// /// [AWSProperty(Required=true, Min=1, Max=63)] public string TransformJobName { get { return this._transformJobName; } set { this._transformJobName = value; } } // Check to see if TransformJobName property is set internal bool IsSetTransformJobName() { return this._transformJobName != null; } /// /// Gets and sets the property TransformOutput. /// /// Describes the results of the transform job. /// /// [AWSProperty(Required=true)] public TransformOutput TransformOutput { get { return this._transformOutput; } set { this._transformOutput = value; } } // Check to see if TransformOutput property is set internal bool IsSetTransformOutput() { return this._transformOutput != null; } /// /// Gets and sets the property TransformResources. /// /// Describes the resources, including ML instance types and ML instance count, to use /// for the transform job. /// /// [AWSProperty(Required=true)] public TransformResources TransformResources { get { return this._transformResources; } set { this._transformResources = value; } } // Check to see if TransformResources property is set internal bool IsSetTransformResources() { return this._transformResources != null; } } }