Войти

FLUX.2 Max Edit

Редактирование изображений по текстовой инструкции. Можно загрузить до 3 изображений для редактирования или референса.

Запрос
Опишите, что нужно изменить и что сохранить: объект, фон, стиль, свет или композицию.
Добавьте изображения, которые нужно изменить или использовать как референсы.
Готово: 1
Ширина и высота результата: от 256 до 1536 пикселей, шаг 8.
Ширина 256
Высота 256
Задайте seed для повторяемого результата. -1 — случайный результат при каждом запуске.

О модели FLUX.2 Max Edit

Обзор

FLUX.2 Max Edit — сильнейшая модель в линейке FLUX.2 для редактирования изображений по текстовой инструкции и референсам. По официальным релизам Black Forest Labs модель запущена в декабре 2025 года; вся линейка FLUX.2 была представлена в ноябре 2025. Эта разновидность нужна для задач, где важнее максимальная точность правок, а не компромисс в скорости. Можно аккуратно изменить фон, свет, объект, стиль или текстуру, собирать сцену из нескольких референсов и сохранить персонажей, продукты и визуальный стиль. Среди моделей FLUX.2 вариант Max выделяется наивысшей согласованностью редактирования, самым сильным следованием промпту, поддержкой генерации с опорой на факты (grounded generation) и работой с несколькими референсами. Главное: это выбор для финальных визуалов и сложных правок, где требуется фотореализм, читаемый текст, корректная композиция и предсказуемое сохранение важных деталей исходного изображения.

Сильные стороны

Критерий Оценка Комментарий
Согласованность персонажа и объекта При очень длинных цепочках или сильных трансформациях идентичность может постепенно дрейфовать, но согласованность персонажей, объектов, костюмов и узнаваемых признаков — одна из сильнейших сторон модели.
Верность референсам При сложном смешивании нескольких референсов отдельные детали могут конфликтовать или упрощаться, но верность объектам, стилю, персонажам и продуктовым референсам у модели очень высокая.
Качество отдельного кадра Редкие артефакты и просадки на очень сложных сценах всё ещё возможны, но качество отдельного кадра у модели очень высокое: сильная детализация, свет, материалы и фотореализм.
Соответствие запросу На перегруженных инструкциях часть второстепенных условий может теряться, но модель очень хорошо следует запросу при предметной, рекламной, портретной и стилистической правке.
Сохранность нетронутых областей При радикальных изменениях возможен дрейф освещения, лица или мелких деталей, но в большинстве точечных правок модель хорошо сохраняет фон, позу, композицию и нетронутые области.
Точность локальной правки В неоднозначных инструкциях модель может затронуть больше области, чем нужно, но точность локальной правки, замены объектов, фона, цвета и деталей обычно очень сильная.
Эстетика и композиция Иногда результат может быть слишком «приглаженным» и коммерчески выверенным, но в целом модель отлично держит композицию, визуальную иерархию и профессиональную эстетику.

Сценари использования (use cases)

Ограничения и недостатки

Примеры промптов

Советы

FAQ

Когда выбирать FLUX.2 Max Edit, а когда достаточно других версий FLUX.2 Edit?

FLUX.2 Max Edit стоит выбирать для финальных изображений, сложных правок и задач, где важны точное следование промпту, сохранение стиля и стабильность результата. Более быстрые варианты той же линейки редактирования лучше подходят для черновых прогонов и массовых итераций, когда важнее скорость проверки идеи. Если результат должен максимально аккуратно объединять несколько референсов или сохранять детали исходника, начинайте с Max.

Можно ли загрузить несколько изображений, и как объяснить модели, что брать из каждого?

Да, этот эндпоинт принимает несколько исходных изображений — форма Flixa ограничивает загрузку тремя файлами. В промпте лучше явно описывать роль каждого изображения: например, из первого взять объект, из второго стиль, из третьего фон или материал. Такой подход особенно полезен для сохранения персонажа, предметной съёмки, интерьерных композиций и переноса стиля.

Какой размер изображения выбрать, чтобы правка не ломала композицию?

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

Зачем нужен seed, и на что влияет значение -1?

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

Как писать промпт, чтобы модель изменила только нужное и сохранила остальное?

Описывайте конкретное изменение и отдельно указывайте, что должно остаться без изменений: объект, поза, фон, материалы, свет или композиция. Не используйте расплывчатые команды вроде «сделай лучше»; лучше написать целевое состояние кадра. Если нужно избежать нежелательного элемента, формулируйте позитивную замену, потому что отрицательные инструкции часто работают хуже.

Цены

Цена при активной подписке

Стоимость необязательной подписки 299 ₽/месяц Подробнее

API

Инструкция ниже является выдержкой из документации.

Параметры

Поля тела JSON-запроса, которые используются в Playground и доступны для настройки через API. Порядок совпадает с формой на странице.

Параметр Тип Обязательный По умолчанию Допустимые значения Описание
prompt string Да от 1 символов Опишите, что нужно изменить и что сохранить: объект, фон, стиль, свет или композицию.
images array[string] Да 1–3 элементов Добавьте изображения, которые нужно изменить или использовать как референсы. Выберите файл с диска или перетащите сюда Передайте массив HTTPS-ссылок.
size string Нет 256*256 Ширина и высота результата: от 256 до 1536 пикселей, шаг 8.
seed integer Нет -1 -1–2147483647 Задайте seed для повторяемого результата. -1 — случайный результат при каждом запуске.

Запрос

Асинхронный запуск: POST https://api.flixa.io/v1/image/flux-2/max-edit с заголовком Authorization: Bearer $FLIXA_API_KEY и телом JSON. Ниже — пример с полями из Playground.

curl -X POST "https://api.flixa.io/v1/image/flux-2/max-edit" \
  -H "Authorization: Bearer $FLIXA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "seed": -1,
  "size": "1024*1024",
  "images": [
    "https://uploads.flixa.io/media/8a9947ad6aa1c7826582070db7a446707573c7a9fa8dd745cc9e97d3d9540ff0.jpg"
  ],
  "prompt": "Превратите это фото товара в премиальную студийную рекламу: мягкий кинематографический свет, чистый бежевый фон, лёгкие тени, реалистичные отражения и эстетика люксового бренда."
}'
import json
import os
import requests

url = "https://api.flixa.io/v1/image/flux-2/max-edit"
payload = json.loads({"images": ["https://uploads.flixa.io/media/8a9947ad6aa1c7826582070db7a446707573c7a9fa8dd745cc9e97d3d9540ff0.jpg"], "prompt": "\u041f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0435 \u044d\u0442\u043e \u0444\u043e\u0442\u043e \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043f\u0440\u0435\u043c\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0443\u0434\u0438\u0439\u043d\u0443\u044e \u0440\u0435\u043a\u043b\u0430\u043c\u0443: \u043c\u044f\u0433\u043a\u0438\u0439 \u043a\u0438\u043d\u0435\u043c\u0430\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0432\u0435\u0442, \u0447\u0438\u0441\u0442\u044b\u0439 \u0431\u0435\u0436\u0435\u0432\u044b\u0439 \u0444\u043e\u043d, \u043b\u0451\u0433\u043a\u0438\u0435 \u0442\u0435\u043d\u0438, \u0440\u0435\u0430\u043b\u0438\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u044d\u0441\u0442\u0435\u0442\u0438\u043a\u0430 \u043b\u044e\u043a\u0441\u043e\u0432\u043e\u0433\u043e \u0431\u0440\u0435\u043d\u0434\u0430.", "seed": -1, "size": "1024*1024"})

response = requests.post(
    url,
    headers={"Authorization": f"Bearer {os.environ['FLIXA_API_KEY']}"},
    json=payload,
    timeout=120,
)
print(response.json())
const response = await fetch(
  "https://api.flixa.io/v1/image/flux-2/max-edit",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.FLIXA_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"images": ["https://uploads.flixa.io/media/8a9947ad6aa1c7826582070db7a446707573c7a9fa8dd745cc9e97d3d9540ff0.jpg"], "prompt": "\u041f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0435 \u044d\u0442\u043e \u0444\u043e\u0442\u043e \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043f\u0440\u0435\u043c\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0443\u0434\u0438\u0439\u043d\u0443\u044e \u0440\u0435\u043a\u043b\u0430\u043c\u0443: \u043c\u044f\u0433\u043a\u0438\u0439 \u043a\u0438\u043d\u0435\u043c\u0430\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0432\u0435\u0442, \u0447\u0438\u0441\u0442\u044b\u0439 \u0431\u0435\u0436\u0435\u0432\u044b\u0439 \u0444\u043e\u043d, \u043b\u0451\u0433\u043a\u0438\u0435 \u0442\u0435\u043d\u0438, \u0440\u0435\u0430\u043b\u0438\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u043e\u0442\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u044d\u0441\u0442\u0435\u0442\u0438\u043a\u0430 \u043b\u044e\u043a\u0441\u043e\u0432\u043e\u0433\u043e \u0431\u0440\u0435\u043d\u0434\u0430.", "seed": -1, "size": "1024*1024"}),
  }
);

console.log(await response.json());

Пример ответа

Сразу после POST приходит объект с идентификатором задачи и статусом (queued или processing). Готовый результат — в поле outputs после завершения.

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "queued",
  "created_at": "2026-05-22T12:00:00Z"
}

После успешного завершения:

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "completed",
  "outputs": [
    { "url": "https://storage.example/result.png", "type": "image" }
  ]
}

Поллинг

Пока задача в работе, опрашивайте GET https://api.flixa.io/v1/predictions/{id}/result с тем же API-ключом. Рекомендуемый интервал — 1–2 секунды; остановитесь при completed, failed или cancelled.

  • queued / processing — продолжайте опрос.
  • completed — заберите URL из outputs.
  • failed — смотрите error в теле ответа.
curl "https://api.flixa.io/v1/predictions/{id}/result" \
  -H "Authorization: Bearer $FLIXA_API_KEY"