FLUX 3 Image уже можно использовать через модель Black Forest Labs на Replicate и через партнёрские эндпоинты. Она умеет генерировать изображения в 4K и редактировать их по 10 референсам. При этом в собственной документации BFL основной акцент пока сделан на FLUX 3 Video, а поставщики image API предлагают разные схемы запросов, лимиты и правила тарификации.
Действительно ли FLUX 3 Image доступна через API?
Да, FLUX 3 Image доступна через API, но со словом «официальный» здесь стоит быть точнее. Самое убедительное подтверждение — активная страница black-forest-labs/flux-3-image на Replicate, принадлежащая Black Forest Labs. Модель принимает обычные запросы на генерацию, переключается в режим редактирования при передаче изображения и предоставляет значение разрешения 4k.
| Что проверялось 2 октября 2026 года | Что доступно | Что это подтверждает |
|---|---|---|
| BFL на Replicate | black-forest-labs/flux-3-image | Модель принадлежит BFL; доступны генерация по тексту, редактирование, 4K и до 10 референсов |
| Партнёрский эндпоинт fal | blackforestlabs/flux-3/edit-image | Коммерческий эндпоинт для редактирования, 1–10 референсов, очередь API и тарификация по разрешению |
| Документация Layer API | bfl-flux-3-image | Генерация и редактирование в 1K/2K/4K через асинхронный workspace API |
| Нативная документация BFL API | Документирована FLUX 3 Video | На момент проверки отдельного нативного маршрута для FLUX 3 Image не было |
flux3api.com и community-обёртки | Отдельные сторонние сервисы | Совпадающее название ещё не подтверждает принадлежность BFL или актуальный доступ к FLUX 3 Image |
В справочной статье BFL о FLUX 3 описывается только видеомодель. Возможность редактирования изображений подтверждают отдельная модель BFL на Replicate и партнёрские эндпоинты.
Ещё до появления эндпоинта пользователь Reddit u/rerri предположил, что релиз сначала будет ориентирован на API:
«Я не удивлюсь, если Flux 3 Image сначала выйдет только через API». — u/rerri на r/StableDiffusion
Релиз действительно соответствует этому сценарию. Но наличие API не означает, что открытые веса уже доступны.
Что на практике дают 4K и редактирование по нескольким референсам
FLUX 3 Image поддерживает вывод в 4k и принимает до 10 референсов. Однако ни один из этих параметров не гарантирует сохранение каждой детали внешности, товара или мелкого текста. Страницы провайдеров показывают доступные настройки и примеры, но не содержат независимых оценок качества.
В README модели BFL на Replicate перечислены варианты 768sq, 1k, 1.5k, 2k и 4k. Референсы могут быть в форматах JPEG, PNG, GIF или WebP; минимальный размер — 256 на 256 пикселей, максимальный объём — 16 мегапикселей. При значении aspect_ratio: auto соотношение сторон результата определяется первым референсом.
Схема редактирования fal похожа, но полностью с ней не совпадает. Она принимает от 1 до 10 URL или data URI, ограничивает каждый входной файл 4 мегапикселями, поддерживает разрешения от 512sq до 4k и предупреждает, что обработка в 4K может занимать несколько минут. Порядок референсов имеет смысл: «изображение 1» — это первый элемент массива image_urls.
| Параметр | Replicate | fal | Что это значит для продакшена |
|---|---|---|---|
| Максимальное число референсов | 10 | 10 | Явно указывайте количество входных изображений в промпте |
| Максимальный размер входного файла | 16 МП | 4 МП на изображение | Проверяйте размер до отправки запроса провайдеру |
| Доступные разрешения | 768sq, 1K, 1.5K, 2K, 4K | 512sq, 768sq, 1K, 2K, 4K | Не используйте один общий enum без валидации для всех провайдеров |
| Автоматическое соотношение сторон | Соотношение задаёт первый референс | Соотношение задаёт первый референс | Ставьте первым изображение, задающее кадрирование |
| Форматы результата | WebP, JPG, PNG | JPEG, PNG | Нормализуйте обработку файлов на следующем этапе |
| Информация о задержке в 4K | Измеренная задержка не опубликована | Обработка может занимать несколько минут | Не используйте 4K в интерактивных сценариях предпросмотра |
При редактировании по нескольким референсам назначайте каждому изображению отдельную роль: базовая композиция, внешность объекта, товар или стиль. В собственной документации fal рекомендует ограничиваться одним изменением за запрос. Промпт вроде «Используй изображение 1 как основу; замени только бутылку на товар с изображения 2; сохрани ракурс камеры, руки, освещение и фон» проще проверить, чем запрос, который одновременно меняет одежду, типографику и локацию.
Практический сценарий работы с API через очередь
В продакшене FLUX 3 Image лучше рассматривать как асинхронную задачу. Приложение загружает входные файлы по стабильным URL, отправляет узкий по задаче запрос, сохраняет ID операции, опрашивает статус с увеличивающимся интервалом и копирует готовый результат в собственное хранилище.
Ниже приведён пример с идентификатором эндпоинта и полями запроса из документации fal. Это шаблон интеграции, а не утверждение, что показанный запрос выполнялся во время подготовки материала.
import os
import time
import requests
ENDPOINT = "https://queue.fal.run/blackforestlabs/flux-3/edit-image"
headers = {
"Authorization": f"Key {os.environ['FAL_KEY']}",
"Content-Type": "application/json",
}
payload = {
"prompt": (
"Use image 1 as the base. Replace only its package with the product "
"from image 2. Preserve the hands, camera angle, shadows, and background."
),
"image_urls": [
"https://cdn.example.com/base.jpg",
"https://cdn.example.com/product.png",
],
"resolution": "1k",
"aspect_ratio": "auto",
"output_format": "png",
"safety_tolerance": 2,
}
submitted = requests.post(ENDPOINT, headers=headers, json=payload, timeout=30)
submitted.raise_for_status()
job = submitted.json()
status_url = job["status_url"]
response_url = job["response_url"]
while True:
status = requests.get(status_url, headers=headers, timeout=30)
status.raise_for_status()
state = status.json().get("status")
if state == "COMPLETED":
break
if state in {"FAILED", "CANCELLED"}:
raise RuntimeError(status.text)
time.sleep(2)
result = requests.get(response_url, headers=headers, timeout=30)
result.raise_for_status()
print(result.json())
В документации очереди fal, на которую ведёт страница модели, также есть параметр sync_mode. Но для 4K безопаснее использовать очередь: рендер может занять больше времени, чем обычный HTTP-запрос. Layer явно фиксирует этот асинхронный контракт: отправка возвращает HTTP 202, inference_id и рекомендуемый интервал опроса. Кроме того, Layer поддерживает ключи идемпотентности, которые можно повторно использовать в течение 24 часов. Это помогает избежать двойной оплаты после сетевых повторов.
Перед тем как направлять на эндпоинт реальный трафик:
- Отклоняйте изображения, у которых одна из сторон меньше 256 пикселей, и соблюдайте ограничение по мегапикселям выбранного провайдера.
- Сохраняйте порядок массива и формируйте промпты с явными ссылками на
image 1,image 2и так далее. - Используйте уникальный ключ идемпотентности, если провайдер его поддерживает. В противном случае сохраняйте запрос до повторной отправки.
- Ограничивайте время опроса и показывайте пользователю статус ожидания вместо того, чтобы держать открытым запрос приложения.
- Копируйте готовые файлы в контролируемое хранилище: срок жизни внешних URL может не соответствовать политике хранения приложения.
- Для каждой задачи записывайте ID модели, провайдера, разрешение, число референсов, рассчитанную стоимость, время выполнения и результат модерации.
Честный компромисс между стоимостью и качеством
Полноценное сравнение стоимости сейчас невозможно: на проверенных страницах провайдеров не было полной таблицы цен для каждого разрешения. На fal действовала промо-цена $0.024 за изображение в 1K, после окончания акции она должна вырасти до $0.048. Провайдер также указывал, что количество референсов не влияет на стоимость. Точные цены для 2K и 4K на странице модели не опубликованы, поэтому вывести бюджет 4K из цены 1K нельзя.
Вместо того чтобы всегда включать 4K, используйте двухэтапный процесс:
| Этап | Разрешение | Задача | Когда переходить дальше |
|---|---|---|---|
| Проверка промпта и референсов | 1K | Оценить композицию, внешность объекта, форму товара и текст | Отклонить или доработать результат до более дорогого запуска |
| Финальный файл | 2K или 4K | Подготовить утверждённый результат | Повышать разрешение только при необходимости для целевого канала |
Высокое разрешение добавляет пиксели, но не улучшает точность редактирования. Неудачный результат в 1K в 4K просто станет более крупной неудачей. Оставляйте 4K для утверждённых изображений, которые пойдут в печать, макеты билбордов или сильную обрезку.
При запуске приложения отправьте минимальную корректную тестовую задачу или запросите ценовую информацию у провайдера, сохраните рассчитанную стоимость и отключите 4K, если цена не вернулась или превышает бюджет операции. В первоначальном ответе Layer может передавать estimated_price_creative_units, однако публичная страница модели не содержит пересчёта в доллары. На просмотренной странице модели Replicate были описаны входные параметры, но не указана фиксированная цена. Это вопросы, которые нужно закрыть в панели аккаунта до запуска, а не пытаться угадать в коде.
Выбирайте эндпоинт под рабочий процесс
Провайдер стоит выбирать под контракт, который требуется приложению. Одинаковое название модели ещё не делает схемы запросов взаимозаменяемыми.
- Replicate: выбирайте модель BFL, если приоритетом является подтверждённое происхождение, а ваш стек уже работает через workflow предсказаний Replicate. Здесь опубликован самый высокий лимит входного изображения — 16 МП; также доступны опциональные web/image grounding.
- fal: выбирайте партнёрский эндпоинт редактирования, если важнее понятные настройки, работа через очередь и опубликованная цена для 1K. Ограничение в 4 МП потребует уменьшать изображения ещё до отправки запроса.
- Layer: подходит для организации рабочих пространств, формального HTTP-контракта с кодом
202, подсказок по опросу статуса и идемпотентности на 24 часа. До формирования бюджета уточните, как Creative Units переводятся в доллары.
Не определяйте провайдера по слову «FLUX3» в домене или названии репозитория. Проверьте ID модели, владельца или партнёрский статус, актуальные значения enum, коммерческие условия и успешное выполнение недорогого запроса. Популярная Anil-matcha/Flux-3-Dev-API-обёртка на момент проверки всё ещё помечала маршруты для изображений как «скоро появятся», тогда как модель BFL на Replicate и партнёрские маршруты fal уже работали.
Что проверить перед запуском в продакшен
FLUX 3 Image подходит для контролируемого тестирования через API, включая режимы 4K и работу с 10 референсами. Перед запуском выбранный эндпоинт должен пройти один и тот же набор репрезентативных задач сначала в 1K, а затем в финальном разрешении.
| Проверка | Условие прохождения |
|---|---|
| Происхождение модели | Точный ID модели BFL или проверенного партнёра |
| Доступность | Реальный недорогой запрос завершается успешно, а не просто присутствует в документации |
| Работа с референсами | Порядок входных данных и назначенные роли сохраняются в сценариях с 2, 5 и 10 изображениями |
| Качество | Внешность объекта, геометрия товара, текст и неизменённые области соответствуют заданным критериям проверки |
| Стоимость | Провайдер возвращает или показывает приемлемую цену для каждого включённого разрешения |
| Задержка | Измеренные сроки постановки в очередь и рендера укладываются в целевые показатели для предпросмотра и пакетной обработки |
| Надёжность | Повторные попытки не создают неконтролируемые дубликаты задач и списания |
| Хранение | Результаты копируются до истечения срока действия URL провайдера или изменения его политики |
Практичный вариант — сначала запустить редактирование в 1K, собирать данные о стоимости и задержках, а 2K и 4K включать только для утверждённых финальных файлов. Так вы сохраните доступ к главным заявленным возможностям новой модели и не будете заранее делать неподтверждённых выводов о качестве или цене работы в высоком разрешении.