Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Executar predições em tempo real com um pipeline de inferência

Modo de foco
Executar predições em tempo real com um pipeline de inferência - SageMaker IA da Amazon

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

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

Você pode usar modelos treinados em um pipeline de inferência para fazer predições em tempo real diretamente sem executar o pré-processamento externo. Ao configurar o pipeline, você pode optar por usar os transformadores de recursos integrados já disponíveis na Amazon SageMaker AI. Ou você pode implementar sua própria lógica de transformação usando apenas algumas linhas de código Spark ou scikit-learn.

MLeap, um formato de serialização e mecanismo de execução para pipelines de aprendizado de máquina, é compatível com Spark, scikit-learn e TensorFlow para treinar pipelines e exportá-los para um pipeline serializado chamado Bundle. MLeap Você pode desserializar os pacotes de volta ao Spark para pontuação em lote ou para o tempo de execução para alimentar serviços de API em tempo real. MLeap

Os contêineres em um pipeline escutam na porta especificada na variável de ambiente SAGEMAKER_BIND_TO_PORT (em vez da 8080). Ao ser executada em um pipeline de inferência, a SageMaker IA fornece automaticamente essa variável de ambiente aos contêineres. Se essa variável de ambiente não estiver presente, os contêineres padrão usam a porta 8080. Para indicar que o contêiner está em conformidade com esse requisito, use o seguinte comando para adicionar um rótulo ao Dockerfile:

LABEL com.amazonaws.sagemaker.capabilities.accept-bind-to-port=true

Se o seu contêiner precisar escutar em uma segunda porta, escolha uma porta no intervalo especificado pela variável de ambiente SAGEMAKER_SAFE_PORT_RANGE. Especifique o valor como um intervalo inclusivo no formato"XXXX-YYYY", onde XXXX e YYYY são números inteiros de vários dígitos. SageMaker A IA fornece esse valor automaticamente quando você executa o contêiner em um pipeline de vários contêineres.

nota

Para usar imagens personalizadas do Docker em um pipeline que inclui algoritmos integrados de SageMaker IA, você precisa de uma política do Amazon Elastic Container Registry (Amazon ECR). Seu repositório Amazon ECR deve conceder permissão à SageMaker IA para extrair a imagem. Para obter mais informações, consulte Solucionar problemas com permissões do Amazon ECR para pipelines de inferência.

Criar e implantar um endpoint de pipeline de inferência

O código a seguir cria e implanta um modelo de pipeline de inferência em tempo real com o SparkML e XGBoost modelos em série usando o AI SDK. SageMaker

from sagemaker.model import Model from sagemaker.pipeline_model import PipelineModel from sagemaker.sparkml.model import SparkMLModel sparkml_data = 's3://{}/{}/{}'.format(s3_model_bucket, s3_model_key_prefix, 'model.tar.gz') sparkml_model = SparkMLModel(model_data=sparkml_data) xgb_model = Model(model_data=xgb_model.model_data, image=training_image) model_name = 'serial-inference-' + timestamp_prefix endpoint_name = 'serial-inference-ep-' + timestamp_prefix sm_model = PipelineModel(name=model_name, role=role, models=[sparkml_model, xgb_model]) sm_model.deploy(initial_instance_count=1, instance_type='ml.c4.xlarge', endpoint_name=endpoint_name)

Solicitar inferência em tempo real de um endpoint do pipeline de inferência

O seguinte exemplo mostra como fazer predições em tempo real chamando um endpoint de inferência e transmitindo uma carga útil de solicitações no formato JSON:

import sagemaker from sagemaker.predictor import json_serializer, json_deserializer, Predictor payload = { "input": [ { "name": "Pclass", "type": "float", "val": "1.0" }, { "name": "Embarked", "type": "string", "val": "Q" }, { "name": "Age", "type": "double", "val": "48.0" }, { "name": "Fare", "type": "double", "val": "100.67" }, { "name": "SibSp", "type": "double", "val": "1.0" }, { "name": "Sex", "type": "string", "val": "male" } ], "output": { "name": "features", "type": "double", "struct": "vector" } } predictor = Predictor(endpoint=endpoint_name, sagemaker_session=sagemaker.Session(), serializer=json_serializer, content_type='text/csv', accept='application/json' print(predictor.predict(payload))

A resposta que você obtém de predictor.predict(payload) é o resultado da inferência do modelo.

Exemplo de pipeline de inferência do Realtime

Você pode executar esse exemplo de notebook usando o SKLearn preditor que mostra como implantar um endpoint, executar uma solicitação de inferência e, em seguida, desserializar a resposta. Encontre esse caderno e mais exemplos no GitHub repositório de SageMaker exemplos da Amazon.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.