Создание API‑эндпоинтов для управления ML‑моделями

Представьте модели как версионируемые ресурсы, а длительные inference/evaluation — как отдельные задания со статусами. Удаление и изменение должны проверять ownership.

Короткий ответ

Что ответить на собеседовании

Представьте модели как версионируемые ресурсы, а длительные inference/evaluation — как отдельные задания со статусами. Удаление и изменение должны проверять ownership.

Подробный разбор

Ответ с пояснениями

Условие

Разработать набор HTTP‑ручек, позволяющих выполнять базовые операции оркестрации моделей машинного обучения.

Требования:

  1. Получить список доступных моделей.
  2. Удалить выбранную модель из списка.
  3. Добавить новую модель.
  4. Применить (запустить) модель.
  5. Оценить качество модели.
  6. Обновить параметры модели.

Ответ

Представьте модели как версионируемые ресурсы, а длительные inference/evaluation — как отдельные задания со статусами. Удаление и изменение должны проверять ownership.

Минимальный контракт:

  • GET /models — список с пагинацией.
  • POST /models — регистрация артефакта, 201.
  • DELETE /models/{id} — удаление или пометка недоступности.
  • PATCH /models/{id} — разрешённые настройки с проверкой версии.
  • POST /models/{id}/predictions — запуск применения.
  • POST /models/{id}/evaluations — оценка на указанном датасете.
  • GET /jobs/{id} — состояние длительной операции.

Задания возвращают 202 и job_id, тяжёлая работа идёт в worker. Фиксируйте версию модели, датасета и параметры, ограничивайте ресурсы и повторы. Не допускайте выполнения произвольного кода из недоверенного артефакта. Обновление весов лучше оформлять новой версией, не перезаписывая историю оценок.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее