Новинка: Nano Banana 2.1Попробовать модель
API Hubs

Изображения

Редактирование изображений

Редактирование по референсам: замена фона, композиции с продуктом, перенос стиля и цепочка действий Midjourney от imagine до inpaint.

4 мин чтенияразделов: 10

Передайте референсы, чтобы заменить фон, совместить фотографии товара или изменить часть изображения. Большинство моделей используют тот же endpoint создания и поле urls; проверьте поля выбранной модели. У Midjourney операцию выбирает action, а последующие действия ссылаются на taskId генерации.

Что редактируют

ЗадачаСпособС чего начать
Заменить фон продуктаодин референс и описание нового фонаnano-banana-pro, z-image
Поместить продукт в сценудва референса в значимом порядкеwan2.7-image, gpt-image-2
Сохранить персонажакаждый раз передавать один лист персонажаnano-banana-2, seedream-*
Повторить стиль брендапоказать стиль вместо списка эпитетовgpt-image-2, seedream-*
Исправить одну областьмаска и перерисовкаmidjourney modal / inpaint
Расширить кадрpan или zoom outmidjourney
Выбрать плитку сетки 2×2upscalemidjourney
Получить описание картинкиобратный промптmidjourney describe

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

Какую модель выбрать

nano-banana-pro / nano-banana-2 — универсальные редакторы с числом референсов до 14 и хорошим пониманием «измени это, сохрани то». Pro поддерживает 4K и подходит для замены фона и предметов.

gpt-image-2 следует инструкциям и лучше сохраняет читаемый текст. Она принимает до 16 URL или base64 data URI, что удобно для закрытых исходников.

wan2.7-image / wan2.7-image-pro полезны для композиции: порядок референсов значим, поэтому фразы image 1 и image 2 однозначны. Также можно задать точные width и height.

seedream-* работает с большим набором референсов и хорошо удерживает стиль серии. z-image делает быструю правку по одному референсу; если size не задан, сохраняет формат исходника.

midjourney представляет целый процесс: imagine, upscale, variation, pan, zoom, inpaint и другие операции над предыдущей задачей.

Как написать инструкцию для правки

Хороший edit-промпт состоит из двух частей:

что изменить → что оставить неизменным.

text
Replace the overcast sky with a clear blue one. Keep the building, the
lighting on the facade and the framing exactly as they are.
  • Явно назовите якорь. «Сохранить продукт, этикетку и положение» — самая полезная фраза для предметной правки.
  • Одно изменение на запрос. Две последовательные правки понятнее одного сложного запроса и оставляют промежуточный файл для отката.
  • Обращайтесь к нескольким референсам по позиции. Для wan2.7-image* image 1 и image 2 соответствуют порядку urls.
  • Показывайте стиль. «Повтори цветокоррекцию и зерно изображения 2» точнее списка прилагательных.

Рецепты

Заменить предмет, сохранить комнату — nano-banana-2:

The original living-room input supplied with the Google editing example; its generation prompt is not published.
The original living-room input supplied with the Google editing example; its generation prompt is not published.

Source: Google AI for Developers, used under CC BY 4.0; format and dimensions adapted.

text
Using the provided image of a living room, change only the blue sofa to be a
vintage, brown leather chesterfield sofa. Keep the rest of the room, including
the pillows on the sofa and the lighting, unchanged.

Вторая фраза фиксирует комнату, подушки и свет, чтобы локальная правка не стала полным редизайном.

Nano Banana 2.1 changes only the sofa while retaining the room, pillows and lighting from the source.
Nano Banana 2.1 changes only the sofa while retaining the room, pillows and lighting from the source.

Source: Google AI for Developers, used under CC BY 4.0; format and dimensions adapted.

Перенести продукт в комнату — wan2.7-image, два референса:

text
Put the chair from image 1 into the room from image 2. Match the window light
and cast a soft shadow on the floor. Do not change the room's furniture or
the chair's upholstery.

Тот же персонаж в новой сцене — nano-banana-2:

text
The person from the reference, now standing on a train platform at night,
three-quarter view, rain, sodium lighting. Keep their face, hair and jacket
identical to the reference.

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

Перенести стиль — gpt-image-2, два референса:

text
Redraw image 1 in the visual style of image 2 — same palette, line weight and
grain. Keep the composition and subject of image 1 unchanged.

Перерисовать область — midjourney, action: "modal", поле maskUrl:

text
A ceramic mug in the masked area, same lighting and perspective as the rest of
the frame

About these samples. Ready-made examples are copied to our own storage only when their source permits reuse. The exact prompt appears above each result, and the original source and license are linked below the media.

Поля референсных изображений

МодельПолеЛимитФормат источника
nano-banana, nano-banana-prourlsдо 14URL
nano-banana-2, nano-banana-2-liteurlsдо 14URL
gpt-image-2urlsдо 16URL или base64 data URI
seedream-*urlsдо 14URL или base64 data URI
wan2.7-image, wan2.7-image-prourls1–4URL
z-imageurlsровно 1URL
grok-imagine-1.5-imageurls1URL
midjourney (edits)imageUrlsдо 16URL или base64 data URI

Публичный URL должен оставаться доступным, пока провайдер его скачивает. Истёкшая signed-ссылка или файл за логином приведёт к failed уже после валидации; списание при этом возвращается.

Одиночная правка с z-image:

json
{
"model": "z-image",
"input": {
"prompt": "Replace the overcast sky with a clear blue one, keep the lighting on the building consistent",
"urls": ["https://example.com/facade.jpg"]
}
}

Композиция из двух референсов с wan2.7-image:

json
{
"model": "wan2.7-image",
"input": {
"prompt": "Put the chair from image 1 into the room from image 2, matching the window light",
"urls": ["https://example.com/chair.png", "https://example.com/room.jpg"],
"size": "3:2"
}
}

Midjourney как цепочка действий

Первичные действия начинают новую задачу:

actionТребуетРезультат
imaginepromptновая сетка 2×2
editsprompt + imageUrlsотредактированное изображение
blend2–4 imageUrlsсмесь исходников
describeровно одно изображениетекстовое описание

Последующие действия требуют parentTaskId: upscale, variation, high-variation, low-variation, reroll, zoom, pan, inpaint, modal, remix-strong и remix-subtle. index выбирает плитку 1–4; для pan направление — left, right, up или down.

Двухэтапный процесс Midjourney

Сначала создайте сетку:

json
{
"model": "midjourney",
"input": {
"action": "imagine",
"prompt": "Editorial photograph of a brutalist seaside pavilion",
"size": "3:2",
"version": "7"
}
}

После finished передайте полученный taskId в действие над выбранной плиткой:

json
{
"model": "midjourney",
"input": {
"action": "upscale",
"parentTaskId": "019ca8c4-3e17-7b55-9f10-cc2b6de0a8f4",
"index": 2
}
}

Панорамирование, zoom и маска

json
{
"model": "midjourney",
"input": {
"action": "modal",
"parentTaskId": "019ca8c4-3e17-7b55-9f10-cc2b6de0a8f4",
"index": 2,
"prompt": "Replace the bench with a slab of sea-worn granite",
"maskUrl": "https://example.com/mask.png"
}
}

Для расширения используйте action: "pan" и direction; для отдаления — action: "zoom" и zoomRatio. Значение меньше 2 даёт 1,5×, 2 и выше — 2×.

describe и blend

describe принимает одно изображение и возвращает описание в output, а не в files:

json
{
"model": "midjourney",
"input": {
"action": "describe",
"imageUrls": ["https://example.com/reference.jpg"]
}
}

blend объединяет 2–4 изображения без промпта. dimensions принимает SQUARE, PORTRAIT или LANDSCAPE; поле size его переопределяет.

Если правка не удалась

Требования действий Midjourney проверяются до отправки провайдеру. Например, variation без index или customId вернёт 400 invalid_input. Все последующие действия требуют parentTaskId, blend — 2–4 изображения, describe — ровно одно.

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

Следующие шаги

Запустите это со своим ключом

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

Читать дальше