Начните с
flux-2-pro. Black Forest Labs рекомендует flux-2-max для самых точных правок, а flux-2-flex — для тонкого контроля, например отрисовки текста и мелких деталей. Запрос у всех трёх моделей одинаковый.
Подготовка
1
Создайте API-ключ
Модели FLUX.2 оплачиваются за вызов. В разделе Управление токенами создайте ключ (или измените существующий) и выберите Режим оплаты (计费模式) — «сначала по использованию» (按量优先, рекомендуется) или «оплата за вызов» (按次计费). Ключ с режимом «сначала по использованию» вызывает и модели с оплатой за вызов, и модели с оплатой по использованию; ключ с оплатой за вызов — только модели с оплатой за вызов.Храните ключ в переменной окружения на сервере.

2
Настройте окружение
Экспортируйте ключ и установите
requests, который нужен примеру на Python:3
Сохраните скрипт скачивания
Сохраните скрипт как
save_images.py. Примеры на cURL запускают его для файла ответа, чтобы скачать все изображения. FLUX возвращает только URL, но скрипт умеет декодировать и b64_json, который возвращают некоторые другие модели изображений:save_images.py
Редактирование изображения
Добавьтеinput_image в запрос генерации, и он станет редактированием. Замените URL на публично доступное изображение:
Сохранено: flux-edit-1.png. Референс скачивается во время запроса, поэтому URL должен открываться без входа в аккаунт, cookie и проверок на бота.
Редактирование локального файла
Чтобы отредактировать файл со своего компьютера, передайте его как data URL с MIME-типом, соответствующим файлу, напримерdata:image/png;base64,... для PNG. Тело запроса через heredoc не даёт большому изображению попасть в командную строку:
Объединение референсных изображений
Для дополнительных референсов добавьте поля отinput_image_2 до input_image_8 и называйте их в промпте «изображение 1», «изображение 2» и так далее — в порядке полей. Этот пример берёт три PNG-файла из текущего каталога:
Редактирование на Python
Скрипт принимает от одного до восьми референсов: локальные файлы превращает в data URL, публичные URL передаёт без изменений и сохраняет результат сразу после ответа.Параметры
Размер задаётся либо через
size, либо через width и height, но не обоими способами сразу. Распространённые значения size перечислены в разделе о размере изображения на странице Генерация FLUX.2.
Обработка ответа
В ответе приходит одно изображение вdata[0].url. FLUX не возвращает b64_json, поэтому не передавайте response_format. Ссылка действует 10 минут после генерации: скачивайте изображение сразу после ответа, особенно в пакетных задачах.
Изображение приходит в JPEG, если не указать output_format со значением png.
Советы по промптам
- Называйте источники «изображение 1», «изображение 2», «изображение 3» и так далее — в порядке полей.
- Перечислите, что нужно сохранить из каждого референса: логотип, лицо, цвет товара.
- Укажите, что результат должен быть одним цельным изображением.
- Укажите, чего избегать: коллажа, разделённого кадра, рамок, подписей.
Ошибки и оплата
- HTTP 400: проверьте имена полей, число референсов и размер изображения.
- Имена полей:
input_image, затемinput_image_2и далее. - Число референсов: не больше 8.
- Размер: кратно 16, не меньше 64 пикселей, до ~4 Мп, задаётся через
sizeили черезwidthиheight.
- Имена полей:
- Референс не загружается: URL должен быть публичным. Иначе передайте файл как data URL.
- Ссылка на результат больше не работает: она истекла через 10 минут после генерации. Повторите запрос и скачайте результат сразу.
- HTTP 401: проверьте ключ и заголовок
Authorization: Bearer. - HTTP 429, 5xx или таймаут: повторите запрос с нарастающей паузой. После таймаута сначала проверьте журнал вызовов, чтобы не заплатить дважды.
Прежние модели FLUX Kontext
flux-kontext-pro и flux-kontext-max остаются в каталоге для существующих интеграций. Вместо size они принимают поле aspect_ratio; подробности — в разделе о FLUX Kontext на странице Генерация FLUX.2. Новые правки стройте на FLUX.2.
Частые вопросы
Можно ли отредактировать только часть изображения?
Да, описав её словами. Поля для маски в запросе нет, поэтому назовите в промпте элемент, который нужно изменить, и укажите, что должно остаться прежним.Редактирование стоит дороже генерации?
Нет. FLUX.2 оплачивается за вызов, поэтому правка стоит столько же, сколько генерация, — независимо от того, один референс вы передали или восемь, и от размера результата. Фактическое списание смотрите в журнале вызовов.Для редактирования и генерации используется одна модель?
Да.flux-2-pro, flux-2-flex и flux-2-max умеют и то и другое. Запрос с input_image — это редактирование, без него — генерация нового изображения, как на странице Генерация FLUX.2.
Можно ли редактировать через images.edit() в OpenAI SDK?
Только если изображение одно. images.edit() отправляет multipart/form-data на /v1/images/edits, а этот эндпоинт принимает одно изображение и не объединяет референсы.
Вместо него используйте client.images.generate() и передавайте input_image (и нумерованные поля для остальных референсов) в extra_body как публичные URL или data URL. Вспомогательная функция на Python на этой странице делает то же самое через requests.
Связанные материалы и источники
- Генерация FLUX.2 — генерация по тексту, размеры изображений и прежние модели Kontext
- Сравнение API изображений — FLUX.2 рядом с другими моделями изображений
- Images API — общий формат запроса и ответа
- Цены на API моделей ИИ — актуальные цены и группы FLUX
- Журнал вызовов — модель и списание по каждому запросу
- Black Forest Labs: редактирование в FLUX.2 (на английском) — редактирование с несколькими референсами, лимиты референсов и срок жизни ссылок
- Black Forest Labs: обзор FLUX.2 (на английском) — для чего создана каждая версия FLUX.2