Negative Prompt
negative prompt — условие с нежелательными признаками изображения
Negative Prompt описывает признаки, от которых генерацию нужно оттолкнуть. В распространённой схеме classifier-free guidance модель сравнивает предсказания с положительным и отрицательным условиями. Поддержка и смысл поля зависят от модели: одни пайплайны используют отдельный negative prompt, другие обучены работать без него.
Коротко
Negative Prompt — дополнительное текстовое условие для нежелательных свойств: например, надписей, сильного размытия или определённого объекта. Это способ повлиять на генерацию, а не команда удаления. Для точной правки можно выделить область маской или воспользоваться обычным редактором. Перегенерация по маске и структурный контроль тоже не гарантируют нужный результат без проверки.
Как он участвует в генерации
В одном распространённом варианте classifier-free guidance модель делает предсказания для двух условий:
- positive тянет результат к желаемому описанию;
- negative задаёт вторую точку, от которой траектория смещается.
Для классического CFG комбинация предсказаний записывается так:
результат = N + s × (P − N)
Здесь P — предсказание с положительным условием, N — с отрицательным, а s — сила CFG. Это расчёт для очередного шага, не смешивание двух готовых картинок. При s = 1 в этой формуле остаётся только P; отрицательное условие перестаёт влиять.
Это не проверка готового кадра по списку запретов. Слова влияют на весь процесс через выученные ассоциации, поэтому эффект бывает косвенным.
Почему слово не гарантирует удаление
Допустим, в negative prompt написано text. Модель может реже создавать вывески, но не обязана удалить каждую букву. Причины:
- понятие связано с другими признаками сцены;
- объект уже сильно задан positive prompt или референсом;
- модель плохо различает нужное понятие;
- механизм управления работает иначе в этой системе;
- поле negative вообще не используется выбранной моделью.
Если объект обязательно должен исчезнуть, полезнее локальная перегенерация или ручная ретушь с проверкой готового изображения.
Когда negative prompt полезен
- ослабить повторяющийся нежелательный стиль;
- убрать типичную для модели фактуру;
- снизить вероятность случайных надписей;
- отделить два близких визуальных направления;
- сделать воспроизводимое сравнение настроек.
Особенно полезны конкретные признаки. plastic skin понятнее, чем абстрактное bad quality, если проблема действительно в слишком гладкой коже.
Когда он мешает
Длинная строка из десятков общих слов может:
- тянуть композицию в неожиданную сторону;
- убирать нужные детали вместе с нежелательными;
- делать изображение однообразным;
- скрывать настоящую причину артефакта;
- усложнять перенос workflow на другую модель.
Список для одной модели может не подойти другой. Лучше начинать с пустого поля и добавлять только то, что исправляет видимую повторяющуюся проблему.
Поддержка зависит от модели
Интерфейс может показывать negative prompt всегда, но программа генерации использовать его по-разному. Возможны варианты:
- классическая пара positive/negative;
- пустая строка как безусловная ветвь;
- отдельное значение guidance без привычного negative;
- дистиллированный pipeline с другим способом управления;
- модель, которая игнорирует это поле.
Поэтому примеры и документация конкретной модели полезнее универсального набора настроек.
Negative Prompt в ComfyUI
В классическом графе Stable Diffusion два текста кодируются отдельно и передаются в сэмплер:
положительный текст → энкодер ─┐
├→ сэмплер → скрытое представление → VAE → картинка
отрицательный текст → энкодер ─┘
Оба условия должны использовать совместимый текстовый энкодер. Подмена энкодера или закодированного условия от другой архитектуры может дать ошибку либо бессмысленный результат.
В других графах названия входов и узлов могут отличаться. Важно, куда подключено условие и использует ли его выбранный режим.
Как проверять эффект
Самый понятный тест — пара изображений при одинаковых условиях:
- фиксируется seed;
- не меняются положительный промпт, размер, число шагов, сэмплер и остальные настройки;
- первый вариант строится без negative;
- во втором добавляется одна короткая фраза;
- сравнивается именно нужный признак и побочные изменения.
После этого можно проверить ещё несколько seed. Одно удачное совпадение не показывает устойчивый эффект.
Примеры формулировок
Если задача — портрет с естественной фактурой, отрицательное условие может быть коротким:
plastic skin, heavy smoothing, text overlay
Если нужно убрать конкретный предмет:
microphone
Во втором случае результат особенно важно проверить: модель может изменить позу, руку или композицию вместо аккуратного исчезновения объекта.
Positive и negative не обязаны быть зеркалами
Если red dress встречается в обоих текстах, это не означает автоматического удаления красного платья: энкодер обрабатывает фразу вместе с остальным описанием. А если оба закодированных условия полностью одинаковы, в классическом CFG разность P − N равна нулю, но само предсказание остаётся — оно не превращается в пустую картинку.
Часто яснее прямо описать желаемое: blue linen dress вместо попытки перечислить все нежелательные цвета. Positive prompt отвечает за сцену, negative — за несколько действительно мешающих отклонений.
С чем часто путают
- Negative Prompt и inpainting. Текст смещает вероятность, маска задаёт область изменения.
- Negative Prompt и safety filter. Первый относится к художественному управлению, второй — к политике продукта.
- Negative Prompt и negative weight. Ослабление фразы в positive condition и отдельная отрицательная ветвь могут работать по-разному.
- Negative Prompt и детектор качества. Модель не просматривает готовый кадр по чек-листу автоматически.
- Negative Prompt и CFG scale. Один задаёт содержание условия, другой — силу механизма guidance.
Частые ошибки
- Копировать огромный список без проверки. Неясно, какое слово помогает, а какое портит сцену.
- Пытаться исправить анатомию словом
bad anatomy. Для сложной позы полезнее референс, ControlNet или inpainting. - Переносить готовые настройки между архитектурами. У модели может быть другой текстовый энкодер и способ guidance.
- Менять сразу positive, negative и seed. Тогда сравнение ничего не объясняет.
- Считать отсутствие объекта гарантией. Важный запрет проверяют отдельным детектором или человеком.
Частые вопросы
Нужно ли заполнять negative prompt всегда? Нет. Если модель и сцена работают без него, пустое поле проще и понятнее.
На каком языке писать? На том, который хорошо понимает текстовый энкодер модели. Это проверяют по документации и короткому сравнению, особенно для редких терминов.
Можно ли использовать целое предложение? Можно. Но модель может лучше реагировать на короткий конкретный признак. Формат зависит от обучения текстового энкодера.
Почему после добавления negative меняется весь кадр? Текстовое условие может влиять на генерацию с ранних шагов. Даже небольшое изменение способно перестроить композицию, а не только один объект.
Главное
Negative Prompt — мягкое отрицательное условие, а не список гарантированных запретов. Он полезен для нескольких повторяющихся нежелательных признаков, если конкретная модель поддерживает такой механизм. Короткий список, фиксированный тест и точные инструменты контроля обычно дают более понятный результат, чем универсальная строка из чужого workflow.