Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Model Deployment

Развёртывание модели переносит обученную модель в производственную среду, где она формирует предсказания для новых данных. Разбираем облачные и периферийные платформы, экспорт, запуск и мониторинг.

Развёртывание модели — это процесс переноса обученной модели машинного обучения в рабочую среду, где приложения передают ей новые данные и используют её предсказания. Оно включает выбор места для запуска модели, преобразование в формат, поддерживаемый целевой средой выполнения, подключение к входам и выходам через API или приложение, безопасный выпуск новых версий и наблюдение за поведением модели, когда на неё начинают полагаться реальные пользователи. Модель с высокими оценками в ноутбуке остаётся лишь экспериментом, пока её не развернули; развёртывание — это этап эксплуатации машинного обучения (MLOps), на котором наука о данных сталкивается с ограничениями программной инженерии, такими как задержка, стоимость, доступность и безопасность.

Где развёртывают модели#

  • Развёртывание в облаке: модель работает на серверах за конечной точкой REST или gRPC, обычно через систему обслуживания моделей, которая объединяет запросы в пакеты и масштабирует число реплик в зависимости от нагрузки. Такой вариант подходит для крупных моделей и переменного трафика, но для каждого запроса требуется обмен данными по сети.
  • Развёртывание на периферии: модель работает на устройстве, которое получает данные, например на телефоне, камере, роботе или модуле NVIDIA Jetson. Входные данные не покидают устройство, что защищает конфиденциальность, и модель продолжает работать офлайн, но ограниченные ресурсы памяти и питания обычно требуют сжатой модели.
  • Бессерверное развёртывание: платформа запускает экземпляры по запросу и масштабирует их до нуля в периоды простоя. За это приходится платить задержкой холодного запуска при первом запросе, зато при отсутствии запросов платить не нужно.
  • Пакетное развёртывание: запланированная задача за один раз обрабатывает большой набор данных, например формирует ночные рекомендации товаров; в таком сценарии пропускная способность важнее скорости отдельного запроса.

Ultralytics Platform развёртывает обученную модель YOLO на выделенной конечной точке в одном из 42 регионов; у каждой конечной точки есть собственный URL и мониторинг, а конечные точки с размером ресурса по умолчанию масштабируются до нуля при простое. Выбор целевой среды зависит от нескольких характеристик приложения, подробно рассмотренных в уроке Ultralytics Academy «Выбор целевой среды развёртывания»:

Подготовка модели к рабочей среде#

Фреймворки для обучения рассчитаны на гибкость, поэтому модели для рабочей среды обычно экспортируют в формат, который эффективно выполняется в движке инференса, например ONNX для переносимости, TensorRT для GPU NVIDIA, OpenVINO для оборудования Intel или LiteRT и Core ML для телефонов. Квантование модели и прунинг модели позволяют дополнительно уменьшить модель для устройств с ограниченными ресурсами. Затем экспортированную модель вместе с кодом предобработки упаковывают с зафиксированными версиями зависимостей, обычно в контейнер Docker, который одинаково работает на ноутбуке, сервере или в кластере Kubernetes. Экспорт обученного детектора и быстрая проверка экспортированного файла перед выпуском выглядят так:

from ultralytics import YOLO

# Load a trained model (replace with your own best.pt)
model = YOLO("yolo26n.pt")

# Export to ONNX, a portable format that many inference engines run
path = model.export(format="onnx")
print(f"Deployable model: {path}")

# Smoke-test the exported file with the same API before shipping it
onnx_model = YOLO(path)
results = onnx_model("https://ultralytics.com/images/bus.jpg")
results[0].save(filename="bus_onnx.jpg")

Вызов экспорта возвращает путь к новому файлу yolo26n.onnx, а сохранённое изображение подтверждает, что экспортированный файл загружается и обнаруживает объекты. Команды также сравнивают точность и скорость экспортированной модели с исходной на валидационном наборе, поскольку преобразование формата и снижение точности вычислений могут немного изменить результаты.

Выпуск новых версий модели#

Новая версия модели сохраняется в реестре моделей и выпускается постепенно, поскольку офлайн-метрики не учитывают все условия рабочей среды. При теневом развёртывании новая модель получает копию рабочего трафика, а пользователям по-прежнему отвечает текущая модель, поэтому результаты двух моделей можно сравнить без риска. Затем при канареечном выпуске новой версии направляют небольшую долю реального трафика и увеличивают её, только если показатели ошибок, задержки и качество предсказаний остаются в норме; A/B-тесты позволяют измерить влияние на бизнес-результаты. Если предыдущую версию можно развернуть повторно, для отката достаточно изменить конфигурацию — экстренная пересборка не нужна:

  • Обучение модели: позволяет модели усвоить веса на основе набора данных. Развёртывание начинается с уже готовых весов.
  • Обслуживание модели: уровень среды выполнения, который обрабатывает запросы на предсказание. Это часть развёртывания, которое также включает упаковку, выпуск и мониторинг.
  • Задержка инференса: время, необходимое развёрнутой модели для вычисления каждого отдельного предсказания; это одно из основных требований, которым должно соответствовать развёртывание.

Мониторинг после развёртывания#

Развёрнутая модель может незаметно терять качество при изменении условий. Мониторинг модели отслеживает рабочие показатели, например задержку, пропускную способность, частоту ошибок и использование оборудования, часто с помощью таких инструментов, как Prometheus и Grafana, а также статистику входных данных и предсказаний. Когда мониторинг выявляет проблему, команды размечают новые примеры с ошибками, переобучают модель и проводят новую версию через тот же процесс выпуска. Статистика входных данных позволяет раньше всего заметить проблему: дрейф данных — изменение распределения входных данных, например поворот камеры на новый угол или переход к зимнему освещению, — становится заметен за несколько дней или недель до появления истинных меток для рабочих данных, с помощью которых можно измерить точность.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения