Iniciar seu modelo do Amazon Lookout for Vision - Amazon Lookout for Vision

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á.

Iniciar seu modelo do Amazon Lookout for Vision

Antes de usar um modelo do Amazon Lookout for Vision para detectar anomalias, você deve primeiro iniciar o modelo. Você inicia um modelo chamando a API StartModel e transmitindo o seguinte:

  • ProjectName — o nome do projeto que contém o modelo que deseja iniciar.

  • ModelVersion — A versão do modelo que você deseja iniciar.

  • minInferenceUnits — O número mínimo de unidades de inferência. Para obter mais informações, consulte Unidades de inferência.

  • (Opcional) MaxInferenceUnits — O número máximo de unidades de inferência que o Amazon Lookout for Vision pode usar para escalar automaticamente o modelo. Para obter mais informações, consulte Unidades de inferência de escala automática.

O console do Amazon Lookout for Vision fornece um código de exemplo que é possível utilizar para iniciar e parar um modelo.

nota

Você é cobrado pela quantidade de tempo em que seu modelo está em execução. Para interromper um modelo em execução, consulteParar o modelo do Amazon Lookout for Vision.

Você pode usar a AWS SDK para visualizar os modelos em execução em todas as regiões da AWS nas quais o Lookout for Vision está disponível. Por exemplo, código, consulte find_running_models.py.

Iniciar seu modelo (console)

O console Amazon Lookout for Vision fornece AWS CLI um comando que você pode usar para iniciar um modelo. Depois que o modelo for iniciado, você poderá começar a detectar anomalias nas imagens. Para obter mais informações, consulte Detectar as anomalias de uma imagem.

Para iniciar um modelo (console)
  1. Se você ainda não tiver feito isso, instale e configure a AWS CLI e os SDKs do AWS. Para obter mais informações, consulte Etapa 4: configurar o AWS CLI e AWS SDKs.

  2. Abra o console Amazon Lookout for Vision em https://console.aws.amazon.com/lookoutvision/.

  3. Escolha Como começar.

  4. No painel de navegação à esquerda, escolha Projetos.

  5. Na página de recursos Projetos, selecione o projeto que contém o modelo treinado que você deseja iniciar.

  6. Na seção Modelos, escolha o modelo que deseja iniciar.

  7. Na página de detalhes do modelo, escolha Usar modelo e, em seguida, escolha Integrar API à nuvem.

    dica

    Se você quiser implantar seu modelo em um dispositivo de borda, escolha Criar tarefa de empacotamento de modelo. Para obter mais informações, consulte Empacotar seu modelo Amazon Lookout for Vision.

  8. Em comandos da AWS CLI, copie o comando da AWS CLI que chama start-model.

  9. No prompt de comando, digite o comando start-model que você copiou na etapa anterior. Se você estiver usando o perfil lookoutvision para obter credenciais, adicione o parâmetro --profile lookoutvision-access.

  10. No console, escolha Modelos na página de navegação à esquerda.

  11. Verifique na coluna Status o status atual do modelo. Quando o status é Hospedado, você pode usar o modelo para detectar anomalias nas imagens. Para obter mais informações, consulte Detectar as anomalias de uma imagem.

Iniciando seu modelo Amazon Lookout for Vision (SDK)

Você inicia um modelo chamando a operação startModel.

Um modelo pode demorar um pouco para começar. Você pode verificar o status atual chamando DescribeModel. Para obter mais informações, consulte Visualizar as modelos.

Para iniciar seu modelo (SDK)
  1. Se você ainda não tiver feito isso, instale e configure a AWS CLI e os SDKs do AWS. Para obter mais informações, consulte Etapa 4: configurar o AWS CLI e AWS SDKs.

  2. Use o código de exemplo a seguir para iniciar um modelo.

    CLI

    Altere os seguintes valores:

    • project-name ao nome do projeto que contém o modelo que deseja iniciar.

    • model-version para a versão do modelo que deseja iniciar.

    • --min-inference-units ao número de unidades de inferência que você deseja usar.

    • (Opcional) --max-inference-units até o número máximo de unidades de inferência que o Amazon Lookout for Vision pode usar para escalar automaticamente o modelo.

    aws lookoutvision start-model --project-name "project name"\ --model-version model version\ --min-inference-units minimum number of units\ --max-inference-units max number of units \ --profile lookoutvision-access
    Python

    Esse código foi retirado do repositório GitHub de exemplos do SDK de AWS documentação. Veja o exemplo completo aqui.

    @staticmethod def start_model( lookoutvision_client, project_name, model_version, min_inference_units, max_inference_units = None): """ Starts the hosting of a Lookout for Vision model. :param lookoutvision_client: A Boto3 Lookout for Vision client. :param project_name: The name of the project that contains the version of the model that you want to start hosting. :param model_version: The version of the model that you want to start hosting. :param min_inference_units: The number of inference units to use for hosting. :param max_inference_units: (Optional) The maximum number of inference units that Lookout for Vision can use to automatically scale the model. """ try: logger.info( "Starting model version %s for project %s", model_version, project_name) if max_inference_units is None: lookoutvision_client.start_model( ProjectName = project_name, ModelVersion = model_version, MinInferenceUnits = min_inference_units) else: lookoutvision_client.start_model( ProjectName = project_name, ModelVersion = model_version, MinInferenceUnits = min_inference_units, MaxInferenceUnits = max_inference_units) print("Starting hosting...") status = "" finished = False # Wait until hosted or failed. while finished is False: model_description = lookoutvision_client.describe_model( ProjectName=project_name, ModelVersion=model_version) status = model_description["ModelDescription"]["Status"] if status == "STARTING_HOSTING": logger.info("Host starting in progress...") time.sleep(10) continue if status == "HOSTED": logger.info("Model is hosted and ready for use.") finished = True continue logger.info("Model hosting failed and the model can't be used.") finished = True if status != "HOSTED": logger.error("Error hosting model: %s", status) raise Exception(f"Error hosting model: {status}") except ClientError: logger.exception("Couldn't host model.") raise
    Java V2

    Esse código foi retirado do repositório GitHub de exemplos do SDK de AWS documentação. Veja o exemplo completo aqui.

    /** * Starts hosting an Amazon Lookout for Vision model. Returns when the model has * started or if hosting fails. You are charged for the amount of time that a * model is hosted. To stop hosting a model, use the StopModel operation. * * @param lfvClient An Amazon Lookout for Vision client. * @param projectName The name of the project that contains the model that you * want to host. * @modelVersion The version of the model that you want to host. * @minInferenceUnits The number of inference units to use for hosting. * @maxInferenceUnits The maximum number of inference units that Lookout for * Vision can use for automatically scaling the model. If the * value is null, automatic scaling doesn't happen. * @return ModelDescription The description of the model, which includes the * model hosting status. */ public static ModelDescription startModel(LookoutVisionClient lfvClient, String projectName, String modelVersion, Integer minInferenceUnits, Integer maxInferenceUnits) throws LookoutVisionException, InterruptedException { logger.log(Level.INFO, "Starting Model version {0} for project {1}.", new Object[] { modelVersion, projectName }); StartModelRequest startModelRequest = null; if (maxInferenceUnits == null) { startModelRequest = StartModelRequest.builder().projectName(projectName).modelVersion(modelVersion) .minInferenceUnits(minInferenceUnits).build(); } else { startModelRequest = StartModelRequest.builder().projectName(projectName).modelVersion(modelVersion) .minInferenceUnits(minInferenceUnits).maxInferenceUnits(maxInferenceUnits).build(); } // Start hosting the model. lfvClient.startModel(startModelRequest); DescribeModelRequest describeModelRequest = DescribeModelRequest.builder().projectName(projectName) .modelVersion(modelVersion).build(); ModelDescription modelDescription = null; boolean finished = false; // Wait until model is hosted or failure occurs. do { modelDescription = lfvClient.describeModel(describeModelRequest).modelDescription(); switch (modelDescription.status()) { case HOSTED: logger.log(Level.INFO, "Model version {0} for project {1} is running.", new Object[] { modelVersion, projectName }); finished = true; break; case STARTING_HOSTING: logger.log(Level.INFO, "Model version {0} for project {1} is starting.", new Object[] { modelVersion, projectName }); TimeUnit.SECONDS.sleep(60); break; case HOSTING_FAILED: logger.log(Level.SEVERE, "Hosting failed for model version {0} for project {1}.", new Object[] { modelVersion, projectName }); finished = true; break; default: logger.log(Level.SEVERE, "Unexpected error when hosting model version {0} for project {1}: {2}.", new Object[] { projectName, modelVersion, modelDescription.status() }); finished = true; break; } } while (!finished); logger.log(Level.INFO, "Finished starting model version {0} for project {1} status: {2}", new Object[] { modelVersion, projectName, modelDescription.statusMessage() }); return modelDescription; }
  3. Se a saída do código for Model is hosted and ready for use, você poderá usar o modelo para detectar anomalias nas imagens. Para obter mais informações, consulte Detectar as anomalias de uma imagem.