Class: AWS.Personalize
- Inherits:
-
AWS.Service
- Object
- AWS.Service
- AWS.Personalize
- Identifier:
- personalize
- API Version:
- 2018-05-22
- Defined in:
- (unknown)
Overview
Constructs a service interface object. Each API operation is exposed as a function on service.
Service Description
Amazon Personalize is a machine learning service that makes it easy to add individualized recommendations to customers.
Sending a Request Using Personalize
var personalize = new AWS.Personalize();
personalize.createBatchInferenceJob(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Locking the API Version
In order to ensure that the Personalize object uses this specific API, you can
construct the object by passing the apiVersion option to the constructor:
var personalize = new AWS.Personalize({apiVersion: '2018-05-22'});
You can also set the API version globally in AWS.config.apiVersions using
the personalize service identifier:
AWS.config.apiVersions = {
personalize: '2018-05-22',
// other service API versions
};
var personalize = new AWS.Personalize();
Constructor Summary collapse
-
new AWS.Personalize(options = {}) ⇒ Object
constructor
Constructs a service object.
Property Summary collapse
-
endpoint ⇒ AWS.Endpoint
readwrite
An Endpoint object representing the endpoint URL for service requests.
Properties inherited from AWS.Service
Method Summary collapse
-
createBatchInferenceJob(params = {}, callback) ⇒ AWS.Request
Generates batch recommendations based on a list of items or users stored in Amazon S3 and exports the recommendations to an Amazon S3 bucket.
To generate batch recommendations, specify the ARN of a solution version and an Amazon S3 URI for the input and output data.
-
createBatchSegmentJob(params = {}, callback) ⇒ AWS.Request
Creates a batch segment job.
-
createCampaign(params = {}, callback) ⇒ AWS.Request
You incur campaign costs while it is active.
-
createDataDeletionJob(params = {}, callback) ⇒ AWS.Request
Creates a batch job that deletes all references to specific users from an Amazon Personalize dataset group in batches.
-
createDataset(params = {}, callback) ⇒ AWS.Request
Creates an empty dataset and adds it to the specified dataset group.
-
createDatasetExportJob(params = {}, callback) ⇒ AWS.Request
Creates a job that exports data from your dataset to an Amazon S3 bucket.
-
createDatasetGroup(params = {}, callback) ⇒ AWS.Request
Creates an empty dataset group.
-
createDatasetImportJob(params = {}, callback) ⇒ AWS.Request
Creates a job that imports training data from your data source (an Amazon S3 bucket) to an Amazon Personalize dataset.
-
createEventTracker(params = {}, callback) ⇒ AWS.Request
Creates an event tracker that you use when adding event data to a specified dataset group using the PutEvents API.
Note: Only one event tracker can be associated with a dataset group.- createFilter(params = {}, callback) ⇒ AWS.Request
Creates a recommendation filter.
- createMetricAttribution(params = {}, callback) ⇒ AWS.Request
Creates a metric attribution.
- createRecommender(params = {}, callback) ⇒ AWS.Request
Creates a recommender with the recipe (a Domain dataset group use case) you specify.
- createSchema(params = {}, callback) ⇒ AWS.Request
Creates an Amazon Personalize schema from the specified schema string.
- createSolution(params = {}, callback) ⇒ AWS.Request
By default, all new solutions use automatic training.
- createSolutionVersion(params = {}, callback) ⇒ AWS.Request
Trains or retrains an active solution in a Custom dataset group.
- deleteCampaign(params = {}, callback) ⇒ AWS.Request
Removes a campaign by deleting the solution deployment.
- deleteDataset(params = {}, callback) ⇒ AWS.Request
Deletes a dataset.
- deleteDatasetGroup(params = {}, callback) ⇒ AWS.Request
Deletes a dataset group.
- deleteEventTracker(params = {}, callback) ⇒ AWS.Request
Deletes the event tracker.
- deleteFilter(params = {}, callback) ⇒ AWS.Request
Deletes a filter.
.
- deleteMetricAttribution(params = {}, callback) ⇒ AWS.Request
Deletes a metric attribution.
.
- deleteRecommender(params = {}, callback) ⇒ AWS.Request
Deactivates and removes a recommender.
- deleteSchema(params = {}, callback) ⇒ AWS.Request
Deletes a schema.
- deleteSolution(params = {}, callback) ⇒ AWS.Request
Deletes all versions of a solution and the
Solutionobject itself.- describeAlgorithm(params = {}, callback) ⇒ AWS.Request
Describes the given algorithm.
.
- describeBatchInferenceJob(params = {}, callback) ⇒ AWS.Request
Gets the properties of a batch inference job including name, Amazon Resource Name (ARN), status, input and output configurations, and the ARN of the solution version used to generate the recommendations.
.
- describeBatchSegmentJob(params = {}, callback) ⇒ AWS.Request
Gets the properties of a batch segment job including name, Amazon Resource Name (ARN), status, input and output configurations, and the ARN of the solution version used to generate segments.
.
- describeCampaign(params = {}, callback) ⇒ AWS.Request
Describes the given campaign, including its status.
A campaign can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
-
DELETE PENDING > DELETE IN_PROGRESS
When the
statusisCREATE FAILED, the response includes thefailureReasonkey, which describes why.For more information on campaigns, see CreateCampaign.
.- describeDataDeletionJob(params = {}, callback) ⇒ AWS.Request
Describes the data deletion job created by CreateDataDeletionJob, including the job status.
.
- describeDataset(params = {}, callback) ⇒ AWS.Request
Describes the given dataset.
- describeDatasetExportJob(params = {}, callback) ⇒ AWS.Request
Describes the dataset export job created by CreateDatasetExportJob, including the export job status.
.
- describeDatasetGroup(params = {}, callback) ⇒ AWS.Request
Describes the given dataset group.
- describeDatasetImportJob(params = {}, callback) ⇒ AWS.Request
Describes the dataset import job created by CreateDatasetImportJob, including the import job status.
.
- describeEventTracker(params = {}, callback) ⇒ AWS.Request
Describes an event tracker.
- describeFeatureTransformation(params = {}, callback) ⇒ AWS.Request
Describes the given feature transformation.
.
- describeFilter(params = {}, callback) ⇒ AWS.Request
Describes a filter's properties.
.
- describeMetricAttribution(params = {}, callback) ⇒ AWS.Request
Describes a metric attribution.
.
- describeRecipe(params = {}, callback) ⇒ AWS.Request
Describes a recipe.
A recipe contains three items:
-
An algorithm that trains a model.
-
Hyperparameters that govern the training.
-
Feature transformation information for modifying the input data before training.
Amazon Personalize provides a set of predefined recipes.
- describeRecommender(params = {}, callback) ⇒ AWS.Request
Describes the given recommender, including its status.
A recommender can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
-
STOP PENDING > STOP IN_PROGRESS > INACTIVE > START PENDING > START IN_PROGRESS > ACTIVE
-
DELETE PENDING > DELETE IN_PROGRESS
When the
statusisCREATE FAILED, the response includes thefailureReasonkey, which describes why.The
modelMetricskey is null when the recommender is being created or deleted.For more information on recommenders, see CreateRecommender.
.- describeSchema(params = {}, callback) ⇒ AWS.Request
Describes a schema.
- describeSolution(params = {}, callback) ⇒ AWS.Request
Describes a solution.
- describeSolutionVersion(params = {}, callback) ⇒ AWS.Request
Describes a specific version of a solution.
- getSolutionMetrics(params = {}, callback) ⇒ AWS.Request
Gets the metrics for the specified solution version.
.
- listBatchInferenceJobs(params = {}, callback) ⇒ AWS.Request
Gets a list of the batch inference jobs that have been performed off of a solution version.
.
- listBatchSegmentJobs(params = {}, callback) ⇒ AWS.Request
Gets a list of the batch segment jobs that have been performed off of a solution version that you specify.
.
- listCampaigns(params = {}, callback) ⇒ AWS.Request
Returns a list of campaigns that use the given solution.
- listDataDeletionJobs(params = {}, callback) ⇒ AWS.Request
Returns a list of data deletion jobs for a dataset group ordered by creation time, with the most recent first.
- listDatasetExportJobs(params = {}, callback) ⇒ AWS.Request
Returns a list of dataset export jobs that use the given dataset.
- listDatasetGroups(params = {}, callback) ⇒ AWS.Request
Returns a list of dataset groups.
- listDatasetImportJobs(params = {}, callback) ⇒ AWS.Request
Returns a list of dataset import jobs that use the given dataset.
- listDatasets(params = {}, callback) ⇒ AWS.Request
Returns the list of datasets contained in the given dataset group.
- listEventTrackers(params = {}, callback) ⇒ AWS.Request
Returns the list of event trackers associated with the account.
- listFilters(params = {}, callback) ⇒ AWS.Request
Lists all filters that belong to a given dataset group.
.
- listMetricAttributionMetrics(params = {}, callback) ⇒ AWS.Request
Lists the metrics for the metric attribution.
.
- listMetricAttributions(params = {}, callback) ⇒ AWS.Request
Lists metric attributions.
.
- listRecipes(params = {}, callback) ⇒ AWS.Request
Returns a list of available recipes.
- listRecommenders(params = {}, callback) ⇒ AWS.Request
Returns a list of recommenders in a given Domain dataset group.
- listSchemas(params = {}, callback) ⇒ AWS.Request
Returns the list of schemas associated with the account.
- listSolutions(params = {}, callback) ⇒ AWS.Request
Returns a list of solutions in a given dataset group.
- listSolutionVersions(params = {}, callback) ⇒ AWS.Request
Returns a list of solution versions for the given solution.
- listTagsForResource(params = {}, callback) ⇒ AWS.Request
Get a list of tags attached to a resource.
.
- startRecommender(params = {}, callback) ⇒ AWS.Request
Starts a recommender that is INACTIVE.
- stopRecommender(params = {}, callback) ⇒ AWS.Request
Stops a recommender that is ACTIVE.
- stopSolutionVersionCreation(params = {}, callback) ⇒ AWS.Request
Stops creating a solution version that is in a state of CREATE_PENDING or CREATE IN_PROGRESS.
- tagResource(params = {}, callback) ⇒ AWS.Request
Add a list of tags to a resource.
.
- untagResource(params = {}, callback) ⇒ AWS.Request
Removes the specified tags that are attached to a resource.
- updateCampaign(params = {}, callback) ⇒ AWS.Request
Updates a campaign to deploy a retrained solution version with an existing campaign, change your campaign's
minProvisionedTPS, or modify your campaign's configuration.- updateDataset(params = {}, callback) ⇒ AWS.Request
Update a dataset to replace its schema with a new or existing one.
- updateMetricAttribution(params = {}, callback) ⇒ AWS.Request
Updates a metric attribution.
.
- updateRecommender(params = {}, callback) ⇒ AWS.Request
Updates the recommender to modify the recommender configuration.
- updateSolution(params = {}, callback) ⇒ AWS.Request
Updates an Amazon Personalize solution to use a different automatic training configuration.
Methods inherited from AWS.Service
makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService
Constructor Details
new AWS.Personalize(options = {}) ⇒ Object
Constructs a service object. This object has one method for each API operation.
Property Details
Method Details
createBatchInferenceJob(params = {}, callback) ⇒ AWS.Request
Generates batch recommendations based on a list of items or users stored in Amazon S3 and exports the recommendations to an Amazon S3 bucket.
To generate batch recommendations, specify the ARN of a solution version and an Amazon S3 URI for the input and output data. For user personalization, popular items, and personalized ranking solutions, the batch inference job generates a list of recommended items for each user ID in the input file. For related items solutions, the job generates a list of recommended items for each item ID in the input file.
For more information, see Creating a batch inference job .
If you use the Similar-Items recipe, Amazon Personalize can add descriptive themes to batch recommendations. To generate themes, set the job's mode to
THEME_GENERATIONand specify the name of the field that contains item names in the input data.For more information about generating themes, see Batch recommendations with themes from Content Generator .
You can't get batch recommendations with the Trending-Now or Next-Best-Action recipes.
createBatchSegmentJob(params = {}, callback) ⇒ AWS.Request
Creates a batch segment job. The operation can handle up to 50 million records and the input file must be in JSON format. For more information, see Getting batch recommendations and user segments.
createCampaign(params = {}, callback) ⇒ AWS.Request
You incur campaign costs while it is active. To avoid unnecessary costs, make sure to delete the campaign when you are finished. For information about campaign costs, see Amazon Personalize pricing.
Creates a campaign that deploys a solution version. When a client calls the GetRecommendations and GetPersonalizedRanking APIs, a campaign is specified in the request.
Minimum Provisioned TPS and Auto-Scaling
A high
minProvisionedTPSwill increase your cost. We recommend starting with 1 forminProvisionedTPS(the default). Track your usage using Amazon CloudWatch metrics, and increase theminProvisionedTPSas necessary.When you create an Amazon Personalize campaign, you can specify the minimum provisioned transactions per second (
minProvisionedTPS) for the campaign. This is the baseline transaction throughput for the campaign provisioned by Amazon Personalize. It sets the minimum billing charge for the campaign while it is active. A transaction is a singleGetRecommendationsorGetPersonalizedRankingrequest. The defaultminProvisionedTPSis 1.If your TPS increases beyond the
minProvisionedTPS, Amazon Personalize auto-scales the provisioned capacity up and down, but never belowminProvisionedTPS. There's a short time delay while the capacity is increased that might cause loss of transactions. When your traffic reduces, capacity returns to theminProvisionedTPS.You are charged for the the minimum provisioned TPS or, if your requests exceed the
minProvisionedTPS, the actual TPS. The actual TPS is the total number of recommendation requests you make. We recommend starting with a lowminProvisionedTPS, track your usage using Amazon CloudWatch metrics, and then increase theminProvisionedTPSas necessary.For more information about campaign costs, see Amazon Personalize pricing.
Status
A campaign can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
-
DELETE PENDING > DELETE IN_PROGRESS
To get the campaign status, call DescribeCampaign.
Note: Wait until thestatusof the campaign isACTIVEbefore asking the campaign for recommendations.Related APIs
createDataDeletionJob(params = {}, callback) ⇒ AWS.Request
Creates a batch job that deletes all references to specific users from an Amazon Personalize dataset group in batches. You specify the users to delete in a CSV file of userIds in an Amazon S3 bucket. After a job completes, Amazon Personalize no longer trains on the users’ data and no longer considers the users when generating user segments. For more information about creating a data deletion job, see Deleting users.
-
Your input file must be a CSV file with a single USER_ID column that lists the users IDs. For more information about preparing the CSV file, see Preparing your data deletion file and uploading it to Amazon S3.
-
To give Amazon Personalize permission to access your input CSV file of userIds, you must specify an IAM service role that has permission to read from the data source. This role needs
GetObjectandListBucketpermissions for the bucket and its content. These permissions are the same as importing data. For information on granting access to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon S3 Resources.
After you create a job, it can take up to a day to delete all references to the users from datasets and models. Until the job completes, Amazon Personalize continues to use the data when training. And if you use a User Segmentation recipe, the users might appear in user segments.
Status
A data deletion job can have one of the following statuses:
-
PENDING > IN_PROGRESS > COMPLETED -or- FAILED
To get the status of the data deletion job, call DescribeDataDeletionJob API operation and specify the Amazon Resource Name (ARN) of the job. If the status is FAILED, the response includes a
failureReasonkey, which describes why the job failed.Related APIs
createDataset(params = {}, callback) ⇒ AWS.Request
Creates an empty dataset and adds it to the specified dataset group. Use CreateDatasetImportJob to import your training data to a dataset.
There are 5 types of datasets:
-
Item interactions
-
Items
-
Users
-
Action interactions
-
Actions
Each dataset type has an associated schema with required field types. Only the
Item interactionsdataset is required in order to train a model (also referred to as creating a solution).A dataset can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
-
DELETE PENDING > DELETE IN_PROGRESS
To get the status of the dataset, call DescribeDataset.
Related APIs
createDatasetExportJob(params = {}, callback) ⇒ AWS.Request
Creates a job that exports data from your dataset to an Amazon S3 bucket. To allow Amazon Personalize to export the training data, you must specify an service-linked IAM role that gives Amazon Personalize
PutObjectpermissions for your Amazon S3 bucket. For information, see Exporting a dataset in the Amazon Personalize developer guide.Status
A dataset export job can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
To get the status of the export job, call DescribeDatasetExportJob, and specify the Amazon Resource Name (ARN) of the dataset export job. The dataset export is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a
failureReasonkey, which describes why the job failed.createDatasetGroup(params = {}, callback) ⇒ AWS.Request
Creates an empty dataset group. A dataset group is a container for Amazon Personalize resources. A dataset group can contain at most three datasets, one for each type of dataset:
-
Item interactions
-
Items
-
Users
-
Actions
-
Action interactions
A dataset group can be a Domain dataset group, where you specify a domain and use pre-configured resources like recommenders, or a Custom dataset group, where you use custom resources, such as a solution with a solution version, that you deploy with a campaign. If you start with a Domain dataset group, you can still add custom resources such as solutions and solution versions trained with recipes for custom use cases and deployed with campaigns.
A dataset group can be in one of the following states:
-
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
-
DELETE PENDING
To get the status of the dataset group, call DescribeDatasetGroup. If the status shows as CREATE FAILED, the response includes a
failureReasonkey, which describes why the creation failed.Note: You must wait until thestatusof the dataset group isACTIVEbefore adding a dataset to the group.You can specify an Key Management Service (KMS) key to encrypt the datasets in the group. If you specify a KMS key, you must also include an Identity and Access Management (IAM) role that has permission to access the key.
APIs that require a dataset group ARN in the request
Related APIs
- createFilter(params = {}, callback) ⇒ AWS.Request