Перейти к основному контенту

Как проверить, меняет ли LoRA для Z-Image Turbo изображение

Проверьте на одном seed, влияет ли LoRA для Z-Image Turbo на картинку: контрольные запросы, видимые изменения, совместимость и ограничения NSFW.

Автор
Lydia
Опубликовано
Время чтения
8 мин чтения
Обновлено
Четверо взрослых рассматривают три портрета с разной цветокоррекцией в тёплой фотогалерее

Вы подключаете LoRA и получаете готовый портрет, который выглядит точно так же, как у базовой модели. Одна лишь успешно выполненная задача не показывает, повлиял ли адаптер на картинку. Чтобы это выяснить, запустите один и тот же промпт с одним и тем же seed три раза: дважды без LoRA и один раз с ним. Три результата обойдутся в $0.036 при цене $0.012 за изображение. Сравните их и посмотрите, проявляется ли нужное изменение стиля или внешности сверх обычного разброса базовой модели.

Этот второй вопрос важнее всего в работе с контентом для взрослых. Базовая модель и так выполняет «взрослые» задания без фильтра, поэтому более откровенный результат с адаптером может быть заслугой базовой модели. Только контроль покажет, что откуда берётся.

Сначала попробуйте в Playground

Откройте Playground для z-image-turbo-lora в режиме Form view и задайте одинаковые значения для всех трёх запусков:

  1. Вставьте простой портретный промпт в поле Prompt, установите Aspect ratio 1:1, Output format PNG и Seed 42. Сжатие JPEG добавляет шум и портит попиксельное сравнение.
  2. В разделе Style LoRAs нажимайте Remove item, пока список не опустеет, и запустите генерацию дважды. Это два ваших контрольных запуска.
  3. Выберите Add item, вставьте прямую ссылку на .safetensors в LoRA file, оставьте Strength равным 1 и запустите один раз. (В Playground масштаб LoRA называется «Strength»; поле API называется scale и не является регулятором strength для «изображения в изображение», описанным ниже.)
  4. Поставьте три результата рядом: проявляется ли нужное изменение стиля или внешности сверх разницы между двумя контрольными запусками?

Адаптер Realism может лишь слегка изменить портрет, который и так выглядит фотографически. Для более заметной первой проверки выберите совместимый с Turbo LoRA в живописном стиле или с цветокоррекцией и триггерное слово его автора. Небольшая разница у Realism не означает, что загрузка не удалась.

Запустите проверку из трёх задач через API

Чтобы измерить разницу, а не оценивать её на глаз, выполните те же три задачи из Python. Установите spicyapi и pillow, задайте SPICY_API_KEY и запустите:

python
import os
import uuid
import urllib.request
from io import BytesIO
from PIL import Image, ImageChops, ImageStat
from spicyapi import SpicyClient, output_assets

client = SpicyClient()
MODEL = "alibaba/z-image-turbo-lora/text-to-image"
inputs = {"prompt": "Realism, studio portrait of a woman in a burgundy blazer, soft window light, grey backdrop",
          "aspect_ratio": "1:1", "output_format": "png", "seed": 42,
          "loras": [{"path": "https://huggingface.co/suayptalha/Z-Image-Turbo-Realism-LoRA/resolve/8dc179cb56844d4ddc6e4527c30e98347eeae971/pytorch_lora_weights.safetensors", "scale": 1}]}

images = []
for name, loras in [("base-1", []), ("base-2", []), ("lora", inputs["loras"])]:
    body = {**inputs, "loras": loras}
    quote = client.quote_task(model=MODEL, input_data=body)
    if input(f"{name}: maximum ${quote['maxCharge']}. Create? [y/N] ") != "y":
        raise SystemExit("Stopped")
    task = client.create_task(model=MODEL, input_data=body, idempotency_key=str(uuid.uuid4()),
                              quote_id=quote["quoteId"], expected_cost=quote["estimatedCost"])
    final = client.wait_for_terminal(task["taskId"])
    url = output_assets(final)[0]["url"]
    request = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
    data = urllib.request.urlopen(request, timeout=120).read()
    open(name + ".png", "wb").write(data)
    images.append(Image.open(BytesIO(data)).convert("RGB"))

for label, other in [("control gap", images[1]), ("LoRA gap", images[2])]:
    diff = ImageStat.Stat(ImageChops.difference(images[0], other)).mean
    print(label, sum(diff) / 3 / 255 * 100)

Работу с задачами описывает Python SDK. Используйте прямой файл LoRA с зафиксированной версией и триггерное слово автора; смена файла между контрольными запусками обесценивает сравнение. Один и тот же seed всё равно может давать разные пиксели, поэтому сначала сравните два контрольных запуска и лишь потом интерпретируйте оценку адаптера.

Как читать результат

Контроль против LoRA в сравнении с контролем против контроляЧто это значитЧто делать
Примерно на уровне шума, и изображения похожиВ этом промпте видимого эффекта адаптера нетПроверьте базовую модель, на которой он обучен, триггерное слово и тип файла (ниже), затем используйте масштаб, рекомендованный автором файла; если его нет, сравните 0.5, 1 и 1.5
Заметно выше разрыва между контролями (в том числе при нулевом разрыве), нужный стиль виден, объект не искажёнПризнак нужного эффекта адаптера; подтвердите на других seedОставьте его; повторите на двух-трёх других seed
Намного выше уровня шума, но объект, лицо или кадрирование изменилисьИзменение большое, но пока не полезный результатСравните более низкие масштабы, например 0.8 и 0.6, с тем же контролем
Контроль уже соответствует вашему заданиюАдаптер не добавляет ничего нужногоНе используйте его; LoRA — это регулятор стиля или внешности, а не обязательное условие

Цифры лишь отсеивают; решают ваши глаза. Небольшой сдвиг камеры меняет много пикселей, а изменённое лицо — мало, поэтому прежде чем доверять проценту, посмотрите на внешность, стиль, кадрирование и любые костюмы или предметы, которых вы не просили. Проценты не являются порогами для других файлов или размеров. В сценах для взрослых отличайте также отказ от завершённого, но смягчённого изображения: оно тарифицируется и может выглядеть аккуратно, всё равно не соответствуя заданию.

Почему LoRA ничего не меняет

Если задача выполнена, но нужного эффекта нет, проверьте по порядку:

  • Недокументированная совместимость. Предпочитайте файл, созданный специально для Turbo, или файл, обученный на Base, автор которого документирует совместимость с Turbo. Адаптеры, обученные на Base, не являются автоматической заменой. Следуйте настройкам автора для Turbo и запускайте контроль без LoRA, вместо того чтобы надеяться, что больший масштаб устранит несовместимость.
  • Не тот тип адаптера. Безопасный формат — стандартный LoRA. В одном отчёте по ComfyUI описано, что адаптеры LoKR для Z-Image Turbo записывались в журнал как «lora key not loaded» и игнорировались, тогда как стандартные LoRA работали (ComfyUI issue 10973); это отчёт о локальном загрузчике ComfyUI. Используйте здесь стандартный LoRA для Turbo, вместо того чтобы рассчитывать, что эндпоинт поддерживает файлы LoKR.
  • Нет триггерного слова. Файлы стиля и персонажа реагируют на своё триггерное слово. Начните с него промпт.
  • Слишком низкий масштаб или слабовыраженный файл. Переберите 0.5, 1 и 1.5, зафиксировав всё остальное.
  • Проблемы со ссылкой. URL страницы или закрытый файл приводит к ошибке при отправке или после неё; используйте прямой доступный файл модели.

У «изображения в изображение» два регулятора

Задача «изображение в изображение» добавляет image_url, resolution и отдельный strength (от 0 до 1, по умолчанию 0.8), который определяет, насколько результат может отойти от исходника: низкие значения сохраняют больше влияния исходника, а значения около 1 допускают больше изменений. Универсальной настройки, сохраняющей лицо, не существует; значения выше 1 отклоняются. Фиксируйте strength вместе с seed, пока проверяете scale, иначе вы не поймёте, какой из регуляторов изменил картинку.

Какой путь выбрать для работы с контентом для взрослых

В наших тестах в сентябре 2026 без LoRA «текст в изображение» выполнил все 18 запросов — от намёков до откровенных сцен. «Изображение в изображение» выполнило 15 из 18: три его правки с интимными действиями пропустили запрошенное действие, хотя более экстремальные пробы прошли. Результат зависит от задачи и сцены, а не просто от названия уровня. Поэтому начинайте с «текст в изображение», когда можете описать сцену с нуля, и используйте «изображение в изображение», когда нужно сохранить готовый портрет или композицию. LoRA затем добавляет стиль или персонажа поверх любого из вариантов; обзор модели содержит результаты по классам.

Взрослая женщина в изумрудном платье перед трёхстворчатым зеркалом, опубликованный пример LoRA для Z-Image Turbo

Портрет в изумрудном платье с тремя цветными отражениями в зеркале; при оценке вклада адаптера сравнивайте его с аналогичным контролем без LoRA.

Сохраняйте запись в одну строку

Храните рядом с каждым изображением промпт, seed, соотношение сторон, список {path, scale}, strength (если использовался) и URL результата. Закрепляйте каждый path за версией файла, которая не может измениться: URL от сообщества может продолжать открываться, пока автор заменяет веса, а закреплённый коммит определяет версию адаптера, использованную в каждом запуске.

Фотограф и арт-директор рассматривают три портрета одной и той же взрослой женщины с контролируемыми изменениями стилистики

Редакционная иллюстрация этапа проверки: один и тот же человек в трёх вариантах обработки позволяет легко оценить изменение стиля.

FAQ

Даёт ли один и тот же seed изображение, идентичное до пикселя?

Не гарантированно. Повторите задачу без LoRA и измерьте её относительно первой, прежде чем доверять любой разнице, приписываемой LoRA.

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

В один запрос можно загрузить до трёх, но сначала проверьте один. Если файлов несколько, непонятно, какой вызвал отклонение. Добавьте второй с масштабом около 0.5 и повышайте его, пока не проявится его стиль.

Открывает ли подключённый LoRA более откровенный контент?

Сам по себе нет: приписывайте адаптеру только то, что появляется по сравнению с контролем.

Поддерживает ли Z-Image Turbo LoRA?

Да. Каждый запрос принимает до трёх LoRA, каждый из которых — прямая ссылка на файл .safetensors, для которого заявлена совместимость с Z-Image Turbo, с scale от 0 до 4 (по умолчанию 1). Эндпоинт загружает веса, но не обучает их. Обучайте веса отдельно; руководство по размещённому LoRA API объясняет, как передать готовый файл.

Сколько это стоит?

Загрузка LoRA не добавляет отдельной платы за адаптер. Актуальный расчёт стоимости подтверждает итог перед каждой задачей.

Какой масштаб использовать?

Используйте диапазон, рекомендованный автором. Если его нет, по умолчанию платформа использует 1; сравните 0.5, 1 и 1.5 с тем же промптом и seed. Если объект «уплывает», уменьшите масштаб. Увеличение не является универсальным решением для файла, обученного на другой базе.

Если у вас уже есть файл для Z-Image Turbo, запустите проверку из трёх задач в режиме «текст в изображение», прежде чем от него начнёт зависеть пакетная генерация.

Поручите вызов Agent

Используйте Agent, когда хотите, чтобы он подготовил входные данные и вернул результат, а вы только утверждаете цену и творческие решения.

  • CLI: сохраните тот же объект входных данных как input.json и выполните npx @spicyapi/cli tasks create --model alibaba/z-image-turbo-lora/text-to-image --input-file input.json --wait. CLI подтверждает цену; сохраните возвращённый ID задачи для восстановления.
  • MCP: попросите ассистента использовать spicyapi_task_create для alibaba/z-image-turbo-lora/text-to-image, затем spicyapi_task_wait. Сервер MCP запрашивает подтверждение цены перед созданием.
  • Skill: установите командой npx skills add spicyapi-ai/spicy-skill, затем попросите: "Use the spicyapi skill to run this three-job check and stop for my approval." Skill использует уже настроенное подключение CLI или MCP.

Другие языки English · 日本語 · 한국어 · Deutsch · Français · Español · Português (Brasil) · Italiano · Polski

Примените руководство на практике

Открыть рабочий процесс

Придайте NSFW-персонажу свой стиль с LoRA.

Используйте совместимую LoRA персонажа или стиля с Z-Image Turbo и создайте образ для NSFW-галереи. Держите адаптер, силу и промпт вместе на холсте ComfyUI, затем сохраните изображения, которые хотите развить дальше.