LLaVA-OV-2: видео через кодек - обзор мультимодальной модели | AiManual
AiManual Logo Ai / Manual.
28 Май 2026 Инструмент

LLaVA-OV-2: мультимодальная модель, которая смотрит видео через кодек вместо кадров — открытая реализация и датасеты

Разбираем LLaVA-OV-2 - модель, анализирующую видео через H.264 вместо кадров. Открытые веса, датасеты, код. Сравнение с NVILA, Video-LLaVA. Кому подойдет и как

Кадры убивают контекст. А мы просто перестанем их вырезать

Стандартный подход к анализу видео выглядит как операция с пересадкой органов: из потока вырезают отдельные кадры, склеивают их в последовательность и пихают в трансформер, надеясь, что он восстановит утраченную динамику. Результат? Модели видят не сцену, а фотоколлаж. Они путаются в движениях, не замечают мимических переходов и — если верить недавнему бенчмарку SPLICE — проваливают элементарные причинно-следственные задачи.

Команда LLaVA решила: хватит выкидывать информацию. Если видео хранится сжатым — пусть модель учится читать его в родном формате. Так родилась LLaVA-OV-2 — первая открытая мультимодальная модель, которая анализирует видео не через кадры, а через битовый поток кодека H.264. И это не просто Proof of Concept. Доступны веса, код и датасеты.

LLaVA-OV-2 (OneVision v2) — прямой наследник LLaVA-OneVision. Вместо извлечения ключевых кадров модель принимает на вход закодированный видеопоток и декодирует его внутри нейросети. Подход называется Video Encoding as Neural Latent (VENL).

Как модель научилась читать H.264

Суть гениальна в своей простоте. Видеокодек H.264 — это не просто последовательность изображений. Он хранит движение: векторы смещения макроблоков, разницу между ключевыми и промежуточными кадрами (P/B-frames). Эту структуру модель использует как готовый энкодер движения (motion prior).

LLaVA-OV-2 содержит легковесный декодер H.264, который извлекает из сжатого потока три компонента:

  • I-кадры (ключевые) — статическая основа сцены.
  • Векторы движения (MV) — смещения макроблоков между кадрами.
  • Остаточные ошибки (residuals) — детали, не описанные движением.

Эти данные отправляются не в трансформер напрямую, а в специальный проекционный слой — Codec Adapter. Он сжимает информацию в эмбеддинги фиксированной длины, которые затем подаются в LLM. Получается, модель видит не 32 картинки, а компактное представление движения + текстуры. Размер входного окна сокращается в 10-15 раз по сравнению с покадровым подходом.

Для обучения собрали датасет из 2 млн видео с разметкой временных интервалов, действий и отношений. Часть данных взята из VBVR, но адаптирована под формат кодек-эмбеддингов. Открытые синтетические датасеты — отдельная гордость: на Hugging Face лежат готовые сценарии для генерации собственных тренировочных пар.

Что умеет LLaVA-OV-2 (и чем это лучше покадровых моделей)

1 Temporal grounding — находит момент по тексту

Модель может ответить на вопрос вроде «Когда в этом ролике персонаж надевает очки?» и вернуть временной интервал. Точность на датасете YouCook2 — 67.3% по мануальному Recall@1. Для сравнения, LLaVA-OneVision (версия с кадрами) — 58.1%. Причина: модель видит векторы движения, а не только статику. Переход «без очков -> с очками» — это резкое изменение MV-поля, которое кодек фиксирует с точностью до субкадра.

2 Понимание длительных действий — до 10 минут

Потому что входной поток сжат, модель может захватить до 120 секунд видео при разрешении 480p за 8K токенов. Покадровые конкуренты (вроде NVILA-8B-HD) справляются с 30-60 секундами. Это принципиально для сюжетного понимания: LLaVA-OV-2 способна пересказать ролик целиком без потери начала.

3 Анализ взаимодействий и физики

Векторы движения не врут. Если мяч летит в стену, MV покажут ускорение и направление. Модель может отличить реальное падение стакана от подкрученного монтажа. В задачах физического рассуждения (например, «Какой объект столкнется с другим через 5 секунд?») LLaVA-OV-2 показывает +12% точности против InternVL2. Это делает её интересной для робототехнических VLA-агентов, где цена ошибки высока.

Сравнение с альтернативами

МодельПодходМакс. длина видеоTemporal grounding (Recall@1)Открытая
LLaVA-OV-2Сжатый поток H.26410 мин67.3%да
LLaVA-OneVision (старая)Кадры (16-32 fps)2 мин58.1%да
NVILA-8B-HDКадры + AutoGaze1 мин62.5%да
Video-LLaVAКадры (8)30 сек52%да
Gemini 1.5 ProКадры + аудио1 час70%*нет

* данные Gemini — по бенчмарку ActivityNet, непубличная модель.

Цифры не врут: LLaVA-OV-2 бьет открытые аналоги по тайм-локализации, уступая только закрытым гигантам. Но главное — она единственная, кто вообще использует сжатый поток. Это открывает дорогу к обработке длинных роликов на обычных GPU.

💡
Побочный эффект: модель не зависит от частоты кадров. 24 FPS, 60 FPS — для неё единый поток. Это даёт стабильность при работе с видео разного происхождения.

Как это запустить (и не обжечься)

Авторы выложили LLaVA-OV-2-CodecAdapter с 7B и 13B параметрами. Младшая версия работает на RTX 3090 с 12 ГБ памяти (применяя 4-битную квантизацию). Старшая требует уже 32 ГБ.

Установка — стандартная через Hugging Face:

pip install transformers torch torchvision av  # av для работы с H.264

Дальше — загружаем модель и конвертируем видео в её представление:

from transformers import LlavaOneVisionTokenizer, LlavaForConditionalGeneration
import av
import torch

# Загружаем модель и кодек-адаптер
model = LlavaForConditionalGeneration.from_pretrained(
    "llava-hf/LLaVA-OV-2-7B",
    torch_dtype=torch.float16,
    device_map="auto"
)
tokenizer = LlavaOneVisionTokenizer.from_pretrained("llava-hf/LLaVA-OV-2-7B")

# Читаем видео как поток H.264 (минуя кадры!)
container = av.open("video.mp4")
stream = container.streams.video[0]

# Извлекаем закодированный пакет (первые 100 frames)
encoded_frames = []
for packet in container.demux(stream):
    if packet.is_keyframe:
        encoded_frames.append(packet.to_bytes())

# Подаём на вход модели
inputs = tokenizer(
    encoded_frames,
    return_tensors="pt",
    truncation=True,
    max_length=8000
).to(model.device)

output = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(output[0]))

Важный нюанс: модель ожидает на вход именно H.264 в контейнере MP4 или MKV. Если видео в другом кодировщике — потребуется переупаковка. Советую использовать ffmpeg: ffmpeg -i input.webm -c:v libx264 -crf 18 output.mp4.

Кому эта штука действительно нужна

  • Разработчики видеомодерации — если нужно быстро находить в потоке опасные сцены (насилие, контент 18+), LLaVA-OV-2 обрабатывает длинные записи без потери контекста.
  • Исследователи робототехникиPEVA учится через движения тела, LLaVA-OV-2 через векторы H.264 — симбиоз подходов даёт роботам понимание динамики сцены.
  • Специалисты по анализу видео с камер наблюдения — модель работает с любым потоком, сжатым в H.264 (а это 99% камер). Не нужно выгружать кадры, достаточно передать сам битстрим.
  • Те, кто устал ждать — инференс в 3-5 раз быстрее, чем у покадровых аналогов, при сопоставимом качестве.

И да, вес модели 7B легко помещается на одну видеокарту последних поколений. Это вам не MOVA, которая требует датацентр. LLaVA-OV-2 — рабочая лошадка, а не парадный монстр.

Но есть подводный камень

Кодек H.264 проприетарный по патентам. Хотя авторы использовали opensource-библиотеку av (ffmpeg), в коммерческом продукте могут возникнуть юридические вопросы. Альтернатива — AV1 (libaom), но команда LLaVA пока не адаптировала под него проектор. Второй минус: модель не обрабатывает аудио. Если нужно синхронизировать речь и движение, придется дообучать отдельный аудиотокен. Возможно, в следующей версии это исправят — слухи о LLaVA-OV-3 уже ходят.

Звучит логично, но на практике большинство приложений используют только видео. А если нужен звук — можно прикрутить внешний ASR, как в гибридных пайплайнах.

Пожалуй, самое раздражающее — отсутствие готового Docker-образа. Приходится собирать окружение руками. Ребята с LTX-2 в этом плане молодцы: скачал контейнер — и работай. LLaVA-OV-2 пока сыровата по UX. Но если ты привык к консоли — не проблема.

Прогноз: через год все будут читать видео как код

Подход с анализом сжатого потока — это не фишка, а неизбежность. Пока кадровые модели упираются в окно контекста трансформеров, VENL-метод (как в LLaVA-OV-2) масштабируется на часы видео без взрывного роста токенов. В 2026 году уже вышли несколько работ по AV1-кодекам и даже понейронным кодекам (нейроморфные сжатия). Думаю, к концу года открытые модели, работающие через кодек, станут стандартом де-факто. LLaVA-OV-2 — первый ласточка, которая доказала: работать с битовым потоком не сложно, а эффективно. Берите датасеты, ставьте эксперименты — и через полгода ваш VLM будет смотреть видео без глупой выборки кадров.

Подписаться на канал