AWS::Personalize::Solution
Important
By default, all new solutions use automatic training. With automatic training, you incur training costs while
your solution is active. To avoid unnecessary costs, when you are finished you can
update the solution to turn off automatic training.
For information about training
costs, see Amazon Personalize pricing
An object that provides information about a solution. A solution includes the custom recipe, customized parameters, and trained models (Solution Versions) that Amazon Personalize uses to generate recommendations.
After you create a solution, you can’t change its configuration. If you need to make changes, you can clone the solution with the Amazon Personalize console or create a new one.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::Personalize::Solution", "Properties" : { "DatasetGroupArn" :
String
, "EventType" :String
, "Name" :String
, "PerformAutoML" :Boolean
, "PerformHPO" :Boolean
, "RecipeArn" :String
, "SolutionConfig" :SolutionConfig
} }
YAML
Type: AWS::Personalize::Solution Properties: DatasetGroupArn:
String
EventType:String
Name:String
PerformAutoML:Boolean
PerformHPO:Boolean
RecipeArn:String
SolutionConfig:SolutionConfig
Properties
DatasetGroupArn
-
The Amazon Resource Name (ARN) of the dataset group that provides the training data.
Required: Yes
Type: String
Pattern:
arn:([a-z\d-]+):personalize:.*:.*:.+
Maximum:
256
Update requires: Replacement
EventType
-
The event type (for example, 'click' or 'like') that is used for training the model. If no
eventType
is provided, Amazon Personalize uses all interactions for training with equal weight regardless of type.Required: No
Type: String
Maximum:
256
Update requires: Replacement
Name
-
The name of the solution.
Required: Yes
Type: String
Pattern:
^[a-zA-Z0-9][a-zA-Z0-9\-_]*
Minimum:
1
Maximum:
63
Update requires: Replacement
PerformAutoML
-
Important
We don't recommend enabling automated machine learning. Instead, match your use case to the available Amazon Personalize recipes. For more information, see Determining your use case.
When true, Amazon Personalize performs a search for the best USER_PERSONALIZATION recipe from the list specified in the solution configuration (
recipeArn
must not be specified). When false (the default), Amazon Personalize usesrecipeArn
for training.Required: No
Type: Boolean
Update requires: Replacement
PerformHPO
-
Whether to perform hyperparameter optimization (HPO) on the chosen recipe. The default is
false
.Required: No
Type: Boolean
Update requires: Replacement
RecipeArn
-
The ARN of the recipe used to create the solution. This is required when
performAutoML
is false.Required: No
Type: String
Pattern:
arn:([a-z\d-]+):personalize:.*:.*:.+
Maximum:
256
Update requires: Replacement
SolutionConfig
-
Describes the configuration properties for the solution.
Required: No
Type: SolutionConfig
Update requires: Replacement
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the name of the resource.
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
SolutionArn
-
The Amazon Resource Name (ARN) of the solution.
Examples
Creating a solution
The following example creates an Amazon Personalize solution with the User-Personalization recipe and an event value threshold.
JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MySolution": { "Type": "AWS::Personalize::Solution", "Properties": { "Name": "my-solution-name", "DatasetGroupArn": "arn:aws:personalize:us-west-2:123456789012:dataset-group/my-dataset-group-name", "RecipeArn": "arn:aws:personalize:::recipe/aws-user-personalization", "SolutionConfig": { "EventValueThreshold" : ".05" } } } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: MySolution: Type: 'AWS::Personalize::Solution' Properties: Name: my-solution-name DatasetGroupArn: >- arn:aws:personalize:us-west-2:123456789012:dataset-group/my-dataset-group-name RecipeArn: 'arn:aws:personalize:::recipe/aws-user-personalization' SolutionConfig: EventValueThreshold: '.05'