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

Список функций
- Чрезвычайно долгая обработка контекста: Поддерживает ввод изображений, видео и текста до 1 млн. лексем или 4K кадров для комплексного анализа сцен.
- мультимодальное понимание: Интегрированные возможности обработки изображений, видео и текста для одновременного анализа нескольких типов данных.
- Эффективные распределенные рассуждения:: Эффективное рассуждение для очень длинных входных данных с помощью контекстного параллелизма.
- Обучение с использованием открытых наборов данных: Используйте 17 миллионов публичных образцов для обеспечения воспроизводимости и прозрачности модели.
- Поддержка кросс-платформыСовместимость с Ascend NPU и Nvidia GPU для гибкой адаптации к различным аппаратным средам.
- Оптимизация короткого контекста:: Поддерживать лидирующие показатели в традиционных мультимодальных заданиях, выполняя требования как длинных, так и коротких последовательностей.
- Моделирование языка с логит-маской:: Инновационный дизайн головки языковой модели для улучшения рассуждений о длинных последовательностях.
Использование помощи
Long-VITA - это проект с открытым исходным кодом, который позволяет пользователям получать код и веса моделей через репозиторий GitHub и разворачивать их для использования локально или на сервере. Здесь представлено подробное руководство, которое поможет пользователям начать работу и изучить его мощные возможности.
Процесс установки
- склад клонов
Откройте терминал и введите следующую команду, чтобы клонировать репозиторий Long-VITA:git clone https://github.com/VITA-MLLM/Long-VITA.git cd Long-VITA
Это позволит загрузить весь код и документацию по проекту.
- Создание виртуальной среды
Используйте Conda для создания отдельного окружения Python и обеспечения изоляции зависимостей:conda create -n long-vita python=3.10 -y conda activate long-vita
- Установка зависимостей
Установите пакеты Python, необходимые для вашего проекта:pip install --upgrade pip pip install -r requirements.txt
Если требуется ускоренное мышление, можно дополнительно установить Flash Attention:
pip install flash-attn --no-build-isolation
- Скачать модельные веса
Long-VITA доступна в нескольких версиях (например, 16K, 128K, 1M токенов), которые можно загрузить с сайта Hugging Face:- Long-VITA-16K. ссылка (на веб-сайте)
- Long-VITA-128K. ссылка (на веб-сайте)
- Long-VITA-1M. ссылка (на веб-сайте)
После загрузки поместите файл весов в корневой каталог проекта или по указанному пути.
- Настройка аппаратной среды
- Графические процессоры Nvidia: Убедитесь, что CUDA и cuDNN установлены, а переменные окружения заданы:
export CUDA_VISIBLE_DEVICES=0
- Ascend NPU: Настройте среду MindSpeed или Megatron в соответствии с официальной документацией.
- Графические процессоры Nvidia: Убедитесь, что CUDA и cuDNN установлены, а переменные окружения заданы:
Использование
Long-VITA поддерживает два основных режима работы, вывод и оценку, и описание этих действий приведено ниже.
рассуждения о беге
- Подготовка к вводу данных
- изображения: Поместите файл изображения (например.
.jpg
возможно.png
(вычислять) вводить (в)asset
Папка. - видео: Поддержка распространенных видеоформатов (напр.
.mp4
), помещенный в указанный путь. - копии: Напишите вопросы или инструкции, сохраните как
.txt
файл или введите его непосредственно в командной строке.
- изображения: Поместите файл изображения (например.
- Выполнение команд рассуждения
В качестве примера понимания изображения выполните следующую команду: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
- Просмотр выходных данных
Модель будет выдавать результаты в конечной точке, такие как описания изображений или содержание видеоанализа.
Оценка производительности
- Подготовка наборов данных для оценки
Загрузите эталонный набор данных (например, Video-MME) и организуйте структуру файлов в соответствии с требованиями. - Запустите сценарий оценки
Проведите оценку, используя предоставленный сценарий:bash script/evaluate.sh [模型路径] [数据集路径]
Функциональное управление
Чрезвычайно долгая обработка контекста
- процедура:
- Выберите модель Long-VITA-1M, чтобы убедиться, что общее количество маркеров в исходных данных (например, длинное видео или несколько HD-изображений) не превышает 1 миллиона.
- пользоваться
--max_seq_len 1048576
Параметр задает максимальную длину последовательности. - Запустите вывод и понаблюдайте за тем, как модель справляется с задачами с длинными последовательностями (например, составлением видеоконспекта).
- типичный пример: Введите часовое видео, задайте вопрос "Резюмируйте основной сюжет видео", и модель выдаст краткое текстовое резюме.
мультимодальное понимание
- процедура:
- Подготовьте мультимодальный ввод, например, изображение + текст или видео + вопрос.
- Укажите оба параметра в командной строке
--image_path
ответить пением--question
В ролях:--image_path asset/sample_image.jpg --question "图片中的人物是谁?"
- Модель объединяет визуальную и текстовую информацию, чтобы генерировать ответы.
- типичный пример:: Введите фотографию знаменитости и вопрос "Что он делает?". Модель опишет действие, изображенное на фотографии.
распределённый вывод
- процедура:
- Чтобы настроить среду с несколькими GPU, измените параметр
CUDA_VISIBLE_DEVICES=0,1,2,3
. - Запустите с помощью контекстной опции "Параллельно":
python -m torch.distributed.launch --nproc_per_node=4 video_audio_demo.py [参数]
- Модель автоматически распределяет задачи между несколькими устройствами, чтобы увеличить скорость обработки данных.
- Чтобы настроить среду с несколькими GPU, измените параметр
- типичный пример:: Распределенные рассуждения позволяют сократить время работы с очень длинными видеороликами с нескольких часов до нескольких минут.
предостережение
- Убедитесь, что ваше оборудование имеет достаточно памяти: для ввода 1M токенов может потребоваться более 32 ГБ видеопамяти.
- Входные данные должны быть предварительно обработаны (например, извлечение видеокадров), чтобы соответствовать требованиям модели.
- Проверьте подключение к Интернету, для загрузки грузов необходимо стабильное высокоскоростное подключение.
Выполнив эти действия, пользователи смогут легко развернуть Long-VITA и испытать его сверхдлинный контекст и возможности мультимодального понимания для исследований, разработок или тестирования мультимодальных приложений ИИ.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...