v.5.95.0#
Изменения LP
-
Сервис Remote SDK теперь относится к необязательным и регулируется в группе параметров "ADDITIONAL_SERVICE_USAGE".
При отключении сервиса Remote SDK:
- будет недоступен весь функционал, связанный с нейронными сетями, а именно: обнаружение лиц и тел на изображениях, оценка параметров изображений, а также извлечение базовых атрибутов и биометрического шаблона;
- будет отсутствовать возможность работы с задачей Additional extraction, а задача Estimator будет работать только в том случае, если обработчик, который используется этой задачей, не требует сервиса Remote SDK.
Также в запрос "get platform features" добавлен новый компонент "remote_sdk", позволяющий отслеживать состояние сервиса Remote SDK (включен/выключен).
-
Добавлен новый ресурс
/groups/{group_id}/streams, позволяющий управлять потоками, которые принадлежат определенной группе.Добавлен запрос
patch streams in group, который приводит все потоки группы в желаемое состояние (запуск/остановка). Изменения применяются только к тем потокам, которые находятся в отличном от целевого состоянии. Например, если необходимо запустить все потоки в группе, но некоторые из них уже запущены, то операция будет применена только к тем потокам, которые находятся в состоянииstop. Потоки, которые уже находятся в целевом состоянии (например, уже запущеныpending), не будут изменены.
Если в группе есть хотя бы один поток, который можно перевести в новое состояние (например, изstopвpending), запрос будет выполнен. Однако, если ни один поток нельзя изменить (например, все стримы уже находятся в целевом состоянии или их состояние нельзя изменить по другим причинам), будет возвращена ошибка с кодом 44015 и описаниемUnable to patch streams. No streams suitable for patching.Добавлен новый запрос
remove all streams in the group, позволяющий удалить все потоки из группы, без удаления самой группы.В запрос
remove groupдобавлен параметрwith_streams, позволяющий гибко управлять удалением: - при значении 0 (по умолчанию) удаляется только группа, а потоки остаются без изменений; - при значении 1 удаляются как группа, так и все связанные с ней потоки.Также представлена возможность использования
group_idв качестве фильтра для запросаget streamsдля получения всех потоков, принадлежащих указанной группе. -
Добавлен функционал сравнения по обобщенным событиям, который реализуется через новый запрос
general events matching.Этот функционал позволяет сравнивать заданные эталоны — обобщенные события или дескрипторы в двоичном формате — с кандидатами, представленными в виде обобщенных событий.
Результаты сравнения возвращаются в виде списка совпадений для кандидатов в соответствии с указанными фильтрами или пустого списка, если совпадений не найдено.
-
Теперь можно запускать обработку видео как фоновую задачу, используя новый параметр
deferred_taskв запросе к ресурсу/videosdk.При выполнении запроса на обработку видео с включенным параметром
deferred_taskзадача будет выполняться в фоновом режиме, при этом будет выданtask_idдля отслеживания её статуса.Отследить статус задачи и получить URL-адрес результата (в случае успешного завершения) по
task_idможно с помощью нового запросаget task.Теперь сервис Video Agent использует БД Redis для хранения задач фоновой обработки видео. В связи с этим введена новая группа настроек
LUNA_VIDEO_AGENT_REDIS_DB_ADDRESS, которая включает следующие параметры: - "user" и "password" — параметры авторизации в Redis; - "host" — IP-адрес Redis; - "port" — порт, на котором работает Redis; - "number" — номер базы данных Redis (от 0 до 15).Также добавлен новый параметр
max_active_tasksв настройкеLUNA_VIDEO_AGENT_SETTINGS, позволяющий регулировать максимальное количество одновременно выполняемых задач в фоновом режиме одним агентом. По умолчанию установлено значение 2. Созданные задачи будут выполняться в порядке очереди, если количество активных задач достигнет указанного лимита. -
Теперь в настройках создания потока доступен новый параметр
notification_policy, позволяющий отправлять уведомления об изменениях статуса обработки потока с помощью механизма Callback'ов.Например, когда поток взят в работу его статус принимает значение "pending", в процессе обработки агентом меняет статус на "in_progress", при успешной обработке становится "done" и др.
Для отправки уведомлений доступны два типа callback'ов: - http — уведомления отправляются на указанный URL-адрес; - telegram — уведомления отправляются в Telegram-чат. Для этого требуется указать идентификатор чата
chat_id, и токен авторизацииtokenдля Telegram.См. запрос
create stream. -
В сервис Lambda добавлена возможность использования Poetry в качестве установки зависимостей.
Использование Poetry улучшает процесс управления зависимостями, позволяя точно контролировать, какие версии пакетов будут установлены (благодаря
poetry.lock), а также делает обновление зависимостей более предсказуемым и управляемым.Классический способ установки зависимостей через
pip installи файлrequirements.txtостается доступным, однако если в архиве с Lambda будут и файлrequirements.txt, и файлы Poetry (например,pyproject.tomlиpoetry.lock), то приоритет будет отдан Poetry.См. подробную информацию в разделе "Lambda requirements" в руководстве разработчика сервиса Lambda.
Исправленные ошибки LP
-
В разрешении токена
resourcesна использование одного или нескольких ресурсов теперь доступен выбор ресурса/videosdk. См. запросcreate token. -
Исправлена проблема некорректной работы параметра аналитики
rateпри использовании серверного времени в качестве источника временных меток для обработки потоков.Параметр
rate, отвечающий за частоту обработки кадров, теперь корректно работает даже при использовании серверного времени в качестве источника временных меток.Ранее, если данные поступали с задержкой, но временные метки были привязаны к серверу, это могло приводить к пропуску кадров или неправильной обработке.