Ultralytics YOLO27:

Мониторинг#

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

Обзорные карточки и карта мира на странице развертывания Ultralytics Platform

Панель развертываний#

Страница Deploy на боковой панели служит панелью мониторинга всех твоих развертываний. Она объединяет карту мира, обзорные метрики и управление развертываниями в одном представлении. Инструкции по созданию развертываний и управлению ими см. в разделе Выделенные эндпоинты.

graph TB
    subgraph Dashboard
        Map[World Map]:::proc --- Cards[Overview Cards]:::proc
        Cards --- List[Deployments List]:::decide
    end
    subgraph "Per Ready Deployment"
        Monitoring[Monitoring Tab: Paid Endpoints]:::out
        Metrics[Metrics Row]:::out
        Health[Health Check]:::out
        Logs[Logs Tab]:::out
        Code[Code Tab]:::out
        Predict[Predict Tab]:::out
    end
    List --> Monitoring
    List --> Metrics
    List --> Health
    List --> Logs
    List --> Code
    List --> Predict

    classDef proc fill:#2196F3,color:#fff
    classDef decide fill:#FF9800,color:#fff
    classDef out fill:#9C27B0,color:#fff

Обзорные карточки#

Четыре сводные карточки в верхней части страницы показывают:

Четыре обзорные карточки на странице развертывания Ultralytics Platform

МетрикаОписание
HTTP-запросы (24 ч)HTTP-запросы по конечным точкам, включая запросы предсказаний, мониторинга и проверки работоспособности
Активные развертыванияЭндпоинты, которые сейчас находятся в состоянии Ready
Частота HTTP-ошибок (24 ч)Доля ответов со статусом 4xx или 5xx с учетом объема запросов
HTTP P95 Задержка (24 ч)Среднее значение часовых задержек 95-го процентиля с учетом объема

Отображается задержка P95, а не медианная задержка, поскольку проверки работоспособности выполняются за пару миллисекунд и в противном случае искажали бы представление о реальной задержке инференса.

Оповещение о доле ошибок

Карточка доли ошибок подсвечивается красным, когда показатель превышает 5%. Чтобы диагностировать ошибки, проверь вкладку Logs в отдельных развертываниях.

Карта мира#

Интерактивная карта мира показывает:

  • Метки регионов для всех 42 доступных регионов
  • Зеленые метки для регионов с готовым развертыванием
  • Анимированные синие метки для регионов с развертываниями, которые выполняются
  • Размер метки зависит от состояния развертывания и задержки

Нажми на любой регион, чтобы открыть диалоговое окно New Deployment. На небольших экранах карта скрыта.

Карта мира с развернутыми регионами на странице развертывания Ultralytics Platform

Список развертываний#

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

ВидОписание
КарточкиПодробные карточки с метриками, логами, кодом, вкладками предсказаний и доступного мониторинга
КомпактныйСетка небольших карточек (от 1 до 4 столбцов) с ключевыми метриками
ТаблицаDataTable с сортируемыми столбцами: имя, регион, состояние, запросы, P95, ошибки
Обновления в реальном времени

Панель обновляется автоматически и обновляется чаще, пока развертывания находятся в переходном состоянии (creating, deploying или stopping). Нажми кнопку обновления, чтобы немедленно получить актуальные данные.

Метрики отдельных развертываний#

В каждой карточке развертывания (в режиме карточек) отображаются метрики в реальном времени. Строка метрик, проверка работоспособности и описанные ниже вкладки Logs, Code и Predict отображаются только в состоянии Ready:

Строка метрик#

МетрикаОписание
ЗапросыКоличество запросов за последние 24 часа
Задержка P95Среднее значение часовых задержек 95-го процентиля (24 ч)
Доля ошибокДоля ответов 4xx и 5xx, отображается только при значении выше 0

Метрики обновляются автоматически. Для эндпоинтов, которые еще не обработали ни одного запроса, отображается «Трафика пока нет», а метрики собираются только для развертываний в состоянии Ready. На панели развертываний метрики загружаются для 20 самых последних развертываний.

Проверка состояния#

Для работающих развертываний отображается индикатор проверки работоспособности:

ИндикаторЗначение
Зеленое сердцеРаботоспособен — отображается задержка ответа
Красное сердцеНеработоспособен — отображается сообщение об ошибке
Вращающийся значокПроверка работоспособности выполняется

Проверки работоспособности автоматически повторяются, пока эндпоинт неработоспособен, и прекращаются после получения ответа от эндпоинта. Нажми значок обновления, чтобы вручную запустить проверку работоспособности; это также позволяет прогреть эндпоинт, масштабированный до нуля, перед отправкой трафика.

Карточка развертывания Ultralytics Platform: успешная проверка работоспособности с задержкой

Допустимое время холодного запуска

Platform предоставляет проверке работоспособности дополнительное время и повторяет попытки при временных сбоях подключения, чтобы эндпоинт, масштабированный до нуля, успел запуститься. Если в карточке отображается «Сервис запускается...», обнови ее, чтобы получить экземпляр, который тем временем завершил запуск.

Вкладка мониторинга#

Открой Deploy, переключись на вид Cards и выберите Monitoring на Ready, платной выделенной конечной точке. Отправь изображение через вкладку Predict или API конечной точки, чтобы заполнить Temporary Examples и Prediction Statistics. До обработки первого изображения на вкладке отображается No images processed.

Соответствие конечной точки требованиям

Для мониторинга требуется платная конечная точка с оплатой за время работы, выполняющая срезу времени с поддержкой мониторинга. Включенная конечная точка не получает эту вкладку только за счет плана платного рабочего пространства. См. Dedicated Endpoints для настройки ресурсов. Существующие конечные точки обновляются автоматически не с каждым выпуском среды выполнения, поэтому на старой конечной точке может отображаться Monitoring unavailable, пока среда выполнения не будет обновлена.

Ultralytics Platform Deployment Monitoring Temporary Examples And Statistics

Временные данные

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

Временные примеры#

Галерея содержит сменяющуюся выборку обработанных изображений с наложениями предсказаний. Открой изображение, чтобы изучить его предсказания в полноэкранном просмотрщике, и используй элементы управления видимостью для настройки наложений. Изначально в галерее отображается до 12 примеров; Show all расширяет её.

  • Выборка: Изначально до двух примеров, затем до одного дополнительного изображения в минуту. Захват выполняется по принципу «лучших усилий»; инференс не ждет кодирования примера.
  • Емкость: Не более 100 изображений в рамках общего бюджета памяти 100 МиБ для сжатых изображений, метаданных предсказаний и связанных ресурсов. Интерфейс обозначает этот бюджет как 100 MB.
  • Замена: Старые примеры заменяются при достижении любого из лимитов. Пример может стать недоступным во время его просмотра.
  • Хранилище: Временные примеры остаются в памяти конечной точки. Их сохранение в датасет использует стандартные лимиты хранения и обработки рабочего пространства.

Ultralytics Platform Deployment Monitoring Prediction Viewer

Сохранение примеров в датасет#

Участники рабочего пространства с правом редактирования контента могут сохранять примеры в датасет в рабочем пространстве конечной точки:

  1. Выбери отдельные примеры с помощью их флажков или нажми Select all.
  2. Нажми Save to dataset.
  3. Выбери существующий датасет с той же задачей, что и у развернутой модели. Датасеты с подключенными источниками исключены; создай совместимый датасет сначала, если доступных нет.
  4. Нажми кнопку Save, на которой отображается количество выбранных изображений, затем открой датасет для отслеживания обработки.

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

Ultralytics Platform Deployment Monitoring Save Examples To Dataset

Чтобы удалить временные примеры, используй элемент управления корзиной при наведении на изображение или выбери примеры и нажми кнопку массового удаления, затем подтверди Delete. Удаление примеров оставляет агрегированную статистику предсказаний и изображения, уже сохраненные в датасеты, без изменений.

Статистика предсказаний#

Статистика агрегирует обработанные изображения независимо от выборки галереи. Удаление или замена примера не уменьшает его вклад. В сводке отображаются изображения, предсказания и изображения без предсказаний за выбранный период; для моделей глубины отображается количество изображений.

Выбор дат по умолчанию устанавливает последние 30 days и принимает диапазоны до 365 days. Выбранные даты используют границы UTC; временные метки графиков отображаются в локальном времени. Недавние диапазоны до трех дней используют почасовую историю, если весь диапазон укладывается в последние 72 часа; для остальных диапазонов используется дневная история. Диапазон дат фильтрует статистику, в то время как галерея продолжает отображать текущие временные примеры.

История ограничена 72 hourly buckets и 365 daily buckets и доступна только с момента запуска текущего экземпляра. Выбранный период без обработанных изображений отображает No images processed in this period.

Доступные графики зависят от задачи и собранных предсказаний:

ГрафикЧто отображается
Predictions over TimeОбщие итоги обработанных изображений и предсказаний; модели глубины отображают Images over Time
Inference TimeСреднее время инференса модели в миллисекундах, исключая сетевые издержки и накладные расходы на запросы
Основные классыКоличество предсказаний по классам
Predictions per ImageРаспределение, включая изображения без предсказаний и финальный интервал 100+; скрыто для классификации и глубины
Prediction ConfidenceРаспределение уверенности и среднее значение, если доступны оценки уверенности
Confidence over TimeСредняя уверенность предсказаний для каждого временного интервала
Prediction DimensionsШирина и высота предсказаний относительно входного изображения, если доступны размеры ограничивающих прямоугольников
Prediction LocationsПространственная тепловая карта предсказаний, если доступны данные о местоположении

Ultralytics Platform Deployment Monitoring Prediction Statistics

Ultralytics Platform Deployment Monitoring Confidence And Spatial Statistics

Интерпретация статистики

Уверенность измеряет определенность модели, а не правильность. Изучай примеры и сравнивай их с проверенными метками при оценке точности. Inference Time измеряет выполнение модели; P95 Latency развертывания включает обработку запросов и также может отражать трафик, не связанный с инференсом, например проверки работоспособности.

Мониторинг обновляется примерно каждые 2 seconds, пока его панель открыта и видна. Опрос приостанавливается, когда панель находится вне экрана или вкладка браузера скрыта. Успешный инференс через вкладку Predict развертывания также запускает обновление статистики.

Журналы#

Каждая карточка развертывания содержит вкладку Logs для просмотра последних записей журнала:

Вкладка журналов карточки развертывания Ultralytics Platform с фильтром по уровню серьезности

Записи журнала#

Каждая запись журнала содержит:

ПолеОписание
Уровень серьезностиЦветную полосу (см. ниже)
Метка времениВремя запроса (в местном формате)
СообщениеСодержимое журнала
Информация HTTPКод состояния и задержка (если применимо)

Каждая запись содержит цветную полосу, обозначающую уровень серьезности:

УровеньЦветОписание
DEBUGСерыйОтладочные сообщения
INFOСинийОбычные запросы
WARNINGЯнтарныйНекритичные проблемы
ERRORКрасныйНеудачные запросы
CRITICALКрасныйКритические сбои

API принимает полный набор уровней серьезности журнала в виде фильтра со значениями, разделенными запятыми: DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT и EMERGENCY.

Интерфейс показывает 20 самых последних записей и скрывает пустые. По умолчанию API возвращает 50 записей за запрос (максимум 200) и возвращает nextPageToken для постраничной загрузки более ранних записей.

Процесс отладки

При расследовании ошибок: сначала нажми Errors, чтобы отфильтровать записи ERROR и WARNING, затем проверь временные метки и коды состояния HTTP. Скопируй логи в буфер обмена, чтобы поделиться ими с командой.

Примеры кода#

Каждая карточка развертывания содержит вкладку Code с готовым к использованию кодом API и заполненным URL конечной точки. Для владельцев рабочего пространства подставляется привязанный API-ключ развертывания, готовый для копирования и запуска. Владельцы, не являющиеся владельцами рабочего пространства, видят заполнитель YOUR_API_KEY:

import requests

# Deployment endpoint
url = "https://YOUR_DEPLOYMENT_URL.run.app/predict"

# Headers with your deployment API key
headers = {"Authorization": "Bearer YOUR_API_KEY"}

# Inference parameters
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}

# Send image for inference
with open("image.jpg", "rb") as f:
    response = requests.post(url, headers=headers, data=data, files={"file": f})

print(response.json())
Автоматически подставляемые учетные данные

При просмотре вкладки Code на платформе URL конечной точки и, для владельцев рабочего пространства, привязанный API-ключ развертывания заполняются автоматически. См. раздел API-ключи, чтобы создать ключ.

Predict для развёртывания#

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

Конечные точки API#

Каждое развертывание определяется владельцем и именем развертывания, а для каждого маршрута требуется API-ключ. Подробнее об аутентификации см. в справочнике API.

Метрики развертывания#

GET /api/deployments/{owner}/{deployment}/metrics?range=24h

Python SDK: client.deployments.metrics(owner, deployment, range="24h")

Возвращает полный набор метрик для развертывания: блок summary с общим числом запросов, количеством и долей ошибок, а также средней задержкой и задержкой P50, P95 и P99, плюс массивы timeSeries для запросов, ошибок, задержки P50 и P95, загрузки CPU и памяти и количества экземпляров.

ПараметрТипОписание
rangestringВременной диапазон: 1h, 6h, 24h, 7d или 30d (по умолчанию 24h)
sparklineboolВозвращать краткую сводку для дашборда вместо полного набора данных

С параметром sparkline=true ответ имеет краткую форму, используемую в карточках развертываний: 24 почасовых значения количества запросов, а также общее количество запросов, доля ошибок и средняя задержка. Именно этот вызов обновляется каждые 60 секунд.

Логи развертывания#

GET /api/deployments/{owner}/{deployment}/logs?limit=50&severity=ERROR,WARNING

Python SDK: client.deployments.logs(owner, deployment, limit=50, severity="ERROR,WARNING")

Возвращает последние записи логов с необязательной фильтрацией по уровню серьезности и пагинацией.

ПараметрТипОписание
limitintМаксимальное количество возвращаемых записей (по умолчанию: 50, максимум: 200)
severitystringФильтр по уровню серьезности через запятую
pageTokenstringТокен пагинации из предыдущего ответа

Состояние развертывания#

GET /api/deployments/{owner}/{deployment}/health

Python SDK: client.deployments.health(owner, deployment)

Проверяет доступность развертывания и возвращает его состояние с измеренной задержкой туда и обратно:

{
    "healthy": true,
    "status": 200,
    "latencyMs": 142
}

Ответ с состоянием «не работает» не содержит status, если конечная точка вообще недоступна, и добавляет сообщение error.

Обзор дашборда

Агрегированные значения на странице Deploy недоступны через единственную конечную точку REST. Воспроизведи их, вызвав маршрут метрик для каждого развертывания, возвращенного GET /api/deployments/{owner} (client.deployments.list(owner)).

Оптимизация производительности#

Используй данные мониторинга для оптимизации развертываний:

Если задержка слишком высокая:

  1. Убедись, что размер модели выбран правильно
  2. Рассмотри более близкий регион
  3. Проверь размер изображения, отправляемого с каждым запросом
Снижение задержки

Попробуй меньшее значение imgsz и сравни полученные задержку и точность для своей модели. Разверни модель в регионе, расположенном ближе к отправителям запросов, чтобы уменьшить сетевую задержку.

Часто задаваемые вопросы#

  • Статистика предсказаний и временные примеры существуют только в течение времени жизни обслуживающего экземпляра в пределах описанных выше лимитов интервалов и галереи. Остановка, перезапуск, повторное развертывание, изменение размера или замена модели могут очистить их. Только примеры, успешно сохраненные в датасет, сохраняются независимо от конечной точки.

    Операционные метрики и логи имеют отдельные окна истории. API метрик поддерживает выбираемые окна от 1 часа до 30 дней, дискретизируемые с меньшей частотой по мере роста окна — интервалы в 1 минуту за 1 час вплоть до интервалов в 4 часа за 30 дней. Карточка развертывания отображает 20 самых последних записей логов; API логов может возвращать до 200 записей за запрос и поддерживает пагинацию.

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

  • Да, на странице развертываний отображаются все конечные точки с агрегированными обзорными карточками. Используй табличный вид, чтобы сравнивать производительность развертываний.

  • Нет. Метрики и проверки состояния собираются только для развертываний в состоянии Ready. Остановленная конечная точка сохраняет свою карточку и исторический интервал, но не показывает актуальные значения, пока ты не запустишь ее снова.

Комментарии