Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Демонстрация: Камера-мониторинг с использованием ИИ (Vision LLMs), обеспечивающий невероятно гибкие правила., UniFi Protect
 
Я написал классную маленькую утилиту на Python, которая отслеживает камеры безопасности UniFi Protect и использует OpenAI's GPT-4o Vision LLM для обнаружения определенных событий. Благодаря LLM правила событий могут быть очень сложными, например, можно отслеживать парковочные места, искать енотов или проверять погоду. Если GPT-4o понимает, то, должно сработать. Система анализирует видеопотоки камер в реальном времени и может отправлять уведомления с изображениями через Pushover при обнаружении событий. Написана на Python, работает на хосте или в Docker-контейнере, является open source (Apache 2.0) и относительно недорогой в эксплуатации (для меня около ~$0.25/день). Пример вывода на изображении выше. Исходный код на GitHub здесь: https://github.com/appenz/camera-app/ Изначально я разработал её, чтобы обнаруживать енотов, пытающихся поймать рыбу в нашем пруду. Оповещения Unifi не могут отличить енота от опоссума и кошки, поэтому нам нужно было больше. Если вы хотите запустить локальную модель вместо использования OpenAI, это должно быть легко изменить. Буду рад получить обратную связь и комментарии.
 
Для справки, создание тикетов в GitHub (или даже pull request) было бы просто замечательно. В этот раз я добавил их сам. Как получить API-ключи, постоянно меняется (и для OpenAI зависит от корпоративного использования или нет), так что я воздержусь от этого. А по поводу ошибки: что было в логе ошибок? Пожалуйста, выложи. Вообще, 429 – это ошибка превышения лимита запросов. Не уверен, что могу что-то с этим сделать.
 
Привет @appenz, это реально круто, и я сейчас пытаюсь запустить. У меня возникло несколько проблем, и у меня есть предложения по твоему readme.

Предложение по readme: добавь инструкции по использованию файла .env при запуске приложения, добавляя "--env-file .env". Пример: uv run --env-file .env src/main.py --notify

Думаю, многим было бы полезно добавить инструкции по получению API-ключа из Openai, а также из Pushover. Для Openai: должны ли они использовать сервисный ключ или ключ пользователя?

Проблемы: первые несколько событий, которые были сгенерированы, вернули ошибку 429. Я не уверен, от UCKG2 это или от другого API. Я думаю, более подробное логирование помогло бы в отладке подобных проблем.

Серьезно, спасибо за проделанную работу, не могу дождаться, когда увижу это в действии.
 
Круто!
Страницы: 1
Читают тему (гостей: 1)