Criar uma versão da solução manualmente - 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á.

Criar uma versão da solução manualmente

Depois de concluir a Configurar uma solução personalizada no Amazon Personalize, você poderá começar o treinamento:

  • Se sua solução usa o treinamento automático, a solução cria versões da solução para você na frequência de treinamento especificada. Por padrão, todas as novas soluções usam o treinamento automático para criar uma nova versão da solução a cada 7 dias. Você ainda pode criar versões da solução manualmente. Para obter mais informações, consulte Configurar o treinamento automático.

  • Se você desativar o treinamento automático para sua solução ou quiser treinar manualmente, poderá criar manualmente uma versão da solução. Uma versão da solução se refere a um modelo de machine learning treinado. Você pode criar uma versão da solução usando o console, AWS Command Line Interface (AWS CLI) ou AWS SDKs. Se a versão da sua solução tiver o status CREATE_PENDING ou CREATE_IN_PROGRESS, você poderá usar a operação StopSolutionVersionCreation para deixar de criar a versão da solução. Consulte Como interromper a criação de uma versão da solução.

Se o treinamento não for concluído devido a um erro, você não será cobrado pelo treinamento. Se a versão da sua solução tiver o status CREATE_PENDING ou CREATE_IN_PROGRESS, você poderá interromper o processo de criação da versão da solução. Para interromper a criação da versão da solução, navegue até a página de detalhes da versão da solução e escolha Parar. Para obter mais informações, consulte Como interromper a criação de uma versão da solução.

Criar uma versão da solução (console)

Para criar manualmente uma nova versão da solução com o console do Amazon Personalize, comece a treinar na página de detalhes da sua solução.

Para criar uma nova versão da solução
  1. Abra o console Amazon Personalize em https://console.aws.amazon.com/personalize/casa e faça login na sua conta.

  2. Navegue até a página dos grupos de conjuntos de dados e escolha o grupo de conjuntos de dados com sua nova solução.

  3. No painel de navegação, em Atributos personalizados, selecione Soluções e fórmulas.

  4. Na página Solução e fórmulas, escolha a solução para a qual você quer criar uma versão da solução.

  5. Na página de visão geral da solução, escolha Criar versão da solução para começar a treinar um novo modelo.

Na página de detalhes da solução, você pode acompanhar o progresso do treinamento na seção Versões da solução. Quando o treinamento estiver concluído e o status for Ativo, você poderá avaliá-lo usando métricas fornecidas pelo Amazon Personalize. Para obter mais informações, consulte Avaliar uma versão da solução do Amazon Personalize com métricas.

Quando o status da versão é ATIVA, as recomendações começam a ser enviadas. O uso de uma versão da solução ativa depende de como você recebe as recomendações:

Criar uma versão da solução (AWS CLI)

Quando sua solução estiver ATIVA, treine o modelo executando o comando a seguir. Substitua solution arn pelo nome do recurso da Amazon (ARN) da solução de Configurar uma solução personalizada no Amazon Personalize.

aws personalize create-solution-version \ --solution-arn solution arn

O ARN da versão da solução é exibido, por exemplo:

{ "solutionVersionArn": "arn:aws:personalize:us-west-2:acct-id:solution/SolutionName/<version-id>" }

Verifique o status de treinamento da versão da solução usando o comando describe-solution-version. Forneça o ARN da versão da solução que foi retornado na etapa anterior. Para obter mais informações sobre a API, consulte DescribeSolutionVersion.

aws personalize describe-solution-version \ --solution-version-arn solution version arn

As propriedades da versão da solução e o status do treinamento são exibidos. Inicialmente, o status é exibido como CREATE PENDING (criação pendente), por exemplo:

{ "solutionVersion": { "solutionVersionArn": "arn:aws:personalize:us-west-2:acct-id:solution/solutionName/<version-id>", ..., "status": "CREATE PENDING" } }

O treinamento será concluído quando o status for ACTIVE, e você poderá avaliá-lo usando métricas fornecidas pelo Amazon Personalize. Para obter mais informações, consulte Avaliar uma versão da solução do Amazon Personalize com métricas. Se o treinamento não for concluído devido a um erro, você não será cobrado pelo treinamento.

Se a versão da sua solução tiver o status CREATE_PENDING ou CREATE_IN_PROGRESS, você poderá usar a operação StopSolutionVersionCreation para deixar de criar a versão da solução. Consulte Como interromper a criação de uma versão da solução.

Quando o status da versão é ATIVA, as recomendações começam a ser enviadas. O uso de uma versão da solução ativa depende de como você recebe as recomendações:

Criar uma versão da solução (AWS SDKs)

Quando sua solução estiver ATIVA, use o código a seguir para criar uma versão da solução. Especifique o nome do recurso da Amazon (ARN) de Configurar uma solução personalizada no Amazon Personalize. Use a operação DescribeSolutionVersion para recuperar o status da versão da solução.

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') # Store the solution ARN solution_arn = 'solution arn' # Use the solution ARN to get the solution status. solution_description = personalize.describe_solution(solutionArn = 'solution_arn')['solution'] print('Solution status: ' + solution_description['status']) # Use the solution ARN to create a solution version. print ('Creating solution version') response = personalize.create_solution_version(solutionArn = solution_arn) solution_version_arn = response['solutionVersionArn'] print('Solution version ARN: ' + solution_version_arn) # Use the solution version ARN to get the solution version status. solution_version_description = personalize.describe_solution_version( solutionVersionArn = solution_version_arn)['solutionVersion'] print('Solution version status: ' + solution_version_description['status'])
SDK for Java 2.x
public static String createPersonalizeSolutionVersion(PersonalizeClient personalizeClient, String solutionArn) { long maxTime = 0; long waitInMilliseconds = 30 * 1000; // 30 seconds String solutionStatus = ""; String solutionVersionStatus = ""; String solutionVersionArn = ""; try { DescribeSolutionRequest describeSolutionRequest = DescribeSolutionRequest.builder() .solutionArn(solutionArn) .build(); maxTime = Instant.now().getEpochSecond() + 3 * 60 * 60; // Wait until solution is active. while (Instant.now().getEpochSecond() < maxTime) { solutionStatus = personalizeClient.describeSolution(describeSolutionRequest).solution().status(); System.out.println("Solution status: " + solutionStatus); if (solutionStatus.equals("ACTIVE") || solutionStatus.equals("CREATE FAILED")) { break; } try { Thread.sleep(waitInMilliseconds); } catch (InterruptedException e) { System.out.println(e.getMessage()); } } // Once the solution is active, start creating a solution version. if (solutionStatus.equals("ACTIVE")) { CreateSolutionVersionRequest createSolutionVersionRequest = CreateSolutionVersionRequest.builder() .solutionArn(solutionArn) .build(); CreateSolutionVersionResponse createSolutionVersionResponse = personalizeClient.createSolutionVersion(createSolutionVersionRequest); solutionVersionArn = createSolutionVersionResponse.solutionVersionArn(); System.out.println("Solution version ARN: " + solutionVersionArn); DescribeSolutionVersionRequest describeSolutionVersionRequest = DescribeSolutionVersionRequest.builder() .solutionVersionArn(solutionVersionArn) .build(); maxTime = Instant.now().getEpochSecond() + 3 * 60 * 60; while (Instant.now().getEpochSecond() < maxTime) { // Use the solution version ARN to get the solution version status. solutionVersionStatus = personalizeClient.describeSolutionVersion(describeSolutionVersionRequest).solutionVersion().status(); System.out.println("Solution version status: " + solutionVersionStatus); if (solutionVersionStatus.equals("ACTIVE") || solutionVersionStatus.equals("CREATE FAILED")) { break; } try { Thread.sleep(waitInMilliseconds); } catch (InterruptedException e) { System.out.println(e.getMessage()); } } return solutionVersionArn; } } catch(PersonalizeException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
SDK for JavaScript v3
// Get service clients module and commands using ES6 syntax. import { CreateSolutionVersionCommand } from "@aws-sdk/client-personalize"; import { personalizeClient } from "./libs/personalizeClients.js"; // Or, create the client here. // const personalizeClient = new PersonalizeClient({ region: "REGION"}); // Set the solution version parameters. export const solutionVersionParam = { solutionArn: "SOLUTION_ARN" /* required */, }; export const run = async () => { try { const response = await personalizeClient.send( new CreateSolutionVersionCommand(solutionVersionParam), ); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();

Para verificar o status atual da versão da solução, chame a operação DescribeSolutionVersion e passe o ARN da versão da solução retornado da operação CreateSolutionVersion. O treinamento será concluído quando o status for ACTIVE, e você poderá avaliá-lo usando métricas fornecidas pelo Amazon Personalize. Para obter mais informações, consulte Avaliar uma versão da solução do Amazon Personalize com métricas. Se o treinamento não for concluído devido a um erro, você não será cobrado pelo treinamento.

Se a versão da sua solução tiver o status CREATE_PENDING ou CREATE_IN_PROGRESS, você poderá usar a operação StopSolutionVersionCreation para deixar de criar a versão da solução. Consulte Como interromper a criação de uma versão da solução.

Quando o status da versão é ATIVA, as recomendações começam a ser enviadas. O uso de uma versão da solução ativa depende de como você recebe as recomendações: