AI Toolkit LoRA Training Guides

AI Toolkit 推理一致性:让结果匹配 Training Samples

使用与 AI Toolkit 训练采样/预览相同的推理管线,让训练时看到的效果在推理时原样复现。

Train Diffusion Models with Ostris AI Toolkit

如果你用 Ostris AI Toolkit 训练了 LoRA(用于 FLUX / FLUX.2Wan 2.2/2.1Qwen ImageZ‑ImageLTX‑2SDXL 等),你大概率遇到过这个问题:AI Toolkit 的训练 Samples 很好看,但把同一 LoRA 拿去 Diffusers / ComfyUI / 其他推理栈跑,输出就开始

这篇指南给你一个快速、可靠的方法,让 推理结果尽量匹配 AI Toolkit 的训练预览,让你“训练时看到的”就是“上线时得到的”。


为什么 AI Toolkit 的预览经常不匹配推理

AI Toolkit 的 “Samples” 是用一套特定推理设置生成的:

  • 完全一致的基座模型变体
  • 模型家族特定的 scheduler / steps 语义
  • 模型家族特定的 LoRA 应用行为(adapter vs fuse/merge)
  • 分辨率 snapping 规则(宽高取整到倍数)
  • 某些 pipeline 必须的输入(例如 edit / I2V 的 control image

你的推理栈只要改了其中任何一项,即使 prompt + seed 相同,结果也可能漂。换句话说:想匹配 AI Toolkit 预览,你需要对齐 整套推理 pipeline(而不仅是几个参数)。


为什么 RunComfy 可以让 LoRA 推理匹配训练 Samples

RunComfy 会按基座模型运行一套 与 AI Toolkit 训练预览一致的 Diffusers 推理 pipeline。然后它会读取你的 Training config file(YAML),锁定同一基座模型变体与推理设置,从而让 Run LoRA inference 更接近 1:1 的训练 Sample 一致性。由于推理在 托管云运行时中执行,你也能避免 CUDA/PyTorch/Diffusers 版本差异带来的“隐性漂移”。

下面是我们做的 parity 对比示例(AI Toolkit training samples vs Run LoRA inference,使用相同设置):

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

Step-by-step: Import → Run LoRA → Inference (Playground + API)

只需要几分钟,你就能把整个流程 end‑to‑end 跑通,并获得与 AI Toolkit training samples 更一致的 LoRA 推理结果。

如果你已经 使用 RunComfy 的 AI Toolkit 训练过,那么训练结束后 LoRA 会自动出现在 LoRA Assets,你可以直接跳到 Step 3(Run LoRA)。入口: AI Toolkit on RunComfy

Step 0 — 从 AI Toolkit 训练任务准备两个文件

通常需要:

1) LoRA weights*.safetensors

2) AI Toolkit 训练任务的 Training config file(YAML)(常见为 config.yml*.yaml

What is the Config File (YAML)?

在 AI Toolkit 里打开你的 Training Job,点击顶部 Config File,即可看到本次训练用的完整配置。把内容全部复制出来,保存为本地 .yaml 文件,再上传到这里。

AI Toolkit training config file (YAML)

为什么配置文件很关键:它能让 RunComfy 对齐生成 AI Toolkit samples 所用的 完全一致的基座模型与推理设置


Step 1 — 把 AI Toolkit LoRA 导入 RunComfy

路径:TrainerLoRA AssetsImport LoRA

上传:

  • 你的 *.safetensors LoRA weights
  • 你的 training config file(YAML)(推荐)

如果你没有配置文件,也可以通过手动选择 Base Model 来导入,但如果推理默认值不同,预览一致性可能会变差。

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 — 立即运行 LoRA 推理

LoRA Assets 里找到你的 LoRA,点击 Run

这会启动 Run LoRA:按需推理,使用与你训练一致的基座模型,并读取 training YAML 中的 AI Toolkit pipeline 定义,因此无需手工重搭就能获得 training‑preview parity。

你可以直接在 Playground 里出图,也可以用同一配置走 API

RunComFy Trainer — LoRA Assets list


Step 4 — 在 Playground 里复现训练 Samples

点击 Run 后,你会直接进入 Run LoRA Playground

在这里你可以在上线前验证 训练–推理一致性

  • 使用与训练 samples 相同的设置(prompt、seed、分辨率、steps、guidance、LoRA scale)。
  • 如果结果 高度接近 AI Toolkit training samples,说明你已经达成 parity。
  • 如果出现 漂移,请跳到下面的 Quick mismatch checklist,逐项核对基座模型与设置。

RunComFy Trainer — LoRA Assets list


Step 5 — 在生产环境使用 API(异步推理)

Run LoRA 中打开 API 标签。该 API 是异步的:

  • 提交推理请求
  • 监控状态
  • 拉取结果

RunComFy Trainer — LoRA Assets list

从面板复制精确的 URL 和请求结构(以及请求 schema 的链接)。

示例(仅示意 — 请使用你自己的 model_id、LoRA 路径和 API key):

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(另见 LoRA inputs (Trainer)


Quick mismatch checklist(快速漂移检查)

当推理结果不匹配训练 samples 时,优先检查:

1) 完全一致的基座模型(repo + variant)

2) 宽/高经过 snapping 后是否与训练一致(对齐模型 divisor)

3) Steps + guidance + scheduler 语义是否一致

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

5) edit / I2V:是否提供正确的 control image inputs

6) 运行时漂移(Diffusers / ComfyUI 版本差异)


开源参考实现

想在 ComfyUI 里推理,并尽量让结果与 AI Toolkit 的 training samples / previews 保持一致?

见: AI Toolkit LoRA in ComfyUI: Parity Workflows

如果你想审计或自建推理逻辑:Open-source AI Toolkit inference coderuncomfy-com/ai-toolkit-inference


FAQ

导入时一定需要 AI Toolkit 的 training config file(YAML)吗?

强烈建议。没有 training config file,你仍然可以手动选择 base model 导入,但会失去模型家族推理默认值的自动匹配。

我能导入不是在 RunComfy 训练的 LoRA 吗?

可以。只要是用 AI Toolkit 训练的,导入 *.safetensors 与 training config file(YAML),然后按同样方式(Run LoRA)推理即可。

这里的 “Run LoRA” 是什么意思?

Run LoRA 是按需推理(Playground + API):在不部署专用 endpoint 的情况下,把某个 LoRA 跑在它的 base model 上。按请求计费。

Ready to start training?