В предыдущих статьях мы узнали как создать обслуживающий контейнер TensorFlow для SageMaker и как отправить образ контейнера в репозиторий ECS.
В прошлой статье мы создали образ докера с именем sagemaker-tf-serving
и поместили его в ECR. Мы будем использовать этот образ для создания конечной точки SageMaker.
В этом примере требуется, чтобы роль выполнения AWS IAM разрешала SageMaker использовать другие сервисы AWS. Если у вас нет роли, эта статья научит вас созданию роли выполнения. Я предполагаю, что у вас есть исполняющая роль с именем SageMakerRole
.
Конечные точки SageMaker
Конечная точка SageMaker - это полностью управляемая и надежная хостинговая среда. Он поддерживает автоматическое масштабирование, развертывание в один клик, автоматическое A / B-тестирование и управление версиями моделей.
Конечная точка состоит из одной или нескольких моделей.
Создание модели SageMaker
Мы будем использовать изображение sagemaker-tf-serving
для создания модели SageMaker. Модель SageMaker по сути является указателем на репозиторий ECS:
В приведенном выше скрипте мы создали модель half-plus-three-v1
, указывающую на изображение ECS sagemaker-tf-serving
. Мы готовы создать конечную точку.
Создание конфигурации конечной точки
Приведенный выше сценарий создает конфигурацию конечной точки с именем half-plus-three-config-v1
. Он определяет, что конечная точка будет состоять из одного типа экземпляра ml.c4.large. И это будет развернуто с созданным нами ранее режимом half-plus-three-v1.
После создания конфигурации конечной точки мы создаем конечную точку с помощью команды aws sagemaker create-endpoint --endpoint-name ${ENDPOINT_NAME} --endpoint-config-name ${ENDPOINT_CONFIG_NAME}
.
Обычно я добавляю суффикс - v1 для имен конфигурации модели и конечной точки. Это упрощает создание новых версий модели, о которых я расскажу в следующих статьях.
Проверка статуса конечной точки
После создания конечной точки. Вы можете использовать команду aws describe-endpoint --endpoint-name half-plus-three
, чтобы проверить статус конечной точки:
$ aws sagemaker describe-endpoint --endpoint-namehalf-plus-three
{ "EndpointName": "half-plus-three
", "EndpointArn": "arn:aws:sagemaker:us-west-2:369233609183:endpoint/half-plus-three
", "EndpointConfigName": "sagemaker-byoc-tf-serving", "EndpointStatus": "Creating", "CreationTime": 1532266772.13, "LastModifiedTime": 1532266772.13 }
В следующей статье будет рассказано, как делать прогнозы относительно конечной точки SageMaker!
Статьи по Теме:
Вы использовали контейнер? У вас есть вопросы или просьбы о дополнительных статьях? Добавляйте комментарии ниже!