/ Модель

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

Контекст
32 768 токенов
Параметры
71,5 млрд
Размер весов
146 ГБ
Лицензия
Apache 2.0
Архитектура
llava · dense
Библиотека
transformers
Опубликована
6 сен 2024

llava-onevision-qwen2-72b-ov-chat

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

Мультимодальная чат-модель на базе Qwen2 для диалога по тексту, изображениям и видео.

66скачиваний за 30 дней9лайковвеса обновлены9 окт 2024

Бенчмарки

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

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

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

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

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

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

LLaVA-OneVision Qwen2 72B OV Chat — разработанная LMMS-Lab мультимодальная чат-модель на архитектуре SO400M + Qwen2 с 71,5 млрд параметров. Она создана для диалога по тексту, изображениям, нескольким изображениям и видео; модель прошла три раунда итеративного DPO-обучения на человеческих предпочтениях, чтобы улучшить ответы в чате и сохранить следование инструкциям.

Модель подходит для вопросов о содержимом изображений и видео, диалогового анализа визуальных материалов и ответов на текстовые запросы. Она поддерживает английский и китайский языки, использует контекст до 32 768 токенов и распространяется в формате safetensors. Лицензия — Apache-2.0.

В README результаты бенчмарков обозначены как ещё не опубликованные. Для запуска модели такого размера нужны значительные вычислительные ресурсы; точные требования к инференсу в карточке не приведены.

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

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

Ограничения

Результаты бенчмарков на момент подготовки карточки ещё не опубликованы. Модель содержит 71,5 млрд параметров, поэтому её запуск требует значительных вычислительных ресурсов.

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

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

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

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

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

Открыть на Hugging Face

LLaVA-OneVision

banner

Play with the model on the LLaVA OneVision Chat.

Table of Contents

  1. Model Summary
  2. Use
  3. Limitations
  4. Training
  5. License
  6. Citation

Model Summary

llava-onevision-72b-ov-chat is our latest model specifically designed for chat scenarios. It is built upon llava-onevision-72b-ov and has undergone iterative DPO training with human preference, making it well-suited for chat applications.

Research by Tianyi Xiong indicates that our iterative DPO training method enhances the model's chat capabilities while preserving its instruction-following abilities.

For further details, please refer to our upcoming blog or paper.

Benchmark Performance

To be released

Use

Intended use

The model was trained on LLaVA-OneVision Dataset and have the ability to interact with images, multi-image and videos.

Feel free to share your generations in the Community tab!

Generation

# pip install git+https://github.com/LLaVA-VL/LLaVA-NeXT.git
from llava.model.builder import load_pretrained_model
from llava.mm_utils import get_model_name_from_path, process_images, tokenizer_image_token
from llava.constants import IMAGE_TOKEN_INDEX, DEFAULT_IMAGE_TOKEN, DEFAULT_IM_START_TOKEN, DEFAULT_IM_END_TOKEN, IGNORE_INDEX
from llava.conversation import conv_templates, SeparatorStyle

from PIL import Image
import requests
import copy
import torch

import sys
import warnings

warnings.filterwarnings("ignore")
pretrained = "lmms-lab/llava-onevision-qwen2-0.5b-si"
model_name = "llava_qwen"
device = "cuda"
device_map = "auto"
tokenizer, model, image_processor, max_length = load_pretrained_model(pretrained, None, model_name, device_map=device_map)  # Add any other thing you want to pass in llava_model_args

model.eval()

url = "https://github.com/haotian-liu/LLaVA/blob/1a91fc274d7c35a9b50b3cb29c4247ae5837ce39/images/llava_v1_5_radar.jpg?raw=true"
image = Image.open(requests.get(url, stream=True).raw)
image_tensor = process_images([image], image_processor, model.config)
image_tensor = [_image.to(dtype=torch.float16, device=device) for _image in image_tensor]

conv_template = "qwen_1_5"  # Make sure you use correct chat template for different models
question = DEFAULT_IMAGE_TOKEN + "\nWhat is shown in this image?"
conv = copy.deepcopy(conv_templates[conv_template])
conv.append_message(conv.roles[0], question)
conv.append_message(conv.roles[1], None)
prompt_question = conv.get_prompt()

input_ids = tokenizer_image_token(prompt_question, tokenizer, IMAGE_TOKEN_INDEX, return_tensors="pt").unsqueeze(0).to(device)
image_sizes = [image.size]


cont = model.generate(
    input_ids,
    images=image_tensor,
    image_sizes=image_sizes,
    do_sample=False,
    temperature=0,
    max_new_tokens=4096,
)
text_outputs = tokenizer.batch_decode(cont, skip_special_tokens=True)
print(text_outputs)

Training

Model

  • Architecture: SO400M + Qwen2
  • Pretraining Stage: LCS-558K, 1 epoch, projector
  • Mid Stage: A mixture of 4.7M high-quality synthetic data, 1 epoch, full model
  • Final-Image Stage: A mixture of 3.6M single-image data, 1 epoch, full model
  • OneVision Stage: A mixture of 1.6M single-image/multi-image/video data, 1 epoch, full model
  • Critic / Preference Learning Stage: 9.4k question-image input from LLaVA-RLHF with self-generated responses, reward signal from llava-critic-72b, iterative DPO for 3 rounds, full model
  • Precision: bfloat16

Hardware & Software

Citation

@article{li2024llavaonevision,
  	title={LLaVA-OneVision: Easy Visual Task Transfer},
  	author={Li, Bo and Zhang, Yuanhan and Guo, Dong and Zhang, Renrui and Li, Feng and Zhang, Hao and Zhang, Kaichen and Li, Yanwei and Liu, Ziwei and Li, Chunyuan},
  	journal={arXiv preprint arXiv:2408.03326},
  	year={2024}
}

@article{xiong2024llavacritic,
  title={LLaVA-Critic: Learning to Evaluate Multimodal Models},
  author={Xiong, Tianyi and Wang, Xiyao and Guo, Dong and Ye, Qinghao and Fan, Haoqi and Gu, Quanquan and Huang, Heng and Li, Chunyuan},
  year={2024},
  eprint={2410.02712},
  archivePrefix={arXiv},
  primaryClass={cs.CV},
  url={https://arxiv.org/abs/2410.02712},
}

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

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

GPU в ailist

vLLM

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

Модели нужен vLLM (несколько GPU), но архитектура LlavaQwenForCausalLM ему неизвестна.

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

0 моделей