Открыть сервис

SageMaker Endpoints

SageMaker Endpoints — это управляемый сервис в составе платформы Amazon Web Services (AWS) Amazon SageMaker, предназначенный для развёртывания моделей машинного обучения в режиме реального времени (инференса) и предоставления к ним доступа через API. SageMaker Endpoints автоматизирует задачи по масштабированию, мониторингу и обновлению инфраструктуры, позволяя разработчикам и специалистам по данным сосредоточиться на качестве модели, а не на управлении серверами.

История и развитие

Сервис Amazon SageMaker был запущен компанией Amazon Web Services в ноябре 2017 года. Одним из его ключевых компонентов стал SageMaker Endpoints, который изначально предоставлял возможность развёртывания моделей на виртуальных машинах с автоматическим масштабированием. В последующие годы функциональность была значительно расширена:

Архитектура и компоненты

SageMaker Endpoints состоит из нескольких ключевых элементов, обеспечивающих его работу:

Модель (Model)

Артефакт машинного обучения, включающий обученные веса, код инференса (скрипт или контейнер) и конфигурацию окружения. Модель регистрируется в реестре SageMaker и может быть создана как вручную, так и через автоматизированные пайплайны.

Конфигурация endpoint'а (Endpoint Configuration)

Определяет, какие модели (одну или несколько для A/B-тестирования) будут обслуживаться, а также параметры инфраструктуры:

Endpoint

Конечная точка API, к которой обращаются клиентские приложения. Endpoint связывает конфигурацию с моделью и предоставляет URL для отправки запросов.

Автоматическое масштабирование (Auto Scaling)

SageMaker Endpoints поддерживает два режима масштабирования:

Типы SageMaker Endpoints

Реальные (Real-time Endpoints)

Стандартный тип для инференса в реальном времени. Обеспечивает низкую задержку (миллисекунды) и поддерживает постоянный поток запросов. Подходит для приложений, где требуется мгновенный ответ (рекомендательные системы, чат-боты, обработка изображений).

Бессерверные (Serverless Inference)

Автоматически масштабируется до нуля при отсутствии трафика. Плата взимается только за фактическое время обработки запросов и объём переданных данных. Идеален для нерегулярных нагрузок, прототипов и приложений с переменным трафиком. Ограничения: максимальное время выполнения одного запроса — 60 секунд, максимальный размер полезной нагрузки — 6 МБ.

Пакетные (Batch Transform)

Не являются endpoint'ами в классическом понимании, но часто используются вместе с ними. Предназначены для асинхронной обработки больших объёмов данных (например, датасетов). Не требуют постоянного развёртывания инфраструктуры — кластер создаётся на время выполнения задачи и удаляется после её завершения.

Асинхронные (Asynchronous Inference)

Промежуточный вариант между real-time и batch. Клиент отправляет запрос и получает идентификатор задачи, а результат загружается в S3-бакет. Подходит для обработки больших файлов (изображения высокого разрешения, видео, аудио) или запросов с длительным временем выполнения (до 15 минут).

Процесс развёртывания

  1. Создание модели: Загрузка артефакта модели в S3 и регистрация в SageMaker.
  2. Создание конфигурации endpoint'а: Указание типа инстанса, количества реплик, правил масштабирования.
  3. Создание endpoint'а: SageMaker автоматически запускает указанное количество инстансов, загружает модель и предоставляет URL.
  4. Тестирование: Отправка тестовых запросов через AWS CLI, SDK или HTTP-клиент.
  5. Мониторинг: Использование Amazon CloudWatch для отслеживания метрик (задержка, количество запросов, ошибки, загрузка ресурсов).

Мониторинг и управление

SageMaker Endpoints интегрирован с сервисами мониторинга AWS:

Применение

SageMaker Endpoints используется в различных отраслях:

Преимущества и ограничения

Преимущества

Ограничения

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →