Запрос «девушка в красном платье на фоне осеннего парка», введённый на русском прямо в поле промта Stable Diffusion, почти всегда даёт размытую, случайную картинку, слабо связанную с описанием. Причина проста: текстовый энкодер CLIP, на котором обучались популярные модели (SD 1.5, SDXL), понимает русский язык очень ограниченно — основной корпус обучающих данных был англоязычным.
Однако это не значит, что русскоязычному пользователю придётся учить английский с нуля. Существуют рабочие обходные пути: автоматический перевод промтов, специальные модели с поддержкой русского языка и готовые словари устойчивых формулировок. Ниже разберём каждый вариант и покажем, как получать предсказуемый результат.
Почему русские промты работают плохо
Генерация изображения в Stable Diffusion начинается с того, что текстовый энкодер преобразует ваш запрос в набор числовых векторов. Модель «понимает» только те слова и конструкции, которые встречались в подписях к картинкам при обучении. Для большинства чекпоинтов это английские описания с крупных фотостоков и арт-платформ.
Русские слова либо разбиваются на бессмысленные токены, либо интерпретируются случайным образом. Отдельные термины вроде «матрёшка» или «балалайка» модель может распознать — они попали в обучающую выборку, — но связный русский текст целиком она обработать не способна.
⚠️ Внимание: если вы вставили длинный русский промт и получили шум или абстракцию — это не поломка программы и не слабая видеокарта. Это ожидаемое поведение модели, не обученной русскому языку.
Способ 1: перевод промта через онлайн-переводчик
Самый доступный вариант — писать описание на русском, а затем переводить его на английский через DeepL, Google Translate или похожий сервис. Переведённый текст вставляется в поле промта в AUTOMATIC1111, ComfyUI или другом интерфейсе.
Чтобы перевод получался точным, формулируйте исходный запрос простыми фразами без двойных смыслов и идиом. Сравните: «девушка, одетая в красное вечернее платье, стоит в осеннем парке, золотые листья, мягкий вечерний свет» переводится заметно лучше, чем образное «красавица в багрянце осени».
Полезная практика — вести собственный словарик устойчивых пар «русский запрос → английский промт», которые дали хороший результат. Через пару недель работы у вас соберётся личная база формулировок.
Способ 2: расширения для автоперевода
Для веб-интерфейса AUTOMATIC1111 существуют расширения, которые переводят русский текст на английский автоматически прямо при генерации — например, плагины автоперевода промтов, доступные в каталоге расширений. После установки вы пишете по-русски, а модель получает уже английский вариант.
Общий порядок настройки выглядит так (точные названия пунктов зависят от версии интерфейса и конкретного расширения — сверяйтесь с инструкцией самого плагина):
- 🧩 Откройте вкладку
Extensionsи установите расширение автоперевода из каталога или по ссылке на репозиторий. - ⚙️ Перезапустите интерфейс и активируйте переводчик в настройках расширения.
- 🌐 Выберите сервис перевода, если расширение предлагает несколько вариантов.
- ✍️ Введите русский промт, запустите генерацию и сравните результат с переведённым текстом в логе.
☑️ Проверка работы автоперевода
⚠️ Внимание: расширения обращаются к внешним сервисам перевода, поэтому без интернета автоперевод не сработает. Если генерация внезапно стала давать мусор, первым делом проверьте, не отключился ли переводчик.
Способ 3: модели с поддержкой русского языка
Есть и принципиально иной подход — использовать модели, изначально обученные понимать русский. Наиболее известный пример — Kandinsky от Сбера: эта модель работает с русскими промтами нативно, без промежуточного перевода. Также существуют мультиязычные версии и дообученные варианты других архитектур.
Компромисс заключается в том, что экосистема Stable Diffusion (тысячи чекпоинтов, LoRA, ControlNet-расширений) строилась вокруг английских промтов. Переходя на русскоязычную модель, вы получаете удобство ввода, но теряете часть совместимости с готовыми ресурсами и гайдами.
Структура хорошего промта
Независимо от способа перевода качество результата зависит от структуры запроса. Английский промт для Stable Diffusion обычно строится из блоков, перечисленных через запятую: сначала главный объект, затем детали, стиль, освещение и технические параметры качества.
Ниже — соответствие русских описаний типичным английским блокам:
| Блок промта | Пример по-русски | Английский эквивалент |
|---|---|---|
| Главный объект | портрет девушки | portrait of a girl |
| Детали | рыжие волосы, веснушки | red hair, freckles |
| Стиль | цифровая живопись | digital painting |
| Освещение | мягкий закатный свет | soft sunset lighting |
| Качество | высокая детализация | highly detailed, sharp focus |
Пример готовой пары «русский → английский»
Русский: «уютная деревянная изба зимой, тёплый свет в окнах, снег, сказочная атмосфера, высокая детализация». Английский промт: cozy wooden cabin in winter, warm light in the windows, snow, fairytale atmosphere, highly detailed. Негативный промт: blurry, low quality, deformed.
Не забывайте про негативный промт — поле, где перечисляется то, чего на картинке быть не должно: blurry, low quality, extra fingers, deformed hands. Русский текст в это поле вставлять бессмысленно по той же причине — модель его не поймёт.
Типичные ошибки при работе с русскими промтами
- 🚫 Вставка русского текста напрямую в модель, обученную только на английском, и ожидание осмысленного результата.
- 🔤 Дословный перевод идиом и метафор — «душа компании» превратится в «soul of the company» и собьёт генерацию.
- 📏 Слишком длинные промты: после определённого лимита токенов хвост запроса обрезается или теряет вес.
- 🔁 Дублирование одних и тех же слов в промте и негативном промте одновременно — это конфликт инструкций.
Отдельная ловушка — веса и синтаксис выделения вроде (word:1.3). Если переводчик «дорисует» к русскому тексту лишние скобки или двоеточия, интерфейс может интерпретировать их как команды усиления веса. Всегда проверяйте итоговый английский текст на посторонние символы.
Как улучшать результат итеративно
Редко удаётся получить идеальную картинку с первого запуска. Рабочий цикл выглядит так: сгенерировали → нашли отклонение от задумки → изменили один блок промта, а не весь текст сразу → сгенерировали снова. Меняя всё скопом, вы не поймёте, какое именно слово повлияло на результат.
Фиксируйте параметр seed при отладке: с одним и тем же seed разные варианты промта сравниваются честно, без влияния случайности. Когда формулировка найдена, seed можно отпустить и генерировать вариации.
Также полезно изучать готовые английские промты на площадках вроде Civitai — многие авторы публикуют их вместе с картинками. Подставляйте свои русские описания в проверенные шаблоны через перевод, и качество заметно вырастет.
Частые вопросы
Понимает ли Stable Diffusion русский язык вообще?
Базовые модели (SD 1.5, SDXL) — практически нет: они обучались на англоязычных подписях. Отдельные модели, например Kandinsky, нативно работают с русским. Для остальных нужен перевод на английский.
Какой переводчик лучше для промтов?
Подойдёт любой качественный сервис — DeepL или Google Translate. Важнее не выбор переводчика, а простота исходной русской формулировки: короткие фразы без идиом переводятся точнее.
Можно ли писать негативный промт на русском?
Нет, по той же причине: модель не распознает русские слова и проигнорирует их. Негативный промт всегда пишется на английском, например: blurry, low quality, watermark.
Почему переведённый промт даёт не то, что я задумал?
Возможные причины: переводчик исказил смысл, в промте есть двусмысленные слова, или слишком длинный запрос обрезался по лимиту токенов. Переведите текст обратно на русский и проверьте смысл, затем сократите и уточните формулировку.
Есть ли смысл учить английский ради Stable Diffusion?
Полный язык учить не обязательно — достаточно выучить несколько десятков частых терминов (освещение, стили, качество, ракурсы). Этого словаря хватит, чтобы составлять промты без переводчика и быстрее читать чужие примеры.