Updating an Amazon Personalize campaign's configuration - Amazon Personalize

Updating an Amazon Personalize campaign's configuration

To change your campaign's Minimum provisioned TPS, manually deploy a new solution version, or modify a campaign's configuration, such as enabling metadata in recommendations, you must manually update the campaign.

The following doesn't require a manual campaign update:

  • If your campaign uses automatic campaign updates, you don't have to update it to deploy the latest automatically or manually trained solution version of your solution. For more information, see Enabling automatic campaign updates.

  • With User-Personalization-v2, User-Personalization, or Next-Best-Action, Amazon Personalize automatically updates your latest solution version every two hours to include new items or actions in recommendations. Your campaign automatically uses the updated solution version.

You manually update a campaign with the Amazon Personalize console, AWS Command Line Interface (AWS CLI), or AWS SDKs.

Updating a campaign (console)

To deploy a manually retrained solution version or make changes to your campaign configuration, you must update your campaign.

To update a campaign (console)
  1. Open the Amazon Personalize console at https://console.aws.amazon.com/personalize/home and sign into your account.

  2. Choose the dataset group with the campaign you want to update.

  3. In the navigation pane, choose Campaigns.

  4. On the Campaigns page, choose the campaign you want to update.

  5. On the campaign details page, choose Update.

  6. On the Update campaign page, make your changes. For example, if you are deploying a retrained solution version, for Solution version ID, choose the identification number for the new solution version.

  7. Choose Update. Amazon Personalize updates the campaign to use the new solution version and any changed configurations.

Updating a campaign (AWS CLI)

To deploy a new solution version, change your campaign's Minimum provisioned TPS, or change your campaign's configuration, you must update your campaign. Use the following update-campaign command to update a campaign to use a new solution version with the AWS CLI.

Replace campaign arn with the Amazon Resource Name (ARN) of the campaign you want to update. Replace new solution version arn with the solution version you want to deploy.

aws personalize update-campaign \ --campaign-arn campaign arn \ --solution-version-arn new solution version arn \ --min-provisioned-tps 1

Updating a campaign (AWS SDKs)

To deploy a new solution version, change your campaign's Minimum provisioned TPS or change your campaign's configuration, you must update your campaign. Use the following code to update a campaign with the SDK for Python (Boto3) or SDK for Java 2.x. For a complete list of parameters, see UpdateCampaign.

SDK for Python (Boto3)

Use the following update_campaign method to deploy a new solution version. Replace campaign arn with the Amazon Resource Name (ARN) of the campaign you want to update, replace the new solution version arn with the new solution version ARN and optionally change the minProvisionedTPS.

import boto3 personalize = boto3.client('personalize') response = personalize.update_campaign( campaignArn = 'campaign arn', solutionVersionArn = 'new solution version arn', minProvisionedTPS = 1, ) arn = response['campaignArn'] description = personalize.describe_campaign(campaignArn = arn)['campaign'] print('Name: ' + description['name']) print('ARN: ' + description['campaignArn']) print('Status: ' + description['status'])
SDK for Java 2.x

Use the following updateCampaign method to update a campaign to use a new solution version. Pass as parameters an Amazon Personalize service client, the new solution version's Amazon Resource Name (ARN), and the Minimum provisioned TPS.

public static void updateCampaign(PersonalizeClient personalizeClient, String campaignArn, String solutionVersionArn, Integer minProvisionedTPS) { try { // build the updateCampaignRequest UpdateCampaignRequest updateCampaignRequest = UpdateCampaignRequest.builder() .campaignArn(campaignArn) .solutionVersionArn(solutionVersionArn) .minProvisionedTPS(minProvisionedTPS) .build(); // update the campaign personalizeClient.updateCampaign(updateCampaignRequest); DescribeCampaignRequest campaignRequest = DescribeCampaignRequest.builder() .campaignArn(campaignArn) .build(); DescribeCampaignResponse campaignResponse = personalizeClient.describeCampaign(campaignRequest); Campaign updatedCampaign = campaignResponse.campaign(); System.out.println("The Campaign status is " + updatedCampaign.status()); } catch (PersonalizeException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }