КАДР

Как сохранить одного персонажа во всех кадрах: консистентность в AI-генерации

Ален основатель КАДР Обновлено 2026-07-12 6 мин чтения

Нейросеть теряет лицо героя между кадрами, потому что каждую генерацию она начинает с нуля: у неё нет памяти о том, кого она рисовала минуту назад, и текстовое описание внешности она каждый раз интерпретирует заново. Чинится это не промптом, а референсами: вы показываете модели изображение персонажа и заставляете опираться на него, а не на своё воображение. Ниже четыре рабочих способа, пошаговый воркфлоу для серии кадров и разбор ошибок, из-за которых лицо всё равно уплывает.

Почему модель забывает героя

Причина не в том, что промпт плохой. Причина в том, что каждая генерация независима.

Модель не помнит предыдущий кадр. Для неё каждый запуск это чистый лист. Когда вы пишете «мужчина 30 лет, короткая борода, серая куртка», вы описываете не человека, а целый класс людей: под это описание подходят миллионы лиц. Модель каждый раз выбирает из этого класса заново, и совершенно логично, что выбирает разное.

Текст просто не обладает нужной точностью. Даже если вы распишете разрез глаз, форму носа и родинку на щеке, вы всё равно опишете тип внешности, а не конкретное лицо. Поэтому бороться с проблемой на уровне промпта бессмысленно, сколько бы прилагательных вы ни добавили.

Решение одно: перестать описывать персонажа словами и начать показывать его картинкой.

Способ 1. Референсное изображение

Базовый и самый рабочий приём. Вы загружаете изображение персонажа как образец, и модель опирается на него.

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

Что делает референс хорошим:

  • Лицо крупно и в фокусе. Если герой занимает десятую часть кадра, модели не с чего считывать черты.
  • Нейтральный свет. Резкие тени и цветные подсветки модель воспримет как часть внешности и потащит их дальше.
  • Нейтральное выражение. Улыбка до ушей на референсе имеет шанс приклеиться к персонажу навсегда.
  • Несколько образцов лучше одного. Если модель принимает больше одного референса, дайте ей разные ракурсы.

Способ 2. Чарактер-шит

Логичное развитие первого способа и то, что отличает любителя от человека, который делает это на потоке.

Чарактер-шит это набор изображений одного героя с разных сторон: анфас, профиль, три четверти, в полный рост, крупный план. Собирается один раз, дальше используется во всех сценах.

Зачем это надо. Один фронтальный референс отлично работает, пока герой смотрит в камеру. Как только он поворачивается боком, модели приходится додумывать профиль, которого она не видела, и она додумывает его каждый раз по-разному. Дайте ей профиль заранее, и додумывать будет нечего.

Как собрать чарактер-шит на практике:

  1. Сгенерируйте или возьмите одно хорошее фронтальное изображение героя.
  2. Прогоните его через модель редактирования (например, Nano Banana Pro), попросив показать того же человека в профиль, потом в три четверти, потом в полный рост. Модели редактирования как раз и умеют менять ракурс, сохраняя лицо.
  3. Отбракуйте кадры, где лицо изменилось. Это нормально, отбраковка будет.
  4. Сохраните итоговый набор. Это ваш герой, дальше вы только им и пользуетесь.

Способ 3. Last-frame chaining

Приём для длинных сцен, где герой должен непрерывно переходить из ролика в ролик.

Суть: вы генерируете первый отрезок, берёте последний кадр готового ролика и подаёте его стартовым кадром для следующего. Модель начинает новую сцену ровно с того места, где закончилась предыдущая, и тащит за собой не только лицо, но и одежду, свет, обстановку.

Плюс: склейка получается почти бесшовной, персонаж не может измениться, потому что модель отталкивается от реального кадра, а не от описания.

Минус: ошибки накапливаются. Если на пятом ролике у героя чуть поплыло лицо, шестой унаследует уже испорченную версию, седьмой ухудшит её ещё. Поэтому цепочку нельзя тянуть бесконечно: каждые несколько сцен возвращайтесь к исходному чарактер-шиту, чтобы сбросить накопленный дрейф.

Способ 4. Дисциплина промпта

Не заменяет референсы, но без этого они работают хуже.

Опишите персонажа один раз и дальше копируйте это описание дословно. Не «мужчина в куртке» в одной сцене и «парень в серой куртке» в другой. Любое изменение формулировки модель воспринимает как указание что-то поменять.

Не описывайте внешность заново, если дали референс. Это главная ошибка. Когда у модели есть и картинка, и подробное текстовое описание лица, они начинают конфликтовать, и модель ищет компромисс между ними. В итоге получается человек, похожий и на референс, и на описание, но не равный ни тому, ни другому. Если есть референс, в промпте описывайте действие и сцену, а не героя.

Разделяйте персонажа и контекст. «Тот же мужчина, теперь на кухне, наливает кофе, утренний свет из окна». Герой берётся из референса, остальное из текста.

Какой способ когда применять

Способ Что решает Когда применять Слабое место
Референс Задаёт лицо вместо текста Всегда, это база Работает хуже на непривычных ракурсах
Чарактер-шит Закрывает все ракурсы героя Серия из 3 и более сцен Нужно собрать один раз, это время
Last-frame chaining Непрерывность между сценами Длинные монтажные куски Ошибки накапливаются от сцены к сцене
Дисциплина промпта Убирает конфликт текста и картинки Всегда, вместе с референсом Сама по себе консистентности не даёт

Правильный набор почти всегда такой: чарактер-шит как основа, референсы в каждой сцене, дисциплина промпта поверх и last-frame chaining только там, где нужен непрерывный переход.

Пошаговый воркфлоу для серии кадров

Как это выглядит на практике, если вам нужен ролик из восьми сцен с одним героем.

  1. Соберите героя. Сгенерируйте фронтальный портрет, доведите его до того состояния, когда он вам нравится. Не жалейте попыток тут: это лицо вы увидите ещё много раз.
  2. Соберите чарактер-шит. Через модель редактирования получите профиль, три четверти, полный рост. Отбракуйте неудачные.
  3. Отладьте промпт на дешёвой модели и в низком разрешении. Проверяете не картинку, а то, держит ли модель лицо. Разрешение для этого не нужно, а разница в цене пятикратная.
  4. Сгенерируйте сцены. В каждой подавайте референсы и описывайте только действие. Модель, которая принимает несколько образцов сразу, тут сильно выигрывает.
  5. Длинные куски тяните через last-frame chaining, но каждые три или четыре сцены возвращайтесь к чарактер-шиту, чтобы сбросить дрейф.
  6. Финал перегенерируйте в высоком разрешении уже отлаженными промптами.

Пять ошибок, из-за которых лицо всё равно плывёт

  1. Референс низкого качества. Мелкое лицо, шум, размытие. Модель считывает то, что видит, а видит она кашу.
  2. Описание внешности при наличии референса. Текст конфликтует с картинкой, модель ищет компромисс, получается третий человек.
  3. Запрос ракурса, которого нет в референсах. Просите вид сзади, не дав ни одного профиля? Модель придумает затылок сама, и каждый раз новый.
  4. Бесконечная цепочка last-frame. Ошибки копятся, к десятой сцене герой становится своим дальним родственником.
  5. Смена формулировок между сценами. Каждое переписывание описания это сигнал модели что-то изменить.

Что в итоге

Консистентность персонажа это не свойство модели и не следствие удачного промпта. Это процесс: сначала вы фиксируете героя в виде набора изображений, потом везде опираетесь на них, а текстом описываете только то, что герой делает.

Модели, которые заявляют стабильность персонажа между кадрами и принимают несколько референсов сразу, экономят на этом много времени. Но даже они не спасут, если вы каждый раз описываете лицо словами и надеетесь на совпадение.

Частые вопросы

Почему нейросеть меняет лицо персонажа между кадрами?
Потому что каждая генерация независима. У модели нет памяти о предыдущих кадрах, и текстовое описание вроде «мужчина 30 лет с бородой» она каждый раз интерпретирует заново, выдавая другого человека. Текст слишком неточен, чтобы задать конкретное лицо.
Как заставить нейросеть сохранить одного персонажа?
Использовать референсное изображение вместо текстового описания. Вы загружаете фото персонажа в качестве образца, и модель опирается на него, а не на своё воображение. Это единственный надёжный способ: одним промптом, каким бы подробным он ни был, консистентности не добиться.
Что такое чарактер-шит и зачем он нужен?
Это набор изображений одного персонажа с разных ракурсов: анфас, профиль, три четверти, в полный рост. Он собирается один раз и дальше используется как референс для всех сцен. Чем больше ракурсов, тем меньше модель фантазирует, когда герой поворачивается.
Что такое last-frame chaining?
Приём для склейки длинных сцен: вы берёте последний кадр готового ролика и подаёте его как стартовое изображение для следующего. Персонаж, свет и обстановка переходят в новую сцену автоматически, потому что модель отталкивается от реального кадра, а не от описания.
Какие модели лучше держат персонажа?
Те, что умеют работать с референсными изображениями и заявляют стабильность героя между кадрами. Например, Seedance 2.0 держит персонажа между кадрами и принимает несколько образцов сразу. Для подготовки самих референсов удобнее модели редактирования вроде Nano Banana Pro, которые меняют ракурс и одежду, сохраняя лицо.
Почему персонаж всё равно плывёт, хотя я использую референс?
Три частые причины. Первая: референс низкого качества или лицо на нём слишком мелкое. Вторая: в промпте вы заново описываете внешность, и текст начинает конфликтовать с картинкой. Третья: вы просите ракурс, которого нет в референсах, и модели приходится додумывать.

Соберите персонажа в одном окне

В КАДР можно подготовить референсы в Nano Banana Pro, а потом в режиме «Кадры» подать до 6 фото сразу в видеомодель вроде Seedance 2.0, которая держит персонажа между кадрами. Не нужно скакать между сервисами: подготовка образцов и генерация видео идут в одном интерфейсе. Оплата рублями, цена генерации видна до запуска.

Попробовать
Ален
Основатель КАДР. 5 лет в автоматизации, больше 50 проектов. Подключал модели генерации напрямую через API, поэтому цены в статье это не пересказ чужих обзоров.