Гарантия возврата
Вернем деньги, если что-то пойдет не так.
Семён
Семён
Верифицированный пользователь
Чат откроется после оплаты
Стоимость услуги
65 000 rub

Срок выполнения

14 дней

Гарантия возврата
Вернем деньги, если что-то пойдет не так.
Семён
Семён
Верифицированный пользователь

ML-модель в продакшен: FastAPI, Docker, очередь и мониторинг

У вас есть обученная модель, которая работает в ноутбуке на компьютере дата-сайентиста. Сделаю из неё сервис с API, очередью задач и мониторингом, развёрнутый на вашем сервере. Услуга типовая и выполняется без предварительных согласований: объём работ зафиксирован ниже в цифрах, требования к модели перечислены отдельно. Если ваша модель им соответствует - этого достаточно для старта. ОБЪЁМ РАБОТ В ЦИФРАХ — 1 модель, 1 сервис, 1 сервер, 1 окружение. — 5 эндпоинтов HTTP API: синхронное предсказание, постановка задачи в очередь, статус и результат задачи, health-check, метрики. — До 100 объектов в одном пакетном запросе. — 6 контейнеров в Docker Compose: API, воркер, очередь, база, Prometheus, Grafana. — 8 метрик Prometheus и 1 дашборд Grafana на 6 панелей: задержка, количество запросов, доля ошибок, длина очереди, использование памяти, время работы сервиса. — 15 автотестов на API: успешные сценарии, валидация, ошибки, асинхронная обработка. — 1 нагрузочный тест: 1 сценарий, длительность до 30 минут, до 200 запросов в секунду, отчёт с графиками. — Сверка сервиса с вашим ноутбуком на 20 ваших примерах: результаты должны совпасть. — 2 итерации правок, до 10 замечаний суммарно, в течение 14 дней после сдачи. ЧТО ВХОДИТ В УСЛУГУ — HTTP API на FastAPI: синхронный эндпоинт для быстрых запросов и асинхронный через очередь для тяжёлых. — Строгая валидация входа и выхода: некорректный запрос получает понятную ошибку, а не пятисотую с трейсбеком. — Запуск на CPU или на одной видеокарте - определяется самой моделью, на цену не влияет. — Подмена весов модели без пересборки образа: обновляете модель, не трогая сервис. — Структурированные логи запросов и ошибок, пригодные для поиска. — Health-check, таймауты и корректное завершение работы, чтобы выкат не рвал текущие запросы. — Развёртывание на вашем сервере и инструкция по запуску и обновлению. ТРЕБОВАНИЯ К МОДЕЛИ — Python 3.10 или новее, зависимости ставятся через pip. — Модель загружается и делает предсказание скриптом, который запускается у вас. — Размер весов до 10 ГБ. — Одно предсказание занимает до 30 секунд на вашем сервере. — Не требует платных лицензий на стороннее ПО. — Сервер на Linux с установленным Docker. ЧЕГО Я НЕ ДЕЛАЮ С САМОЙ МОДЕЛЬЮ Не переобучаю её и не улучшаю метрики. Модель приходит как есть и в сервисе ведёт себя так же, как у вас в ноутбуке, — это проверяется на 20 ваших примерах перед сдачей. Качество предсказаний — отдельная задача про обучение, а не про сервис. СРОК 12 рабочих дней с момента получения модели и доступов. Если доступ к серверу не предоставлен в течение 5 рабочих дней после старта, сдаю готовый образ с инструкцией по самостоятельному развёртыванию. ЧТО НЕ ВХОДИТ — Обучение, дообучение и улучшение метрик модели. — Сбор и разметка данных. — Веб-интерфейс и фронтенд. — Kubernetes, вторая модель, второй сервер, второе окружение. — Нагрузочное тестирование сверх одного указанного сценария. — Серверные мощности и оплата облака с вашей стороны. — Модели, не соответствующие требованиям выше. СТЕК Python, FastAPI, PyTorch, scikit-learn, HuggingFace, Docker, Docker Compose, PostgreSQL, Redis, Prometheus, Grafana. ПОЧЕМУ Я Работаю ML-инженером полного цикла: делаю и модели, и backend вокруг них, поэтому понимаю обе стороны стыка. Реализовал bulk-загрузку в PostgreSQL и ускорил выгрузку вдвое, вылечил зависающие транзакции SQLAlchemy, срезал бесполезную нагрузку на очередь фоновых задач на 40%, довёл покрытие бизнес-логики тестами до 70%. Держу девять самостоятельно развёрнутых сервисов с обратным прокси, SSO и объектным хранилищем.

Заказчик получит:

Сервис в Docker: 5 эндпоинтов, очередь, 15 тестов, дашборд Grafana, развёрнут на вашем сервере.

До начала работы заказчик должен предоставить:

— Файл модели и код инференса, который запускается у вас: скрипт или ноутбук, плюс requirements. — 20 примеров входных данных с ожидаемым результатом - по ним сверяем сервис с вашим ноутбуком. — Доступ по SSH к серверу на Linux с установленным Docker. — Характеристики сервера: ядра, память, есть ли видеокарта и сколько на ней памяти. — Сотрудник, готовый пояснить, что модель принимает на вход и что возвращает.