Можно ли с помощью AWS SageMaker развернуть предварительно обученную модель с помощью SDK Sagemaker?

Я стараюсь не переносить существующий процесс обучения модели в SageMaker и избегать создания собственного контейнера Docker для размещения нашей обученной модели.

Я надеялся вставить нашу существующую обученную модель в готовый контейнер scikit learn, который AWS предоставляет через sagemaker-python-sdk. Все примеры, которые я нашел, требуют сначала обучения модели, которая создает конфигурацию модель / модель в SageMaker. Затем он развертывается с deploy метод.

Можно ли предоставить обученную модель deploy метод и размещен ли он в готовом контейнере Scikit Learn, который предоставляет AWS?

Для справки, примеры, которые я видел, следуют этому порядку операций:

  1. Создание экземпляра sagemaker.sklearn.estimator.SKLearn и предоставление учебного сценария
  2. Позвоните fit метод на это
  3. Это создает модель / конфигурацию модели в SageMaker
  4. Позвоните deploy метод на SKLearn экземпляр, который автоматически берет модель, созданную на шаге 2/3, и развертывает ее в контейнере обучения scikit перед сборкой в ​​качестве конечной точки HTTPS.

2 ответа

Да, вы можете импортировать существующие модели в SageMaker.

Для scikit-learn вы должны использовать объект SKLearnModel(), чтобы загрузить модель из S3 и создать ее в SageMaker. Затем вы можете развернуть его как обычно.

https://sagemaker.readthedocs.io/en/latest/sagemaker.sklearn.html

Вот полный пример, основанный на MXNet, который укажет вам правильное направление: https://github.com/awslabs/amazon-sagemaker-examples/blob/master/sagemaker-python-sdk/mxnet_onnx_superresolution/mxnet_onnx.ipynb

Пару дней боролся с одним и тем же вариантом использования.

Мы использовали класс sagemaker.model.Model и sagemaker.pipeline.PipelineModel.

Изложил наше решение здесь.

Как обрабатывать пользовательские преобразования/выводы и требования в конечных точках sagemaker

Другие вопросы по тегам