/ Модель

Характеристики

Контекст
32 768 токенов
Параметры
7,1 млрд
Размер весов
17,1 ГБ
Лицензия
Apache 2.0
Архитектура
videollama2_qwen2 · dense
Библиотека
transformers
Опубликована
21 окт 2024

VideoLLaMA2.1-7B-AV

Генерация текстаТекст → текст3 профессии

Чат-модель для ответов на вопросы об аудиовизуальном содержимом видео.

2 238скачиваний за 30 дней16лайковвеса обновлены25 окт 2024

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

VideoLLaMA2.1-7B-AV — мультимодальная чат-модель команды DAMO-NLP-SG для вопросов о видео и звуке. Она сочетает аудиокодировщик BEATs_iter3+(AS2M)(cpt2) с языковым декодером VideoLLaMA2.1-7B-16F и предназначена для анализа аудиовизуального содержимого и ответов на вопросы по нему.

Модель содержит 7,1 млрд параметров, использует архитектуру VideoLLaMA2 Qwen2 и поддерживает контекст до 32 768 токенов. Карточка указывает английский язык; репозиторий содержит веса Safetensors и предназначен для Transformers. Модель выпущена под лицензией Apache-2.0.

Сценарии применения

  • ответы на вопросы о событиях в видео
  • ответы на вопросы о звуках и аудиосценах
  • совместный анализ звуковой дорожки и видеоряда
  • описание аудиовизуального содержимого роликов

Ограничения

Карточка не приводит подробных оценок качества или перечня ограничений; заявленный язык карточки — английский.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

📰 News

🌎 Model Zoo

Vision-Only Checkpoints

Model NameTypeVisual EncoderLanguage Decoder# Training Frames
VideoLLaMA2-7B-BaseBaseclip-vit-large-patch14-336Mistral-7B-Instruct-v0.28
VideoLLaMA2-7BChatclip-vit-large-patch14-336Mistral-7B-Instruct-v0.28
VideoLLaMA2-7B-16F-BaseBaseclip-vit-large-patch14-336Mistral-7B-Instruct-v0.216
VideoLLaMA2-7B-16FChatclip-vit-large-patch14-336Mistral-7B-Instruct-v0.216
VideoLLaMA2-8x7B-BaseBaseclip-vit-large-patch14-336Mixtral-8x7B-Instruct-v0.18
VideoLLaMA2-8x7BChatclip-vit-large-patch14-336Mixtral-8x7B-Instruct-v0.18
VideoLLaMA2-72B-BaseBaseclip-vit-large-patch14-336Qwen2-72B-Instruct8
VideoLLaMA2-72BChatclip-vit-large-patch14-336Qwen2-72B-Instruct8
VideoLLaMA2.1-7B-16F-BaseBasesiglip-so400m-patch14-384Qwen2-7B-Instruct16
VideoLLaMA2.1-7B-16FChatsiglip-so400m-patch14-384Qwen2-7B-Instruct16

Audio-Visual Checkpoints

Model NameTypeAudio EncoderLanguage Decoder
VideoLLaMA2.1-7B-AV (This Checkpoint)ChatFine-tuned BEATs_iter3+(AS2M)(cpt2)VideoLLaMA2.1-7B-16F

🚀 Main Results

Multi-Choice Video QA & Video Captioning

Open-Ended Video QA

Multi-Choice & Open-Ended Audio QA

Open-Ended Audio-Visual QA

🤖 Inference with VideoLLaMA2-AV

import sys
sys.path.append('./')
from videollama2 import model_init, mm_infer
from videollama2.utils import disable_torch_init
import argparse

def inference(args):

    model_path = args.model_path
    model, processor, tokenizer = model_init(model_path)

    if args.modal_type == "a":
        model.model.vision_tower = None
    elif args.modal_type == "v":
        model.model.audio_tower = None
    elif args.modal_type == "av":
        pass
    else:
        raise NotImplementedError
    # Audio-visual Inference
    audio_video_path = "assets/00003491.mp4"
    preprocess = processor['audio' if args.modal_type == "a" else "video"]
    if args.modal_type == "a":
        audio_video_tensor = preprocess(audio_video_path)
    else:
        audio_video_tensor = preprocess(audio_video_path, va=True if args.modal_type == "av" else False)
    question = f"Please describe the video with audio information."

    # Audio Inference
    audio_video_path = "assets/bird-twitter-car.wav"
    preprocess = processor['audio' if args.modal_type == "a" else "video"]
    if args.modal_type == "a":
        audio_video_tensor = preprocess(audio_video_path)
    else:
        audio_video_tensor = preprocess(audio_video_path, va=True if args.modal_type == "av" else False)
    question = f"Please describe the audio."

    # Video Inference
    audio_video_path = "assets/output_v_1jgsRbGzCls.mp4"
    preprocess = processor['audio' if args.modal_type == "a" else "video"]
    if args.modal_type == "a":
        audio_video_tensor = preprocess(audio_video_path)
    else:
        audio_video_tensor = preprocess(audio_video_path, va=True if args.modal_type == "av" else False)
    question = f"What activity are the people practicing in the video?"

    output = mm_infer(
        audio_video_tensor,
        question,
        model=model,
        tokenizer=tokenizer,
        modal='audio' if args.modal_type == "a" else "video",
        do_sample=False,
    )

    print(output)


if __name__ == "__main__":
    parser = argparse.ArgumentParser()

    parser.add_argument('--model-path', help='', , required=False, default='DAMO-NLP-SG/VideoLLaMA2.1-7B-AV')
    parser.add_argument('--modal-type', choices=["a", "v", "av"], help='', required=True)
    args = parser.parse_args()

    inference(args)

Citation

If you find VideoLLaMA useful for your research and applications, please cite using this BibTeX:

@article{damonlpsg2024videollama2,
  title={VideoLLaMA 2: Advancing Spatial-Temporal Modeling and Audio Understanding in Video-LLMs},
  author={Cheng, Zesen and Leng, Sicong and Zhang, Hang and Xin, Yifei and Li, Xin and Chen, Guanzheng and Zhu, Yongxin and Zhang, Wenqi and Luo, Ziyang and Zhao, Deli and Bing, Lidong},
  journal={arXiv preprint arXiv:2406.07476},
  year={2024},
  url = {https://arxiv.org/abs/2406.07476}
}

@article{damonlpsg2023videollama,
  title = {Video-LLaMA: An Instruction-tuned Audio-Visual Language Model for Video Understanding},
  author = {Zhang, Hang and Li, Xin and Bing, Lidong},
  journal = {arXiv preprint arXiv:2306.02858},
  year = {2023},
  url = {https://arxiv.org/abs/2306.02858}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Нельзя запустить

Архитектура videollama2_qwen2 неизвестна transformers в образе рантайма.

Класс архитектуры
Videollama2Qwen2ForCausalLM
Ревизия весов
d944d42

0 моделей