如果你用 Ostris AI Toolkit 训练了 LoRA(用于 FLUX / FLUX.2、Wan 2.2/2.1、Qwen Image、Z‑Image、LTX‑2、SDXL 等),你大概率遇到过这个问题: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) |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
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 文件,再上传到这里。

为什么配置文件很关键:它能让 RunComfy 对齐生成 AI Toolkit samples 所用的 完全一致的基座模型与推理设置。
Step 1 — 把 AI Toolkit LoRA 导入 RunComfy
路径:Trainer → LoRA Assets → Import LoRA
上传:
- 你的
*.safetensorsLoRA weights - 你的 training config file(YAML)(推荐)
如果你没有配置文件,也可以通过手动选择 Base Model 来导入,但如果推理默认值不同,预览一致性可能会变差。

Step 2 — 确认 LoRA 出现在 LoRA Assets
导入后(或云训练结束后),你的 LoRA 会出现在 LoRA Assets 列表里。
从这里你可以点击 Run(Run LoRA)立刻开始推理(Playground + API)。

Step 3 — 立即运行 LoRA 推理
在 LoRA Assets 里找到你的 LoRA,点击 Run。
这会启动 Run LoRA:按需推理,使用与你训练一致的基座模型,并读取 training YAML 中的 AI Toolkit pipeline 定义,因此无需手工重搭就能获得 training‑preview parity。
你可以直接在 Playground 里出图,也可以用同一配置走 API。

Step 4 — 在 Playground 里复现训练 Samples
点击 Run 后,你会直接进入 Run LoRA Playground。
在这里你可以在上线前验证 训练–推理一致性:
- 使用与训练 samples 相同的设置(prompt、seed、分辨率、steps、guidance、LoRA scale)。
- 如果结果 高度接近 AI Toolkit training samples,说明你已经达成 parity。
- 如果出现 漂移,请跳到下面的 Quick mismatch checklist,逐项核对基座模型与设置。

Step 5 — 在生产环境使用 API(异步推理)
在 Run LoRA 中打开 API 标签。该 API 是异步的:
- 提交推理请求
- 监控状态
- 拉取结果

从面板复制精确的 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 code: runcomfy-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?






