Implantação de modelos não compactados - Amazon SageMaker

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

Implantação de modelos não compactados

Ao implantar modelos de ML, uma opção é arquivar e compactar os artefatos do modelo em um formato tar.gz. Embora esse método funcione bem para modelos pequenos, compactar um artefato de modelo grande com centenas de bilhões de parâmetros e depois descompactá-lo em um endpoint pode levar um tempo significativo. Para inferência de modelos grandes, recomendamos que você implante um modelo de ML não compactado. Este guia mostra como você pode implantar um modelo de ML não compactado.

Para implantar modelos de ML não compactados, faça o upload de todos os artefatos do modelo para o Amazon S3 e organize-os sob um prefixo comum do Amazon S3. Um prefixo do Amazon S3 é uma sequência de caracteres no início de um nome de chave de objeto do Amazon S3, separada do resto do nome por um delimitador. Para ter mais informações sobre prefixos no Amazon S3, consulte Organizar objetos usando prefixos.

Para implantar com SageMaker, você deve usar a barra (/) como delimitador. Você precisa garantir que somente os artefatos associados ao seu modelo de ML sejam organizados com o prefixo. Para modelos de ML com um único artefato não compactado, o prefixo será idêntico ao nome da chave. Você pode verificar quais objetos estão associados ao seu prefixo com a AWS CLI:

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

Depois de carregar os artefatos do modelo no Amazon S3 e organizá-los sob um prefixo comum, você pode especificar sua localização como parte do campo ao invocar ModelDataSourcea solicitação. CreateModel SageMaker baixará automaticamente os artefatos do modelo não compactado para /opt/ml/model inferência. Para obter mais informações sobre as regras SageMaker usadas ao baixar os artefatos, consulte ModelDataSourceS3.

O trecho de código a seguir mostra como você pode invocar o CreateModel API ao implantar um modelo não compactado. Substitua o italicized user text com suas próprias informações.

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", }, }, }, )

O exemplo acima mencionado pressupõe que os artefatos do seu modelo estejam organizados sob um prefixo comum. Se, em vez disso, seu artefato de modelo for um único objeto Amazon S3 não compactado, altere "S3Uri" para apontar para o objeto Amazon S3 e altere "S3DataType" para "S3Object".

nota

Atualmente, você não pode usar ModelDataSource com AWS Marketplace, transformação SageMaker em lote, endpoints de inferência SageMaker sem servidor e endpoints de vários modelos. SageMaker