Сервис pinock.io генерирует изображения животных в эстетике советских спичечных коробков — бесплатно, без регистрации, каждые 30 секунд новая картинка. За несколько недель работы в базе накопилось около 6700 изображений. Под капотом — модель FLUX.2-klein с кастомной LoRA и нестандартный двухпроходный пайплайн, который автор называет «sandwich».
Пайплайн устроен так: первый проход генерирует изображение с LoRA при агрессивном scale=2.0, что даёт выраженный стиль, но ломает анатомию животных — появляются лишние конечности, сросшиеся головы. Второй проход запускает FLUX.2-klein уже без LoRA в режиме img2img от результата первого прохода с параметром strength=0.9, фактически перерисовывая изображение почти с нуля. От первого прохода остаётся только низкочастотный сигнал — цветовой профиль и общая композиция. Это и создаёт узнаваемую matchbox-эстетику без анатомических артефактов.
| Вариант | Описание | Параметры | Результат |
|---|---|---|---|
| A | Pure FLUX без LoRA | baseline | Реалистичные иллюстрации, никакого matchbox-стиля |
| B | LoRA raw, голый промпт | lora_scale=2.0 | Полный коллапс: текстурный шум вместо животных |
| C | Текущий прод-sandwich | lora=2.0, pass2_strength=0.9 | Узнаваемые животные с matchbox-эстетикой, стабильно |
| D | Single-pass со style-промптом | lora=1.0, развёрнутый style-промпт | Кириллица в выходе, коллапс категорий — leakage |
| E | Edit-style refinement | init=A, lora=1.0, strength=0.5 | Стиль почти не виден, лёгкий иллюстративный фильтр |
Пост в r/StableDiffusion принёс развёрнутый технический комментарий от пользователя u/DelinquentTuna с тремя конкретными претензиями. Первая: зачем выкручивать LoRA до scale=2.0, если pass-2 при strength=0.9 затирает около 90% её результата? Вторая: FLUX.2-klein поддерживает нативный edit/style-transfer — на RTX 4080 16GB критик получил вывод в четыре раза большего разрешения (~1024×1024) за 9 секунд с более когерентным стилем. Третья: датасет из ~300 примеров слишком мал для обучения matchbox-эстетике с её halftone-текстурами, ограниченной палитрой и литографическими деталями — нужно минимум в пять раз больше.
Двухпроходный «sandwich»-пайплайн оказался патчем поверх переобученной LoRA, а не оптимальным решением.
Чтобы проверить каждое замечание, автор провёл ablation-исследование: 5 вариантов пайплайна × 5 категорий животных (кошка, лиса, сова, лев, волк) × 3 сида = 75 изображений. Варианты охватывали чистый FLUX без LoRA (baseline), raw-вывод LoRA при scale=2.0, текущий прод-sandwich, single-pass со style-промптом при scale=1.0 и edit-style refinement через img2img.
Результаты оказались показательными. Вариант B — raw LoRA при scale=2.0 — показал полный коллапс: все пять категорий животных на каждом сиде выглядели почти одинаково, как текстурный шум одного оттенка. Никакой анатомии, только «отпечаток» плаката. Именно это автор наблюдал при разработке и именно для этого придумал sandwich — чтобы спрятать катастрофу за вторым проходом.
Вариант D — single-pass со style-промптом при scale=1.0, то есть первый совет критика — дал неожиданный эффект: на части изображений появилась кириллица в подписях («СТАДИНАМ» и похожий гибберишный текст), а несколько категорий животных схлопнулись в почти идентичные красные силуэты на чёрном фоне. Это классический training-set leakage: LoRA, обученная на советских плакатах с кириллицей и красным доминантным фоном, при умеренном scale начинает воспроизводить конкретные обучающие примеры целиком, а не переносить абстрактный стиль. Совет критика теоретически верный — но на переобученной LoRA он только обнажает проблему.
Вариант E — edit-style через img2img при strength=0.5 — не дал достаточного стилевого эффекта. При умеренных значениях LoRA не пробивает FLUX-prior, картинки выглядят как baseline с лёгким иллюстративным фильтром. Повышение strength до 0.7 и выше возвращает логику sandwich — и снова приводит к тем же артефактам leakage.
Текущий sandwich выиграл сравнение среди пяти вариантов, но вывод автора однозначный: это патч поверх плохо обученной LoRA. Все альтернативные подходы упираются в одну и ту же проблему — модель переобучена на конкретные примеры из датасета, а не на абстрактную эстетику. Единственный реальный фикс — третий совет критика, который автор откладывал: пересборка датасета с 300 до 1500 примеров с чистой разметкой и переход на single-pass пайплайн. Именно это сейчас и происходит.


