Содержание
  1. Какие модели и идентификаторы участвуют
  2. Локальный запуск по карточке модели
  3. Что делают три ключевых параметра
  4. Облачный вход: image_url и поля fal
  5. Локально или облако: таблица выбора
  6. Учебная карточка сравнения
  7. Больше пикселей не значит больше деталей
  8. Частые вопросы
Гайды

Как увеличить изображение FLUX: модели и настройки

31 октября 2026 · 8 минут чтения

Как увеличить изображение FLUX: модели и настройки — это два разных маршрута. Локально работает связка базовой модели black-forest-labs/FLUX.1-dev и ControlNet jasperai/Flux.1-dev-Controlnet-Upscaler через библиотеку Diffusers. Облачный вариант — отдельный endpoint fal-ai/flux-vision-upscaler на fal.ai, где вход задаётся ссылкой на изображение. Ниже — идентификаторы, порядок запуска, параметры и учебная проверка результата.

Какие модели и идентификаторы участвуют

Локальный маршрут собран из двух отдельных сущностей. Базовая модель — black-forest-labs/FLUX.1-dev: именно её загружает пайплайн генерации. ControlNet — jasperai/Flux.1-dev-Controlnet-Upscaler, разработка исследовательской команды Jasper. В карточке модели на Hugging Face он описан как ControlNet для изображений низкого разрешения, обученный на синтетической схеме деградации: реальное изображение искусственно портили шумом (гауссовым и пуассоновым), размытием и JPEG-сжатием. Это объясняет, зачем модель вообще нужна: она работает с типичными дефектами сжатых и уменьшенных картинок.

Обратите внимание на тег пайплайна в карточке: image-to-image. Модель обучена на задаче super-resolution и помечена тегами ControlNet и upscaler. Лицензия указана как flux-1-dev-non-commercial-license со ссылкой на лицензию FLUX.1-dev.

Облачный маршрут — это другая модель и другой владелец. В документации fal.ai endpoint описан как fal-ai/flux-vision-upscaler, категория image-to-image, тип inference. Это самостоятельный сервис со своей схемой входа и своими параметрами. Объявлять его той же моделью, что Jasper ControlNet, нельзя: у них разные идентификаторы, разные входы и разные настройки.

Маршрут Базовая модель ControlNet / endpoint Библиотека
Локально black-forest-labs/FLUX.1-dev jasperai/Flux.1-dev-Controlnet-Upscaler Diffusers
Облако не требуется локально fal-ai/flux-vision-upscaler HTTP API или клиент fal

Разделение важно ещё и потому, что параметры одного маршрута не переносятся на другой. Значения из примера Jasper описывают конкретный пайплайн Diffusers. У fal своя схема полей, и подставлять туда числа из локального примера смысла нет.

Локальный запуск по карточке модели

Карточка jasperai/Flux.1-dev-Controlnet-Upscaler даёт готовый пример на Diffusers. Порядок такой: импортировать torch, загрузчик изображений и классы FluxControlNetModel и FluxControlNetPipeline; загрузить ControlNet из jasperai/Flux.1-dev-Controlnet-Upscaler в типе torch.bfloat16; собрать пайплайн из black-forest-labs/FLUX.1-dev с этим ControlNet; перевести пайплайн на cuda; загрузить контрольное изображение; увеличить его; вызвать пайплайн.

Отдельный шаг, который легко пропустить, — предварительное увеличение контрольного изображения. В примере размеры читаются как w, h = control_image.size, после чего изображение растягивается в четыре раза: control_image.resize((w * 4, h * 4)). Так готовится вход для ControlNet; итоговое изображение появится после генерации. Затем в вызов пайплайна передаются height и width, равные размерам уже увеличенного контрольного изображения.

Промпт в примере пустой: prompt="". Таким образом, вход модели — изображение; текстовый промпт здесь не используется. Это соответствует задаче upscaler.

Числа из примера — controlnet_conditioning_scale=0.6, num_inference_steps=28, guidance_scale=3.5 — это документированные параметры примера. Они не являются измеренным оптимумом и не подбирались под ваш конкретный файл. Относитесь к ним как к стартовой точке, от которой вы отталкиваетесь при сравнении.

Что делают три ключевых параметра

Документация Diffusers по FluxControlNetPipeline объясняет назначение каждого параметра.

controlnet_conditioning_scale (по умолчанию 1.0) — выходы ControlNet умножаются на это значение перед добавлением к остатку в исходной модели. Проще говоря, это сила влияния контрольного изображения на результат. Меньшее значение ослабляет привязку к входу, большее — усиливает.

num_inference_steps (в описании параметра указано значение по умолчанию 50) — число шагов денойзинга. Больше шагов обычно даёт более высокое качество ценой более медленного вывода. Это прямая формулировка из документации.

guidance_scale (по умолчанию 7.0) — масштаб управления из Classifier-Free Diffusion Guidance. Он включается при значении больше 1. Более высокий масштаб подталкивает генерацию ближе к текстовому промпту, обычно за счёт качества изображения.

Здесь важно не путать роли. guidance_scale управляет следованием тексту, а controlnet_conditioning_scale — силой влияния контрольного изображения. В примере Jasper промпт пустой, поэтому основную работу ведёт именно ControlNet. Значения из примера относятся к этому пайплайну Diffusers. Переносить их на fal не нужно: у облачного endpoint своя схема, и там действуют собственные поля и диапазоны.

Облачный вход: image_url и поля fal

Документация fal.ai описывает endpoint fal-ai/flux-vision-upscaler и его схему входа. Обязательное поле — image_url типа string: это URL изображения, которое нужно увеличить. В примере используется ссылка на файл в хранилище fal.

Остальные поля необязательные. upscale_factor типа float задаёт коэффициент увеличения в диапазоне от 1 до 4, значение по умолчанию 2. seed типа integer задаёт зерно; если его не указать, используется случайное. creativity типа float управляет отклонением от оригинала и соответствует силе денойзинга при сэмплировании: диапазон от 0 до 1, значение по умолчанию 0.3. steps типа integer задаёт число шагов вывода в диапазоне от 4 до 50, значение по умолчанию 20. Есть также guidance (от 1 до 4, по умолчанию 1) и enable_safety_checker (по умолчанию true).

Ответ содержит поле image с URL результата, а также seed, timings и caption — сгенерированную VLM подпись. В примере ответа указаны размеры 2048 на 2048.

Запрос к fal — платная операция: в документации endpoint указана цена за мегапиксель. Автор запроса передаёт свой ключ в заголовке авторизации. Здесь запрос не выполняется: чтобы получить результат, его нужно отправить самостоятельно со своим ключом и своим изображением.

Локально или облако: таблица выбора

Критерий Локально (Jasper + FLUX.1-dev) Облако (fal)
Установка Diffusers, загрузка двух моделей, GPU Клиент или HTTP-запрос
Файлы Веса моделей на своём диске Изображение доступно по URL
Ключ Не нужен для запуска пайплайна Ключ собственного аккаунта fal
Лицензия Лицензия FLUX.1-dev, проверяется для конкретной модели Условия сервиса fal
Контроль параметров Полный: шаги, guidance, сила ControlNet Ограничен полями endpoint
Оплата Своё железо Оплата за мегапиксель

Лицензия — отдельный пункт, который стоит проверить до запуска. Модель FLUX.1-dev распространяется под FLUX.1 [dev] Non-Commercial License. В тексте лицензии Black Forest Labs указано, что веса, параметры и код вывода предоставляются для некоммерческого и непроизводственного использования. Коммерческое применение требует отдельной лицензии от компании.

При этом лицензия различает модель и результаты. В её тексте сказано, что компания не заявляет прав собственности на Outputs, а ответственность за сгенерированные результаты и их дальнейшее использование лежит на пользователе. Outputs определяются как контент, созданный работой модели по входу или промпту. Поэтому обобщение «любые картинки нельзя использовать коммерчески» неверно: нужно смотреть конкретную лицензию конкретной модели и условия её применения.

Учебная карточка сравнения

Это учебный порядок действий. Редакция не измеряла результат такого прогона. Он помогает понять, что именно изменилось при увеличении.

Сначала сохраните оригинал, идентификаторы моделей, seed и все параметры базовой попытки. Сделайте базовый результат с ними. Затем измените ровно один параметр — например, controlnet_conditioning_scale — оставив остальные условия и seed прежними. Сравните два результата по конкретным признакам:

  • границы объектов: не «поплыли» ли края;
  • надписи: читаются ли буквы, не превратились ли в узор;
  • кожа: сохранилась ли естественная текстура;
  • повторяющиеся линии: не появились ли ритмичные артефакты.

Фиксированный seed помогает сопоставить две попытки между собой. При этом одинаковый seed не гарантирует идентичного результата на разных платформах: локальный пайплайн Diffusers и облачный endpoint — разные системы.

Приёмка простая: размер изображения увеличился, а существенные элементы не исказились. Спорные, заново сгенерированные детали проверяет человек. Если контур лица или текст на вывеске изменились, вернитесь к параметрам и повторите проверку.

Больше пикселей не значит больше деталей

Увеличение даёт большую ширину и высоту — это факт, который видно по размерам файла. Сохранность содержимого — отдельный вопрос. Модель super-resolution достраивает правдоподобные текстуры там, где исходных данных не хватает. Новая текстура кожи или листвы выглядит убедительно, но такие детали синтезируются моделью. Их соответствие оригиналу нужно проверять отдельно.

Практический вывод: отделяйте измеримое от оценочного. Ширина и высота в пикселях — измеримы. Читаемость надписи, узнаваемость лица, отсутствие артефактов — оцениваются глазами. Более крупный файл сам по себе не доказывает, что истинные исходные детали восстановлены.

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

Частые вопросы

Чем отличается Jasper ControlNet от fal endpoint?

Это разные модели с разными идентификаторами. Локально работает jasperai/Flux.1-dev-Controlnet-Upscaler вместе с базовой black-forest-labs/FLUX.1-dev через Diffusers. Облачный вариант — fal-ai/flux-vision-upscaler со своей схемой входа. Параметры одного маршрута не переносятся на другой.

Какие значения параметров ставить?

В примере карточки Jasper указаны controlnet_conditioning_scale=0.6, num_inference_steps=28 и guidance_scale=3.5. Это параметры официального примера; оптимальные значения для вашего исходника требуют отдельного подбора. Начните с них и меняйте по одному параметру, сравнивая результаты.

Что делает controlnet_conditioning_scale?

Выходы ControlNet умножаются на это значение перед добавлением к остатку в исходной модели. Это сила влияния контрольного изображения. Меньшее значение ослабляет привязку к входу, большее — усиливает.

Какой коэффициент увеличения доступен в fal?

Поле upscale_factor принимает значения от 1 до 4, по умолчанию 2. Это отдельный параметр облачного endpoint, он не связан с предварительным увеличением контрольного изображения в локальном примере.

Можно ли использовать результат коммерчески?

Лицензия FLUX.1 [dev] Non-Commercial License описывает некоммерческое использование модели, а права на Outputs отделены от прав на модель. Коммерческое применение модели требует отдельной лицензии от Black Forest Labs. Проверяйте условия конкретной модели перед использованием.

Читайте также

3 материала