Подключить LoRA к FLUX.2 [pro] нельзя: в запросе к этой модели нет поля для LoRA ни в API Black Forest Labs (BFL), ни на fal. Один и тот же товар в десятках сцен [pro] удерживает по опорным изображениям — референсам, до 8 штук на запрос. Сама LoRA работает на соседних моделях: на FLUX.2 [klein] через эндпоинты -finetuned у BFL и на FLUX.2 [dev] у fal. По состоянию на 2 октября 2026 года для воркфлоу в n8n есть три рабочих маршрута:
| Маршрут | Что удерживает товар | Эндпоинт | Цена кадра 1 Мп | Когда брать |
|---|---|---|---|---|
| A. FLUX.2 [pro] с референсами | 1–8 фото товара в каждом запросе | api.bfl.ai/v1/flux-2-pro | $0,045 с одним референсом | много SKU, по несколько кадров на товар |
| B. LoRA на FLUX.2 [klein] у BFL | LoRA, которую вы обучили сами и загрузили | api.bfl.ai/v1/flux-2-klein-9b-finetuned | $0,015 | есть GPU и опыт обучения, большой объём |
| C. LoRA на FLUX.2 [dev] у fal | LoRA, обученная на стороне fal | queue.fal.run/fal-ai/flux-2/lora | $0,021 плюс $6,40 за обучение одной LoRA | своего GPU нет, сотни кадров на один товар или стиль |
Каркас в n8n у всех трёх одинаковый: HTTP Request отправляет задачу, Wait делает паузу, второй HTTP Request опрашивает статус, If проверяет готовность, третий HTTP Request скачивает файл. Меняются адрес, заголовок авторизации и тело запроса.
Схема ниже собрана по документации BFL, fal и n8n и на реальных ключах не запускалась. Прежде чем отдавать ей каталог, прогоните один товар и сравните списание с расчётом.
Можно ли подключить LoRA к FLUX.2 [pro]: такого поля в запросе нет
Нет. Запрос к /v1/flux-2-pro принимает prompt, input_image и input_image_2…input_image_8, width, height, seed, safety_tolerance, output_format, webhook_url, webhook_secret и disable_pup. Полей finetune_id, finetune_strength или массива loras среди них нет. На fal картина та же: у fal-ai/flux-2-pro и его варианта /edit параметра loras нет.
Прямой фразы «[pro] не поддерживает LoRA» в документации BFL нет. Вывод следует из двух вещей: поля нет в схеме запроса, а в списке эндпоинтов для дообученных моделей перечислены только варианты [klein]. Эндпоинтов -finetuned для [pro], [max] и [flex] в нём нет.
Путаница возникает из-за названий. «FLUX.2 LoRA» действительно существует, но это [klein] у BFL и [dev] у fal. На сторонних страницах эти возможности нередко приписывают всему семейству, в том числе [pro]. Поэтому проверяйте не обзор модели, а схему конкретного эндпоинта на той площадке, где собираетесь платить.
То же правило относится к FLUX 3 Image, которую BFL выпустила 1 октября 2026 года: принимает ли она LoRA, решает схема её эндпоинта, а не описание модели.
Какой маршрут выбрать: референсы [pro], LoRA на [klein] или на fal
Решают три вещи: сколько у вас разных товаров, сколько кадров нужно на каждый и готовы ли вы обучать LoRA сами.
Много SKU и по 3–10 кадров на товар — маршрут A. Обучать LoRA на каждый артикул ради нескольких сцен невыгодно: на fal одно обучение стоит $6,40, а десять кадров [pro] с одним референсом — $0,45. Референс подставляется в запрос прямо из таблицы каталога, новый товар не требует подготовки. Через API [pro] принимает до 8 опорных изображений, на выходе до 4 Мп. BFL описывает [pro] как модель для производственных объёмов.
Несколько ключевых товаров или единый стиль бренда и сотни кадров — маршруты B или C. LoRA окупается, когда одна обученная модель обслуживает длинную серию: сезонные сцены одного флагманского товара или общая манера съёмки для всей линейки. Учтите, что LoRA стиля закрепляет свет, фон и подачу, но не конкретный товар. Если вместе с ней нужен ещё и референс товара, расчёт меняется (см. следующий раздел).
Маршрут B, если у вас есть видеокарта и вы умеете обучать. BFL сама ничего не обучает: вы готовите LoRA в AI-Toolkit или Diffusers на базе FLUX.2 [klein] Base, загружаете файл .safetensors в Dashboard и вызываете эндпоинт -finetuned. По руководству BFL по обучению минимум для klein 4B Base — 12 ГБ VRAM и 32 ГБ оперативной памяти, для 9B Base — 22 ГБ VRAM и 64 ГБ. Взамен вы получаете самый дешёвый кадр и один счёт у BFL. Ограничения: Public Beta (цены, параметры и имена эндпоинтов могут измениться до общего релиза) и одна LoRA на запрос.
Маршрут C, если GPU нет. fal обучает LoRA на FLUX.2 [dev] по архиву фотографий и сразу отдаёт ссылку на веса. В одном запросе можно совместить до 3 LoRA, например товар и стиль бренда. Цена — отдельный счёт у второй площадки и $6,40 за каждое обучение на 1 000 шагов.
Разницу в качестве между [pro], [klein] и [dev] цифры из прайса не показывают. Её выясняет только пробная партия на ваших товарах.
Сколько стоит один кадр: от $0,015 до $0,045 при 1 Мп
При выходном кадре 1 Мп (1024×1024) и референсах не больше 1 Мп каждая цена за изображение получается такой:
| Запрос | Формула | Цена кадра |
|---|---|---|
| [pro], только текст | $0,03 | $0,030 |
| [pro] + 1 референс | $0,03 + $0,015 | $0,045 |
| [pro] + 2 референса | $0,03 + 2 × $0,015 | $0,060 |
| [pro], выход 2 Мп + 1 референс | $0,03 + $0,015 + $0,015 | $0,060 |
[klein] 9B -finetuned, только текст | $0,015 | $0,015 |
[klein] 9B -finetuned + 1 референс | $0,015 + $0,002 | $0,017 |
| fal [dev] + LoRA, только текст | $0,021 за Мп | $0,021 |
fal [dev] + LoRA + 1 референс (/lora/edit) | $0,021 + $0,021 | $0,042 |
Цены BFL взяты из её прайса: первый мегапиксель выхода, каждый следующий и каждый референс считаются отдельно, разрешение округляется вверх до целого мегапикселя, 1 Мп = 1024×1024. Эндпоинты -finetuned на время Public Beta тарифицируются как базовые. Цены fal указаны на страницах fal-ai/flux-2/lora и fal-ai/flux-2-trainer: обучение стоит 0,0064 × число шагов, то есть $6,40 при 1 000 шагов. Всё в долларах США по состоянию на 2 октября 2026 года.
С какого кадра LoRA на fal дешевле референса [pro]: с 267-го
Для одного товара сравниваются [pro] с одним референсом и LoRA на fal без референса:
6,40 + 0,021 × n < 0,045 × n, откуда n > 266,7.

Проверка по обе стороны границы: при n = 266 LoRA обходится в $11,986, [pro] — в $11,97, дешевле [pro]. При n = 267 LoRA стоит $12,007, [pro] — $12,015, дешевле LoRA. Значит, одна обученная LoRA окупается с 267-го кадра.
Если LoRA закрепляет стиль, а товар всё равно подаётся референсом через /lora/edit, граница уходит далеко: 6,40 + 0,042 × n < 0,045 × n даёт n > 2 133,3, то есть LoRA выгоднее только с 2 134-го кадра.
Пример: 500 кадров на один товар и на сто товаров
| Сценарий (пример) | [pro] + 1 референс | [klein] 9B + LoRA | fal [dev] + LoRA |
|---|---|---|---|
| 500 кадров одного товара | 500 × $0,045 = $22,50 | 500 × $0,015 = $7,50 | 500 × $0,021 + $6,40 = $16,90 |
| 100 товаров по 5 кадров | $22,50 | $7,50 и 100 обучений на своём GPU | $10,50 + 100 × $6,40 = $650,50 |
Вторая строка показывает, почему для широкого каталога берут референсы: стоимость кадров одинакова, а обучений нужно сто.
Это арифметика по прайсу. В неё не входят брак и повторные генерации, работа по подготовке датасета, собственный GPU и электричество в маршруте B. Граница в 267 кадров сдвигается при другом числе шагов обучения и другом разрешении.
Каркас воркфлоу в n8n: отправка, Wait, опрос, скачивание
API BFL и очередь fal асинхронные: запрос на генерацию возвращает не картинку, а адрес, по которому нужно спрашивать о готовности. Отдельная нода для BFL в n8n не понадобится, хватит базовых:
- Источник товаров — таблица или база со строками: название, ссылка на фото товара, описание сцены.
- Loop Over Items — делит каталог на партии.
- HTTP Request
Submit— метод POST, тело JSON, авторизация через учётные данные Header Auth (Authentication → Generic Credential Type → Header Auth). - Wait — режим After Time Interval, несколько секунд.
- HTTP Request
Poll— GET по адресу из ответаSubmit, с тем же заголовком. - If — готово, ошибка или ещё ждём. В последнем случае ветка возвращается в Wait.
- HTTP Request
Download— GET по ссылке на результат, Response Format: File, чтобы картинка попала в бинарное поле. - Хранилище — нода вашего диска или объектного хранилища и запись ссылки обратно в таблицу.

Ключ храните в учётных данных, а не в поле URL и не в теле запроса. У BFL заголовок называется x-key, у fal — Authorization со значением Key <ваш ключ>.
Интервал в Wait выбирайте сами: в официальном примере BFL опрос идёт каждые 0,5–1 секунду, минимальный интервал документация не задаёт. По документации n8n при паузе короче 65 секунд данные выполнения остаются в памяти и не выгружаются в базу. Добавьте счётчик попыток, чтобы цикл не крутился бесконечно, если задача зависла.
Маршрут A: FLUX.2 [pro] с референсами товара
Submit: POST на https://api.bfl.ai/v1/flux-2-pro. Это зафиксированный снимок модели; /v1/flux-2-pro-preview указывает на самую свежую версию. Для каталога, где кадры должны быть воспроизводимы от запуска к запуску, логичнее снимок.
{
"prompt": "Флакон из первого изображения стоит на мраморной столешнице, мягкий дневной свет слева, фон размыт",
"input_image": "{{ $json.product_photo_url }}",
"input_image_2": "{{ $json.second_angle_url }}",
"width": 1024,
"height": 1024,
"output_format": "jpeg"
}Референсы передаются ссылкой или в base64. Каждый стоит $0,015, поэтому второй ракурс добавляйте там, где он действительно нужен.
Ответ содержит id, polling_url, а также cost, input_mp и output_mp — по ним удобно сверить расчёт с первым же запросом.
Poll: GET по адресу
{{ $('Submit').item.json.polling_url }}Ссылаться нужно именно на ноду Submit: после первого круга в $json лежит уже ответ опроса, а polling_url в нём нет. Собирать адрес опроса вручную нельзя — для api.bfl.ai и региональных api.eu.bfl.ai, api.us.bfl.ai BFL требует использовать тот, что вернулся в ответе.
If: {{ $json.status }} равен Ready — идём скачивать {{ $json.result.sample }}. Равен Error или Failed — пишем строку в журнал ошибок и переходим к следующему товару. Любое другое значение — обратно в Wait.
Маршрут B: эндпоинт -finetuned для LoRA на FLUX.2 [klein]
Подготовка вне n8n: обучить LoRA на базе FLUX.2 [klein] Base, в Dashboard открыть Customization → Finetunes, нажать Add Finetune, выбрать ту же базовую модель и загрузить .safetensors. Имя, которое вы зададите, и есть finetune_id. Там же можно указать триггерную фразу.
В n8n меняются только адрес и два поля тела:
{
"prompt": "ohwx флакон на мраморной столешнице, мягкий дневной свет слева",
"finetune_id": "my-product-lora",
"finetune_strength": 1.0,
"width": 1024,
"height": 1024
}Адрес — https://api.bfl.ai/v1/flux-2-klein-9b-finetuned или другой из шести эндпоинтов -finetuned. Он обязан совпадать с базовой моделью, для которой загружена LoRA: запрос к flux-2-klein-4b-finetuned с LoRA от 9B завершится ошибкой.
Три детали из документации BFL:
- Триггерную фразу (в примере
ohwx) нужно вставлять в промпт, иначе LoRA с фразой не сработает. finetune_strengthпо умолчанию 1,0. Если каждый кадр похож на обучающую выборку независимо от промпта, пройдите диапазон 0,7–0,9 с одним и тем жеseed.- Остальные параметры, включая
input_image, работают как у базового эндпоинта, так что LoRA можно сочетать с референсом.
Опрос, проверка статуса и скачивание — те же ноды, что в маршруте A.
Маршрут C: обучение и генерация с LoRA на fal
Здесь два воркфлоу. Первый запускается один раз на товар или стиль и обучает LoRA. Submit: POST на https://queue.fal.run/fal-ai/flux-2-trainer.
{
"image_data_url": "https://example.com/product-dataset.zip",
"steps": 1000,
"default_caption": "ohwx флакон духов"
}image_data_url — ссылка на zip-архив с фотографиями; fal советует не меньше 10 изображений. Подписи можно положить в архив текстовыми файлами с теми же именами. Если подписей нет и default_caption не задан, обучение завершится ошибкой. Рекомендаций именно для товарных датасетов у fal нет. В результате придёт diffusers_lora_file.url — сохраните эту ссылку в таблице рядом с товаром.
Второй воркфлоу генерирует кадры. Submit: POST на https://queue.fal.run/fal-ai/flux-2/lora.
{
"prompt": "ohwx флакон духов на мраморной столешнице, мягкий дневной свет слева",
"loras": [
{ "path": "{{ $json.lora_url }}", "scale": 1 }
],
"image_size": { "width": 1024, "height": 1024 },
"output_format": "jpeg"
}Массив loras принимает до 3 элементов, scale меняется от 0 до 4. Суммарный размер LoRA больше 2 ГБ увеличивает цену на 50 % за каждый следующий гигабайт. Чтобы добавить референс товара, используйте fal-ai/flux-2/lora/edit с массивом image_urls (до 4 изображений).
Очередь fal отвечает иначе, чем BFL, поэтому ветка опроса на шаг длиннее:
- Ответ
Submitсодержитrequest_id,status_urlиresponse_url. Poll— GET поstatus_url. Статус идёт отIN_QUEUEчерезIN_PROGRESSкCOMPLETED.- If проверяет два условия:
statusравенCOMPLETEDи полеerrorпустое. Неудачный запрос тоже заканчивается статусомCOMPLETED, только с заполненнымerror. - Ещё один HTTP Request — GET по
response_url. Ссылка на картинку лежит вimages[0].url. Downloadскачивает файл.
Лимит в 24 задачи и ссылка на 10 минут: что это меняет в схеме
Оба ограничения BFL требуют отдельных решений в схеме, иначе воркфлоу начнёт падать на первом же большом каталоге.
24 активные задачи одновременно. Двадцать пятый запрос получит код 429 и будет отклонён, пока не завершится одна из предыдущих задач. В Loop Over Items задайте размер партии не больше 24 и замкните цикл так, чтобы следующая партия уходила только после скачивания предыдущей. В самой ноде HTTP Request есть Options → Batching с полями Items per Batch и Batch Interval в миллисекундах. Они разносят отправку по времени, но не знают, завершились ли прошлые задачи, поэтому одной этой настройки мало. На случай 429 включите повтор с растущей паузой.
Ссылка result.sample живёт 10 минут. Она подписана, отдаётся с адресов delivery.*.bfl.ai, без CORS, и BFL прямо пишет, что показывать её конечным пользователям нельзя. Скачивайте файл в той же ветке сразу после статуса Ready и кладите в своё хранилище. Схема «сохранить ссылку в таблицу и скачать ночным заданием» не сработает. Если n8n стоит за сетевым экраном, BFL советует разрешить весь шаблон delivery.*.bfl.ai, а не отдельные региональные адреса.
Код 402 означает, что закончились кредиты. Кредиты у BFL покупаются заранее, 1 кредит равен $0,01. Повторять запрос бессмысленно — остановите воркфлоу и отправьте себе уведомление.
Вместо опроса обе площадки умеют присылать результат вебхуком: у BFL это поле webhook_url, в n8n ему соответствует Wait в режиме On Webhook Call. Схема получается короче, но вашему n8n нужен адрес, доступный извне.
Что проверять вручную: логотип, текст на этикетке, мелкие надписи
Ни один из трёх маршрутов не гарантирует, что товар будет воспроизведён с точностью до буквы. Документация BFL описывает сохранение объекта между сценами, но не обещает точной передачи логотипа, текста на этикетке и мелкого шрифта. Для LoRA таких обещаний нет ни у BFL, ни у fal.
Для карточки товара это критично: искажённое название или неверный объём на этикетке — уже неверная информация о товаре. Поэтому перед сохранением стоит добавить в воркфлоу шаг проверки:
- логотип и название бренда — сверить с оригиналом по буквам;
- состав, объём, вес и другие цифры на упаковке;
- цвет товара, особенно если он входит в название варианта;
- форму и пропорции: число кнопок, расположение ручек, крышки, швов;
- лишние детали, которых у товара нет.
Практичная схема: готовые кадры уходят в папку «на проверку», а в таблицу публикации попадают только после отметки человека. Если точный текст на упаковке обязателен, этикетку можно накладывать из исходного макета уже после генерации сцены.
Короткие ответы о LoRA, FLUX.2 и n8n
Можно ли применить несколько LoRA в одном запросе?
У BFL — нет: эндпоинты -finetuned принимают один finetune_id. На fal — да, массив loras вмещает до 3 элементов.
Можно ли использовать LoRA на FLUX.2 [klein] 9B в коммерческих проектах?
Однозначного ответа в документации BFL нет. Веса [klein] 4B распространяются по лицензии Apache 2.0, веса 9B — по FLUX Non-Commercial License. Условия коммерческого использования LoRA на базе 9B через API BFL на страницах документации не расписаны, поэтому уточните их в лицензионных материалах BFL до запуска. Страница модели на fal отмечает fal-ai/flux-2/lora как пригодный для коммерческого использования, а веса [dev] для собственного развёртывания BFL выдаёт по некоммерческой лицензии: условия зависят от того, где работает модель.
Доступны ли BFL и fal из России и как их оплатить?
Ни доступность сервисов, ни способы оплаты для пользователей из России в их документации не описаны. До сборки воркфлоу убедитесь, что можете зарегистрироваться, получить ключ и пополнить баланс на обеих площадках, которые собираетесь использовать.
Нужна ли вообще FLUX.2, если задача — просто картинки для карточек?
Не обязательно. Если единообразие товара между сценами для вас не главное требование, сначала сравните модели по своей задаче: в этом поможет материал о том, как выбрать GPT Image 2, Nano Banana, Midjourney или FLUX.2.
![Три маршрута для FLUX.2 pro и LoRA в n8n: столбцы цены кадра 1 Мп — [pro] с референсом $0,045, [klein] с LoRA $0,015, fal с LoRA $0,021](/posts/ru/flux-2-pro-lora-product-photography-n8n/img/cover.webp)


