models

Black Forest Labs: FLUX.3 Image

Markdown · JSON

Black Forest Labs: FLUX.3 Image

FLUX 3 Image создаёт и редактирует изображения по текстовому заданию и набору до десяти референсов. Добавляет ограничивающие рамки в промпте для композиции и локальных изменений, привязку к веб-источникам и поиску изображений, а также пять классов разрешения.

О модели

Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.

FLUX 3 Image — модель Black Forest Labs для генерации и редактирования изображений с явным управлением композицией. Текст создаёт новую сцену; предоставленные изображения задают объект, редактируемую сцену или объединяемые элементы. Ограничивающие рамки позволяют указывать в задании место каждого элемента и изменяемые части существующей картинки. Результат — изображение, у которого нужно проверить запрошенную сцену, текст и макет.

Создайте сцену или задайте правку

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

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

Объединение и подготовка референсов

Конкретный профиль разработчика принимает от одного до десяти референсов по URL изображения или как закодированные данные. Каждый должен быть не менее 256×256 пикселей и не более 16 мегапикселей. Назовите референс по позиции или видимому содержимому, затем объясните роль: человек из Image 1, куртка из Image 2, комната из Image 3. Референс — источник визуальной информации, а не указание копировать каждую постороннюю деталь.

Соотношение сторон по умолчанию — auto. В спецификации запроса приоритет имеет соотношение из промпта; иначе кадрирование задаёт первый референс, а при отсутствии референса и запрошенной формы используется квадрат. Для композиции поставьте нужный референс сцены первым или явно выберите соотношение. Сохраняйте исходные изображения и порядок вместе с результатом, чтобы следующая правка использовала ту же визуальную отправную точку.

Размещение элементов ограничивающими рамками

Промпт макета объединяет описание и JSON-массив строк элементов. В описании элемент назван маркером вроде <cup_1>; строка содержит id, bbox и desc. Координаты — целые числа от 0 до 1000 в порядке [top, left, bottom, right], отсчитываемые от левого верхнего угла. Например, [0, 0, 500, 500] обозначает левую верхнюю четверть независимо от пиксельного размера изображения. Используйте соотношение сторон, под которое спроектирован макет: сетка координат растягивается вместе с кадром.

Строка редактирования вместо этого использует from, src_bbox и tgt_bbox вместе с идентификатором и описанием. ref_image_0 означает первое предоставленное изображение. Одинаковые исходная и целевая рамки закрепляют элемент; разные — перемещают его или меняют размер. Новая строка без источника генерирует описанное в целевом месте, позволяя добавления, замены или перекрашивание. Строка с источником без цели удаляет элемент. Задавайте добавления и удаления и текстом, и строками, сохраняя опорные строки деталей, которые должны остаться на месте.

Выделите надписям отдельную рамку и заключите точный текст в кавычки в desc. Рамки направляют размещение и масштаб, но не являются масками обрезки: элемент может выходить за прямоугольник. Разработчик сообщает, что в примерах новые объекты в рамках около 40×25 пикселей часто не появлялись. Оставьте достаточно видимого пространства и проверяйте границы правки. Пиксели вне цели обычно стабильны, но тени, отражения и соседнее освещение могут меняться.

Привязка к источникам, классы результата и полезные записи

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

Пять классов разрешения — 768sq, 1k, 1.5k, 2k и 4k, по умолчанию 1k. Они представляют уровни равной пиксельной площади, поэтому точные ширина и высота зависят от выбранного соотношения. Пятнадцать фиксированных соотношений идут от 21:9 через квадратные и вертикальные форматы до 9:21. Профиль управляет размером через соотношение и разрешение; он не предоставляет поля seed, width или height из запросов FLUX.2. Документированный селектор версии сейчас обозначает обновляемый выпуск, а не датированное соответствие весам поставщика.

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

Ailoot Ultra · Картинки POST /v1/images/generations black-forest-labs/flux-3-image

black-forest-labs/flux-3-image

Black Forest Labs /black-forest-labs/flux-3-image

Начало

FLUX 3 Image создаёт и редактирует изображения по текстовому заданию и набору до десяти референсов. Добавляет ограничивающие рамки в промпте для композиции и локальных изменений, привязку к веб-источникам и поиску изображений, а также пять классов разрешения.

Допустимые входные данные
Текст · Картинки
Результаты
Картинки

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Картинки POST /v1/images/generations
Входные данные
text, image
Результат
image
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
black-forest-labs/flux-3-image
По умолчанию—
ПолеpromptТипstringТребованиеОбязательноЗначения и ограничения
Минимальная длина: 1
По умолчанию—
ПолеresolutionТипstringТребованиеНеобязательноЗначения и ограничения
768, 1K, 1.5K, 2K, 4K
По умолчанию—
Полеaspect_ratioТипstringТребованиеНеобязательноЗначения и ограничения
21:9, 2:1, 16:9, 3:2, 7:5, 4:3, 5:4, 1:1, 4:5, 3:4, 5:7, 2:3, 9:16, 1:2, 9:21, auto
По умолчанию—
ПолеnТипintegerТребованиеНеобязательноЗначения и ограничения
Минимум: 1
Максимум: 1
По умолчанию—
Полеinput_referencesТипarrayТребованиеНеобязательноЗначения и ограничения
Минимум элементов: 0
Максимум элементов: 10
По умолчанию—
ПолеproviderТипobjectТребованиеНеобязательноЗначения и ограниченияПо умолчанию—
Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактmodel, prompt
Параметрmaterial_typesКонтрактtext, image

Жизненный цикл: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · Фактически возвращённый task_id или запись в медиатеке

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Тарифы

Как рассчитывается итоговая плата

Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Не указано При выборе быстрого режима
Режим flex
Не указано При выборе режима flex
Максимальная интенсивность рассуждений
Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)

Оценочные ставки для сравнения

Цены по конфигурациям

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

КонфигурацияШкала ставокПрогноз количестваПлата
КонфигурацияБазовые тарифы на токеныШкала ставокБазовая ставкаПрогноз количества—Плата
Вход · Входные токены · Оценка только для сравнения — / 1K токенов
Выход · Выходные токены · Оценка только для сравнения — / 1K токенов
Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов
КонфигурацияОриентировочная стоимость генерацииШкала ставок—Прогноз количестваОценка для одной генерацииПлата
Выход · Оценочная стоимость генерации · Оценка только для сравнения $0.082 оценка до генерации

Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации.

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Картинки

curl
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'black-forest-labs/flux-3-image', 'prompt': 'a red panda astronaut floating in space, studio lighting'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT

Получить и сохранить результаты

Ailoot Ultra · Картинки

Загрузите каждое полученное изображение или сохраните его содержимое Base64

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Чтение другого содержимого
Читать существующие материалы, принадлежащие вам
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Сохраняйте все готовые результаты

Сохраните каждое готовое изображение; загрузите содержимое по каждому полученному URL или декодируйте его содержимое Base64.

Сохраняйте полный ответ и заголовки, все фактические результаты, исходные возвращённые идентификаторы и все поля использования. Восстанавливайте исходную операцию без повторной отправки запроса создания.

Если нужно проверить исходный ответ

Сохраните возвращённый X-Client-Request-ID для сверки. Читайте только фактически возвращённые значения task_id/asset_id или собственную медиатеку; никогда не составляйте URL задачи из ID операции и никогда не отправляйте запрос создания повторно.

Поля ответа
ПолеТип
ПолеcreatedТип
Полеdata[].urlТип
Полеdata[].b64_jsonТип
ПолеusageТип

Псевдонимы

Псевдонимы моделей

Ailoot Ultra black-forest-labs/flux-3-image

Псевдонимы путей метода

/v1/images

Связанные ID для вызова

black-forest-labs/flux-3-image

FAQ · Black Forest Labs: FLUX.3 Image
Какие входные данные и результаты доступны?

POST /v1/images/generations · black-forest-labs/flux-3-image: text, image → image

Какие поля использует запрос?

POST /v1/images/generations · black-forest-labs/flux-3-image: model, prompt, resolution, aspect_ratio, n, input_references, provider

Какие ограничения действуют?

POST /v1/images/generations · black-forest-labs/flux-3-image: n.minimum: 1; n.maximum: 1

Подробнее

Подключите Ailoot к Claude Code, OpenCode, Hermes или своему приложению.

Компания и портфель её проектов

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Покупайте токены со скидкой.

Скидка по подписке для регулярной работы. Промокоды — до 50% на покупку токенов.

Подписка
Выберите тариф со скидкой для своих регулярных запросов.
Промокод до 50%
Введите код при покупке. Цена пересчитается с учётом действующей акции.
Расходы в истории
Модель, токены и сумма сохраняются для каждого запроса.

Выбрать подписку · Посмотреть цены моделей

Подключайте API к продукту, который вы продаёте.

SaaS, приложения и боты — по оферте и лицензионному договору Ailoot. Для перепродажи запросите реселлерскую лицензию.

Коммерческое приложение
Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.
Лицензия для реселлера
Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.
Документы на сайте
Оферта, лицензионный договор и политика обработки данных доступны до подключения.

Запросить реселлерскую лицензию · Оферта и лицензионный договор