Long-VITA: модель визуального языка с поддержкой очень длинных контекстных выводов

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

Long-VITA - это мультимодальная макромодель с открытым исходным кодом, разработанная командой VITA-MLLM и ориентированная на решение визуальных и лингвистических задач, связанных с очень длинными контекстами. Она способна анализировать изображения, видео и текст одновременно и поддерживает до 1 млн. жетон Входы для таких сценариев, как понимание видео, разбор изображений высокого разрешения и мультимодальные интеллектуальные рассуждения. По сравнению с другими моделями Long-VITA демонстрирует отличные результаты в задачах с коротким контекстом и в то же время предлагает революционные преимущества при обработке длинных последовательностей. Разработанный в сотрудничестве с Tencent YouTuber Lab, Нанкинским университетом и Сямыньским университетом, проект обучается полностью на открытых наборах данных, поддерживает платформы NPU и GPU и призван предоставить сообществу open-source мощный инструмент для мультимодальных исследований длинных контекстов. Код модели, метод обучения и весовые коэффициенты опубликованы в открытом доступе, что позволяет исследователям и разработчикам изучить передовые возможности применения мультимодального ИИ.

Long-VITA:支持超长上下文输出的视觉语言模型

 

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

  • Чрезвычайно долгая обработка контекста: Поддерживает ввод изображений, видео и текста до 1 млн. лексем или 4K кадров для комплексного анализа сцен.
  • мультимодальное понимание: Интегрированные возможности обработки изображений, видео и текста для одновременного анализа нескольких типов данных.
  • Эффективные распределенные рассуждения:: Эффективное рассуждение для очень длинных входных данных с помощью контекстного параллелизма.
  • Обучение с использованием открытых наборов данных: Используйте 17 миллионов публичных образцов для обеспечения воспроизводимости и прозрачности модели.
  • Поддержка кросс-платформыСовместимость с Ascend NPU и Nvidia GPU для гибкой адаптации к различным аппаратным средам.
  • Оптимизация короткого контекста:: Поддерживать лидирующие показатели в традиционных мультимодальных заданиях, выполняя требования как длинных, так и коротких последовательностей.
  • Моделирование языка с логит-маской:: Инновационный дизайн головки языковой модели для улучшения рассуждений о длинных последовательностях.

 

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

Long-VITA - это проект с открытым исходным кодом, который позволяет пользователям получать код и веса моделей через репозиторий GitHub и разворачивать их для использования локально или на сервере. Здесь представлено подробное руководство, которое поможет пользователям начать работу и изучить его мощные возможности.

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

  1. склад клонов
    Откройте терминал и введите следующую команду, чтобы клонировать репозиторий Long-VITA:

    git clone https://github.com/VITA-MLLM/Long-VITA.git
    cd Long-VITA

Это позволит загрузить весь код и документацию по проекту.

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

    conda create -n long-vita python=3.10 -y
    conda activate long-vita
    
  2. Установка зависимостей
    Установите пакеты Python, необходимые для вашего проекта:

    pip install --upgrade pip
    pip install -r requirements.txt
    

    Если требуется ускоренное мышление, можно дополнительно установить Flash Attention:

    pip install flash-attn --no-build-isolation
    
  3. Скачать модельные веса
    Long-VITA доступна в нескольких версиях (например, 16K, 128K, 1M токенов), которые можно загрузить с сайта Hugging Face:

  4. Настройка аппаратной среды
    • Графические процессоры Nvidia: Убедитесь, что CUDA и cuDNN установлены, а переменные окружения заданы:
      export CUDA_VISIBLE_DEVICES=0
      
    • Ascend NPU: Настройте среду MindSpeed или Megatron в соответствии с официальной документацией.

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

Long-VITA поддерживает два основных режима работы, вывод и оценку, и описание этих действий приведено ниже.

рассуждения о беге

  1. Подготовка к вводу данных
    • изображения: Поместите файл изображения (например. .jpg возможно .png(вычислять) вводить (в) asset Папка.
    • видео: Поддержка распространенных видеоформатов (напр. .mp4), помещенный в указанный путь.
    • копии: Напишите вопросы или инструкции, сохраните как .txt файл или введите его непосредственно в командной строке.
  2. Выполнение команд рассуждения
    В качестве примера понимания изображения выполните следующую команду:

    CUDA_VISIBLE_DEVICES=0 python video_audio_demo.py \
    --model_path [模型权重路径] \
    --image_path asset/sample_image.jpg \
    --model_type qwen2p5_instruct \
    --conv_mode qwen2p5_instruct \
    --question "描述这张图片的内容。"
    

    Для видеовхода добавьте --video_path Параметры:

    --video_path asset/sample_video.mp4
    
  3. Просмотр выходных данных
    Модель будет выдавать результаты в конечной точке, такие как описания изображений или содержание видеоанализа.

Оценка производительности

  1. Подготовка наборов данных для оценки
    Загрузите эталонный набор данных (например, Video-MME) и организуйте структуру файлов в соответствии с требованиями.
  2. Запустите сценарий оценки
    Проведите оценку, используя предоставленный сценарий:

    bash script/evaluate.sh [模型路径] [数据集路径]
    

Функциональное управление

Чрезвычайно долгая обработка контекста

  • процедура:
    1. Выберите модель Long-VITA-1M, чтобы убедиться, что общее количество маркеров в исходных данных (например, длинное видео или несколько HD-изображений) не превышает 1 миллиона.
    2. пользоваться --max_seq_len 1048576 Параметр задает максимальную длину последовательности.
    3. Запустите вывод и понаблюдайте за тем, как модель справляется с задачами с длинными последовательностями (например, составлением видеоконспекта).
  • типичный пример: Введите часовое видео, задайте вопрос "Резюмируйте основной сюжет видео", и модель выдаст краткое текстовое резюме.

мультимодальное понимание

  • процедура:
    1. Подготовьте мультимодальный ввод, например, изображение + текст или видео + вопрос.
    2. Укажите оба параметра в командной строке --image_path ответить пением --questionВ ролях:
      --image_path asset/sample_image.jpg --question "图片中的人物是谁?"
      
    3. Модель объединяет визуальную и текстовую информацию, чтобы генерировать ответы.
  • типичный пример:: Введите фотографию знаменитости и вопрос "Что он делает?". Модель опишет действие, изображенное на фотографии.

распределённый вывод

  • процедура:
    1. Чтобы настроить среду с несколькими GPU, измените параметр CUDA_VISIBLE_DEVICES=0,1,2,3.
    2. Запустите с помощью контекстной опции "Параллельно":
      python -m torch.distributed.launch --nproc_per_node=4 video_audio_demo.py [参数]
      
    3. Модель автоматически распределяет задачи между несколькими устройствами, чтобы увеличить скорость обработки данных.
  • типичный пример:: Распределенные рассуждения позволяют сократить время работы с очень длинными видеороликами с нескольких часов до нескольких минут.

предостережение

  • Убедитесь, что ваше оборудование имеет достаточно памяти: для ввода 1M токенов может потребоваться более 32 ГБ видеопамяти.
  • Входные данные должны быть предварительно обработаны (например, извлечение видеокадров), чтобы соответствовать требованиям модели.
  • Проверьте подключение к Интернету, для загрузки грузов необходимо стабильное высокоскоростное подключение.

Выполнив эти действия, пользователи смогут легко развернуть Long-VITA и испытать его сверхдлинный контекст и возможности мультимодального понимания для исследований, разработок или тестирования мультимодальных приложений ИИ.

© заявление об авторских правах

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

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

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