압축되지 않은 모델 배포하기 - Amazon SageMaker

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

압축되지 않은 모델 배포하기

ML 모델을 배포할 때 한 가지 옵션은 모델 아티팩트를 보관하고 tar.gz 형식으로 압축하는 것입니다. 이 방법은 소형 모델에서 잘 작동하지만, 수천억 개의 파라미터가 포함된 대형 모델 아티팩트를 압축한 다음 엔드포인트에서 압축을 푸는 데는 상당한 시간이 걸릴 수 있습니다. 대규모 모델 추론의 경우 압축되지 않은 ML 모델을 배포하는 것이 좋습니다. 이 가이드에서는 압축되지 않은 ML 모델을 배포하는 방법을 보여줍니다.

압축되지 않은 ML 모델을 배포하려면 모든 모델 아티팩트를 Amazon S3에 업로드하고 공통 Amazon S3 접두사로 구성하세요. Amazon S3 접두사는 Amazon S3 객체 키 이름의 시작 부분에 있는 문자열로, 나머지 이름과 구분 기호로 구분됩니다. Amazon S3 접두사에 대한 자세한 정보는 접두사를 사용한 객체 구성을 참고하세요.

를 사용하여 배포하려면 슬래시 (/) 를 구분 기호로 SageMaker 사용해야 합니다. ML 모델과 관련된 아티팩트만 접두사와 함께 구성되도록 해야 합니다. 압축되지 않은 아티팩트가 한 개 있는 ML 모델의 경우, 접두사는 키 이름과 동일합니다. 다음을 사용하여 접두사와 연결된 객체를 확인할 수 있습니다. AWS CLI:

aws s3 ls --recursive s3://bucket/prefix

모델 아티팩트를 Amazon S3에 업로드하고 공통 접두사로 구성한 후 요청을 호출할 때 해당 위치를 ModelDataSource필드의 일부로 지정할 수 있습니다. CreateModel SageMaker 추론을 위해 압축되지 않은 모델 아티팩트를 자동으로 다운로드합니다. /opt/ml/model 아티팩트를 다운로드할 때 SageMaker 사용하는 규칙에 대한 자세한 내용은 S3를 참조하십시오. ModelDataSource

다음 코드 스니펫은 압축되지 않은 모델을 배포할 CreateModel API 때 를 호출하는 방법을 보여줍니다. 교체하십시오.italicized user text 자신의 정보로

model_name = "model-name" sagemaker_role = "arn:aws:iam::123456789012:role/SageMakerExecutionRole" container = "123456789012.dkr.ecr.us-west-2.amazonaws.com/inference-image:latest" create_model_response = sagemaker_client.create_model( ModelName = model_name, ExecutionRoleArn = sagemaker_role, PrimaryContainer = { "Image": container, "ModelDataSource": { "S3DataSource": { "S3Uri": "s3://amzn-s3-demo-bucket/prefix/to/model/data/", "S3DataType": "S3Prefix", "CompressionType": "None", }, }, }, )

앞서 언급한 예제에서는 모델 아티팩트가 공통 접두사로 구성되어 있다고 가정합니다. 대신에 모델 아티팩트가 압축되지 않은 단일 Amazon S3 객체인 경우, Amazon S3 객체를 가리키도록 "S3Uri"을 변경하고 "S3DataType""S3Object"로 변경합니다.

참고

현재는 다음과 ModelDataSource 함께 사용할 수 없습니다. AWS Marketplace, SageMaker 일괄 변환, SageMaker 서버리스 추론 엔드포인트, 다중 모델 엔드포인트 SageMaker