Руководства по обучению LoRA с AI Toolkit

AI Toolkit Inference: результаты как в Training Samples

Запускайте инференс на том же пайплайне, который AI Toolkit использует для training samples/previews, чтобы получить совпадающий результат.

Обучайте диффузионные модели с Ostris AI Toolkit

Если вы обучили LoRA в Ostris AI Toolkit (для FLUX / FLUX.2, Wan 2.2/2.1, Qwen Image, Z‑Image, LTX‑2, SDXL и т. д.), вы наверняка сталкивались с этим: training samples в AI Toolkit выглядят отлично, но при инференсе в Diffusers / ComfyUI / другом стеке результат плывёт.

Этот гайд показывает быстрый и надёжный способ получить инференс, который совпадает с AI Toolkit training preview, чтобы продакшен выглядел так же, как обучение.


Почему AI Toolkit preview часто не совпадает с инференсом

AI Toolkit генерирует “Samples” в конкретной конфигурации инференса:

  • точная версия/вариант базовой модели
  • семантика scheduler/steps, специфичная для модели
  • способ применения LoRA, специфичный для модели (adapter vs fuse/merge)
  • правила snapping разрешения (кратность ширины/высоты)
  • обязательные inputs для некоторых пайплайнов (например, control image для edit / I2V)

Если ваш стек инференса меняет любой из этих пунктов, даже при том же prompt + seed картинка может отличаться. То есть для совпадения нужно совпасть по всему пайплайну, а не только по “видимым настройкам”.


Почему RunComfy может совпасть с training samples

RunComfy запускает Diffusers‑пайплайн под конкретную базовую модель, который соответствует пайплайну AI Toolkit для генерации preview у этой модели. Затем RunComfy читает ваш Training config file (YAML) и фиксирует ту же базовую модель/вариант и важные defaults инференса, поэтому Run LoRA inference может совпасть 1:1 с training samples. Плюс, инференс идёт в управляемом облачном рантайме, что снижает drift из‑за версий CUDA/PyTorch/Diffusers, которые меняют outputs.

Пример из эксперимента паритета:

AI Toolkit training sample RunComfy inference (Playground/API)
AI Toolkit training sample — set 1
Run LoRA inference result — set 1AI Toolkit training sample — set 2
Run LoRA inference result — set 2AI Toolkit training sample — set 3
Run LoRA inference result — set 3AI Toolkit on RunComfy.

Step 0 — Подготовьте два файла из AI Toolkit job

Обычно нужны:

1) LoRA weights: *.safetensors

2) Training config file (YAML) (часто config.yml или *.yaml)

Что такое Config File (YAML)?

В AI Toolkit откройте Training Job и нажмите Config File, чтобы увидеть точный YAML обучения. Скопируйте всё и сохраните как .yaml, затем загрузите сюда.

AI Toolkit training config file (YAML)

Почему YAML важен: он позволяет RunComfy выставить точную базовую модель и defaults инференса, которые дали ваши samples.


Step 1 — Импортируйте AI Toolkit LoRA в RunComfy

Путь: TrainerLoRA AssetsImport LoRA

Загрузите:

  • *.safetensors LoRA weights
  • Training config file (YAML) (рекомендуется)

Без YAML можно импортировать, выбрав Base Model, но паритет может ухудшиться, если defaults отличаются.

RunComfy Trainer — Import a LoRA trained with AI Toolkit


Step 2 — Убедитесь, что LoRA появилась в LoRA Assets

После импорта (или окончания облачного обучения) LoRA появляется в LoRA Assets.

Оттуда нажмите Run (Run LoRA), чтобы начать инференс (Playground + API).

RunComFy Trainer — LoRA Assets list


Step 3 — Запустите инференс мгновенно (Run LoRA)

В LoRA Assets найдите LoRA и нажмите Run.

Это запускает Run LoRA — on‑demand инференс, который использует тот же base model и ту же pipeline‑логику из training YAML, чтобы получить preview‑parity без ручной пересборки.

Можно сразу тестировать в Playground или интегрировать через API.

RunComFy Trainer — LoRA Assets list


Step 4 — Воспроизведите training samples в Playground

После Run вы попадёте в Run LoRA Playground.

Проверьте паритет:

  • используйте те же settings (prompt, seed, разрешение, steps, guidance, LoRA scale)
  • если очень похоже на samples — отлично
  • если нет — проверьте чеклист ниже

RunComFy Trainer — LoRA Assets list


Step 5 — Используйте API в проде (async inference)

В Run LoRA откройте вкладку API. API асинхронная:

  • отправить запрос
  • следить за статусом
  • получить результат

RunComFy Trainer — LoRA Assets list

Скопируйте URL и request schema из dashboard.

Пример (иллюстративный):

curl --request POST \
  --url "https://model-api.runcomfy.net/v1/models/<MODEL_ID>" \
  --header "Authorization: Bearer <YOUR_API_KEY>" \
  --header "Content-Type: application/json" \
  --data '{
    "prompt": "a studio portrait photo, cinematic lighting",
    "lora": {
      "path": "<YOUR_LORA_NAME_OR_URL>"
    }
  }'

API docs: RunComfy Model API (see also LoRA inputs (Trainer))


Quick mismatch checklist

Если инференс не совпадает, проверьте:

1) Exact base model (repo + variant)

2) Width/height after snapping to the model’s divisor

3) Steps + guidance + scheduler semantics

4) LoRA application mode (adapter vs fuse/merge)

5) For edit / I2V: correct control image inputs

6) Runtime drift (Diffusers / ComfyUI versions)


Open-source reference implementation

Хотите инференс в ComfyUI и совпадение с training samples / previews?

См.: AI Toolkit LoRA in ComfyUI: Parity Workflows

Проверить/селфхостить логику: Open-source AI Toolkit inference coderuncomfy-com/ai-toolkit-inference


FAQ

Нужен ли YAML для импорта?

Очень желательно. Без YAML можно выбрать base model вручную, но теряется автоматическое совпадение defaults.

Можно импортировать LoRA, обученную вне RunComfy?

Да. Если она обучена в AI Toolkit, импортируйте *.safetensors и YAML, затем запускайте Run LoRA.

Что значит “Run LoRA”?

Run LoRA — on‑demand инференс (Playground + API), который запускает LoRA на её base model без деплоя отдельного endpoint. Оплата за запрос.

Готовы начать обучение?