本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用操 PutActionInteractions 作
建立 Action 互動資料集之後,您就可以記錄該作業的動PutActionInteractions作互動事件。以下各節說明如何記錄單一事件,以及如何使用事件值資料記錄多個事件。
錄製單一動作互動事件
下列程式碼會顯示傳遞 ATED 事件的PutActionInteractions
作業。當您顯示 Amazon Personalize 提供的使用者建議,並且使用者採取動作 (例如申請信用卡) 時,您可能會記錄此事件。
actionInteractions
是 ActionInteraction 物件的陣列。trackingId
這來自 Amazon Personalize 化在您創建動作交互數據集時創建的事件跟踪器。如需詳細資訊,請參閱 尋找動作互動事件追蹤器的 ID。
當用戶首次訪問您的網站或使用您的應用程序sessionId
時,您的應用程序會生成唯一的。您必須在整個工作階段sessionId
中的所有事件中使用相同的項目。Amazon Personalize 會使用在sessionId
使用者登入之前將事件與使用者建立關聯 (匿名)。如需詳細資訊,請參閱 記錄匿名用戶的事件。
userId
actionId
、和sentAt
參數會對應至動作互動資料集的 USER_ID、動作 ID、EVENT_TYPE 和時間戳記欄位。
對應動作互動資料集
USER_ID, ACTION_ID, TIMESTAMP, EVENT_TYPE
user123, action-xyz, 1543631760, TAKEN
程式碼範例
- AWS CLI
-
aws personalize-events put-action-interactions \
--tracking-id 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx
\
--action-interactions '[{
"userId": "user123
",
"sessionId": "abcdefg
",
"timestamp": 1543631760
,
"eventType": "TAKEN
",
"actionId": "action-xyz
"}]'
- SDK for Python (Boto3)
-
import boto3
personalize_events = boto3.client(service_name='personalize-events')
response = personalize_events.put_action_interactions(
trackingId='12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx
',
actionInteractions=[{
'userId': 'user123
',
'sessionId': 'abcdefg
',
'timestamp': 1543631760
,
'eventType': 'Taken
',
'actionId': 'action-xyz
'
}]
)
記錄多個動作互動事件
下列程式碼示範如何記錄具有相同 sessionId 相同使用者的多個動作互動事件。
對應動作互動資料集
USER_ID, ACTION_ID, EVENT_TYPE, TIMESTAMP
user123, action123, Taken, 1543531139
user123, action345, Not Taken, 1543531139
- AWS CLI
-
aws personalize-events put-action-interactions \
--tracking-id 6ddfe6b7-cd83-4dd4-b09d-4c35ecbacfe1 \
--action-interactions '[{
"userId": "user123
",
"sessionId": "abcdefg
",
"timestamp": 1543531139
,
"eventType": "Taken
",
"actionId": "action123
"
},
{
"userId": "user123
",
"sessionId": "abcdefg
",
"timestamp": 1543531139
,
"eventType": "Not Taken
",
"actionId": "action345
"}]'
- SDK for Python (Boto3)
-
import boto3
personalize_events = boto3.client(service_name='personalize-events')
response = personalize_events.put_action_interactions(
trackingId='12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx
',
actionInteractions=[{
'userId': 'user123
',
'sessionId': 'abcdefg
',
'timestamp': 1697848587
,
'eventType': 'Taken
',
'actionId': 'action123
'
},
{
'userId': 'user123
',
'sessionId': 'abcdefg
',
'timestamp': 1697848622
,
'eventType': 'Not Taken
',
'actionId': 'action345
'
}]
)