Перейти к содержанию

LUNA PLATFORM 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, отвечающий за частоту обработки кадров, теперь корректно работает даже при использовании серверного времени в качестве источника временных меток.

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