aws_sdk_personalize/operation/create_solution/_create_solution_input.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateSolutionInput {
6 /// <p>The name for the solution.</p>
7 pub name: ::std::option::Option<::std::string::String>,
8 /// <p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p>
9 /// <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p>
10 pub perform_hpo: ::std::option::Option<bool>,
11 /// <important>
12 /// <p>We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
13 /// </important>
14 /// <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p>
15 /// <p>When set to <code>true</code>, Amazon Personalize analyzes your training data and selects the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case, you must omit <code>recipeArn</code>. Amazon Personalize determines the optimal recipe by running tests with different values for the hyperparameters. AutoML lengthens the training process as compared to selecting a specific recipe.</p>
16 pub perform_auto_ml: ::std::option::Option<bool>,
17 /// <p>Whether the solution uses automatic training to create new solution versions (trained models). The default is <code>True</code> and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a <code>schedulingExpression</code> in the <code>AutoTrainingConfig</code> as part of solution configuration. For more information about automatic training, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html">Configuring automatic training</a>.</p>
18 /// <p>Automatic solution version creation starts within one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.</p>
19 /// <p>After training starts, you can get the solution version's Amazon Resource Name (ARN) with the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html">ListSolutionVersions</a> API operation. To get its status, use the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html">DescribeSolutionVersion</a>.</p>
20 pub perform_auto_training: ::std::option::Option<bool>,
21 /// <p>Whether to perform incremental training updates on your model. When enabled, this allows the model to learn from new data more frequently without requiring full retraining, which enables near real-time personalization. This parameter is supported only for solutions that use the semantic-similarity recipe.</p>
22 pub perform_incremental_update: ::std::option::Option<bool>,
23 /// <p>The Amazon Resource Name (ARN) of the recipe to use for model training. This is required when <code>performAutoML</code> is false. For information about different Amazon Personalize recipes and their ARNs, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
24 pub recipe_arn: ::std::option::Option<::std::string::String>,
25 /// <p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p>
26 pub dataset_group_arn: ::std::option::Option<::std::string::String>,
27 /// <p>When your have multiple event types (using an <code>EVENT_TYPE</code> schema field), this parameter specifies which event type (for example, 'click' or 'like') is used for training the model.</p>
28 /// <p>If you do not provide an <code>eventType</code>, Amazon Personalize will use all interactions for training with equal weight regardless of type.</p>
29 pub event_type: ::std::option::Option<::std::string::String>,
30 /// <p>The configuration properties for the solution. When <code>performAutoML</code> is set to true, Amazon Personalize only evaluates the <code>autoMLConfig</code> section of the solution configuration.</p><note>
31 /// <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p>
32 /// </note>
33 pub solution_config: ::std::option::Option<crate::types::SolutionConfig>,
34 /// <p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the solution.</p>
35 pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
36}
37impl CreateSolutionInput {
38 /// <p>The name for the solution.</p>
39 pub fn name(&self) -> ::std::option::Option<&str> {
40 self.name.as_deref()
41 }
42 /// <p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p>
43 /// <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p>
44 pub fn perform_hpo(&self) -> ::std::option::Option<bool> {
45 self.perform_hpo
46 }
47 /// <important>
48 /// <p>We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
49 /// </important>
50 /// <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p>
51 /// <p>When set to <code>true</code>, Amazon Personalize analyzes your training data and selects the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case, you must omit <code>recipeArn</code>. Amazon Personalize determines the optimal recipe by running tests with different values for the hyperparameters. AutoML lengthens the training process as compared to selecting a specific recipe.</p>
52 pub fn perform_auto_ml(&self) -> ::std::option::Option<bool> {
53 self.perform_auto_ml
54 }
55 /// <p>Whether the solution uses automatic training to create new solution versions (trained models). The default is <code>True</code> and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a <code>schedulingExpression</code> in the <code>AutoTrainingConfig</code> as part of solution configuration. For more information about automatic training, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html">Configuring automatic training</a>.</p>
56 /// <p>Automatic solution version creation starts within one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.</p>
57 /// <p>After training starts, you can get the solution version's Amazon Resource Name (ARN) with the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html">ListSolutionVersions</a> API operation. To get its status, use the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html">DescribeSolutionVersion</a>.</p>
58 pub fn perform_auto_training(&self) -> ::std::option::Option<bool> {
59 self.perform_auto_training
60 }
61 /// <p>Whether to perform incremental training updates on your model. When enabled, this allows the model to learn from new data more frequently without requiring full retraining, which enables near real-time personalization. This parameter is supported only for solutions that use the semantic-similarity recipe.</p>
62 pub fn perform_incremental_update(&self) -> ::std::option::Option<bool> {
63 self.perform_incremental_update
64 }
65 /// <p>The Amazon Resource Name (ARN) of the recipe to use for model training. This is required when <code>performAutoML</code> is false. For information about different Amazon Personalize recipes and their ARNs, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
66 pub fn recipe_arn(&self) -> ::std::option::Option<&str> {
67 self.recipe_arn.as_deref()
68 }
69 /// <p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p>
70 pub fn dataset_group_arn(&self) -> ::std::option::Option<&str> {
71 self.dataset_group_arn.as_deref()
72 }
73 /// <p>When your have multiple event types (using an <code>EVENT_TYPE</code> schema field), this parameter specifies which event type (for example, 'click' or 'like') is used for training the model.</p>
74 /// <p>If you do not provide an <code>eventType</code>, Amazon Personalize will use all interactions for training with equal weight regardless of type.</p>
75 pub fn event_type(&self) -> ::std::option::Option<&str> {
76 self.event_type.as_deref()
77 }
78 /// <p>The configuration properties for the solution. When <code>performAutoML</code> is set to true, Amazon Personalize only evaluates the <code>autoMLConfig</code> section of the solution configuration.</p><note>
79 /// <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p>
80 /// </note>
81 pub fn solution_config(&self) -> ::std::option::Option<&crate::types::SolutionConfig> {
82 self.solution_config.as_ref()
83 }
84 /// <p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the solution.</p>
85 ///
86 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
87 pub fn tags(&self) -> &[crate::types::Tag] {
88 self.tags.as_deref().unwrap_or_default()
89 }
90}
91impl CreateSolutionInput {
92 /// Creates a new builder-style object to manufacture [`CreateSolutionInput`](crate::operation::create_solution::CreateSolutionInput).
93 pub fn builder() -> crate::operation::create_solution::builders::CreateSolutionInputBuilder {
94 crate::operation::create_solution::builders::CreateSolutionInputBuilder::default()
95 }
96}
97
98/// A builder for [`CreateSolutionInput`](crate::operation::create_solution::CreateSolutionInput).
99#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
100#[non_exhaustive]
101pub struct CreateSolutionInputBuilder {
102 pub(crate) name: ::std::option::Option<::std::string::String>,
103 pub(crate) perform_hpo: ::std::option::Option<bool>,
104 pub(crate) perform_auto_ml: ::std::option::Option<bool>,
105 pub(crate) perform_auto_training: ::std::option::Option<bool>,
106 pub(crate) perform_incremental_update: ::std::option::Option<bool>,
107 pub(crate) recipe_arn: ::std::option::Option<::std::string::String>,
108 pub(crate) dataset_group_arn: ::std::option::Option<::std::string::String>,
109 pub(crate) event_type: ::std::option::Option<::std::string::String>,
110 pub(crate) solution_config: ::std::option::Option<crate::types::SolutionConfig>,
111 pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
112}
113impl CreateSolutionInputBuilder {
114 /// <p>The name for the solution.</p>
115 /// This field is required.
116 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
117 self.name = ::std::option::Option::Some(input.into());
118 self
119 }
120 /// <p>The name for the solution.</p>
121 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
122 self.name = input;
123 self
124 }
125 /// <p>The name for the solution.</p>
126 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
127 &self.name
128 }
129 /// <p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p>
130 /// <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p>
131 pub fn perform_hpo(mut self, input: bool) -> Self {
132 self.perform_hpo = ::std::option::Option::Some(input);
133 self
134 }
135 /// <p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p>
136 /// <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p>
137 pub fn set_perform_hpo(mut self, input: ::std::option::Option<bool>) -> Self {
138 self.perform_hpo = input;
139 self
140 }
141 /// <p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p>
142 /// <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p>
143 pub fn get_perform_hpo(&self) -> &::std::option::Option<bool> {
144 &self.perform_hpo
145 }
146 /// <important>
147 /// <p>We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
148 /// </important>
149 /// <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p>
150 /// <p>When set to <code>true</code>, Amazon Personalize analyzes your training data and selects the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case, you must omit <code>recipeArn</code>. Amazon Personalize determines the optimal recipe by running tests with different values for the hyperparameters. AutoML lengthens the training process as compared to selecting a specific recipe.</p>
151 pub fn perform_auto_ml(mut self, input: bool) -> Self {
152 self.perform_auto_ml = ::std::option::Option::Some(input);
153 self
154 }
155 /// <important>
156 /// <p>We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
157 /// </important>
158 /// <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p>
159 /// <p>When set to <code>true</code>, Amazon Personalize analyzes your training data and selects the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case, you must omit <code>recipeArn</code>. Amazon Personalize determines the optimal recipe by running tests with different values for the hyperparameters. AutoML lengthens the training process as compared to selecting a specific recipe.</p>
160 pub fn set_perform_auto_ml(mut self, input: ::std::option::Option<bool>) -> Self {
161 self.perform_auto_ml = input;
162 self
163 }
164 /// <important>
165 /// <p>We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
166 /// </important>
167 /// <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p>
168 /// <p>When set to <code>true</code>, Amazon Personalize analyzes your training data and selects the optimal USER_PERSONALIZATION recipe and hyperparameters. In this case, you must omit <code>recipeArn</code>. Amazon Personalize determines the optimal recipe by running tests with different values for the hyperparameters. AutoML lengthens the training process as compared to selecting a specific recipe.</p>
169 pub fn get_perform_auto_ml(&self) -> &::std::option::Option<bool> {
170 &self.perform_auto_ml
171 }
172 /// <p>Whether the solution uses automatic training to create new solution versions (trained models). The default is <code>True</code> and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a <code>schedulingExpression</code> in the <code>AutoTrainingConfig</code> as part of solution configuration. For more information about automatic training, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html">Configuring automatic training</a>.</p>
173 /// <p>Automatic solution version creation starts within one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.</p>
174 /// <p>After training starts, you can get the solution version's Amazon Resource Name (ARN) with the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html">ListSolutionVersions</a> API operation. To get its status, use the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html">DescribeSolutionVersion</a>.</p>
175 pub fn perform_auto_training(mut self, input: bool) -> Self {
176 self.perform_auto_training = ::std::option::Option::Some(input);
177 self
178 }
179 /// <p>Whether the solution uses automatic training to create new solution versions (trained models). The default is <code>True</code> and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a <code>schedulingExpression</code> in the <code>AutoTrainingConfig</code> as part of solution configuration. For more information about automatic training, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html">Configuring automatic training</a>.</p>
180 /// <p>Automatic solution version creation starts within one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.</p>
181 /// <p>After training starts, you can get the solution version's Amazon Resource Name (ARN) with the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html">ListSolutionVersions</a> API operation. To get its status, use the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html">DescribeSolutionVersion</a>.</p>
182 pub fn set_perform_auto_training(mut self, input: ::std::option::Option<bool>) -> Self {
183 self.perform_auto_training = input;
184 self
185 }
186 /// <p>Whether the solution uses automatic training to create new solution versions (trained models). The default is <code>True</code> and the solution automatically creates new solution versions every 7 days. You can change the training frequency by specifying a <code>schedulingExpression</code> in the <code>AutoTrainingConfig</code> as part of solution configuration. For more information about automatic training, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/solution-config-auto-training.html">Configuring automatic training</a>.</p>
187 /// <p>Automatic solution version creation starts within one hour after the solution is ACTIVE. If you manually create a solution version within the hour, the solution skips the first automatic training.</p>
188 /// <p>After training starts, you can get the solution version's Amazon Resource Name (ARN) with the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_ListSolutionVersions.html">ListSolutionVersions</a> API operation. To get its status, use the <a href="https://docs.aws.amazon.com/personalize/latest/dg/API_DescribeSolutionVersion.html">DescribeSolutionVersion</a>.</p>
189 pub fn get_perform_auto_training(&self) -> &::std::option::Option<bool> {
190 &self.perform_auto_training
191 }
192 /// <p>Whether to perform incremental training updates on your model. When enabled, this allows the model to learn from new data more frequently without requiring full retraining, which enables near real-time personalization. This parameter is supported only for solutions that use the semantic-similarity recipe.</p>
193 pub fn perform_incremental_update(mut self, input: bool) -> Self {
194 self.perform_incremental_update = ::std::option::Option::Some(input);
195 self
196 }
197 /// <p>Whether to perform incremental training updates on your model. When enabled, this allows the model to learn from new data more frequently without requiring full retraining, which enables near real-time personalization. This parameter is supported only for solutions that use the semantic-similarity recipe.</p>
198 pub fn set_perform_incremental_update(mut self, input: ::std::option::Option<bool>) -> Self {
199 self.perform_incremental_update = input;
200 self
201 }
202 /// <p>Whether to perform incremental training updates on your model. When enabled, this allows the model to learn from new data more frequently without requiring full retraining, which enables near real-time personalization. This parameter is supported only for solutions that use the semantic-similarity recipe.</p>
203 pub fn get_perform_incremental_update(&self) -> &::std::option::Option<bool> {
204 &self.perform_incremental_update
205 }
206 /// <p>The Amazon Resource Name (ARN) of the recipe to use for model training. This is required when <code>performAutoML</code> is false. For information about different Amazon Personalize recipes and their ARNs, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
207 pub fn recipe_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
208 self.recipe_arn = ::std::option::Option::Some(input.into());
209 self
210 }
211 /// <p>The Amazon Resource Name (ARN) of the recipe to use for model training. This is required when <code>performAutoML</code> is false. For information about different Amazon Personalize recipes and their ARNs, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
212 pub fn set_recipe_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
213 self.recipe_arn = input;
214 self
215 }
216 /// <p>The Amazon Resource Name (ARN) of the recipe to use for model training. This is required when <code>performAutoML</code> is false. For information about different Amazon Personalize recipes and their ARNs, see <a href="https://docs.aws.amazon.com/personalize/latest/dg/working-with-predefined-recipes.html">Choosing a recipe</a>.</p>
217 pub fn get_recipe_arn(&self) -> &::std::option::Option<::std::string::String> {
218 &self.recipe_arn
219 }
220 /// <p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p>
221 /// This field is required.
222 pub fn dataset_group_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
223 self.dataset_group_arn = ::std::option::Option::Some(input.into());
224 self
225 }
226 /// <p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p>
227 pub fn set_dataset_group_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
228 self.dataset_group_arn = input;
229 self
230 }
231 /// <p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p>
232 pub fn get_dataset_group_arn(&self) -> &::std::option::Option<::std::string::String> {
233 &self.dataset_group_arn
234 }
235 /// <p>When your have multiple event types (using an <code>EVENT_TYPE</code> schema field), this parameter specifies which event type (for example, 'click' or 'like') is used for training the model.</p>
236 /// <p>If you do not provide an <code>eventType</code>, Amazon Personalize will use all interactions for training with equal weight regardless of type.</p>
237 pub fn event_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
238 self.event_type = ::std::option::Option::Some(input.into());
239 self
240 }
241 /// <p>When your have multiple event types (using an <code>EVENT_TYPE</code> schema field), this parameter specifies which event type (for example, 'click' or 'like') is used for training the model.</p>
242 /// <p>If you do not provide an <code>eventType</code>, Amazon Personalize will use all interactions for training with equal weight regardless of type.</p>
243 pub fn set_event_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
244 self.event_type = input;
245 self
246 }
247 /// <p>When your have multiple event types (using an <code>EVENT_TYPE</code> schema field), this parameter specifies which event type (for example, 'click' or 'like') is used for training the model.</p>
248 /// <p>If you do not provide an <code>eventType</code>, Amazon Personalize will use all interactions for training with equal weight regardless of type.</p>
249 pub fn get_event_type(&self) -> &::std::option::Option<::std::string::String> {
250 &self.event_type
251 }
252 /// <p>The configuration properties for the solution. When <code>performAutoML</code> is set to true, Amazon Personalize only evaluates the <code>autoMLConfig</code> section of the solution configuration.</p><note>
253 /// <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p>
254 /// </note>
255 pub fn solution_config(mut self, input: crate::types::SolutionConfig) -> Self {
256 self.solution_config = ::std::option::Option::Some(input);
257 self
258 }
259 /// <p>The configuration properties for the solution. When <code>performAutoML</code> is set to true, Amazon Personalize only evaluates the <code>autoMLConfig</code> section of the solution configuration.</p><note>
260 /// <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p>
261 /// </note>
262 pub fn set_solution_config(mut self, input: ::std::option::Option<crate::types::SolutionConfig>) -> Self {
263 self.solution_config = input;
264 self
265 }
266 /// <p>The configuration properties for the solution. When <code>performAutoML</code> is set to true, Amazon Personalize only evaluates the <code>autoMLConfig</code> section of the solution configuration.</p><note>
267 /// <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p>
268 /// </note>
269 pub fn get_solution_config(&self) -> &::std::option::Option<crate::types::SolutionConfig> {
270 &self.solution_config
271 }
272 /// Appends an item to `tags`.
273 ///
274 /// To override the contents of this collection use [`set_tags`](Self::set_tags).
275 ///
276 /// <p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the solution.</p>
277 pub fn tags(mut self, input: crate::types::Tag) -> Self {
278 let mut v = self.tags.unwrap_or_default();
279 v.push(input);
280 self.tags = ::std::option::Option::Some(v);
281 self
282 }
283 /// <p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the solution.</p>
284 pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
285 self.tags = input;
286 self
287 }
288 /// <p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the solution.</p>
289 pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
290 &self.tags
291 }
292 /// Consumes the builder and constructs a [`CreateSolutionInput`](crate::operation::create_solution::CreateSolutionInput).
293 pub fn build(
294 self,
295 ) -> ::std::result::Result<crate::operation::create_solution::CreateSolutionInput, ::aws_smithy_types::error::operation::BuildError> {
296 ::std::result::Result::Ok(crate::operation::create_solution::CreateSolutionInput {
297 name: self.name,
298 perform_hpo: self.perform_hpo,
299 perform_auto_ml: self.perform_auto_ml,
300 perform_auto_training: self.perform_auto_training,
301 perform_incremental_update: self.perform_incremental_update,
302 recipe_arn: self.recipe_arn,
303 dataset_group_arn: self.dataset_group_arn,
304 event_type: self.event_type,
305 solution_config: self.solution_config,
306 tags: self.tags,
307 })
308 }
309}