Gerchegg's picture
Upload README.md with huggingface_hub
b75ec81 verified

A newer version of the Gradio SDK is available: 6.8.0

Upgrade
metadata
title: Qwen Soloband Advanced - Image2Image + LoRA
emoji: 🎨
colorFrom: blue
colorTo: purple
sdk: gradio
sdk_version: 5.9.1
app_file: app.py
pinned: true
license: apache-2.0
suggested_hardware: a10g-large
suggested_storage: medium
models:
  - Gerchegg/Qwen-Soloband-Diffusers
tags:
  - image-generation
  - image-to-image
  - lora
  - qwen
  - diffusers
short_description: Text2Image and Image2Image with LoRA support
preload_from_hub:
  - Gerchegg/Qwen-Soloband-Diffusers

🎨 Qwen Soloband Advanced

Комплексная система генерации изображений на базе Qwen-Image DiT с полным набором инструментов для профессиональной работы.

🚀 Основные возможности

📝 Text-to-Image

Генерация изображений из текстовых описаний:

  • 🎨 Кастомная fine-tuned модель Qwen-Soloband
  • 📐 Разрешения от 512×512 до 2048×2048
  • ⚙️ Полный контроль параметров (steps, CFG, seed)
  • 🎯 Оптимизированные настройки для лучшего качества

🔄 Image-to-Image

Модификация и трансформация существующих изображений:

  • 🖼️ Загрузка любых изображений (PNG, JPG, WebP)
  • 🎚️ Denoising Strength (0.0-1.0) - точный контроль степени изменения
  • 🎨 Сохранение структуры при изменении стиля
  • ✨ Улучшение качества, стилизация, художественная трансформация

🎭 LoRA Styles

Динамическая загрузка стилей для разнообразия:

  • 📸 Realism - фотореалистичные изображения
  • 🎌 Anime - современный японский стиль аниме
  • 📽️ Analog Film - эффект винтажной пленочной фотографии
  • 🎚️ LoRA Scale (0.0-2.0) - интенсивность стиля
  • 🔗 Работает во всех режимах (Text2Img, Img2Img, ControlNet)

🔌 API Usage

Text-to-Image API

from gradio_client import Client

client = Client("Gerchegg/Qwen-ImageForFlo-Advanced")

result = client.predict(
    prompt="SB_AI, a beautiful landscape",
    negative_prompt="blurry, low quality",
    width=1664,
    height=928,
    seed=42,
    randomize_seed=False,
    guidance_scale=2.5,
    num_inference_steps=40,
    lora_name="None",  # или "Realism", "Anime", "Analog Film"
    lora_scale=1.0,
    api_name="/text2img"
)

image, seed = result

Image-to-Image API

result = client.predict(
    input_image="path/to/image.png",  # PIL Image или path
    prompt="Transform this into a painting",
    negative_prompt="blurry, low quality",
    strength=0.75,  # 0.0-1.0, больше = сильнее изменение
    seed=42,
    randomize_seed=False,
    guidance_scale=2.5,
    num_inference_steps=40,
    lora_name="Analog Film",
    lora_scale=1.0,
    api_name="/img2img"
)

image, seed = result

💡 Примеры использования

Text-to-Image

Prompt: "SB_AI, a beautiful mountain landscape at sunset, detailed"
Size: 1664×928
Steps: 40, CFG: 2.5
LoRA: None

Image-to-Image

Input: фото человека
Prompt: "Transform into oil painting style"
Strength: 0.75 (сохранить структуру, изменить стиль)
LoRA: Analog Film

🎭 Доступные LoRA

🌐 HuggingFace Hub LoRA (2 предустановленных):

Name Trigger Word Description
Realism "Super Realism portrait of" Фотореалистичные изображения
Anime "Japanese modern anime style, " Современное аниме

💡 Ленивая загрузка: Hub LoRA скачиваются только при использовании, затем кэшируются.

📁 Локальные LoRA (рекомендуемый способ):

Положите ваши .safetensors файлы в /workspace/loras/ - они автоматически появятся в списке!

Преимущества локальных LoRA:

  • ✅ Не скачиваются с интернета (быстрее)
  • ✅ Приватные (только у вас)
  • ✅ Полный контроль версий
  • ✅ Можно использовать любые кастомные LoRA

Пример:

/workspace/loras/
├── my_custom_style.safetensors     → появится как "my_custom_style"
├── portrait_lora.safetensors       → появится как "portrait_lora"
└── anime_v2.safetensors            → появится как "anime_v2"

API использование:

# Используйте имя файла (без расширения)
result = client.predict(
    prompt="SB_AI, a portrait",
    lora_name="my_custom_style",  # Имя вашего локального файла
    lora_scale=1.0,
    api_name="/text2img"
)

💡 Hub LoRA автоматически добавляют trigger words. Локальные LoRA - без trigger words.

📊 Параметры

Denoising Strength (Image2Image)

  • 0.0-0.3: Минимальные изменения, сохранение деталей
  • 0.4-0.6: Умеренные изменения, баланс
  • 0.7-0.9: Сильные изменения, новое изображение
  • 1.0: Полная перерисовка

LoRA Scale

  • 0.0: Без эффекта
  • 0.5: Слабый эффект стиля
  • 1.0: Нормальный эффект (рекомендуется)
  • 1.5-2.0: Сильный эффект стиля

🔧 Технические детали

Модели:

  • Base: Gerchegg/Qwen-Soloband-Diffusers
  • LoRAs: Различные (загружаются динамически)

Оптимизации:

  • VAE tiling для больших изображений
  • VAE slicing для batch
  • Автоматическое управление LoRA

💰 Требования

  • GPU: A40 (48GB) или A100 (80GB)
  • VRAM: ~40GB для базовой модели
  • Storage: ~45GB (модель)

📚 Дополнительная информация

⚠️ Важные замечания

Image2Image для Qwen

Этот Space использует специализированный QwenImageImg2ImgPipeline для корректной работы с Qwen-Image архитектурой. В отличие от обычных Stable Diffusion моделей, Qwen-Image требует:

  • Специальное кодирование изображений через AutoencoderKLQwenImage
  • Параметр true_cfg_scale вместо guidance_scale
  • Специальную упаковку латентов (packing 2x2)

LoRA (Hub + Local)

  • Hub LoRA (2): Realism, Anime - скачиваются ПРИ ИСПОЛЬЗОВАНИИ, затем кэшируются
  • Local LoRA: Любые .safetensors в /workspace/loras/ - автоматически обнаруживаются
  • Ленивая загрузка - не скачиваются и не занимают VRAM до использования
  • Полная поддержка в API по имени

📝 License

Apache 2.0

🔧 Technical Notes

Image2Image: Использует правильный QwenImageImg2ImgPipeline для Qwen-Image архитектуры
Performance: ~0.91s на шаг денойзинга на A100 GPU
Optimization: VAE tiling и slicing включены для экономии памяти