AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
TrainingSpecification.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/sagemaker/SageMaker_EXPORTS.h>
10#include <aws/sagemaker/model/AdditionalS3DataSource.h>
11#include <aws/sagemaker/model/ChannelSpecification.h>
12#include <aws/sagemaker/model/HyperParameterSpecification.h>
13#include <aws/sagemaker/model/HyperParameterTuningJobObjective.h>
14#include <aws/sagemaker/model/MetricDefinition.h>
15#include <aws/sagemaker/model/TrainingInstanceType.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace SageMaker {
27namespace Model {
28
36 public:
37 AWS_SAGEMAKER_API TrainingSpecification() = default;
40 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
47 inline const Aws::String& GetTrainingImage() const { return m_trainingImage; }
48 inline bool TrainingImageHasBeenSet() const { return m_trainingImageHasBeenSet; }
49 template <typename TrainingImageT = Aws::String>
50 void SetTrainingImage(TrainingImageT&& value) {
51 m_trainingImageHasBeenSet = true;
52 m_trainingImage = std::forward<TrainingImageT>(value);
53 }
54 template <typename TrainingImageT = Aws::String>
55 TrainingSpecification& WithTrainingImage(TrainingImageT&& value) {
56 SetTrainingImage(std::forward<TrainingImageT>(value));
57 return *this;
58 }
60
62
66 inline const Aws::String& GetTrainingImageDigest() const { return m_trainingImageDigest; }
67 inline bool TrainingImageDigestHasBeenSet() const { return m_trainingImageDigestHasBeenSet; }
68 template <typename TrainingImageDigestT = Aws::String>
69 void SetTrainingImageDigest(TrainingImageDigestT&& value) {
70 m_trainingImageDigestHasBeenSet = true;
71 m_trainingImageDigest = std::forward<TrainingImageDigestT>(value);
72 }
73 template <typename TrainingImageDigestT = Aws::String>
74 TrainingSpecification& WithTrainingImageDigest(TrainingImageDigestT&& value) {
75 SetTrainingImageDigest(std::forward<TrainingImageDigestT>(value));
76 return *this;
77 }
79
81
86 inline const Aws::Vector<HyperParameterSpecification>& GetSupportedHyperParameters() const { return m_supportedHyperParameters; }
87 inline bool SupportedHyperParametersHasBeenSet() const { return m_supportedHyperParametersHasBeenSet; }
88 template <typename SupportedHyperParametersT = Aws::Vector<HyperParameterSpecification>>
89 void SetSupportedHyperParameters(SupportedHyperParametersT&& value) {
90 m_supportedHyperParametersHasBeenSet = true;
91 m_supportedHyperParameters = std::forward<SupportedHyperParametersT>(value);
92 }
93 template <typename SupportedHyperParametersT = Aws::Vector<HyperParameterSpecification>>
94 TrainingSpecification& WithSupportedHyperParameters(SupportedHyperParametersT&& value) {
95 SetSupportedHyperParameters(std::forward<SupportedHyperParametersT>(value));
96 return *this;
97 }
98 template <typename SupportedHyperParametersT = HyperParameterSpecification>
99 TrainingSpecification& AddSupportedHyperParameters(SupportedHyperParametersT&& value) {
100 m_supportedHyperParametersHasBeenSet = true;
101 m_supportedHyperParameters.emplace_back(std::forward<SupportedHyperParametersT>(value));
102 return *this;
103 }
105
107
110 inline const Aws::Vector<TrainingInstanceType>& GetSupportedTrainingInstanceTypes() const { return m_supportedTrainingInstanceTypes; }
111 inline bool SupportedTrainingInstanceTypesHasBeenSet() const { return m_supportedTrainingInstanceTypesHasBeenSet; }
112 template <typename SupportedTrainingInstanceTypesT = Aws::Vector<TrainingInstanceType>>
113 void SetSupportedTrainingInstanceTypes(SupportedTrainingInstanceTypesT&& value) {
114 m_supportedTrainingInstanceTypesHasBeenSet = true;
115 m_supportedTrainingInstanceTypes = std::forward<SupportedTrainingInstanceTypesT>(value);
116 }
117 template <typename SupportedTrainingInstanceTypesT = Aws::Vector<TrainingInstanceType>>
118 TrainingSpecification& WithSupportedTrainingInstanceTypes(SupportedTrainingInstanceTypesT&& value) {
119 SetSupportedTrainingInstanceTypes(std::forward<SupportedTrainingInstanceTypesT>(value));
120 return *this;
121 }
123 m_supportedTrainingInstanceTypesHasBeenSet = true;
124 m_supportedTrainingInstanceTypes.push_back(value);
125 return *this;
126 }
128
130
134 inline bool GetSupportsDistributedTraining() const { return m_supportsDistributedTraining; }
135 inline bool SupportsDistributedTrainingHasBeenSet() const { return m_supportsDistributedTrainingHasBeenSet; }
136 inline void SetSupportsDistributedTraining(bool value) {
137 m_supportsDistributedTrainingHasBeenSet = true;
138 m_supportsDistributedTraining = value;
139 }
142 return *this;
143 }
145
147
151 inline const Aws::Vector<MetricDefinition>& GetMetricDefinitions() const { return m_metricDefinitions; }
152 inline bool MetricDefinitionsHasBeenSet() const { return m_metricDefinitionsHasBeenSet; }
153 template <typename MetricDefinitionsT = Aws::Vector<MetricDefinition>>
154 void SetMetricDefinitions(MetricDefinitionsT&& value) {
155 m_metricDefinitionsHasBeenSet = true;
156 m_metricDefinitions = std::forward<MetricDefinitionsT>(value);
157 }
158 template <typename MetricDefinitionsT = Aws::Vector<MetricDefinition>>
159 TrainingSpecification& WithMetricDefinitions(MetricDefinitionsT&& value) {
160 SetMetricDefinitions(std::forward<MetricDefinitionsT>(value));
161 return *this;
162 }
163 template <typename MetricDefinitionsT = MetricDefinition>
164 TrainingSpecification& AddMetricDefinitions(MetricDefinitionsT&& value) {
165 m_metricDefinitionsHasBeenSet = true;
166 m_metricDefinitions.emplace_back(std::forward<MetricDefinitionsT>(value));
167 return *this;
168 }
170
172
176 inline const Aws::Vector<ChannelSpecification>& GetTrainingChannels() const { return m_trainingChannels; }
177 inline bool TrainingChannelsHasBeenSet() const { return m_trainingChannelsHasBeenSet; }
178 template <typename TrainingChannelsT = Aws::Vector<ChannelSpecification>>
179 void SetTrainingChannels(TrainingChannelsT&& value) {
180 m_trainingChannelsHasBeenSet = true;
181 m_trainingChannels = std::forward<TrainingChannelsT>(value);
182 }
183 template <typename TrainingChannelsT = Aws::Vector<ChannelSpecification>>
184 TrainingSpecification& WithTrainingChannels(TrainingChannelsT&& value) {
185 SetTrainingChannels(std::forward<TrainingChannelsT>(value));
186 return *this;
187 }
188 template <typename TrainingChannelsT = ChannelSpecification>
189 TrainingSpecification& AddTrainingChannels(TrainingChannelsT&& value) {
190 m_trainingChannelsHasBeenSet = true;
191 m_trainingChannels.emplace_back(std::forward<TrainingChannelsT>(value));
192 return *this;
193 }
195
197
202 return m_supportedTuningJobObjectiveMetrics;
203 }
204 inline bool SupportedTuningJobObjectiveMetricsHasBeenSet() const { return m_supportedTuningJobObjectiveMetricsHasBeenSet; }
205 template <typename SupportedTuningJobObjectiveMetricsT = Aws::Vector<HyperParameterTuningJobObjective>>
206 void SetSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT&& value) {
207 m_supportedTuningJobObjectiveMetricsHasBeenSet = true;
208 m_supportedTuningJobObjectiveMetrics = std::forward<SupportedTuningJobObjectiveMetricsT>(value);
209 }
210 template <typename SupportedTuningJobObjectiveMetricsT = Aws::Vector<HyperParameterTuningJobObjective>>
211 TrainingSpecification& WithSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT&& value) {
212 SetSupportedTuningJobObjectiveMetrics(std::forward<SupportedTuningJobObjectiveMetricsT>(value));
213 return *this;
214 }
215 template <typename SupportedTuningJobObjectiveMetricsT = HyperParameterTuningJobObjective>
216 TrainingSpecification& AddSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT&& value) {
217 m_supportedTuningJobObjectiveMetricsHasBeenSet = true;
218 m_supportedTuningJobObjectiveMetrics.emplace_back(std::forward<SupportedTuningJobObjectiveMetricsT>(value));
219 return *this;
220 }
222
224
227 inline const AdditionalS3DataSource& GetAdditionalS3DataSource() const { return m_additionalS3DataSource; }
228 inline bool AdditionalS3DataSourceHasBeenSet() const { return m_additionalS3DataSourceHasBeenSet; }
229 template <typename AdditionalS3DataSourceT = AdditionalS3DataSource>
230 void SetAdditionalS3DataSource(AdditionalS3DataSourceT&& value) {
231 m_additionalS3DataSourceHasBeenSet = true;
232 m_additionalS3DataSource = std::forward<AdditionalS3DataSourceT>(value);
233 }
234 template <typename AdditionalS3DataSourceT = AdditionalS3DataSource>
235 TrainingSpecification& WithAdditionalS3DataSource(AdditionalS3DataSourceT&& value) {
236 SetAdditionalS3DataSource(std::forward<AdditionalS3DataSourceT>(value));
237 return *this;
238 }
240 private:
241 Aws::String m_trainingImage;
242
243 Aws::String m_trainingImageDigest;
244
245 Aws::Vector<HyperParameterSpecification> m_supportedHyperParameters;
246
247 Aws::Vector<TrainingInstanceType> m_supportedTrainingInstanceTypes;
248
249 bool m_supportsDistributedTraining{false};
250
251 Aws::Vector<MetricDefinition> m_metricDefinitions;
252
253 Aws::Vector<ChannelSpecification> m_trainingChannels;
254
255 Aws::Vector<HyperParameterTuningJobObjective> m_supportedTuningJobObjectiveMetrics;
256
257 AdditionalS3DataSource m_additionalS3DataSource;
258 bool m_trainingImageHasBeenSet = false;
259 bool m_trainingImageDigestHasBeenSet = false;
260 bool m_supportedHyperParametersHasBeenSet = false;
261 bool m_supportedTrainingInstanceTypesHasBeenSet = false;
262 bool m_supportsDistributedTrainingHasBeenSet = false;
263 bool m_metricDefinitionsHasBeenSet = false;
264 bool m_trainingChannelsHasBeenSet = false;
265 bool m_supportedTuningJobObjectiveMetricsHasBeenSet = false;
266 bool m_additionalS3DataSourceHasBeenSet = false;
267};
268
269} // namespace Model
270} // namespace SageMaker
271} // namespace Aws
TrainingSpecification & WithTrainingImage(TrainingImageT &&value)
TrainingSpecification & WithAdditionalS3DataSource(AdditionalS3DataSourceT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
TrainingSpecification & WithSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT &&value)
const Aws::Vector< TrainingInstanceType > & GetSupportedTrainingInstanceTypes() const
AWS_SAGEMAKER_API TrainingSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
TrainingSpecification & WithTrainingImageDigest(TrainingImageDigestT &&value)
const Aws::Vector< MetricDefinition > & GetMetricDefinitions() const
AWS_SAGEMAKER_API TrainingSpecification()=default
void SetMetricDefinitions(MetricDefinitionsT &&value)
void SetSupportedHyperParameters(SupportedHyperParametersT &&value)
void SetTrainingImageDigest(TrainingImageDigestT &&value)
TrainingSpecification & AddMetricDefinitions(MetricDefinitionsT &&value)
const AdditionalS3DataSource & GetAdditionalS3DataSource() const
TrainingSpecification & WithSupportsDistributedTraining(bool value)
const Aws::Vector< HyperParameterTuningJobObjective > & GetSupportedTuningJobObjectiveMetrics() const
const Aws::Vector< HyperParameterSpecification > & GetSupportedHyperParameters() const
TrainingSpecification & AddSupportedTrainingInstanceTypes(TrainingInstanceType value)
void SetAdditionalS3DataSource(AdditionalS3DataSourceT &&value)
AWS_SAGEMAKER_API TrainingSpecification(Aws::Utils::Json::JsonView jsonValue)
TrainingSpecification & WithSupportedHyperParameters(SupportedHyperParametersT &&value)
void SetTrainingChannels(TrainingChannelsT &&value)
void SetSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT &&value)
TrainingSpecification & AddTrainingChannels(TrainingChannelsT &&value)
TrainingSpecification & WithMetricDefinitions(MetricDefinitionsT &&value)
TrainingSpecification & AddSupportedHyperParameters(SupportedHyperParametersT &&value)
TrainingSpecification & WithSupportedTrainingInstanceTypes(SupportedTrainingInstanceTypesT &&value)
TrainingSpecification & AddSupportedTuningJobObjectiveMetrics(SupportedTuningJobObjectiveMetricsT &&value)
TrainingSpecification & WithTrainingChannels(TrainingChannelsT &&value)
void SetSupportedTrainingInstanceTypes(SupportedTrainingInstanceTypesT &&value)
const Aws::Vector< ChannelSpecification > & GetTrainingChannels() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue