Inicio del modelo Amazon Lookout for Vision - Amazon Lookout for Vision

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Inicio del modelo Amazon Lookout for Vision

Antes de poder utilizar un modelo de Amazon Lookout for Vision para detectar anomalías, primero debe iniciar el modelo. Para iniciar un modelo, debe llamar a la API StartModel y pasar lo siguiente:

  • ProjectName – El nombre del proyecto que incluye el modelo que desea iniciar.

  • ModelVersion – La versión del modelo que desea iniciar.

  • minInferenceUnits – el número mínimo de unidades de inferencia. Para obtener más información, consulte Unidades de inferencia.

  • (Opcional) MaxInferenceUnits – el número máximo de unidades de inferencia que Etiquetas personalizadas de Amazon Lookout for Vision puede utilizar para escalar automáticamente el modelo. Para obtener más información, consulte Escalado automático de unidades de inferencia.

La consola Amazon Lookout for Vision proporciona ejemplos de código que puede usar para iniciar y detener el modelo.

nota

Se le cobrará por la cantidad de tiempo de ejecución del modelo. Para detener un modelo en ejecución, consulte Paro del modelo Amazon Lookout for Vision.

Puedes usar el AWS SDK para ver los modelos en ejecución en todas AWS las regiones en las que Lookout for Vision está disponible. Para ver un código de ejemplo, consulte find_running_models.py.

Iniciar el modelo (consola)

La consola Amazon Lookout for Vision proporciona AWS CLI orden que puede usar para iniciar y detener el modelo. Una vez iniciado el modelo, puede empezar a detectar anomalías en las imágenes. Para obtener más información, consulte Detección de anomalías en una imagen.

Cómo iniciar un modelo (consola)
  1. Si aún no lo ha hecho, instale y configure la AWS CLI y los SDK de AWS. Para obtener más información, consulte Paso 4: Configura los AWS SDK AWS CLI y.

  2. Abra la consola Amazon Lookout for Vision en https://console.aws.amazon.com/lookoutvision/.

  3. Seleccione Get started.

  4. En el panel de navegación izquierdo, elija Proyectos.

  5. En la página Proyectos, elija el proyecto que contiene el modelo entrenado que quiera iniciar.

  6. En la sección Modelos, elija el modelo que desee iniciar.

  7. En la página de detalles del modelo, seleccione Usar modelo y a continuación, seleccione Integrar la API en la nube.

    sugerencia

    Si desea implementar su modelo en un dispositivo perfiérico, elija Crear trabajo de empaquetado de modelos. Para obtener más información, consulte Empaquetado del modelo Amazon Lookout for Vision.

  8. En los comandos de la CLI de AWS, copie el comando de la AWS CLI que llamastart-model.

  9. En el símbolo del sistema, escriba el comando start-model copiado en el paso anterior. Si va a usar el perfil lookoutvision para obtener las credenciales, añada el parámetro --profile lookoutvision-access.

  10. En la consola, elija Modelos en la página de navegación izquierda.

  11. Compruebe el estado actual del modelo en la columna Estado. Si el estado es Alojado, puede utilizar el modelo para detectar anomalías en las imágenes. Para obtener más información, consulte Detección de anomalías en una imagen.

Inicio del modelo Amazon Lookout for Vision (SDK)

Para iniciar un modelo, se llama a la operación StartModel.

Es posible que un modelo tarde un tiempo en iniciarse. También puede comprobar el estado actual llamando a DescribeModel. Para obtener más información, consulte Visualización de los modelos.

Cómo iniciar el modelo (SDK)
  1. Si aún no lo ha hecho, instale y configure la AWS CLI y los SDK de AWS. Para obtener más información, consulte Paso 4: Configura los AWS SDK AWS CLI y.

  2. Utilice el código de ejemplo para iniciar un modelo.

    CLI

    Cambie los siguientes valores:

    • project-name al nombre del proyecto que incluye el modelo que desea iniciar.

    • model-version a la versión del modelo que quiere iniciar.

    • --min-inference-units al número de unidades de inferencia que desea utilizar.

    • (Opcional) --max-inference-units el número máximo de unidades de inferencia que Etiquetas personalizadas de Amazon Lookout for Vision puede utilizar para escalar automáticamente el 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

    Este código se ha tomado del repositorio GitHub de ejemplos del SDK de AWS documentación. Consulte el ejemplo completo aquí.

    @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

    Este código se ha tomado del repositorio GitHub de ejemplos del SDK de AWS documentación. Consulte el ejemplo completo aquí.

    /** * 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. Si el resultado del código es Model is hosted and ready for use, puede usar el modelo para detectar anomalías en las imágenes. Para obtener más información, consulte Detección de anomalías en una imagen.