개별적으로 사용자 가져오기 - Personalize

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

개별적으로 사용자 가져오기

스키마 및 데이터세트 생성을 완료하여 사용자 데이터세트를 생성한 후에는 한 명 이상의 새 사용자를 데이터세트로 개별적으로 가져올 수 있습니다. 사용자를 개별적으로 가져오면 카탈로그가 확장됨에 따라 소량의 배치 가져오기를 통해 사용자 데이터세트를 최신 상태로 유지할 수 있습니다. 한 번에 최대 10명까지 사용자를 가져올 수 있습니다. 신규 사용자가 많은 경우 먼저 데이터를 대량으로 가져온 다음 필요에 따라 사용자 데이터를 개별적으로 가져오는 것이 좋습니다. 데이터세트 가져오기 작업을 통해 Amazon Personalize로 대량 데이터 가져오기을 참조하세요.

Amazon Personalize 콘솔을 사용할 수 있습니다. AWS Command Line Interface (AWS CLI), 또는 AWS SDKs사용자를 가져오려면 사용자 데이터세트에 이미 있는 사용자와 동일한 userId를 가져오는 경우 Personalize는 새 사용자로 대체합니다. 한 번에 최대 10명까지 사용자를 가져올 수 있습니다.

Personalize가 새 레코드에 대한 필터를 업데이트하는 방법 및 새 레코드가 추천에 미치는 영향에 대한 자세한 내용은 개별 레코드 가져오기단원을 참조하세요.

개별적으로 사용자 가져오기(콘솔)

한 번에 최대 10명까지 사용자를 가져올 수 있습니다. 이 절차에서는 사용자 데이터세트를 이미 생성했다고 가정합니다. 데이터세트 생성에 대한 정보는 스키마 및 데이터세트 생성단원을 참조하세요.

사용자를 개별적으로 가져오려면(콘솔)
  1. https://console.aws.amazon.com/personalize/집에서 Amazon Personalize 콘솔을 열고 계정에 로그인합니다.

  2. 데이터세트 그룹 페이지에서 사용자를 가져오려는 사용자 데이터세트가 포함된 데이터세트 그룹을 선택합니다.

  3. 탐색 창에서 데이터세트를 선택합니다.

  4. 데이터세트 페이지에서, 사용자 데이터세트를 선택합니다.

  5. 데이터세트 세부 정보 페이지의 오른쪽 상단에서 데이터세트 수정을 선택하고 레코드 생성을 선택합니다.

  6. 사용자 기록 생성 페이지에서 레코드를 입력하려면 사용자 세부 정보를 JSON 형식으로 입력합니다. 사용자의 필드 이름과 값은 사용자 데이터세트를 생성할 때 사용한 스키마와 일치해야 합니다. Amazon Personalize는 이 JSON 스키마의 필드 이름 및 데이터 유형이 포함된 템플릿을 제공합니다.

  7. 레코드 생성을 선택합니다. 응답에서 가져오기 결과가 나열되고 성공 또는 실패 메시지가 표시됩니다.

사용자를 개별적으로 가져오기 (AWS CLI)

PutUsers 작업을 사용하여 사용자 데이터세트에 사용자를 한 명 이상 추가합니다. 한 번의 PutUsers호출로 최대 10명까지 사용자를 가져올 수 있습니다. 이 단원에서는 사용자 데이터세트를 이미 생성했다고 가정합니다. 데이터세트 생성에 대한 정보는 스키마 및 데이터세트 생성단원을 참조하세요.

다음 put-users 명령을 사용하여 사용자 한 명 이상을 추가할 수 있습니다. AWS CLI. 데이터세트의 Amazon 리소스 이름 (ARN) 과 사용자 dataset arn user Id ID로 대체합니다. 동일한 userId가 이미 사용자 데이터세트에 있는 경우 Personalize는 새 사용자로 대체합니다.

예를 들어 properties의 경우 사용자 데이터세트의 각 필드에 대해 propertyName를 스키마의 필드 이름(낙타 대문자 형식)으로 바꿉니다. 예를 GENDER 들어 는 gender 이고 TYPE 는 MEMBERSHIP membershipType _입니다. user data을 해당 사용자에 대한 데이터로 바꿉니다. 범주형 문자열 데이터의 경우 단일 속성에 여러 범주를 포함시키려면 파이프(|)로 각 범주를 구분합니다. 예: \"Premium Class|Legacy Member\".

aws personalize-events put-users \ --dataset-arn dataset arn \ --users '[{ "userId": "user Id", "properties": "{\"propertyName\": "\user data\"}" }, { "userId": "user Id", "properties": "{\"propertyName\": "\user data\"}" }]'

사용자를 개별적으로 가져오기 (AWS SDKs)

PutUsers 작업을 사용하여 사용자 데이터세트에 사용자를 한 명 이상 추가합니다. 동일한 userId가 이미 사용자 데이터세트에 있는 경우 Personalize는 새 사용자로 대체합니다. 한 번의 PutUsers호출로 최대 10명까지 사용자를 가져올 수 있습니다. 이 단원에서는 사용자 데이터세트를 이미 생성했다고 가정합니다. 데이터세트 생성에 대한 정보는 스키마 및 데이터세트 생성단원을 참조하세요.

다음 코드는 사용자 데이터세트에 사용자를 한 명 이상 추가하는 방법을 보여줍니다. 각 속성 이름 파라미터에 대해 스키마의 필드 이름을 낙타 대문자로 표기하여 전달합니다. 예를 들어, GENDER 는 gender be이고 MEMBERSHIP TYPE _는 membershipType 입니다. 각 속성 값 파라미터에 대해 해당 사용자에 대한 데이터를 전달합니다.

범주형 문자열 데이터의 경우 단일 속성에 여러 범주를 포함시키려면 파이프(|)로 각 범주를 구분합니다. 예: "Premium class|Legacy Member".

SDK for Python (Boto3)
import boto3 personalize_events = boto3.client(service_name='personalize-events') personalize_events.put_users( datasetArn = 'dataset arn', users = [{ 'userId': 'user ID', 'properties': "{\"propertyName\": \"user data\"}" }, { 'userId': 'user ID', 'properties': "{\"propertyName\": \"user data\"}" }] )
SDK for Java 2.x
public static int putUsers(PersonalizeEventsClient personalizeEventsClient, String datasetArn, String user1Id, String user1PropertyName, String user1PropertyValue, String user2Id, String user2PropertyName, String user2PropertyValue) { int responseCode = 0; ArrayList<User> users = new ArrayList<>(); try { User user1 = User.builder() .userId(user1Id) .properties(String.format("{\"%1$s\": \"%2$s\"}", user1PropertyName, user1PropertyValue)) .build(); users.add(user1); User user2 = User.builder() .userId(user2Id) .properties(String.format("{\"%1$s\": \"%2$s\"}", user2PropertyName, user2PropertyValue)) .build(); users.add(user2); PutUsersRequest putUsersRequest = PutUsersRequest.builder() .datasetArn(datasetArn) .build(); responseCode = personalizeEventsClient.putUsers(putUsersRequest).sdkHttpResponse().statusCode(); System.out.println("Response code: " + responseCode); return responseCode; } catch (PersonalizeEventsException e) { System.out.println(e.awsErrorDetails().errorMessage()); } return responseCode; }
SDK for JavaScript v3
import { PutUsersCommand, PersonalizeEventsClient, } from "@aws-sdk/client-personalize-events"; const personalizeEventsClient = new PersonalizeEventsClient({ region: "REGION", }); // set the put users parameters var putUsersParam = { datasetArn: "DATASET ARN", users: [ { userId: "userId", properties: '{"column1Name": "value", "column2Name": "value"}', }, { userId: "userId", properties: '{"column1Name": "value", "column2Name": "value"}', }, ], }; export const run = async () => { try { const response = await personalizeEventsClient.send( new PutUsersCommand(putUsersParam) ); console.log("Success!", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();