AI-модели: запуск инференса
Зачем это нужно
Выкатить обученную модель (из S3, реестра MLflow или собственного контейнерного образа) живым inference-эндпоинтом — с канареечным раскатом, API-ключом и встроенной песочницей для проверки — не описывая руками ни одного манифеста.
Как выкатить модель
- Откройте Models в меню проекта → Deploy model.
- Заполните:
- Name — строчные буквы, цифры и дефисы, например
iris-classifier. - Model type — sklearn / xgboost / lightgbm / pytorch / tensorflow / triton / huggingface / custom.
- Source:
- S3 — Artifact URI, например
s3://platform-models/<project>/iris/v1. - MLflow — Name зарегистрированной модели и Version.
- Custom — собственный Container image.
- S3 — Artifact URI, например
- Profile —
cpu-small/cpu-medium/gpu-t4/gpu-a100; рядом с каждым вариантом показаны CPU, RAM и количество GPU. - Auth mode —
apikey/jwt/public. - Attached app и Version label — оба поля необязательные.
- Name — строчные буквы, цифры и дефисы, например
- Если выбран GPU-профиль, а квота GPU у проекта сейчас
0, форма предупредит, что деплою потребуется согласование администратора — см. согласование AI-моделей. - Отправьте форму — вас перебросит в Operations смотреть, как модель выкатывается.
Деплой прямо из реестра MLflow
Чтобы не вбивать имя и версию руками, откройте меню аккаунта (аватар справа сверху) → AI Studio. Это кросс-проектный обозреватель реестра: выбираете проект, видите все зарегистрированные MLflow-модели с последней версией, стадией и временем обновления, жмёте Deploy vN — откроется страница Models с уже заполненной формой создания (источник, имя, версия) именно под эту версию.
Как управлять выкаченной моделью
Карточка модели ведёт на страницу с вкладками Overview / Versions / Access / Playground / Operations, плюс Manifests для Owner и Admin.
- Set Canary вверху страницы — ползунком 0–100% отправьте часть трафика на новую запинованную версию. Как только канарейка выше 0%, появляется кнопка Promote, которая делает версию стабильной на 100%.
- Вкладка Versions — залить новый артефакт без полного передеплоя: вставьте новый S3 URI или запиньте другую версию MLflow.
- Вкладка Access — режим аутентификации и, для режима
apikey, кнопка Reveal: полный API-ключ показывается в подсвеченном блоке с предупреждением «сохраните сейчас». - Вкладка Playground — отправить модели живой тестовый запрос прямо из консоли.
- Delete вверху страницы — с галочкой Force для моделей, застрявших в плохом состоянии.
Подводные камни
- GPU-профиль может молча потребовать согласования. Если квота GPU у проекта
0, деплой наgpu-t4илиgpu-a100создаёт заявку, которая висит, пока Owner или Admin не согласует её в очереди согласований. Деплой при этом не падает — он просто ещё не живой. - Показ API-ключа визуально не помечен как одноразовый: кнопку можно нажать снова после перезагрузки страницы. Всё равно считайте ключ секретом и копируйте сразу, а не оставляйте вкладку открытой.
- Вкладка Manifests доступна только Owner и Admin. Developer может деплоить, включать канарейку, промоутить и удалять, но не увидит ни итоговой спецификации, ни деталей GitOps-коммита.
- Счётчик вызовов инференса на карточках квот справочный: жёсткой отсечки в интерфейсе нет. Реально блокируют деплой квоты на количество CPU- и GPU-моделей.
Чего пока нет
- Изменения типа модели, профиля и режима аутентификации после создания: доступны только обновление артефакта или версии, процент канарейки и удаление.
- A/B-тестов сложнее простого процента канарейки — разлива трафика по нескольким версиям нет.
- Инструмента «покажи, почему модель застряла»: для зависших остаётся только Force-удаление.
Куда дальше
- Согласование AI-моделей — кто и как пропускает GPU-заявки.
- Мониторинг: метрики, логи и алерты — наблюдение за эндпоинтом после выката.