Исходный размер 1364x2046

Stable Diffusion обучение

Проект: Обучение Stable Diffusion для стиля «CHERKASHIN style»

  1. Описание идеи проекта

Цель проекта: обучить модель Stable Diffusion с использованием метода LoRA (Low-Rank Adaptation) для генерации изображений в специфическом художественном стиле — "photo collage in CHERKASHIN style".

Концепция стиля:

  • Смешанная техника: коллаж из фотографий с элементами живописи
  • Характерные мотивы: часы, башни, статуи, городские пейзажи, фигуры людей и птиц
  • Сюрреалистичная композиция с наложением слоёв
  • Винтажная эстетика с художественной обработкой

Технический подход:

  • Метод: Dreambooth + LoRA для SDXL
  • Уникальный токен: CHERKASHIN style
  • Размер изображений: 512×512 (оптимизировано для Colab T4/P100)
  • Precision: fp16 для экономии памяти
  1. Исходные изображения для обучения
0

Датасет: 20 изображений в формате JPG, квадратное соотношение 1:1

0

Датасет: 20 изображений в формате JPG, квадратное соотношение 1:1

исходные изображения были сгенерированы при помощи https://giga.chat/oidc-result?state=019d1f0e-7f9c-733a-8d96-a6da6b4356aa&code=046C54D1-7816-40E2-BAFB-A3C3435E6EEB

Процесс подготовки капций:

caption_prefix = "photo collage in CHERKASHIN style, "
BLIP генерирует описание: "a painting of a building with a clock on top"
Итоговая капция: "photo collage in CHERKASHIN style, a painting of a building with a clock on top"
  1. Результирующая серия изображений
Исходный размер 1664x928

Промпт для генерации:

«photo collage in CHERKASHIN style, times square, new york»

Параметры генерации: python pipe.load_lora_weights("cherakshin_style_LoRA") image = pipe( prompt="photo collage in CHERKASHIN style, times square, new york", num_inference_steps=25, guidance_scale=7.5 # по умолчанию ).images[0]

  1. Развёрнутый комментарий к результатам

Что удалось передать:

  1. Стилевые маркеры:

    • Префикс CHERKASHIN style успешно активирует ассоциативный ряд модели
    • Сохраняется композиционная сложность, характерная для коллажей
    • Присутствуют элементы наложения и смешения техник
  2. Визуальные паттерны:

    • Архитектурные элементы (башни, часы, статуи)
    • Фигуративные мотивы (люди, птицы, ангелы)
    • Текстуры, имитирующие живописные мазки
  3. Адаптивность к новым промптам:

    • Модель применяет стиль к новым объектам ("times square, new york")
    • Сохраняется баланс между содержанием запроса и стилизацией

Технические детали генерации:

# Использование LoRA с масштабируемым влиянием
pipe.fuse_lora(lora_scale=0.5)  # 0.0–1.0: контроль силы применения стиля

# Оптимизация памяти для Colab
vae = AutoencoderKL.from_pretrained("madebyollin/sdxl-vae-fp16-fix", torch_dtype=torch.float16)
pipe.to("cuda")  # Загрузка на GPU

Сравнение с исходным датасетом:

  • Сохраняется общая эстетика коллажа
  • Присутствуют характерные мотивы (часы, статуи)
  • Некоторые генерации могут требовать доработки промпта для точности

5. Ноутбук с кодом: процесс обучения

Этап 1: Подготовка окружения

!pip install bitsandbytes transformers accelerate peft
!pip install git+https://github.com/huggingface/diffusers.git
!wget https://raw.githubusercontent.com/huggingface/diffusers/main/examples/dreambooth/train_dreambooth_lora_sdxl.py

Этап 2: Загрузка и подготовка датасета

Загрузка изображений в папку ./cher/
Генерация капций через BLIP
blip_model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")

Создание metadata.jsonl
entry = {"file_name": "img.jpg", "prompt": "photo collage in CHERKASHIN style, "}

Этап 3: Конфигурация обучения

accelerate launch train_dreambooth_lora_sdxl.py \
  --pretrained_model_name_or_path="stabilityai/stable-diffusion-xl-base-1.0" \
  --dataset_name="cher" \
  --output_dir="cherakshin_style_LoRA" \
  --caption_column="prompt" \
  --instance_prompt="photo collage in CHERKASHIN style" \
  --resolution=512 \
  --train_batch_size=2 \
  --gradient_accumulation_steps=3 \
  --learning_rate=1e-4 \
  --max_train_steps=500 \
  --mixed_precision="fp16" \
  --use_8bit_adam \
  --gradient_checkpointing

Этап 4: Сохранение и деплой

Сохранение LoRA-весов
Загрузка на Hugging Face Hub
upload_folder(repo_id=repo_id, folder_path=output_dir)
Stable Diffusion обучение
Проект создан 24.03.2026
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше