Облачная платформаEvolution

Генерация изображений с ComfyUI на основе Notebooks

Эта статья полезна?

С помощью этого руководства вы научитесь настраивать среду для генерации изображений с помощью ComfyUI, загружать модели с платформы Hugging Face и создавать изображения на основе текстовых промптов.

Вы будете использовать следующие сервисы:

  • Notebooks — сервис для запуска сред ML и работы DS-специалистов в ноутбуках на платформе Evolution.

  • Object Storage — объектное S3-хранилище с бесплатным хранением файлов, объемом до 15 ГБ.

  • Hugging Face — платформа с открытым исходным кодом и сообщество разработчиков, ориентированное на машинное обучение, обработку естественного языка (NLP) и другие области искусственного интеллекта.

  • ComfyUI — визуальная среда для создания и запуска процессов генерации контента на основе моделей диффузии.

Шаги:

Перед началом работы

  1. Если вы уже зарегистрированы, войдите под своей учетной записью.

  2. На верхней панели слева нажмите Кнопка с изображением девяти точек и убедитесь в том, что сервис Notebooks в разделе AI Factory подключен. Если сервис Notebooks не подключен, оставьте заявку на подключение.

  3. Убедитесь, что для сервиса Notebooks установлена квота на GPU. Для расширения квоты обратитесь в техническую поддержку.

1. Подготовьте среду

  1. Для хранения модели создайте бакет и папку в Object Storage со следующими параметрами:

    • Название бакетаcomfyui.

    • Название папкиmodels.

    Для созданных бакета и папки будет доступен адрес, например, comfyui/models.

  2. Создайте ноутбук со следующими параметрами:

    • Конфигурация — GPU.

    • Образ — Cloud.ru Jupyter ComfyUI.

    • Хранилища — укажите бакет для хранения модели.

    Остальные параметры при создании ноутбука укажите по необходимости.

2. Загрузите модель из Hugging Face

  1. На главной странице в строке нужного ноутбука нажмите JupyterLab.

    Откроется созданный ноутбук.

  2. Выберите тип ноутбука Python.

    ../_images/s__notebooks__images-comfyui-1.webp
  3. Загрузите модель в бакет S3 или напрямую в ноутбук:


    1. Загрузите модель в бакет S3:

      !wget https://huggingface.co/Comfy-Org/stable-diffusion-v1-5-archive/resolve/main/v1-5-pruned-emaonly-fp16.safetensors \
      -O /mnt/s3/comfyui/models/v1-5-pruned-emaonly-fp16.safetensors
    2. Создайте символическую ссылку для доступа к модели из ComfyUI:

      !ln -s /mnt/s3/ntbbckt/comfy_models/v1-5-pruned-emaonly-fp16.safetensors \
      /comfyui/models/checkpoints/v1-5-pruned-emaonly-fp16.safetensors

    Для загрузки другой модели из Hugging Face:


    1. Загрузите модель в бакет S3:

      !wget <model_address> \
      -O /mnt/s3/<buсket_address>/<name_safetensors_file>

      Где:

      • <model_address> — адрес safetensors-файла модели в репозитории Hugging Face.

      • <buсket_address> — адрес бакета в Object Storage.

      • <name_safetensors_file> — название safetensors-файла модели.

    2. Создайте символическую ссылку для доступа к модели из ComfyUI:

      Выполните команду:

      !ln -s /mnt/s3/<buсket_address>/<name_safetensors_file> \
      /<buсket_address>/checkpoints/<name_safetensors_file>

      Где:

      • <buсket_address> — адрес бакета в Object Storage.

      • <name_safetensors_file> — название safetensors-файла модели.

3. Сгенерируйте изображение в ComfyUI

  1. В интерфейсе ноутбука в блоке дополнительных модулей Other перейдите в модуль Comfy UI.

  2. В левом верхнем углу нажмите Кнопка меню ComfyUI и выберите Посмотреть шаблоны.

  3. Выберите шаблон Генерация изображений.

    ../_images/s__gen-image-comfui.png

    Интерфейс ComfyUI состоит из нод, которые соединены между собой в единый рабочий процесс. Ноды отвечают за разные этапы генерации изображения. Например, промпт для генерации необходимо ввести в поле ноды Кодирование текста CLIP (Запрос).

    ../_images/s__nodes-comfui.png
  4. В поле ноды Кодирование текста CLIP (Запрос) укажите текстовый промпт для генерации изображения.

    Пример позитивного промпта:

    a highly detailed futuristic humanoid robot
    3/4 view
    standing in a thoughtful pose while solving a complex problem
    intricate mechanical parts
    glowing blue circuitry and transparent alloy panels
    expressive LED eyes reflecting data streams
    ultra realistic skin like polymer texture
    subtle steam and dust particles around the joints
    soft cinematic rim lighting
    depth of field focusing on the robot’s face
    background: a sprawling megacity of the future with towering neon lit skyscrapers
    floating traffic lanes
    holographic billboards
    misty evening atmosphere
    neon pink and cyan color palette
    hyper realistic
    photorealistic
    ultra detailed
    8k
    award winning concept art
    trending on ArtStation

    Пример негативного промпта:

    low res
    blurry
    jpeg artifacts
    watermark
    text
    logo
    cropping
    deformed hands
    extra limbs
    ugly
    poorly drawn
    unrealistic anatomy
    over exposed
    underexposed
    flat lighting
  5. При необходимости скорректируйте параметры в других нодах.

  6. Нажмите Запустить.

    Запустится процесс генерации изображения. Если процесс не запустился, обновите страницу и повторите попытку.

    Сгенерированное изображение появится в блоке Save Image и будет сохранено в директории /comfyui/output.

Результат

В результате выполнения практической работы вы запустили Notebooks с визуальной средой для запуска генеративных нейронных сетей ComfyUI, подключили объектное хранилище для хранения моделей и сгенерировали первое изображение.

Далее вы можете эксперементировать с другими моделями, добавлять ноды и усложнять рабочий процесс. Подробную информацию о работе с ComfyUI можно узнать в официальной документации.