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

2
Настройте окружение
Экспортируйте ключ и установите
requests, который нужен примерам на Python:Генерация изображения
Этот запрос создаёт горизонтальное изображение 1792×1024 и записывает ответ вflux-generation.json:
Сохранение результата
В ответе приходитdata[0].url. Ссылка перестаёт работать через 10 минут после генерации, поэтому скачивайте изображение сразу. FLUX возвращает только URL, без b64_json. Сохраните скрипт как save_images.py: он скачивает все изображения из ответа, а заодно умеет декодировать b64_json, который возвращают некоторые другие модели изображений.
save_images.py
Сохранено: flux-robot-1.jpg. FLUX.2 возвращает JPEG, если не указать output_format со значением png.
Генерация на Python
Размер изображения
Размер задаётся либо строкойsize в стиле OpenAI, либо полями width и height в пикселях. Используйте один из способов, не оба сразу.
width и height должны быть кратны 16 и не меньше 64 пикселей, а общий размер — не больше примерно 4 мегапикселей (например, 2048×2048). При редактировании работают те же поля размера.
Редактирование изображения
Чтобы отредактировать изображение, а не генерировать только по тексту, добавьтеinput_image в тот же JSON-запрос. Этот минимальный пример сохраняет главный объект публичного изображения и меняет фон:
Параметры
Совместимость с прежними моделями: FLUX Kontext
flux-kontext-pro ($0.035 за вызов) и flux-kontext-max ($0.07 за вызов) остаются доступны для существующих интеграций. Эндпоинт тот же, отличия такие:
- Вместо
sizeони принимают полеaspect_ratio. В OpenAI Python SDK передавайте его черезextra_body. - Подходит любое соотношение сторон от
3:7до7:3, размер результата остаётся около одного мегапикселя.
Для новой генерации и редактирования используйте FLUX.2.
Частые вопросы
Нужно ли опрашивать результат, как в BFL API?
Нет. BFL API возвращает ID задачи иpolling_url, который нужно опрашивать до статуса Ready. LaoZhang API дожидается изображения в рамках того же запроса и возвращает его в data[0].url.
Вместо опроса задайте клиенту большой таймаут; в примере на Python это 240 секунд. Если запрос проходит через обратный прокси или serverless-функцию, увеличьте и их таймаут или лимит выполнения, иначе соединение закроется раньше, чем изображение будет готово.
Почему ссылка на изображение перестаёт работать?
Ссылки на результат действуют 10 минут после генерации — столько же, сколько живут ссылки на результаты у самого BFL. Скачивайте каждое изображение на сервер сразу после ответа, храните его у себя и передавайте в базу данных или фронтенд собственный адрес. В пакетных задачах скачивайте каждый результат, как только завершился его запрос, а не после всей пачки. Параллельность держите такой, чтобы скачивание успевало за генерацией. Истёкшую ссылку обновить нельзя. Отправьте запрос заново — он будет оплачен как новый вызов.Как получать воспроизводимый результат?
Передавайте один и тот жеseed с той же моделью, промптом и размером. Это удобно, когда вы дорабатываете один дизайн.
Как добиться точного текста и фирменных цветов?
Для изображений с большим количеством текста — постеров, инфографики, макетов интерфейсов — сначала попробуйтеflux-2-flex: BFL позиционирует её для отрисовки текста и мелких деталей. Если нужно максимальное качество и самое точное следование промпту, берите flux-2-max.
Чтобы попасть в фирменные цвета, укажите в промпте hex-коды, например the mug is #FF5A1F. Для сложных сцен можно описать объект, фон, освещение и стиль JSON-строкой и передать её в prompt.
Списываются ли деньги за неудачные запросы?
Нет. FLUX.2 оплачивается за вызов: запрос, вернувший изображение, оплачивается один раз, а ответ с кодом не 200 (например, ошибка параметров или блокировка модерацией) не оплачивается. Таймаут на стороне клиента — не то же самое, что ошибка. Сервер мог уже создать изображение и списать оплату, поэтому перед повторной отправкой проверьте журнал вызовов. Окончательная запись о списаниях — именно журнал вызовов.Можно ли использовать OpenAI SDK?
Да, черезclient.images.generate():
- В
base_urlукажитеhttps://api.laozhang.ai/v1. model,promptиsizeпередавайте как обычно.- Поля, специфичные для FLUX, например
width,heightиseed, передавайте вextra_body.
response.data[0].url; скачивайте его сразу.
Для редактирования тоже используйте client.images.generate() и передавайте input_image в extra_body: client.images.edit() принимает только одно изображение. Подробнее — в частых вопросах на странице Редактирование FLUX.2.
Связанные материалы
- Редактирование FLUX.2: правка одного изображения или объединение до восьми референсов
- Сравнение API изображений: FLUX.2 рядом с другими моделями изображений
- Images API: общий формат запроса и ответа
- Цены на API моделей ИИ: актуальные цены и группы FLUX
- Журнал вызовов: модель и списание по каждому запросу
- Модели и цены в консоли: цены, доступные вашему аккаунту
- Black Forest Labs: обзор FLUX.2 (на английском): для чего создана каждая версия FLUX.2, управление цветом через hex и структурированные промпты
- Black Forest Labs: руководство по интеграции API (на английском): асинхронный опрос в BFL и 10-минутные ссылки на результаты