aws_sdk_personalize/client/
create_solution.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateSolution`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`name(impl Into<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_name):<br>required: **true**<br><p>The name for the solution.</p><br>
7    ///   - [`perform_hpo(bool)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::perform_hpo) / [`set_perform_hpo(Option<bool>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_perform_hpo):<br>required: **false**<br><p>Whether to perform hyperparameter optimization (HPO) on the specified or selected recipe. The default is <code>false</code>.</p> <p>When performing AutoML, this parameter is always <code>true</code> and you should not set it to <code>false</code>.</p><br>
8    ///   - [`perform_auto_ml(bool)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::perform_auto_ml) / [`set_perform_auto_ml(Option<bool>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_perform_auto_ml):<br>required: **false**<br><important>  <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> </important> <p>Whether to perform automated machine learning (AutoML). The default is <code>false</code>. For this case, you must specify <code>recipeArn</code>.</p> <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><br>
9    ///   - [`perform_auto_training(bool)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::perform_auto_training) / [`set_perform_auto_training(Option<bool>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_perform_auto_training):<br>required: **false**<br><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> <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> <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><br>
10    ///   - [`recipe_arn(impl Into<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::recipe_arn) / [`set_recipe_arn(Option<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_recipe_arn):<br>required: **false**<br><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><br>
11    ///   - [`dataset_group_arn(impl Into<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::dataset_group_arn) / [`set_dataset_group_arn(Option<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_dataset_group_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the dataset group that provides the training data.</p><br>
12    ///   - [`event_type(impl Into<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::event_type) / [`set_event_type(Option<String>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_event_type):<br>required: **false**<br><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> <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><br>
13    ///   - [`solution_config(SolutionConfig)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::solution_config) / [`set_solution_config(Option<SolutionConfig>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_solution_config):<br>required: **false**<br><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>  <p>Amazon Personalize doesn't support configuring the <code>hpoObjective</code> at this time.</p> </note><br>
14    ///   - [`tags(Tag)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_solution::builders::CreateSolutionFluentBuilder::set_tags):<br>required: **false**<br><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><br>
15    /// - On success, responds with [`CreateSolutionOutput`](crate::operation::create_solution::CreateSolutionOutput) with field(s):
16    ///   - [`solution_arn(Option<String>)`](crate::operation::create_solution::CreateSolutionOutput::solution_arn): <p>The ARN of the solution.</p>
17    /// - On failure, responds with [`SdkError<CreateSolutionError>`](crate::operation::create_solution::CreateSolutionError)
18    pub fn create_solution(&self) -> crate::operation::create_solution::builders::CreateSolutionFluentBuilder {
19        crate::operation::create_solution::builders::CreateSolutionFluentBuilder::new(self.handle.clone())
20    }
21}