AWS::Personalize::Solution - AWS CloudFormation (original) (raw)
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 uses recipeArn
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 whenperformAutoML
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'