Редактирование в Seedream 5.5: как сохранить детали при нескольких правках

Сохраняйте принятые версии, задавайте защищённые области и проверяйте изменения пикселей локальным скриптом. Разбираем повторные правки и точное совмещение изображений.

Тиски удерживают полосатую ленту: цвет меняется только на её свободном конце

Чтобы контролировать последовательное редактирование в Seedream 5.5, храните нетронутый оригинал, запрашивайте одно изменение за шаг и принимайте результат только после проверки — до передачи на следующий шаг. Описывайте сохраняемые детали так же точно, как желаемое изменение. Сравнивайте скачанные файлы, а не только последний предпросмотр.

ByteDance подчёркивает стабильность последовательных правок в анонсе Seedream 5.5. Это повод проверить сохранение деталей на своих изображениях, но не гарантия неизменности всего, что вы не просили менять. Здесь предложен порядок оценки и проверенный локальный код сравнения. Мы не выполняли серию правок в Seedream 5.5: промпты не тестировались, а приложенные изображения созданы искусственно для проверки скрипта.

Начните с проверяемых требований

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

Требования здесь проверяются разными способами:

ТребованиеКак проверитьПризнак ошибки
Корпус бутылки стал оранжевымОсмотреть нужную областьПерекрашен другой объект
На этикетке осталось A-17Сверить надпись с утверждённым текстомСимвол изменён или пропал
Кадрирование сохраненоСравнить размеры и расположение объектовИзменилась обрезка, масштаб или перспектива
Фон не изменилсяОсмотреть и сравнить защищённые пикселиПолоса сдвинулась или изменились цвета фона
Финальный файл пригоден к использованиюПроверить в размере размещения и полном разрешенииНовые дефекты краёв или размытые детали

Фразы «всё остальное без изменений» недостаточно без критериев приёмки. В концепте допустимо небольшое изменение света, а в финальном брендированном материале могут требоваться буквально исходные пиксели логотипа. Определите стандарт до редактирования.

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

Убедитесь, что сервис подходит

Руководство по доступу к Seedream 5.5 отделяет анонс модели от доступности в конкретном аккаунте. В публичном каталоге Ofox 10 ноября 2026 года мы не нашли 5.5. Здесь нет непроверенного API ID и утверждения, что Ofox предоставляет специальный параметр маски для Seedream.

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

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

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

Создайте папку со следующими файлами:

master.png
requirements.txt
01-body-color.txt
02-cap-color.txt
edit-log.csv
outputs/

В requirements.txt перечислите неизменяемые детали обычным языком. Для предлагаемого теста:

Keep the original canvas dimensions and camera viewpoint.
Preserve the bottle's outline, position and proportions.
The front label must still read A-17, with the same placement.
The blue stripe and all other background content must remain unchanged.
The first revision changes only the bottle body color.
The second revision changes only the cap color.
Reject a revision if it changes a protected requirement.

В архиве инструментов проверки есть CSV-журнал правок. Для каждого шага записывайте входную версию, промпт, выходной файл, результат проверки защищённых областей и текста, решение о принятии или отклонении. Имена файлов полезны, только если позволяют установить реальную исходную версию; final-new-final.png не даёт понятной истории.

Выполните первую правку

Это предлагаемый промпт, а не отчёт об успешном вызове модели:

Edit the attached image. Change only the travel bottle's body color to orange.
Keep the cap, label, bottle outline, position, proportions and camera viewpoint.
Keep the label text exactly A-17 and preserve its placement and size.
Do not change the tabletop, blue background stripe or any other background detail.
Keep the original framing and output dimensions if this interface supports them.
Do not add objects, shadows, captions or decorative text.

Скачайте оригинальный результат как 01.png. До следующего шага сравните его с master.png. Прочитайте A-17, осмотрите крышку и полосу на фоне, проверьте весь кадр на незапрошенные изменения. Оранжевый корпус — лишь одно из требований.

Если результат отклонён, запишите причину и повторите попытку от оригинала. Не пытайтесь исправлять несколько посторонних изменений длинной цепочкой, если именно такой процесс не является предметом оценки. Иначе условия теста будут постоянно меняться.

Продолжайте от принятой версии

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

Edit the attached accepted revision. Change only the bottle cap to pale blue.
Preserve the orange bottle body from this input.
Keep the label exactly A-17, with the same size and placement.
Keep the bottle outline, position, proportions, camera viewpoint and framing.
Do not change the tabletop, blue background stripe or other content.
Do not introduce any additional text or objects.

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

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

Проверьте защищённые пиксели локально

Скрипт check_edit.py из архива сравнивает декодированные значения RGBA за пределами разрешённой маской области редактирования. Он не вызывает API и не меняет входные файлы. Маска используется только этим скриптом; это не заявленное поле запроса Seedream.

Создайте в редакторе 01-mask.png точно такого же размера, как оригинал. Закрасьте чёрным области, пиксели которых должны сохраниться, а белым — область допустимых изменений. Сохраните маску как PNG в оттенках серого без потерь. Скрипт разрешает изменения при любом ненулевом значении маски, поэтому защищённые участки должны быть строго чёрными. Не расширяйте разрешённую область так, чтобы случайно включить этикетку или фон, которые нужно защитить.

Установите Python 3 и Pillow в виртуальном окружении и выполните:

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install Pillow
python3 check_edit.py master.png 01.png 01-mask.png

Команды активации используют синтаксис macOS/Linux. Запускайте их из распакованной папки инструментов либо указывайте полные пути. В Windows используйте соответствующую команду активации для своей оболочки.

Скрипт сообщает:

  • количество защищённых пикселей;
  • количество защищённых пикселей, изменившихся хотя бы немного;
  • их долю и среднее абсолютное различие значений каналов;
  • максимальное различие значений канала.

Если размеры изображений различаются или в маске нет защищённых пикселей, скрипт останавливается. Он не подгоняет размеры изображения незаметно ради успешной проверки.

Что подтверждают локальные тесты

Запустите приложенные положительный и отрицательный контрольные примеры:

python3 check_edit.py fixtures/before.png fixtures/clean-edit.png fixtures/allowed-mask.png
python3 check_edit.py fixtures/before.png fixtures/drift-edit.png fixtures/allowed-mask.png

Оба используют изображение 100 × 100 с разрешённой областью 20 × 20: защищены 9 600 пикселей. Мы проверили, что корректная правка меняет ноль защищённых пикселей. Пример с отклонением меняет один защищённый пиксель, и скрипт его обнаруживает. Эти тесты проверяют инструмент, а не качество Seedream.

Локальное сравнение обнаруживает один изменённый защищённый пиксель в искусственном отрицательном примере

Скриншот локального отчёта на английском языке: ноль изменённых защищённых пикселей в корректном примере и один в отрицательном. Это не бенчмарк модели.

Реализация использует операции с изображениями Pillow. Она сравнивает декодированные значения каналов без нормализации цветового профиля. Входные файлы должны иметь совпадающую геометрию и эквивалентную интерпретацию цвета. Повторное JPEG-сжатие, смена профиля или невидимых RGB-значений полностью прозрачных пикселей могут дать численную разницу без видимого изменения, внесённого моделью.

По возможности сохраняйте оригиналы без потерь и оценивайте содержание вместе с числами. Малое численное различие может скрыть неверную цифру; большое — отражать изменение способа экспорта. Универсальный порог разницы пикселей не заменяет требования задачи.

Исправьте отклонение, сохранив полезный результат

До повторного вызова модели определите тип ошибки:

ОшибкаКак действовать
Изменён не тот объектУточнить описание или использовать поддерживаемое выделение и начать от принятой версии
Фон изменён без запросаОтклонить результат, уточнить инструкцию и сравнить снова
Изменился важный логотип или текст этикеткиСохранить оригинал отдельным слоем или вернуть его при совмещении вместо повторной генерации
Изменились кадрирование или размерыПроверить экспорт и начать от правильной версии; не скрывать проблему подгонкой размеров
Поздняя правка отменила ранее принятуюПодать принятую версию и явно потребовать сохранить утверждённое изменение
Запрос завершился ошибкой до выдачи изображенияРазобрать фактическую ошибку API, а не менять визуальный промпт

Для последнего случая см. разбор ошибок API изображений. Для сравнения с другой моделью в руководстве по markup-редактированию GPT Image 2.6 приведены отдельные реальные результаты и описан использованный способ вызова. Наличие там поля markup не доказывает поддержку такого же поля в Seedream.

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

Принимайте проверенную финальную версию

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

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