Empaquetar su modelo (SDK) - 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.

Empaquetar su modelo (SDK)

Para empaquetar un modelo como un componente del modelo, debe crear un trabajo de empaquetado de modelos. Para crear un trabajo de empaquetado de modelos, llame a la API StartModelPackagingJob. El trabajo por lotes puede tardar un tiempo en completarse. Para averiguar el estado actual, llama a DescribeModelPackagingJob y comprueba el campo de la respuesta. Status

Para obtener más información acerca de una configuración de empaquetado, consulte Configuración de Package.

En el siguiente procedimiento, se muestra cómo iniciar un trabajo de empaquetado mediante la AWS CLI. Puede empaquetar el modelo para una plataforma de destino o un dispositivo de destino. Para ver un ejemplo de código Java, consulte StartModelPackagingJob.

Para empaquetar 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. Asegúrese de contar con los permisos correctos para iniciar un trabajo de empaquetado de modelo. Para obtener más información, consulte StartModelPackagingJob.

  3. Utilice los siguientes comandos CLI para empaquetar el modelo para un dispositivo de destino o una plataforma de destino.

    Target platform

    El siguiente comando CLI muestra cómo empaquetar un modelo para una plataforma de destino con un acelerador NVIDIA.

    Cambie los siguientes valores:

    • project_nameal nombre del proyecto que contiene el modelo que desea empaquetar.

    • model_versiona la versión del modelo que desea empaquetar.

    • (Opcional) description a una descripción de su trabajo de embalaje de modelos.

    • architecturea la arquitectura (ARM64oX86_64) del dispositivo AWS IoT Greengrass Version 2 principal en el que se ejecuta el componente del modelo.

    • gpu_codeal código de la GPU del dispositivo principal en el que se ejecuta el componente del modelo.

    • trt_vera la versión de TensorRT que tienes instalada en tu dispositivo principal.

    • cuda_vera la versión CUDA que tienes instalada en tu dispositivo principal.

    • component_namea un nombre para el componente del modelo en AWS IoT Greengrass V2 el que desee crear.

    • (Opcional) component_version a una versión del componente del modelo que crea el trabajo de empaquetado. Utilice el formato major.minor.patch. Por ejemplo, la 1.0.0 representa la primera versión principal de un componente.

    • bucketal bucket de Amazon S3, donde el trabajo de empaquetado almacena los artefactos de los componentes del modelo.

    • prefixa la ubicación dentro del depósito de Amazon S3 donde el trabajo de empaquetado almacena los artefactos de los componentes del modelo.

    • (Opcional) component_description a una descripción para el componente del modelo.

    • (Opcional) tag_key1 y tag_key2 a las claves de las etiquetas adjuntas al componente del modelo.

    • (Opcional) tag_value1 y tag_value2 a los valores clave de las etiquetas adjuntas al componente del modelo.

    aws lookoutvision start-model-packaging-job \ --project-name project_name \ --model-version model_version \ --description="description" \ --configuration "Greengrass={TargetPlatform={Os='LINUX',Arch='architecture',Accelerator='NVIDIA'},CompilerOptions='{\"gpu-code\": \"gpu_code\", \"trt-ver\": \"trt_ver\", \"cuda-ver\": \"cuda_ver\"}',S3OutputLocation={Bucket='bucket',Prefix='prefix'},ComponentName='Component_name',ComponentVersion='component_version',ComponentDescription='component_description',Tags=[{Key='tag_key1',Value='tag_value1'}, {Key='tag_key2',Value='tag_value2'}]}" \ --profile lookoutvision-access

    Por ejemplo:

    aws lookoutvision start-model-packaging-job \ --project-name test-project-01 \ --model-version 1 \ --description="Model Packaging Job for G4 Instance using TargetPlatform Option" \ --configuration "Greengrass={TargetPlatform={Os='LINUX',Arch='X86_64',Accelerator='NVIDIA'},CompilerOptions='{\"gpu-code\": \"sm_75\", \"trt-ver\": \"7.1.3\", \"cuda-ver\": \"10.2\"}',S3OutputLocation={Bucket='bucket',Prefix='test-project-01/folder'},ComponentName='SampleComponentNameX86TargetPlatform',ComponentVersion='0.1.0',ComponentDescription='This is my component',Tags=[{Key='modelKey0',Value='modelValue'}, {Key='modelKey1',Value='modelValue'}]}" \ --profile lookoutvision-access
    Target Device

    Utilice los siguientes comandos CLI para empaquetar un modelo para un dispositivo de destino.

    Cambie los siguientes valores:

    • project_nameal nombre del proyecto que contiene el modelo que desea empaquetar.

    • model_versiona la versión del modelo que desea empaquetar.

    • (Opcional) description a una descripción de su trabajo de embalaje de modelos.

    • component_namea un nombre para el componente del modelo en el que desee crearAWS IoT Greengrass V2.

    • (Opcional) component_version a una versión del componente del modelo que crea el trabajo de empaquetado. Utilice el formato major.minor.patch. Por ejemplo, la 1.0.0 representa la primera versión principal de un componente.

    • bucketal bucket de Amazon S3, donde el trabajo de empaquetado almacena los artefactos de los componentes del modelo.

    • prefixa la ubicación dentro del depósito de Amazon S3 donde el trabajo de empaquetado almacena los artefactos de los componentes del modelo.

    • (Opcional) component_description a una descripción para el componente del modelo.

    • (Opcional) tag_key1 y tag_key2 a las claves de las etiquetas adjuntas al componente del modelo.

    • (Opcional) tag_value1 y tag_value2 a los valores clave de las etiquetas adjuntas al componente del modelo.

    aws lookoutvision start-model-packaging-job \ --project-name project_name \ --model-version model_version \ --description="description" \ --configuration "Greengrass={TargetDevice='jetson_xavier',S3OutputLocation={Bucket='bucket',Prefix='prefix'},ComponentName='component_name',ComponentVersion='component_version',ComponentDescription='component_description',Tags=[{Key='tag_key1',Value='tag_value1'}, {Key='tag_key2',Value='tag_value2'}]}" \ --profile lookoutvision-access

    Por ejemplo:

    aws lookoutvision start-model-packaging-job \ --project-name project_01 \ --model-version 1 \ --description="description" \ --configuration "Greengrass={TargetDevice='jetson_xavier',S3OutputLocation={Bucket='bucket',Prefix='component_folder'},ComponentName='jetson_component',ComponentVersion='2.0.0',ComponentDescription='jetson model component',Tags=[{Key='tag_key1',Value='tag_value1'}, {Key='tag_key2',Value='tag_value2'}]}" \ --profile lookoutvision-access
  4. Anote el valor de JobName en la respuesta. Lo necesitará en el siguiente paso. Por ejemplo:

    { "JobName": "6bcfd0ff-90c3-4463-9a89-6b4be3daf972" }
  5. DescribeModelPackagingJobUtilícelo para obtener el estado actual del trabajo. Realice el siguiente cambio:

    • project_nameal nombre del proyecto que está utilizando.

    • job_nameal nombre del trabajo que anotó en el paso anterior.

    aws lookoutvision describe-model-packaging-job \ --project-name project_name \ --job-name job_name \ --profile lookoutvision-access

    El trabajo de empaquetado del modelo está completo si el valor de Status esSUCCEEDED. Si el valor es diferente, espere un minuto e inténtelo de nuevo.

  6. Continúe con la implementación utilizandoAWS IoT Greengrass V2. Para obtener más información, consulte Despliegue de sus componentes en un dispositivo.