Для інсталяції вам необхідно склонувати репозиторій
git clone https://github.com/Khar-Ma2/comfyui-batch-generation-script.gitта встановити необхідні залежності з файлу requirements.txt
pip install -r requirements.txtЗапуск генерації виглядає як:
python sdxl_queue.py workload.jsonде
sdxl_queue.py - скрипт автоматизованої генерації
workload.json - корисне навантаженя(промпти)
workload.json побудований за принципом ієрархічного успадкування налаштувань та ізоляції груп.
Тут визначається root_save_folder — це "база" для всіх операцій.
- Стандартна поведінка: Якщо параметр відсутній, скрипт створить папку
./outputу директорії запуску.
Група — це логічна одиниця.
- Унікальність: Для кожної групи створюється окрема підпапка. Якщо
group_folder_nameне вказано, скрипт автоматично генерує унікальний ID (назва_файлу_timestamp_group_index), щоб запобігти перезапису даних. - Пріоритет шляху: Якщо вказано
path, скрипт ігнорує кореневу папку і зберігає все за цією адресою. - Референс стилю: Перша картинка кожної групи стає "батьківською" для стилю, якщо у промптах увімкнено
first_img_ref.
Кожен об'єкт у масиві prompts описує одне завдання.
- Обов'язкові поля: Тільки
positive. Все інше має безпечні значення за замовчуванням.negative, якщо не вказаний, то виконання продовжується з пустим значеннямnegative - Іменування: Файли іменуються як за конвеєром:
номер ім'я. Group: назва_групи.png. Наприклад:0 cyberpunk_city. Group: NeoTokyo.png
Скрипт автоматично супроводжує кожну групу двома технічними файлами:
time.txt: для аудиту продуктивності (тривалість генерації, timestamp'и початку та кінця генерації).group_prompt.json: повний зліпок стану (конфігурації моделей, параметри семплера, seed)
Всі зображення проходять через процес "очищення":
- Видаляються всі EXIF, PngInfo та блоки даних ComfyUI/AIGC.
- Встановлюється dpi значення рівне 300 DPI.
- Зберігається альфа-канал (якщо увімкнено
remove_bg).
| Параметр | Тип | Обов'язковий | Опис | Стандартна поведінка |
|---|---|---|---|---|
name |
String | Ні | Коротка назва для іменування файлу. | img_{index} |
positive |
String | Так | Текстовий опис того, що має бути на зображенні. | - |
negative |
String | Ні | Опис того, чого не має бути. | "" (пусто) |
seed |
Integer | Ні | Число для детермінованої генерації. | -1 (Random) |
first_img_ref |
Boolean | Ні | Використовувати перше зображення групи як референс стилю. | true |
upscale |
Boolean | Ні | Виконувати апскейл (Ultimate SD Upscale). | true |
remove_bg |
Boolean | Ні | Видаляти фон (BiRefNet) та зберігати RGBA PNG. | true |
Розширений приклад формування workload.json розглянуто у однойменному файлі в корені репозиторію, мінімальний варіант корисного навантаження виглядає так:
{
"root_save_folder": "./my_arts",
"groups": [
{
"group_folder_name": "Space_Cats",
"prompts": [
{ "positive": "cat in spacesuit on Mars" },
{ "positive": "cat eating pizza on the Moon" }
]
}
]
}