Implantação na nuvem: AWS SageMaker
SageMaker Model, EndpointConfig, Endpoint, inferência em tempo real e transformação em lote.
Implantação na nuvem: AWS SageMaker é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.
Por que usar SageMaker
O Amazon SageMaker é um serviço gerenciado para treinar e implantar modelos de aprendizado de máquina. Em vez de provisionar servidores e balanceadores de carga por conta própria, você descreve um modelo, e o SageMaker cria nos bastidores um endpoint HTTPS escalável.
Os três componentes
Uma implantação no SageMaker precisa de três coisas:
- Uma URI da imagem de contêiner (sua imagem de serviço no ECR ou uma imagem de estrutura integrada)
- Os pesos treinados como dados do modelo, um arquivo tar.gz no S3
- Uma função do IAM que conceda ao SageMaker acesso a esses recursos
Definindo um modelo
O objeto sagemaker.Model associa a imagem do contêiner ao artefato do modelo no S3.
import sagemaker
from sagemaker.model import Model
model = Model(
image_uri="123456789012.dkr.ecr.us-east-1.amazonaws.com/my-model:latest",
model_data="s3://my-bucket/models/model.tar.gz",
role="arn:aws:iam::123456789012:role/SageMakerRole",
)O que há em model.tar.gz
O SageMaker baixa e extrai model_data para /opt/ml/model dentro do contêiner ao ser iniciado. Seu código de serviço lê os pesos desse local. O arquivo compactado normalmente contém o arquivo do modelo salvo e quaisquer recursos de pré-processamento.
# model.tar.gz contents
# model.pt
# tokenizer.json
# config.jsonImplantando um endpoint em tempo real
model.deploy inicia uma ou mais instâncias atrás de um endpoint HTTPS persistente. Você escolhe o tipo de instância e a quantidade inicial de instâncias.
predictor = model.deploy(
initial_instance_count=1,
instance_type="ml.m5.xlarge",
endpoint_name="my-model-endpoint",
)Escolhendo um tipo de instância
O tipo de instância controla o custo e a latência:
ml.m5.*CPU de uso geral, econômica para modelos pequenosml.c5.*otimizada para computaçãoml.g4dn.*/ml.g5.*GPU para inferência de aprendizado profundo
Combine a instância ao modelo: uma GPU é desperdiçada em um modelo minúsculo do scikit-learn.
Chamando predict()
Depois de implantado, predictor.predict() envia uma carga ao endpoint e retorna o resultado da inferência. O SageMaker serializa a solicitação e a direciona para uma instância ativa.
result = predictor.predict({
"instances": [[5.1, 3.5, 1.4, 0.2]]
})
print(result)Limpando os endpoints
Os endpoints em tempo real são cobrados por segundo enquanto estão em execução. Sempre exclua os endpoints de que não precisa mais ou você acumulará cobranças mesmo sem tráfego.
predictor.delete_endpoint()Transformação em lote para tarefas off-line
Para pontuar um conjunto de dados grande uma única vez (e não para disponibilização de baixa latência), use a transformação em lote. O SageMaker inicia instâncias, processa um conjunto de dados inteiro do S3, grava os resultados de volta no S3 e encerra as instâncias. Não há endpoint persistente nem custo de ociosidade.
Executando uma transformação em lote
Você cria um transformer a partir do modelo e o aponta para os dados de entrada no S3.
transformer = model.transformer(
instance_count=1,
instance_type="ml.m5.xlarge",
output_path="s3://my-bucket/predictions/",
)
transformer.transform(
data="s3://my-bucket/input/batch.csv",
content_type="text/csv",
)
transformer.wait()Tempo real versus em lote
Escolha com base na carga de trabalho:
- Endpoint em tempo real: solicitações contínuas de baixa latência (por exemplo, uma API de recomendações)
- Transformação em lote: pontuação periódica de grandes conjuntos de dados (por exemplo, previsões noturnas de cancelamento)
O processamento em lote é muito mais barato quando você não precisa de respostas instantâneas.
Verificação rápida
Quando você deve usar a transformação em lote do SageMaker em vez de um endpoint em tempo real?
Recapitulação
Você implantou um modelo no AWS SageMaker:
sagemaker.Modelassocia uma URI da imagem aos dados do modelo no S3model.deploycria um endpoint em tempo real usando um tipo de instância escolhidopredictor.predict()envia solicitações de inferência- A transformação em lote processa cargas de trabalho off-line grandes com baixo custo
- Sempre exclua endpoints ociosos para evitar cobranças
Perguntas Frequentes
A aula “Implantação na nuvem: AWS SageMaker” é grátis?
Sim — o texto completo de “Implantação na nuvem: AWS SageMaker” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.
O que vou aprender em “Implantação na nuvem: AWS SageMaker”?
SageMaker Model, EndpointConfig, Endpoint, inferência em tempo real e transformação em lote. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Learn AI with Python?
Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Implantação na nuvem: AWS SageMaker”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Learn AI with Python?
Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Containerizando modelos de aprendizado de máquina com Docker
- Implantação na nuvem: AWS SageMaker
- Disponibilização de alto desempenho com o Triton Inference Server
- Escalonamento e escalonamento automático de endpoints de modelos