Портрет героя готов, заказчик доволен. Остаётся мелочь: перекрасить куртку и поставить человека на другой фон. Вы отправляете картинку в генератор с новым промптом и получаете совершенно другого человека. Скулы не те, причёска другая, поза съехала. Обычная модель «картинка в картинку» рисует изображение заново, забирая из вашего оригинала только базовые цвета и общую композицию.
Классический выход из ситуации — маска. Вы вручную закрашиваете куртку в редакторе, передаёте этот слой в API, и нейросеть перерисовывает только выделенную область. Для одной картинки это терпимо. Для сотни карточек товара в скрипте на сервере — нет: маски руками там никто рисовать не будет.
Коротко
FLUX.1 Kontext Pro правит готовую картинку одной фразой без маски и держит персонажа, если в промпте прямо сказано, что именно нужно сохранить.
Кому пригодится: тем, кто автоматизирует правку фотографий, собирает серии картинок с одним героем или меняет надписи на макетах.
Кому не нужна: тем, кто начинает новый конвейер генерации с нуля. Сам вендор Black Forest Labs называет Kontext Pro прошлым поколением и советует для новых проектов использовать семейство FLUX.2.
Ниже по порядку:
- что модель умеет править и чем правка без маски отличается от перерисовки;
- как писать промпт, чтобы черты лица не уплыли;
- рабочий вызов через curl и Python со всеми нужными параметрами;
- цена одной правки, наш замер скорости и сравнение с соседними моделями.
Что Kontext Pro правит без маски
Это одна модель на два режима: она рисует по тексту и правит присланную картинку. Есть в запросе исходник — значит, правка. Координаты объекта указывать не нужно, нейросеть находит его сама. В документации вендора пример выглядит ровно так: «Change the car color to red». Машина краснеет, остальное вендор обещает не трогать.

Что заявлено по официальной документации Black Forest Labs:
- Правка объекта одной фразой. Вы можете изменить цвет, убрать лишний предмет, переодеть героя или полностью сменить фон.
- Цепочка правок с тем же персонажем. Вендор пишет, что модель удерживает черты героя даже после нескольких правок подряд.
- Замена текста на картинке. Старую и новую надпись нужно взять в одинарные кавычки:
Replace '[original text]' with '[new text]'. - Правка по цветной рамке. Если текстовой команды мало, вы рисуете яркий прямоугольник поверх нужного места. Модель правит контент строго внутри него, а саму рамку из финального результата убирает.
- Поддержка референсов. В один запрос можно передать до четырёх картинок, чтобы точнее задать стиль.
На вход API принимает картинку до 20 мегапикселей. На выходе вы всегда получаете около одного мегапикселя. Модель сама подгоняет размер под пропорции вашего исходника, округляя стороны до значений, кратных 32 пикселям. 4K из этого не выйдет, и знать это надо до того, как вы пообещаете клиенту макет в печать.
Как писать промпт, чтобы лицо не уплыло
«Сохраняет лицо» — это не гарантия от провайдера, а поведение модели, которое вашим промптом можно удержать или сломать. У текстовой инструкции есть жесткий потолок в 512 токенов. Токен — кусочек текста, обычно часть слова. Платите вы здесь не за токены, а за картинку, но лимит промпта считается именно в них. Модели нужна короткая команда, а не эссе.

Правила из гайда вендора, которые я бы держал перед глазами:
- Называйте героя явно. Не пишите «she» или «he». Используйте конкретное описание: «The woman with short black hair». Местоимение модель может отнести к случайному объекту на фоне.
- Прямо говорите, что сохранить. Хвост «while maintaining the same facial features, hairstyle and expression» работает как жесткий якорь. Он прямо запрещает нейросети трогать лицо, причёску и эмоцию.
- Не пишите «transform» без уточнений. Это слово модель читает как команду переделать всё изображение целиком. Вместо абстрактных глаголов используйте конкретные действия: поменять фон, перекрасить, добавить.
Плохой промпт: «Transform her into a pilot». Хороший промпт: «Change the clothes of the man with a grey beard to a pilot uniform, while maintaining the same facial features, hairstyle and expression».
Отдельно про длинные цепочки. Вендор сам признаёт в блоге: если долго гонять картинку по кругу, подавая результат прошлой правки на вход следующей, копятся артефакты. Наш совет, вытекающий из этого факта: делайте одну смысловую правку за шаг. Если правок больше трёх-четырёх, лучше собрать их в пару команд и применить к исходнику, чем передавать картинку дальше по цепочке.
Вызов через API: curl и Python
Правка идёт на тот же адрес, что и обычная генерация: POST https://api.altrouter.ai/v1/images/generations. Адрес OpenAI-совместимый. Чтобы включить режим редактирования, положите прямую ссылку на исходник или строку base64 в поле image. Это список, в который влезает до четырёх картинок. Остальные настройки модели идут в том же теле JSON-запроса.
curl https://api.altrouter.ai/v1/images/generations \
-H "Authorization: Bearer $ALTROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "flux-kontext-pro",
"prompt": "Change the background to a sunny beach, while maintaining the same facial features, hairstyle and expression",
"image": ["https://example.com/portrait.jpg"],
"aspect_ratio": "3:4",
"seed": 42,
"output_format": "png"
}'
В Python работает стандартный пакет openai. Своих полей модели он не знает, поэтому они уходят через extra_body — словарь, который SDK добавляет в тело запроса как есть.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ALTROUTER_API_KEY"],
base_url="https://api.altrouter.ai/v1",
)
result = client.images.generate(
model="flux-kontext-pro",
prompt="Replace 'SALE' with 'NEW COLLECTION'",
extra_body={
"image": ["https://example.com/signboard.jpg"],
"aspect_ratio": "1:1",
"seed": 12345,
"output_format": "jpeg",
"prompt_upsampling": False,
},
)
print(result.data[0].url)
Что значат поля в словаре:
aspect_ratio— форма кадра. Доступны значения 1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3, 21:9 или 9:21. По умолчанию стоит 1:1. Форма меняется, но общее число пикселей и цена остаются прежними.seed— номер случайности. С тем же номером, промптом и исходником результат повторяется близко к прошлому прогону.output_format— формат готового файла: png, jpeg или webp. По умолчанию отдается png.prompt_upsampling— настройка, при которой модель сама расписывает и дополняет ваш короткий промпт перед началом работы. По умолчанию она выключена. Для точечной правки я бы так и оставил: лишние слова дают лишние изменения.
В ответе от API приходит ссылка на готовый файл. Мы сразу кладём результат в своё хранилище, поэтому ссылка постоянная и не протухает через сутки.
Сколько стоит правка и сколько её ждать
Мы прогнали модель через свой API 16.09.2026: генерация одной картинки заняла примерно 14 секунд от отправки запроса до готового результата. Честно про методику: это один прогон генерации. Время суток и пиковую нагрузку на серверы мы не выравнивали, а скорость правки по референсу отдельно не засекали.
Официальная цена Black Forest Labs на 16.09.2026 составляет $0.04 за одну картинку. У нас та же картинка стоит $0.0414. Наша цена примерно на 3.5% выше официальной цены вендора, скидки на эту модель нет, и бейджа в каталоге тоже нет. За разницу вы получаете один ключ на весь каталог, OpenAI-совместимый адрес и постоянную ссылку на результат.
Посчитаем на задаче. Карточка товара, 20 правок: фон, свет, цвет упаковки, надписи. 20 запросов умножаем на $0.0414 — получаем $0.83. Если половина правок не попала в ожидания и её пришлось переделать с другим промптом, итоговый счет составит $1.24. Закладывайте запас на дубли сразу, это дешевле, чем удивляться балансу.
Когда брать FLUX.2 Pro или Kontext Max
Kontext Pro — не единственная модель от Black Forest Labs в нашем каталоге. Цены зафиксированы на 16.09.2026, список от дешёвой к дорогой:

| Модель | Цена за картинку у нас | Официальная цена | Что говорит вендор |
|---|---|---|---|
flux-2-pro | $0.03 | $0.03 | Текущее поколение: семейство FLUX.2 поддерживает до 10 референсов и выход до 4 Мп. |
flux-kontext-pro | $0.0414 | $0.04 | Прошлое поколение, правка текстом без маски. |
flux-kontext-max | $0.08165 | $0.08 | Старший тир линейки Kontext, точнее понимает текст и следует промпту. |
Герой этой статьи в таблице не самый выгодный, и я не буду делать вид, что это не так. Модель FLUX.2 Pro дешевле, новее и, по заявлениям самого вендора, лучше правит текст на картинке. Если конвейер новый, начните с FLUX.2 Pro.
Kontext Pro имеет смысл, когда промпты уже отлажены под Kontext и переписывать их некогда, или когда нужно сравнить два поколения на своих картинках. Если правка текста или сложная инструкция не получается, ваш следующий шаг — Kontext Max, но учитывайте, что он обойдется вдвое дороже.
Чего Kontext Pro не решает
Сохранение лица и точность замены текста мы слепым тестом не мерили. Всё, что написано выше про качество попадания, — это заявления вендора и его же гайд, а не наш независимый вердикт.
Вендор сам открыто перечисляет слабые места архитектуры. Длинная цепочка правок копит артефакты. Инструкцию модель иногда не выполняет и возвращает почти тот же кадр. Знания о мире у неё ограничены, поэтому редкий предмет или узнаваемое место она может нарисовать неверно. И выход около одного мегапикселя: для печати и больших баннеров картинку придётся увеличивать отдельно.
С чего начать
- Получите ключ и положите его в переменную окружения
ALTROUTER_API_KEY. - Выложите исходную фотографию по прямой публичной ссылке или переведите её в формат base64.
- Напишите промпт на английском языке: кто именно находится на картинке, что нужно поменять и что жестко сохранить.
- Зафиксируйте параметр
seed, чтобы сравнивать варианты своего промпта между собой, а не со случайностью. - Прогоните 3–5 базовых правок на своих рабочих картинках и сравните результат с FLUX.2 Pro на тех же самых промптах.
Посмотреть параметры, лимиты и примеры вызова можно на странице FLUX.1 Kontext Pro. Остальные модели для картинок с ценами собраны в каталоге.
FAQ
Как изменить фото нейросетью по описанию без маски?
Отправьте исходник в поле image и опишите нужную правку одной фразой, например «Change the car color to red». FLUX.1 Kontext Pro сама находит объект на фотографии и меняет только его. Чтобы случайно не задеть остальное окружение, допишите в промпт, какие именно детали нужно сохранить.
Почему FLUX Kontext меняет лицо персонажа?
Чаще всего в промпте стоит абстрактное слово «transform» или главный герой назван местоимением. Назовите его явно, например «the woman with short black hair», и добавьте конструкцию «while maintaining the same facial features, hairstyle and expression». Если лицо начинает плыть после нескольких правок подряд, откатитесь и начните цепочку заново с оригинального исходника.
Как заменить текст на картинке через FLUX Kontext?
Возьмите старую и новую надпись в одинарные кавычки: Replace 'SALE' with 'NEW COLLECTION'. Такой жесткий синтаксис вендор приводит в официальной документации для работы с вывесками, постерами и этикетками. Качество замены типографики мы сами не мерили, поэтому обязательно проверьте этот сценарий на своих макетах до запуска.
Сколько стоит FLUX Kontext Pro по API?
На 16.09.2026 у нас запрос стоит $0.0414 за картинку, у самого Black Forest Labs официально $0.04. Размер кадра и соотношение сторон на цену никак не влияют: выход всегда около одного мегапикселя. Серия из 20 автоматических правок обойдётся вашему балансу в $0.83.
Чем FLUX Kontext Pro отличается от FLUX.2 Pro?
Kontext Pro вендор официально относит к прошлому поколению: она принимает до четырёх референсов и отдаёт около одного мегапикселя на выходе. Для нового семейства FLUX.2 вендор заявляет поддержку до 10 референсов и до 4 мегапикселей на выходе, а модель FLUX.2 Pro стоит у нас $0.03 за картинку. Для нового проекта логичнее начинать с FLUX.2 Pro.