모델 패키징 (SDK) - Amazon Lookout for Vision

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

모델 패키징 (SDK)

모델 패키징 작업을 생성하여 모델을 모델 구성 요소로 패키징합니다. 모델 패키징 작업을 생성하려면 StartModelPackagingJob API를 호출합니다. 완료하는 데 시간이 걸릴 수 있습니다. 현재 상태를 확인하려면 DescribeModelPackagingJob을 호출하고 응답의 Status 필드를 확인하십시오.

패키징 설정에 대한 내용은 패키지 설정 단원을 참조하세요.

다음 절차에서는 AWS CLI를 사용하여 패키징 작업을 시작하는 방법을 소개합니다. 대상 플랫폼 또는 대상 디바이스용으로 모델을 패키징할 수 있습니다. Java 코드의 예는 StartModelPackagingJob 참조하십시오.

모델 (SDK)을 패키징하려면
  1. 아직 패키징하지 않았다면 AWS CLI 및 AWS SDK를 설치하고 구성하세요. 자세한 내용은 4단계: AWS CLI 및 AWS SDK 설정 섹션을 참조하세요.

  2. 모델 패키징 작업을 시작할 수 있는 올바른 권한이 있는지 확인해야 합니다. 자세한 내용은 StartModelPackagingJob를 참조하십시오.

  3. 다음 CLI 명령을 사용하여 대상 디바이스 또는 대상 플랫폼에 맞게 모델을 패키징할 수 있습니다.

    Target platform

    다음 CLI 명령은 NVIDIA 액셀러레이터를 사용하여 대상 플랫폼용 모델을 패키징하는 방법을 보여줍니다.

    다음 값을 변경합니다.

    • project_name은 패키징하려는 모델이 포함된 프로젝트 이름으로 바꿉니다.

    • model_version은 패키징하려는 모델의 버전으로 바꿉니다.

    • (선택 사항) description은 모델 패키징 작업에 대한 설명으로 바꿉니다.

    • architecture은 모델 구성 요소를 실행하는 AWS IoT Greengrass Version 2 코어 디바이스의 아키텍처 (ARM64또는X86_64)으로 변경합니다.

    • gpu_code은 모델 컴포넌트를 실행하는 코어 디바이스의 GPU 코드로 변경합니다.

    • trt_ver은 코어 디바이스에 설치한 TensorRT 버전으로 변겅합니다.

    • cuda_ver은 코어 디바이스에 설치한 CUDA 버전으로 변경합니다.

    • component_name은 AWS IoT Greengrass V2에 대해 생성하려는 모델 구성 요소의 이름으로 변경합니다.

    • (선택 사항) component_version은 패키징 작업에서 생성되는 모델 구성 요소의 버전으로 변경합니다. major.minor.patch 형식을 사용합니다. 예를 들어 1.0.0은 구성 요소의 첫 번째 주요 릴리스입니다.

    • bucket은 패키징 작업이 모델 구성 요소 아티팩트를 저장하는 Amazon S3 버킷으로 변경합니다.

    • prefix은 패키징 작업이 모델 구성 요소 아티팩트를 저장하는 Amazon S3 버킷 내 위치로 변경합니다.

    • (선택 사항) component_description은 모델 구성 요소 설명으로 변경합니다.

    • (선택 사항) tag_key1tag_key2는 모델 컴포넌트에 첨부된 태그의 키로 변경합니다.

    • (선택 사항) tag_value1tag_value2는 모델 컴포넌트에 첨부된 태그의 키 값으로 변경합니다.

    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

    예:

    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

    다음 CLI 명령을 사용하여 대상 디바이스용 모델을 패키징할 수 있습니다.

    다음 값을 변경합니다.

    • project_name은 패키징하려는 모델이 포함된 프로젝트 이름으로 바꿉니다.

    • model_version은 패키징하려는 모델의 버전으로 바꿉니다.

    • (선택 사항) description은 모델 패키징 작업에 대한 설명으로 바꿉니다.

    • component_name은 AWS IoT Greengrass V2에 대해 생성하려는 모델 구성 요소의 이름으로 변경합니다.

    • (선택 사항) component_version은 패키징 작업에서 생성되는 모델 구성 요소의 버전으로 변경합니다. major.minor.patch 형식을 사용합니다. 예를 들어 1.0.0은 구성 요소의 첫 번째 주요 릴리스입니다.

    • bucket은 패키징 작업이 모델 구성 요소 아티팩트를 저장하는 Amazon S3 버킷으로 변경합니다.

    • prefix은 패키징 작업이 모델 구성 요소 아티팩트를 저장하는 Amazon S3 버킷 내 위치로 변경합니다.

    • (선택 사항) component_description은 모델 구성 요소 설명으로 변경합니다.

    • (선택 사항) tag_key1tag_key2는 모델 컴포넌트에 첨부된 태그의 키로 변경합니다.

    • (선택 사항) tag_value1tag_value2는 모델 컴포넌트에 첨부된 태그의 키 값으로 변경합니다.

    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

    예:

    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. 응답의 JobName 값을 기록합니다. 이 정보는 다음 단계에서 필요합니다. 예:

    { "JobName": "6bcfd0ff-90c3-4463-9a89-6b4be3daf972" }
  5. 작업의 현재 상태를 가져오는 데 DescribeModelPackagingJob을 사용합니다. 다음을 변경합니다.

    • project_name은 사용 중인 프로젝트 이름으로 바꿉니다.

    • job_name은 이전 단계에서 기록해 둔 작업의 이름으로 바꿉니다.

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

    Status값이 SUCCEEDED이면 모델 패키징 작업이 완료된 것입니다. 값이 다른 경우 잠시 기다린 후 다시 시도하십시오.

  6. AWS IoT Greengrass V2를 사용하여 배포를 계속하십시오. 자세한 내용은 디바이스에 구성 요소 배포 섹션을 참조하세요.