Enregistrement des événements d'interaction avec les objets à l'aide des données d'impressions - Amazon Personalize

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Enregistrement des événements d'interaction avec les objets à l'aide des données d'impressions

Si vous utilisez la Personnalisation par l'utilisateur recette ou si vous ajoutez le IMPRESSIONS champ à votre schéma pour un ensemble de données d'un groupe de données de domaine, vous pouvez enregistrer les données d'impressions dans votre PutEvents opération. Les impressions sont des listes d'éléments visibles par un utilisateur lorsqu'il interagissait avec un élément en particulier (par exemple, en cliquant ou en regardant). Amazon Personalize utilise les données d'impressions pour guider l'exploration, et les recommandations incluent des éléments présentant moins de données d'interactions ou de pertinence. Pour plus d'informations sur les impressions implicites et explicites qu'Amazon Personalize peut modéliser, consultezDonnées sur les impressions.

Important

Si vous fournissez des données d'impression implicites et explicites contradictoires dans vos PutEvents demandes, Amazon Personalize utilise les impressions explicites par défaut.

Pour enregistrer les recommandations Amazon Personalize, vous montrez à votre utilisateur sous forme de données d'impressions, recommendationId incluez-les dans votre PutEvents demande et Amazon Personalize calcule les impressions implicites en fonction de vos données de recommandation.

Pour enregistrer manuellement les données d'impressions pour un événement, listez les impressions dans le paramètre impression d'entrée de la PutEvents commande. L'exemple de code suivant montre comment inclure a recommendationId et an impression dans une PutEvents opération avec la version SDK 2.x pour Python (Boto3) ou SDK pour Java. Si vous incluez les deux, Amazon Personalize utilise les impressions explicites par défaut.

SDK for Python (Boto3)
import boto3 personalize_events = boto3.client(service_name='personalize-events') personalize_events.put_events( trackingId = 'tracking_id', userId= 'userId', sessionId = 'sessionId', eventList = [{ 'eventId': 'event1', 'eventType': 'rating', 'sentAt': 1553631760, 'itemId': 'item id', 'recommendationId': 'recommendation id', 'impression': ['itemId1', 'itemId2', 'itemId3'] }] )
SDK for Java 2.x

Utilisez la putEvents méthode suivante pour enregistrer un événement avec des données d'impressions et unrecommendationId. Pour le paramètre impressions, transmettez la liste itemIds sous forme de ArrayList.

public static void putEvents(PersonalizeEventsClient personalizeEventsClient, String trackingId, String sessionId, String userId, String eventType, Float eventValue, String itemId, ArrayList<String> impressions, String recommendationId) { try { Event event = Event.builder() .eventType(eventType) .sentAt(Instant.ofEpochMilli(System.currentTimeMillis() + 10 * 60 * 1000)) .itemId(itemId) .eventValue(eventValue) .impression(impressions) .recommendationId(recommendationId) .build(); PutEventsRequest putEventsRequest = PutEventsRequest.builder() .trackingId(trackingId) .userId(userId) .sessionId(sessionId) .eventList(event) .build(); int responseCode = personalizeEventsClient.putEvents(putEventsRequest) .sdkHttpResponse() .statusCode(); System.out.println("Response code: " + responseCode); } catch (PersonalizeEventsException e) { System.out.println(e.awsErrorDetails().errorMessage()); } }