Ultralytics YOLO27: Запишись в список ожидания.
Get Started

Агенты#

Agents связывает изображения, модели, условия и действия в визуальном рабочем процессе. Используй YOLO, чтобы определять, какие изображения нужно рассмотреть внимательнее, попроси модель «зрение — язык» описать их или собери выбранные изображения в набор данных для проверки.

Открой Agents на боковой панели или перейди на platform.ultralytics.com/agents. Раздел Agents отображается на боковой панели у всех вошедших пользователей в личных и командных рабочих пространствах; включать настройку раннего доступа не нужно.

Холст Agents в Ultralytics Platform: изображение связано с YOLO, условием, моделью «зрение — язык» и блоком вывода

Запусти свой первый рабочий процесс#

  1. Открой Agents, нажми Добавить блок > Шаблоны и выбери YOLO → Мониторинг с VLM.
  2. Выбери блок Входное изображение, укажи загруженный набор данных и выбери изображение с человеком. Для общей пробной среды используй изображение размером не более 4 мегапикселей.
  3. Оставь выбранной модель YOLO26 nano по умолчанию. Условие выполняется, если YOLO обнаруживает хотя бы одного человека.
  4. Выбери Описать сцену, укажи модель «зрение — язык» и введи запрос. Если ещё не сделал этого, добавь ключ соответствующего провайдера в разделе Настройки > Ключи API. В командном рабочем пространстве попроси владельца рабочего пространства добавить или заменить ключ провайдера.
  5. Для небольшого запуска оставь выбранным вариант Общая пробная среда · 60 секунд, затем нажми Запустить.
  6. Следи за обновлением блоков и проверь Вывод. Если человек не обнаружен, условие завершится без запуска ветки описания.

Черновик можно запустить до сохранения. Нажми Сохранить рабочий процесс, чтобы задать ему имя и сохранить для дальнейшего использования; после изменений сохрани его ещё раз. Кнопка Python показывает сгенерированный код рабочего процесса.

Начни с шаблона#

ШаблонРабочий процессДля чего подходит
YOLO → Мониторинг с VLMИзображение → YOLO → условие → модель «зрение — язык» → ВыводОписание сцены только при обнаружении человека
Сбор сомнительных детекцийНабор данных → развёртывание → условие по уверенности → набор данныхСоздание набора для проверки из изображений с сомнительными детекциями
Захват и оповещениеИзображение → YOLO → условие → набор данных и SlackСохранение изображения и отправка уведомления в канал при выполнении одного условия

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

Окно выбора шаблона Agents в Ultralytics Platform с вариантами «YOLO → Мониторинг с VLM», «Сбор сомнительных детекций» и «Захват и оповещение»

Выбери среду выполнения#

Селектор среды выполнения рядом с кнопкой Запустить задаёт оборудование для рабочего процесса.

ВариантКогда использоватьОграничения и цены
Общая пробная среда · 60 секундПробный запуск небольшого рабочего процессаДо 60 секунд, не более 20 входных изображений размером до 4 мегапикселей каждое и 20 вызовов моделей/провайдеров; одна локальная модель YOLO с использованием официальной модели YOLO26 nano
Существующее выделенное развёртываниеБольшие наборы данных, длительные запуски или другие локальные моделиИспользуется оборудование и тариф существующего развёртывания, в том числе подходящее бесплатное выделенное развёртывание; общего ограничения на длительность рабочего процесса или количество изображений нет.
Новое развёртывание…Создание выделенного оборудования в конструктореОткрывает существующее диалоговое окно создания развёртывания и выбора тарифа; выбери ресурсы и дождись готовности развёртывания.

В общей пробной среде можно запускать рабочие процессы три раза в минуту; для запусков на выделенном развёртывании ограничений по частоте нет. В Platform поддерживаются рабочие процессы размером до 20 блоков. К вызовам моделей и провайдеров относятся YOLO, модели «зрение — язык», предсказания развёртываний, а также действия Slack и Webhook; ветвление может увеличить число вызовов для каждого входного изображения.

Выделенные запуски выполняются серией запросов с контрольными точками на выбранном развёртывании. Закрытие или перезагрузка браузера не останавливает запуск. Продолжают действовать ограничения существующего развёртывания и провайдера, а использование языковой модели оплачивается провайдеру, связанному с твоим ключом. Варианты оборудования смотри в разделе Цены на развёртывание.

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

Селектор среды выполнения Agents в Ultralytics Platform с общей 60-секундной пробной средой, существующими выделенными развёртываниями и вариантом «Новое развёртывание»

Настройка блоков#

БлокНазначение
ИзображениеЗагрузи изображение или видео, из которого по умолчанию будет извлечено до 10 кадров, либо выбери одно изображение из загруженного набора данных.
Набор данных без входящего соединенияЧитает изображения из выбранного набора данных и его разбиения с настраиваемым ограничением на количество входных данных.
YOLOЗапусти официальную модель или обученную модель из рабочего пространства.
РазвёртываниеВыполняет предсказание с помощью существующего готового развёртывания Platform.
LLMОтправляет изображение и контекст из предыдущих блоков выбранной языковой модели или модели «зрение — язык».
GateУправляет выполнением последующих блоков с помощью условия или периодичности.
Набор данных с входящим соединениемДобавляет входящее изображение в целевой набор данных.
SlackОтправляет сообщение в подключённый канал Slack рабочего пространства.
WebhookPOST тело JSON на конечную точку HTTPS
ЭкспортЭкспортирует модель с помощью существующего процесса экспорта Platform.
ВыводОтображает результат предыдущего блока.

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

Фильтрация детекций с помощью условия#

Для подсчёта детекций и фильтрации по уверенности используй один и тот же блок Gate. Выбери результат предыдущего блока, любой класс или конкретный класс и условие сравнения. Например:

  • Количество людей ≥ 1: продолжить, если обнаружен хотя бы один человек.
  • Уверенность от 0,25 до 0,5: продолжить, если хотя бы одна подходящая детекция попадает в этот диапазон, включая его границы.
  • Конкретный класс в диапазоне уверенности: собирать сомнительные детекции только этого класса.

Фильтры по уверенности проверяют каждую детекцию отдельно. Изображение с оценками 0.3 и 0.9 проходит диапазон 0.25–0.5, поскольку ему соответствует одна детекция. Изображения без детекций не проходят условие по уверенности. Установи для модели предсказания достаточно низкий порог уверенности, чтобы сохранить детекции, которые нужно оценить.

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

Настройки условия Agents в Ultralytics Platform: выбран любой класс и включённый в границы диапазон уверенности детекций от 0,25 до 0,5

Собирайте изображения для проверки#

Открой Collect Uncertain Detections, выбери исходный датасет и его сплит, укажи деплоймент для предсказаний и настрой диапазон уверенности. В блоке Dataset в конце выбери существующий датасет назначения. Если нужно, сначала создай датасет на странице Datasets.

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

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

Отправляй условные оповещения в Slack#

Подключи Slack в разделе Settings > Integrations, а затем свяжи условие с блоком Slack. Введи сообщение и используй {output}, чтобы включить в него результат предыдущего блока. Блок Capture and Alert также связывает это же условие с датасетом: подходящее изображение собирается, а сообщение отправляется в подключённый канал.

Сообщения Slack для рабочих процессов настраиваются в блоке. Они не связаны с настройками уведомлений о тренировке, экспорте и деплойменте в разделе Settings.

Отправляй вебхуки#

Блок Webhook отправляет один POST для каждого результата вместе с Content-Type: application/json на общедоступный HTTPS URL, поэтому результат выполнения условия может получить любой сервис, принимающий JSON-запросы. Укажи URL назначения и тело запроса в формате JSON длиной не более 10 000 символов. Включи {output} в строку: оно будет заменено результатом предыдущего блока. Блок завершающий и не поддерживает исходящие соединения. Перенаправления не обрабатываются, время ожидания соединения истекает через 5 секунд, а ответ с кодом, отличным от 2xx, приводит к сбою блока.

Следи за ходом выполнения и останавливай запуск#

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

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

Завершённый рабочий процесс Ultralytics Platform Agents: изображение → YOLO → Output; зелёные галочки, количество обработанных изображений и результаты обнаружения

Управляй агентами с помощью API#

Agents API позволяет программно перечислять, сохранять и удалять агентов, а Python SDK предоставляет к нему доступ через client.agents в ultralytics-platform>=0.1.74. При сохранении возвращаются те же ошибки блоков, что отображаются на холсте. Запуски по-прежнему нужно начинать с холста: открой сохранённого агента по адресу https://platform.ultralytics.com/agents?workflow={id} и нажми Run.

Устранение неполадок#

  • Запуск превышает общие ограничения пробного периода: выбери выделенный деплоймент, в том числе доступный бесплатный деплоймент, или уменьши разрешение изображений, количество входных данных и число вызовов модели или провайдера.
  • Деплоймент подготавливается или остановлен: дождись, пока он будет готов, или запусти его в разделе Deployments.
  • Не указан ключ провайдера: подключи выбранного провайдера в разделе Settings > API Keys. В командном рабочем пространстве попроси его владельца добавить или заменить ключ.
  • До места назначения не доходят изображения: проверь условие и порог уверенности предсказаний. Результаты обнаружения без объектов никогда не соответствуют диапазону уверенности.
  • У собранных изображений нет меток: при сборе добавляются исходные изображения для проверки. Используй существующие инструменты аннотации, чтобы разметить их.

Комментарии