Воркфлоу генерации JSON-промптов для Seedance 2
Под каждый Seedance 2-проект команда заново изобретает воркфлоу. Кто-то начинает с проверки референсов, кто-то пишет global-блок последним, кто-то про face pre-flight вспоминает только когда фильтр модерации зарубает сабмишн. Под дедлайн обычно отлетают именно те шаги, которые казались дешёвыми и пропускаемыми — image pre-flight, аудит бюджета символов, когерентность маппинга сцен — и стоят они дороже всего, когда падают уже в конце.
Ниже — задокументированная версия этого воркфлоу, чтобы шаги не зависели от того, какой проект оператор делал последним.
Форма end-to-end: на вход — сценарий и референсные стиллы, на выход — production-ready Seedance 2 JSON. Компаньон к системному промпту seedance-2-cinematic-video-prompt-engineer: промпт тащит основную работу, а воркфлоу окружает его дисциплиной (image pre-flight, маппинг сцен, бюджет символов, финальная валидация), чтобы выход промпта приземлялся чисто каждый раз.
Входы
- Сценарий — текстовое описание ролика (на любом языке). Может быть свободной прозой или уже разбитым по кадрам шот-листом.
- Референсные изображения — пронумерованные стиллы ключевых кадров. Имена файлов вида
img1,1.png,shot_01.png. - (Опционально) переопределения — кастомный потолок по символам, целевое число шотов, фиксированные wardrobe / location notes.
Выход
Один сырой JSON-объект (без кодовых ограждений, без прозы), соответствующий структуре, описанной в seedance-2-cinematic-video-prompt-engineer:
{"refs":[...],"g":"...","s":[{"id":"1","c":"...","p":"..."}]}
Процесс
0. Image pre-flight (цензура / фильтр лиц)
В первую очередь проверьте каждый референс на триггерный контент:
- Реальные лица, портретные таблички, фотостены, плотные толпы с видимыми лицами → накладывайте Слой 1 grid overlay по seedance-2-censorship-bypass (белая 100%-непрозрачная сетка, по умолчанию 6×6 @ 12 px; эскалация до 10×10 @ 8 px после первого срабатывания фильтра).
- На референсе уже что-то похожее на сетку (продакшн-планшеты с
+-маркерами)? Проверьте, что это белая непрозрачная сетка; если нет — кладите правильную поверх. - Чувствительный сценарий (мемориал, война, протест, исторически-политический)? Накладывайте сетку, даже если лица вторичны.
- Помечайте в
refs[].r, что картинка с сеткой, чтобы модель не путалась — например,"white 6×6 grid overlay for detector bypass; ignore in output".
Заранее зафиксируйте гигиену Слоя 2 (применяется на шаге 7):
- Никаких возрастных слов, никаких эмоций / бэкграунда, никаких имён публичных персон.
- Каждое
p— это визуальные факты + контекст сцены + production-язык + роль вместо возраста. - Если применён image-оверлей, scene-промпты содержат
no grid lines, no overlay, no mesh, clean skin, smooth image.
1. Проверьте входы
- Сценарий есть? Если нет — попросите.
- Картинки приложены? Сосчитайте их и зафиксируйте имена файлов как есть.
- Уточните любые override (потолок символов, число шотов, специфический VFX-язык) до генерации.
2. Загрузите системный промпт
Используйте seedance-2-cinematic-video-prompt-engineer дословно как system-слой для шага генерации.
3. Разберите сценарий
- Определяйте сцены по смене камеры — новая сцена начинается на кате или на дискретном движении камеры.
- Помечайте: моменты freeze, состояния VFX, композитные оверлеи (текст/UI/логотипы), петли (loops).
- Лочьте: wardrobe, location, описания персонажей.
4. Разберите каждый референс
Для каждого изображения извлеките:
- Wardrobe (цвета, кройка, аксессуары)
- Интерьер / элементы локации
- Положения рук, реквизит, жесты
- Стиль VFX, если есть (grid / pixel / wireframe / particle, цвет, покрытие)
- Угол и крупность камеры
- Цветокор / световое настроение
Выберите PRIMARY-референс (обычно якорь персонажа + локации) — он маппится на большинство сцен.
5. Маппинг images → scenes
Сначала собирайте refs[]. Каждое изображение получает:
img— точное имя файлаs— CSV из ID сцен, к которым применяетсяr— match-описание ≤ 80 символов
6. Пишите глобальное (g)
≤ 300 символов. Должно покрыть: композитные элементы, wardrobe lock, location lock, правила VFX.
7. Пишите сцены (s[])
На каждую сцену:
c— только стенография камеры, ≤ 80 символов. Полная палитра глаголов (ROCKET, whip, CRASH stop, orbit, corkscrew, bullet-time, …).p— только визуальное содержимое кадра, ≤ 250 символов. Никакого повторения камеры. Явный scoping freeze / VFX.
8. Сосчитайте символы
Если общий JSON > потолка (по умолчанию 3500):
- Сначала сжимайте поля
p(плотные аббревиатуры). - Сливайте соседние сцены с похожей камерой и содержимым.
- Сокращайте
g(но никогда не удаляйте заметку о композитных элементах).
9. Финальный проход
- Английский во всём (переводите с любого исходного языка).
- Имена собственные и бренды сохранены.
- Без markdown, без ограждений, без комментариев.
- Валидный JSON (закрытые скобки, экранированные кавычки).
10. Доставка
Вставьте сырой JSON и только его. Предложите: «Покрутить какой-то шот / сжать потолок / добавить сцену?»
Частые вариации
- Loop-видео —
pпоследней сцены должно явно указывать «final frame matches shot 1 first frame»; камера вcреверсирует открывающее движение. - Сцены с freeze — каждая замороженная сцена прописывает позу + «Zero movement.».
- Много текстовых оверлеев —
gявно перечисляет «empty comp spaces»; сцены отмечают, где эти пустоты в кадре. - Несколько персонажей — каждому персонажу одна заблокированная строка wardrobe в
g; референсы с несколькими людьми идут как PRIMARY на большинство сцен.
Анти-паттерны
- Описание движения камеры внутри
p— это вc. - Прописывание текстового содержимого композитных титров — никогда.
- Добавление
"type":"cut"или других расширений схемы — это не часть контракта. - VFX, протекающие на персонажей без явного «chars CLEAN» — нельзя.
- Забыть пометить PRIMARY-референс.
- Пропустить image pre-flight на face-heavy референсах — большинство срабатываний фильтра предотвращается на этапе загрузки (см. seedance-2-censorship-bypass).
- Возрастные слова в
p—young,child,elderlyи т. д. поднимают подозрение ко всему промпту. - Эмоциональная рамка — «remembering», «sad», «hopeful» → заменяется визуальными фактами.
Идёт в паре с
- seedance-2-cinematic-video-prompt-engineer — системный промпт, который этот воркфлоу потребляет.
- seedance-2-censorship-bypass — полные правила обхода фильтра лиц.
- happy-horse-prompt-rules — эквивалентные правила для конкурирующей модели Happy Horse; полезно при выборе генератора под бриф.