Lumina-mGPT-2.0: модель генерации изображений с авторегрессией для обработки нескольких задач генерации изображений

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

Lumina-mGPT-2.0 - это проект с открытым исходным кодом, разработанный совместно Шанхайской лабораторией искусственного интеллекта (Shanghai AI Laboratory), Китайским университетом Гонконга (CUHK) и другими организациями, размещенный на GitHub и поддерживаемый командой Alpha-VLLM. Это автономная авторегрессионная модель, обученная с нуля, основной функцией которой является генерация разнообразных и высококачественных изображений из текста. Выпущенный 3 апреля 2025 года, этот инструмент не только поддерживает базовые изображения, сгенерированные из текста, но и справляется с различными задачами, такими как генерация пар изображений, генерация по темам, многораундовое редактирование изображений и управляемая генерация.

Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型Lumina-mGPT-2.0:处理多种图像生成任务的自回归图像生成模型

 

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

  • Поддерживает ввод текста для создания высококачественных изображений с разрешением до 768x768.
  • Может генерировать пары изображений, подходящие для задач сравнения или сопоставления.
  • Обеспечивает тематическую генерацию соответствующих изображений на основе определенной темы.
  • Поддерживает несколько раундов редактирования изображений, позволяя пользователям шаг за шагом корректировать полученные результаты.
  • Включает функцию Controlled Generation для точной настройки деталей изображения.
  • Для того чтобы пользователи могли оптимизировать модель в соответствии со своими потребностями, предоставляется код с тонкой настройкой.
  • Поддержка ускоренного вывода для сокращения времени генерации изображений.

 

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

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

Чтобы использовать Lumina-mGPT-2.0 локально, вам нужно сначала собрать среду выполнения. Ниже приведены подробные шаги:

  1. Скачать код проекта
    Откройте терминал и введите следующую команду, чтобы клонировать репозиторий кода:
git clone https://github.com/Alpha-VLLM/Lumina-mGPT-2.0.git

Затем перейдите в каталог проекта:

cd Lumina-mGPT-2.0
  1. Создание виртуальной среды
    Создайте отдельное окружение для Python 3.10 с Conda, чтобы избежать конфликтов:
conda create -n lumina_mgpt_2 python=3.10 -y

Активируйте окружающую среду:

conda activate lumina_mgpt_2
  1. Установка зависимостей
    Установите библиотеки Python, необходимые для вашего проекта:
pip install -r requirements.txt

Затем установите модуль Flash Attention (для ускоренных вычислений):

pip install https://github.com/Dao-AILab/flash-attention/releases/download/v2.7.4.post1/flash_attn-2.7.4.post1+cu12torch2.3cxx11abiFALSE-cp310-cp310-linux_x86_64.whl --no-build-isolation

Наконец, установите проект в качестве локального пакета:

pip install -e .
  1. Скачать MoVQGAN Вес
    Проект зависит от весов модели MoVQGAN. Создайте каталог и загрузите его:
mkdir -p lumina_mgpt/movqgan/270M
wget -O lumina_mgpt/movqgan/270M/movqgan_270M.ckpt https://huggingface.co/ai-forever/MoVQGAN/resolve/main/movqgan_270M.ckpt
  1. тестовая установка
    Выполните следующую команду, чтобы проверить, все ли в порядке с окружением:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/

Если сообщений об ошибках нет, значит, установка прошла успешно.

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

Основная функция Lumina-mGPT-2.0 - генерировать изображения из текста. Ниже приводится подробное описание работы:

  • Базовая генерация изображений
    Запустите скрипт генерации в терминале и введите текстовое описание. Например, вы хотите сгенерировать изображение "Городской пейзаж ночью, все освещено":
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --prompt "City skyline at night with bright lights."

Описание параметра:

  • --model_path: Модель пути.
  • --save_path: Каталог, в котором сохраняется изображение.
  • --cfg: соотношение текста и изображения, по умолчанию 4.0, чем больше значение, тем ближе к описанию.
  • --top_k: Управляет разнообразием поколений, по умолчанию 4096.
  • --temperature: Управляет случайностью, по умолчанию 1.0.
  • --width ответить пением --height: Установите максимальное разрешение 768x768.
  • --prompt: Текстовое описание, поддержка английского или китайского языка.
    Созданные изображения сохраняются в save_samples Папка.
  • ускоренное поколение
    Чтобы быстрее генерировать изображения, можно использовать два варианта ускорения:
  • увеличить --speculative_jacobi: Включить спекулятивное декодирование Якоби для уменьшения времени генерации.
  • увеличить --quant: Включите квантование модели для уменьшения использования графической памяти.
    Пример команды:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --speculative_jacobi --quant

Официальные данные тестирования (на базе видеокарты A100):

  • Обычная генерация: 694 секунды при использовании 80 ГБ видеопамяти.
  • Плюс спекулятивное декодирование: 324 секунды, 79,2 Гбайт видеопамяти.
  • Плюс спекулятивное декодирование и квантование: 304 секунды, 33,8 ГБ видеопамяти.
  • Многократное редактирование и контролируемая генерация
    Поддерживает несколько раундов корректировки изображения. Например, сначала создайте изображение, а затем измените некоторые детали с помощью нового описания. Для выполнения конкретных операций необходимо обратиться к generate_examples или ознакомьтесь с официальной документацией! <项目根目录>/README.md.
  • Тонкая настройка модели
    Если вы хотите оптимизировать модель с помощью собственных данных, вы можете обратиться к <项目根目录>/TRAIN.md Документация. В ней подробно описаны шаги по тонкой настройке, включая подготовку данных и команды обучения.

рабочий процесс

  1. Выполните следующие шаги для установки окружения и зависимостей.
  2. Скачать MoVQGAN Весы.
  3. Введите текстовое описание и выполните команду generate.
  4. Проверьте результаты, настройте параметры или выполните несколько раундов редактирования.

Если у вас возникнут проблемы, обратитесь к документации на GitHub или к обсуждениям в сообществе. Весь процесс понятен и подходит как для новичков, так и для профессиональных пользователей.

 

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

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

 

QA

  1. Какая аппаратная поддержка требуется?
    Рекомендуется использовать высокопроизводительные графические процессоры, такие как A100, и не менее 40 ГБ видеопамяти. Процессор может справиться с этой задачей, но он будет медленным.
  2. Являются ли созданные изображения коммерчески доступными?
    Проект использует протокол Apache 2.0, и его коммерческое использование разрешено в соответствии с условиями соглашения.
  3. Почему время генерации велико?
    Создание изображения размером 768x768 с настройками по умолчанию занимает несколько минут. Это можно сделать с помощью --speculative_jacobi ответить пением --quant Ускорение.
  4. Поддерживает ли он китайское описание?
    Поддерживаю, но английское описание может быть более точным, поскольку данные для обучения модели в основном на английском языке.
© заявление об авторских правах

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

OpenHands:AI 驱动的软件开发多智能代理助手,覆盖开发者各类操作

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

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