Вы устали платить за API, чтобы найти в своем видео собаку, бегущую по полю? Или боитесь загружать приватные записи встреч в чужое облако? Пора сделать семантический поиск по видео локальным, приватным и бесплатным. С SentrySearch это перестало быть фантастикой.
Что такое SentrySearch и зачем он взломал мой геймпад
SentrySearch - это CLI-инструмент на Python, который превращает вашу коллекцию видео в персональную поисковую систему. Он не отправляет ни байта в интернет. Все вычисления проходят на вашем железе: извлечение кадров, транскрипция аудио, генерация эмбеддингов и поиск.
Зачем это нужно? Представьте: у вас 500 часов записей лекций, интервью или security-камер. Найти конкретный момент по смыслу ("когда эксперт говорил про уязвимость в Kubernetes") обычным перемотом - это ад. SentrySearch режет этот гордиев узел одним скриптом.
На 30 марта 2026 года SentrySearch использует последнюю стабильную версию модели Qwen3-VL-Embedding-V2, которая поддерживает семантическое понимание видео через объединенные эмбеддинги для изображений и текста.
Как это работает (спойлер: не магией, а кадрами)
Секрет в трехступенчатой обработке. Откройте терминал и забудьте про красивые интерфейсы - здесь все по-хардкорному.
- Декомпозиция видео: FFmpeg режет видео на ключевые кадры (по умолчанию 1 кадр в секунду). Одновременно Whisper или его локальный аналог из статьи про автоматические субтитры транскрибирует аудио.
- Векторизация: Qwen3-VL-Embedding-V2 превращает каждый кадр и соответствующий отрезок текста в числовой вектор (эмбеддинг). Модель понимает контекст: "человек в красной куртке" и "красный объект движется" будут близки в векторном пространстве.
- Индексация и поиск: ChromaDB сохраняет все векторы. Когда вы ищете "кошка спрыгивает со стола", система сравнивает эмбеддинг запроса с базой и возвращает временные метки.
Установка: четыре команды и готово (если повезет с зависимостями)
Не пытайтесь установить SentrySearch через pip - его там нет. Это raw-скрипт из GitHub. Клонируем репозиторий и пробираемся через джунгли зависимостей.
git clone https://github.com/sentry-search/sentry-search.git
cd sentry-search
pip install -r requirements.txt
Требования к железу на март 2026:
| Компонент | Минимум | Рекомендуется |
|---|---|---|
| ОЗУ | 16 ГБ | 32 ГБ+ |
| VRAM (для CUDA/MPS) | 8 ГБ | 16 ГБ |
| Диск | 10 ГБ свободно | NVMe SSD |
Самая частая ошибка - попытка запустить на слабой видеокарте. Qwen3-VL-Embedding-V2 в полной версии "весит" 7.5 миллиардов параметров. Если у вас 6 ГБ VRAM, используйте флаг --precision fp16 или квантизированную версию qwen3-vl-embedding-v2-int4.
Сравнение с альтернативами: зачем городить огород?
Почему не использовать готовые облачные сервисы вроде Amazon Bedrock с мультимодальным RAG или Google Vertex AI? Причин три, и все банальные:
- Цена: Индексация 100 часов видео через Bedrock в марте 2026 года обойдется в $200-300. SentrySearch - ноль.
- Приватность: Конфиденциальные видео остаются на вашем диске. Никаких соглашений о передаче данных третьим сторонам.
- Офлайн-работа: Индексируйте видео в самолете, на даче без интернета, в secure-зоне предприятия.
Среди локальных альтернатив SentrySearch выделяется поддержкой именно видео. Многие RAG-решения, как в статье про архитектуру локального RAG-пайплайна, работают только с текстом. Другие инструменты, например, упомянутый в локальном RAG для видео за 15 минут, используют устаревшие модели CLIP, которые плохо понимают контекстные запросы.
Не путайте SentrySearch с инструментами типа Recall от Microsoft. Тот индексирует экран компьютера, а SentrySearch - произвольные видеофайлы. Это разные задачи, хотя и похожие технически.
Примеры использования: от поиска котиков до анализа инцидентов
Предположим, у вас есть папка /home/videos/security с записями камер наблюдения. Запускаем индексацию:
python sentry.py index --path /home/videos/security --model qwen3-vl-embedding-v2 --device mps --chunk-size 10
Флаг --device mps задействует Apple Silicon. Для NVIDIA используйте --device cuda:0. Индексация 1 часа видео займет примерно 15-20 минут на M3 Max.
Теперь ищем:
python sentry.py search \
--query "человек в синей куртке приближается к входной двери" \
--top-k 5 \
--threshold 0.75
Система вернет 5 наиболее релевантных фрагментов с временными метками, скриншотами и уверенностью (cosine similarity). Порог 0.75 отсечет слабые совпадения.
Кому подойдет SentrySearch (а кому нет)
Идеальная аудитория:
- Исследователи, анализирующие видеоархивы (социологи, антропологи).
- Специалисты по кибербезопасности для расследования инцидентов.
- Видеоблогеры с гигантскими медиатеками.
- Юристы, работающие с видеодоказательствами.
- Любой параноик, не доверяющий облакам.
Не стоит даже пробовать:
- Владельцам слабых ноутбуков без дискретной графики.
- Тем, кому нужен поиск в реальном времени (здесь задержка 2-3 секунды).
- Людям, которые боятся командной строки как огня.
Главный урок 2026 года: локальные мультимодальные модели перестали быть игрушкой для энтузиастов. Они работают на потребительском железе и решают реальные задачи. SentrySearch - не единственный инструмент в этом пространстве, но один из немногих, который не пытается быть всем для всех, а фокусируется на видео.
Что дальше? Разработчики обещают в конце 2026 года добавить семантический поиск по действиям в видео ("найти все моменты, где человек пожимает руку"). Для этого понадобится модель, понимающая temporal relationships. Но это уже другая история и другие требования к видеокарте.