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

Model Registry

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

Реестр моделей — это версионируемый каталог обученных моделей машинного обучения. Каждая запись содержит артефакт модели, например файл с весами модели, а также метаданные, необходимые для доверия к ней: обучающий запуск, в результате которого она создана, версию данных, метрики оценки, такие как средняя точность (mAP), схемы входных и выходных данных, владельца и статус утверждения. Вместо того чтобы передавать файлы весов друг другу, конвейеры развёртывания и приложения запрашивают из реестра именованную версию или версию с текущей меткой production. Так каждый выпуск и каждый откат ссылаются на конкретную зарегистрированную модель. В операциях машинного обучения (MLOps) реестр находится между отслеживанием экспериментов и развёртыванием моделей. Среди широко используемых реестров — Model Registry от MLflow, Amazon SageMaker Model Registry, Vertex AI Model Registry и реестр Weights & Biases.

Как работает реестр моделей#

Зарегистрированная модель — это имя, например defect-detector, за которым хранится последовательность версий. После регистрации каждая версия неизменна: новые веса всегда становятся новой версией, а версия 7 всегда соответствует одним и тем же байтам. Обычно для версии записывают:

  • Происхождение: Идентификатор запуска, коммит кода, версия набора данных и родительская модель, на основе которых она создана.
  • Результаты оценки: Метрики проверки, а также задержка и потребление памяти на каждом целевом устройстве.
  • Сигнатура: Ожидаемая схема входных и выходных данных, благодаря которой запрос с неверной размерностью сразу завершается ошибкой.
  • Карточка модели: Документация о предполагаемом применении, обучающих данных и известных ограничениях.
  • Статус: Теги и псевдонимы, обозначающие состояние версии.

Платформа Ultralytics хранит такие сведения для каждого размещённого на ней запуска обучения YOLO: на странице модели указаны родительская модель, закреплённая версия набора данных, коммит Git, версия ultralytics, гиперпараметры, итоговые метрики и воспроизводимая команда yolo train; поле Custom Metadata принимает объект JSON для отслеживания выпусков или управления.

В старых реестрах версия проходила фиксированные этапы, например Staging, Production и Archived. В версии 2.9.0 MLflow отказался от этапов в пользу псевдонимов — изменяемых именованных указателей, например @champion, которые команда перемещает между версиями. Amazon SageMaker отслеживает для каждой версии статус утверждения: PendingManualApproval, Approved или Rejected. Повышение модели означает перемещение её псевдонима, а откат — возврат псевдонима:

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

В реестре MLflow этот подход показан в нескольких строках. Скрипт обучает небольшой классификатор scikit-learn, регистрирует его, назначает псевдоним champion новой версии и загружает модель через этот псевдоним — так код обслуживания моделей находит текущую производственную модель:

import mlflow
from mlflow import MlflowClient
from sklearn.datasets import load_iris
from sklearn.linear_model import LogisticRegression

# Keep runs and registered model versions in a local SQLite file
mlflow.set_tracking_uri("sqlite:///mlflow.db")
X, y = load_iris(return_X_y=True)

# Log a trained model inside a run, then register it as a new version
with mlflow.start_run():
    model = LogisticRegression(max_iter=200).fit(X, y)
    info = mlflow.sklearn.log_model(model, name="model")
version = mlflow.register_model(info.model_uri, "iris-classifier")

# Point the "champion" alias at this version; applications load the alias
MlflowClient().set_registered_model_alias("iris-classifier", "champion", version.version)
champion = mlflow.pyfunc.load_model("models:/iris-classifier@champion")
print(f"version {version.version}:", champion.predict(X[:3]))

При запуске с новой базой данных скрипт выводит version 1: [0 0 0] — зарегистрированную версию и предсказанные классы для первых трёх цветов. При повторном запуске регистрируется версия 2, и тот же URI models:/iris-classifier@champion следует за псевдонимом к новой версии без изменений в коде загрузки.

  • Отслеживание экспериментов: Записывает каждый обучающий запуск, в том числе множество запусков, которые так и не используются. В реестре хранятся лишь перспективные для развёртывания кандидаты, и каждая версия связана с соответствующим запуском.
  • Объектное хранилище: В нём хранятся файлы, например в хранилищах Amazon S3. Реестр добавляет версии, метаданные и контроль доступа, а зачастую сохраняет только указатель на файл в хранилище.
  • Хранилище признаков: Версионирует и предоставляет входные признаки, которые используют модели; сами модели хранятся в реестре.
  • Реестр контейнеров: Хранит образы Docker, в которых работают модели; поэтому при развёртывании обычно указывают один тег образа и одну версию модели.
  • Hugging Face Hub: Размещает общедоступные и приватные модели в репозиториях Git с историей коммитов и карточкой модели на главной странице каждого репозитория, выступая реестром моделей с открытыми весами.

Explore solutions

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

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

Узнай, как 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. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

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

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