在 Amazon Pinpoint 中使用推荐模型 AWS Lambda - Amazon Pinpoint

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon Pinpoint 中使用推荐模型 AWS Lambda

在 Amazon Pinpoint 中,您可以从推荐器模型中检索个性化建议,并将其添加到您从活动和旅程发送的消息中。推荐器模型 是一种机器学习 (ML) 模型,它在数据中查找模式,并根据找到的模式生成预测和建议。它根据一组给定的产品或项目来预测某个特定用户将喜欢什么,并以一组建议的方式为用户提供该信息。

通过将推荐器模型与 Amazon Pinpoint 一起使用,您可以根据每个消息接收人的属性和行为向接收人发送个性化建议。使用 AWS Lambda,您还可以自定义和增强这些建议。例如,您可以将建议从单个文本值(如产品名称或 ID)动态转换为更复杂的内容(如产品名称、描述和图像)。您可以在 Amazon Pinpoint 发送消息时实时执行该操作。

此功能在以下 AWS 地区提供:美国东部(弗吉尼亚北部)、美国西部(俄勒冈)、亚太地区(孟买)、亚太地区(悉尼)和欧洲(爱尔兰)。

使用和 AWS CLI Lambda 添加权限命令授权 Amazon Pinpoint 调用 Lambda 函数

在为函数分配 Lambda 函数策略后,您可以添加权限,允许 Amazon Pinpoint 为特定项目、活动或旅程调用该函数。您可以使用 AWS Command Line Interface (AWS CLI) 和 Lambda add-permission命令执行此操作。以下示例显示了如何为特定项目执行此操作 (projectId):

$ aws lambda add-permission \ --function-name function-name \ --statement-id sid \ --action lambda:InvokeFunction \ --principal pinpoint.us-east-1.amazonaws.com \ --source-arn arn:aws:mobiletargeting:us-east-1:accountId:recommenders/*

前面的示例针对 Unix、Linux 和 macOS 进行了格式设置。对于 Microsoft Windows,请将反斜杠 (\) 行继续符替换为插入符号 (^)。

如果命令成功运行,则您将看到类似于以下内容的输出:

{ "Statement": "{\"Sid\":\"sid\", \"Effect\":\"Allow\", \"Principal\":{\"Service\":\"pinpoint.us-east-1.amazonaws.com\"}, \"Action\":\"lambda:InvokeFunction\", \"Resource\":\"arn:aws:lambda:us-east-1:111122223333:function:function-name\", \"Condition\": {\"ArnLike\": {\"AWS:SourceArn\": \"arn:aws:mobiletargeting:us-east-1:111122223333:recommenders/*\"}}}" }

Statement值是已添加到 Lambda 函数策略的语句的JSON字符串版本。

将 Amazon Pinpoint 配置为为推荐模型调用 Lambda 函数

要配置 Amazon Pinpoint 以便为推荐器模型调用 Lambda 函数,请为模型指定以下 Lambda 特定的配置设置:

  • RecommendationTransformerUri— 此属性指定 Lambda 函数的名称或亚马逊资源名称 (ARN)。

  • Attributes – 该对象是一个映射,它定义了函数添加到每个端点定义的自定义建议属性。可以将其中的每个属性作为消息模板中的消息变量。

您可以使用 Amazon API Pinpoint 的推荐模型资源(当您为模型创建配置时)或 Amazon Pinpoint 的推荐模型资源(如果您更新模型的配置)API来指定这些设置。您也可以使用 Amazon Pinpoint 控制台定义这些设置。

有关将推荐器模型与 Amazon Pinpoint 一起使用的更多信息,请参阅《Amazon Pinpoint 用户指南》中的机器学习模型