Qwen2.5-VL: мультимодальная большая модель с открытым исходным кодом для разбора изображений и видеодокументов

Общее введение

Qwen2.5-VL - это мультимодальная большая модель с открытым исходным кодом, разработанная командой Qwen в Alibaba Cloud. Она может одновременно обрабатывать текст, изображения, видео и документы и является обновленной версией Qwen2-VL, построенной на языковой модели Qwen2.5. По официальным данным, в ней значительно улучшены функции разбора документов, понимания видео и интеллектуального агента, а также поддерживаются четыре шкалы параметров - 3B, 7B, 32B и 72B - для удовлетворения различных потребностей от персональных компьютеров до серверов. Проект размещен на GitHub под лицензией Apache 2.0 и является бесплатным с открытым исходным кодом. qwen2.5-VL демонстрирует хорошие результаты в нескольких тестах, а по некоторым показателям превосходит модель с закрытым исходным кодом, что позволяет разработчикам создавать интеллектуальные инструменты, такие как анализатор документов, видеоанализатор или ассистент управления устройством.

Qwen2.5-VL:支持图像视频文档解析的开源多模态大模型

 

Список функций

  • Распознавайте объекты, текст и макеты на изображениях, поддерживая естественные сцены и несколько языков.
  • Понимайте очень длинные видео (более часа) и находите секундные фрагменты событий.
  • Разбирает сложные документы и извлекает рукописный текст, таблицы, графики и химические формулы.
  • Управление компьютером или мобильным телефоном с помощью визуальных и текстовых команд для выполнения задач интеллектуального агента.
  • Выводит структурированные данные, такие как координаты или информация об атрибутах, в формате JSON.
  • Поддержка динамической настройки разрешения и частоты кадров для оптимизации эффективности обработки видео.

 

Использование помощи

Процесс установки

Чтобы запустить Qwen2.5-VL локально, необходимо подготовить программную среду. Ниже приведены подробные шаги:

  1. Проверка базовой среды
    Требуется Python 3.8+ и Git. Проверьте терминал, введя следующую команду:
python --version
git --version

Если он у вас не установлен, вы можете загрузить его с сайтов Python и Git.

  1. Код загрузки
    Выполните следующую команду в терминале, чтобы клонировать ваш репозиторий GitHub:
git clone https://github.com/QwenLM/Qwen2.5-VL.git
cd Qwen2.5-VL
  1. Установка зависимостей
    Для проекта требуются специальные библиотеки Python, которые устанавливаются с помощью следующей команды:
pip install git+https://github.com/huggingface/transformers@f3f6c86582611976e72be054675e2bf0abb5f775
pip install accelerate
pip install qwen-vl-utils[decord]
pip install 'vllm>0.7.2'

Если у вас есть GPU, установите PyTorch с поддержкой CUDA:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

Примечания:decord Для ускорения загрузки видео пользователи не из Linux могут загрузить его с сайта decord GitHub Установка исходного кода.

  1. модель грунтования
    Загрузите и запустите модель, например, версию 7B:
vllm serve Qwen/Qwen2.5-VL-7B-Instruct --port 8000 --host 0.0.0.0 --dtype bfloat16

Модели автоматически загружаются из Hugging Face и запускаются локальные службы.

Как использовать основные функции

После установки Qwen2.5-VL можно управлять с помощью кода или веб-интерфейса.

распознавание образов

Хотите, чтобы модель описывала картинку? Создайте новую image_test.pyВведите следующий код:

from transformers import Qwen2VLForConditionalGeneration, AutoProcessor
from qwen_vl_utils import process_vision_info
from PIL import Image
model = Qwen2VLForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct", torch_dtype="auto", device_map="auto")
processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")
messages = [{"role": "user", "content": [{"type": "image", "image": "图片路径或URL"}, {"type": "text", "text": "描述这张图片"}]}]
text = processor.apply_chat_template(messages, tokenize=False)
inputs = processor(text=[text], images=[Image.open("图片路径或URL")], padding=True, return_tensors="pt").to("cuda")
generated_ids = model.generate(**inputs, max_new_tokens=128)
output = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(output)

После запуска модель выдает описание, например, "На картинке изображена кошка, сидящая на подоконнике".

Видеопонимание

Для анализа видео необходимо подготовить локальные файлы (например. video.mp4). Используйте следующий код:

messages = [{"role": "user", "content": [{"type": "video", "video": "video.mp4"}, {"type": "text", "text": "总结视频内容"}]}]
text = processor.apply_chat_template(messages, tokenize=False)
inputs = processor(text=[text], videos=[processor.process_video("video.mp4")], padding=True, return_tensors="pt").to("cuda")
generated_ids = model.generate(**inputs, max_new_tokens=128)
output = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(output)

Вывод может быть таким: "В видеоролике показан кулинарный конкурс, где участники готовят пиццу".

разрешение документа

Загрузите PDF или изображение, используйте код, похожий на распознавание изображений, измените запрос на "Извлечь данные из таблицы", и модель вернет структурированные результаты, например:

[{"列1": "值1", "列2": "值2"}]

Интеллектуальные агенты

Хотите управлять устройством? Используйте cookbooks/computer_use.ipynb Пример. Запустив его, введите "Open Notepad and type 'Hello'", и модель смоделирует операцию и вернет результат.

Использование веб-интерфейса

быть в движении web_demo_mm.py Запустите веб-интерфейс:

python web_demo_mm.py

доступ к браузеру http://127.0.0.1:7860Если вы не уверены в том, что нужно загрузить файл или ввести команду, модель обработает ее напрямую.

оптимизировать производительность

  • Вспышка внимания 2: Ускоренное рассуждение, используется после установки:
    pip install -U flash-attn --no-build-isolation
    python web_demo_mm.py --flash-attn2
    
  • Корректировка разрешения: Настройки min_pixels ответить пением max_pixels Управляйте размером изображения, например, в диапазоне 256-1280, чтобы сбалансировать скорость и память.

 

сценарий применения

  1. научные исследования
    Студенты загружают изображения своих работ, а модель извлекает формулы и данные для создания анализа.
  2. видеоклип
    Создатель вводит длинный видеоролик, а модель выделяет ключевые фрагменты для создания резюме.
  3. Управление корпоративными документами
    Сотрудник загружает отсканированную копию договора, модель извлекает пункты и выводит форму.
  4. интеллектуальный помощник
    Пользователь с помощью картинок и голосовых команд заставляет модель искать информацию о рейсах на своем мобильном телефоне.

 

QA

  1. Какие языки поддерживаются?
    Поддерживает китайский, английский и несколько языков (например, французский, немецкий), распознает многоязычный текст и рукописный контент.
  2. Каковы требования к оборудованию?
    Для модели 3B требуется 8 ГБ видеопамяти, для 7B - 16 ГБ, а для 32B и 72B рекомендуются профессиональные устройства с 24 ГБ и более видеопамяти.
  3. Как работать с очень длинными видео?
    Модели работают с динамической частотой кадров и способны воспринимать многочасовые видеозаписи и точно определять события второго уровня.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...