Задача: фундаментальна ML-інфраструктура
Стек: Python, AWS SageMaker (JumpStart + HuggingFace), PyTorch, MediaPipe, SAM 2.1, SegFormer, Docker, CDK (read-only)
Результат: зібрані inference-контейнери, задеплоєні SageMaker-ендпоінти, опакована MediaPipe-альтернатива для аналізу обличчя, задокументований KPI-план — усе готове для інтеграції й фактичного бенчмаркінгу у наступних фазах.
Мета
Підняти інфраструктуру сервінгу моделей для CV-пайплайну з двома напрямками:
- Аналіз обличчя — витягування landmark’ів + класифікація атрибутів (колір шкіри / очей / волосся, форма обличчя) з фотографії користувача. Go-оркестратор у початковій імплементації викликає AWS Rekognition; потрібна MediaPipe-альтернатива за тим самим контрактом, готова до підміни без зміни оркестратора.
- Сегментація + класифікація зображень — попіксельні маски по окремих предметах одягу та класифікація категорії, сервиться через AWS SageMaker managed endpoints (SAM 2.1 через JumpStart, SegFormer через HuggingFace).
У межах цих 3 тижнів: контейнери збираються, ендпоінти відповідають, хендлери працюють, cost guardrails перевірені, KPI benchmark plan задокументований. Інтеграція, MediaPipe-пайплайн і фактичне виконання бенчмарку виходять за скоуп цієї задачі.
Обсяг робіт
1. Inference-контейнери
- Базуємося на AWS Deep Learning Containers (PyTorch + CUDA + cuDNN запечені) — CUDA руками не налаштовуємо.
- Розширюємо MediaPipe для face-analysis треку.
- Публікуємо в ECR з версійною конвенцією.
- Доводимо наскрізний флоу “hello inference” хендлером, що запускається й відповідає.
2. SageMaker-ендпоінти — SAM 2.1 + SegFormer
- SAM 2.1 розгорнутий через SageMaker JumpStart (цільовий
ml.g5.xlarge, async ендпоінт).
- SegFormer-B2-clothes (HuggingFace Hub) розгорнутий через SageMaker HuggingFace ендпоінт (цільовий
ml.g5.xlarge, async).
- Inference-хендлери (якщо кастомні потрібні — тюнимо від дефолтів JumpStart/HuggingFace).
- Схеми request/response задокументовані, щоб downstream-сервіси могли інтегруватися.