Usar um modelo de recomendação no Amazon Pinpoint com AWS Lambda - Amazon Pinpoint

Usar um modelo de recomendação no Amazon Pinpoint com AWS Lambda

No Amazon Pinpoint, você pode recuperar recomendações personalizadas de um modelo de recomendação e adicioná-las a mensagens enviadas de campanhas e jornadas. Um modelo de recomendação é um tipo de modelo de machine learning (ML) que encontra padrões em dados e gera previsões e recomendações com base nos padrões encontrados. Ele prevê o que um determinado usuário preferirá de um determinado conjunto de produtos ou itens, e fornece essas informações como um conjunto de recomendações para o usuário.

Usando modelos de recomendação com o Amazon Pinpoint, você pode enviar recomendações personalizadas para destinatários de mensagens com base nos atributos e no comportamento de cada destinatário. Com o AWS Lambda, você também pode personalizar e aprimorar essas recomendações. Por exemplo, você pode transformar dinamicamente uma recomendação de um único valor de texto (como um nome ou ID de produto) para conteúdo mais sofisticado (como nome de produto, descrição e imagem). E você pode fazer isso em tempo real, quando o Amazon Pinpoint envia a mensagem.

Esse atributo está disponível nas seguintes Regiões da AWS: Leste dos EUA (Norte da Virgínia); Oeste dos EUA (Oregon); Ásia-Pacífico (Mumbai); Ásia-Pacífico (Sydney) e Europa (Irlanda).

Autorizar o Amazon Pinpoint a invocar uma função do Lambda usando a AWS CLI e o comando Lambda add-permission

Depois de atribuir uma política de função do Lambda a uma função, você pode adicionar permissões que permitem que o Amazon Pinpoint invoque a função para um projeto, campanha ou jornada específico. Você pode fazer isso usando o AWS Command Line Interface (AWS CLI) e o comando do Lambda add-permission. O exemplo a seguir mostra como fazer isso para um projeto específico (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/*

O exemplo anterior está formatado para Unix, Linux e macOS. Para o Microsoft Windows, substitua o caractere de continuação de linha de barra invertida (\) por um circunflexo (^).

Se o comando for executado com êxito, você verá um resultado semelhante a este:

{ "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/*\"}}}" }

O valor de Statement é uma versão da cadeia de caracteres JSON da instrução adicionada à política da função do Lambda.

Configurar o Amazon Pinpoint para invocar a função do Lambda em um modelo de recomendação

Para configurar o Amazon Pinpoint para invocar a função do Lambda de um modelo de recomendação, especifique as seguintes definições de configuração específicas ao Lambda para o modelo:

  • RecommendationTransformerUri: esta propriedade especifica o nome ou o nome do recurso da Amazon (ARN) da função do Lambda.

  • Attributes: este objeto é um mapa que define os atributos recomendados personalizados que a função adiciona a cada definição de endpoint. Cada um desses atributos pode ser usado como uma variável de mensagem em um modelo de mensagem.

É possível especificar essas configurações usando o recurso Modelos de recomendação da API do Amazon Pinpoint (ao criar a configuração de um modelo) ou o recurso Modelo de recomendação da API do Amazon Pinpoint (se você atualizar a configuração de um modelo). Também é possível definir essas configurações usando o console do Amazon Pinpoint.

Para obter mais informações sobre como usar modelos de recomendação com o Amazon Pinpoint, consulte Modelos de machine learning no Guia do usuário do Amazon Pinpoint.