Como importar itens individualmente - Amazon Personalize

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como importar itens individualmente

Depois de concluir Criação de um esquema e um conjunto de dados para criar um conjunto de dados de itens, você pode importar individualmente um ou mais novos itens para o conjunto de dados. Ao importar itens individualmente, você mantém seu conjunto de dados de itens atualizado com pequenas importações em lote à medida que seu catálogo cresce. É possível importar até 10 itens por vez. Se você tiver uma grande quantidade de novos itens, recomendamos que primeiro importe os dados em massa e depois individualmente, conforme necessário. Consulte Importação de dados em massa para o Amazon Personalize com um trabalho de importação de conjunto de dados.

Você pode usar o console Amazon Personalize, o AWS Command Line Interface (AWS CLI), ou AWS SDKspara importar itens. Se você importar um item com o mesmo itemId que um item já presente no seu conjunto de dados de itens, o Amazon Personalize o substituirá pelo novo item.

Para saber como o Amazon Personalize atualiza filtros para novos registros e como os novos registros influenciam as recomendações, consulte Importação de registros individuais para um conjunto de dados do Amazon Personalize.

Como importar itens individualmente (console)

É possível importar até 10 itens para um conjunto de dados de itens por vez. Este procedimento pressupõe que você já criou um conjunto de dados de itens. Para saber como criar conjuntos de dados, consulte Criação de um esquema e um conjunto de dados.

Para importar itens individualmente (console)
  1. Abra o console Amazon Personalize em https://console.aws.amazon.com/personalize/casa e faça login na sua conta.

  2. Na página Grupos de conjuntos de dados, escolha o grupo de conjuntos de dados com o conjunto de dados de itens para o qual você deseja importar itens.

  3. No painel de navegação, escolha Conjuntos de dados.

  4. Na página Conjuntos de dados, escolha o conjunto de dados de itens.

  5. No canto superior direito da página de detalhes do conjunto de dados, escolha Modificar conjunto de dados e Criar registro.

  6. Na página Criar registro (s) do item, em Entrada de registro, insira os detalhes do item no JSON formato. Os nomes e valores dos campos do item devem corresponder ao esquema usado quando você criou o conjunto de dados de itens. O Amazon Personalize fornece um JSON modelo com nomes de campo e tipos de dados desse esquema.

  7. Escolha Criar registro(s). Em Resposta, o resultado da importação é listado, e uma mensagem de sucesso ou falha é exibida.

Importando itens individualmente (AWS CLI)

Adicione um ou mais itens ao seu conjunto de dados de itens usando a operação PutItems. Você pode importar até 10 itens com uma única chamada para PutItems. Esta seção pressupõe que você já criou um conjunto de dados de itens. Para saber como criar conjuntos de dados, consulte Criação de um esquema e um conjunto de dados.

Use o put-items comando a seguir para adicionar um ou mais itens com o AWS CLI. dataset arnSubstitua pelo Amazon Resource Name (ARN) do seu conjunto item Id de dados e pelo ID do item. Se um item com o mesmo itemId já estiver presente no seu conjunto de dados de itens, o Amazon Personalize o substituirá pelo novo item.

Para properties de cada campo no seu conjunto de dados de itens, substitua o propertyName pelo nome do campo do seu esquema em maiúsculas e minúsculas. Por exemplo, GENRES seria genres e CREATION _ TIMESTAMP seriacreationTimestamp. Substitua item data pelos dados do item. Os dados de CREATION_TIMESTAMP devem estar no formato de hora Unix epoch e em segundos. No caso de dados de string categóricos, para incluir várias categorias em uma única propriedade, separe cada uma com um pipe (|). Por exemplo, \"Horror|Action\".

aws personalize-events put-items \ --dataset-arn dataset arn \ --items '[{ "itemId": "item Id", "properties": "{\"propertyName\": "\item data\"}" }, { "itemId": "item Id", "properties": "{\"propertyName\": "\item data\"}" }]'

Importando itens individualmente (AWS SDKs)

Adicione um ou mais itens ao seu conjunto de dados de itens usando a operação PutItems. Você pode importar até 10 itens com uma única chamada para PutItems. Se um item com o mesmo itemId já estiver presente no seu conjunto de dados de itens, o Amazon Personalize o substituirá pelo novo item. Esta seção pressupõe que você já criou um conjunto de dados de itens. Para saber como criar conjuntos de dados, consulte Criação de um esquema e um conjunto de dados.

O código a seguir mostra como adicionar um ou mais itens ao seu conjunto de dados de itens. Para cada parâmetro de nome de propriedade, envie o nome do campo do seu esquema em maiúsculas e minúsculas. Por exemplo, GENRES seria genres e CREATION _ TIMESTAMP seriacreationTimestamp. Para cada parâmetro de valor da propriedade, envie os dados do item. Os dados de CREATION_TIMESTAMP devem estar no formato de hora Unix epoch e em segundos.

No caso de dados de string categóricos, para incluir várias categorias em uma única propriedade, separe cada uma com um pipe (|). Por exemplo, "Horror|Action".

SDK for Python (Boto3)
import boto3 personalize_events = boto3.client(service_name='personalize-events') personalize_events.put_items( datasetArn = 'dataset arn', items = [{ 'itemId': 'item ID', 'properties': "{\"propertyName\": \"item data\"}" }, { 'itemId': 'item ID', 'properties': "{\"propertyName\": \"item data\"}" }] )
SDK for Java 2.x
public static int putItems(PersonalizeEventsClient personalizeEventsClient, String datasetArn, String item1Id, String item1PropertyName, String item1PropertyValue, String item2Id, String item2PropertyName, String item2PropertyValue) { int responseCode = 0; ArrayList<Item> items = new ArrayList<>(); try { Item item1 = Item.builder() .itemId(item1Id) .properties(String.format("{\"%1$s\": \"%2$s\"}", item1PropertyName, item1PropertyValue)) .build(); items.add(item1); Item item2 = Item.builder() .itemId(item2Id) .properties(String.format("{\"%1$s\": \"%2$s\"}", item2PropertyName, item2PropertyValue)) .build(); items.add(item2); PutItemsRequest putItemsRequest = PutItemsRequest.builder() .datasetArn(datasetArn) .items(items) .build(); responseCode = personalizeEventsClient.putItems(putItemsRequest).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 { PutItemsCommand, PersonalizeEventsClient, } from "@aws-sdk/client-personalize-events"; const personalizeEventsClient = new PersonalizeEventsClient({ region: "REGION", }); // set the put items parameters var putItemsParam = { datasetArn: "DATASET ARN", items: [ { itemId: "itemId", properties: '{"column1Name": "value", "column2Name": "value"}', }, { itemId: "itemId", properties: '{"column1Name": "value", "column2Name": "value"}', }, ], }; export const run = async () => { try { const response = await personalizeEventsClient.send( new PutItemsCommand(putItemsParam) ); console.log("Success!", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();