12 KiB
ComfyUI 与 LoRA:一手资料研究笔记
资料核对:2026-10-28。用于主手册融合;本文件不代表模型推荐榜,也不要求改动已稳定运行的服务器。以下基础事实来自官方文档、官方代码和原始论文;对连续剧制作的选择建议另标为工作方法。
1. 初学者先分清的几件事
| 名称 | 通俗解释 | 容易混淆的地方 |
|---|---|---|
| ComfyUI | 把模型、输入、处理步骤和保存步骤连起来的执行环境 | 安装了软件,不等于已经安装模型或某个作者的节点包 |
| Workflow / 工作流 | 一套节点、连线、参数组成的制作配方 | JSON 通常不打包大模型、参考图和 Python 依赖 |
| Node / 节点 | 完成一项操作的模块,例如加载、编码、采样、解码、保存 | 节点包是程序;模型是权重文件;二者缺失的修法不同 |
| Link / 连线 | 把上一节点输出的数据交给下一节点 | 必须匹配类型;MODEL、CLIP、VAE、CONDITIONING、LATENT、IMAGE、AUDIO 不能任意互接 |
| 主模型 | 负责主要生成能力的权重;可能是 UNet 或 Transformer 等结构 | Checkpoint 有时打包多个组件;分体流程则单独加载主模型、编码器、VAE |
| 文本编码器 | 把文字变成模型使用的条件表示 | ComfyUI 里名为 CLIP 的接口不表示每个新模型底下都使用原版 CLIP;以模型模板为准 |
| Latent / 潜变量 | 模型内部处理的压缩表示 | 它还不是可以观看的普通图片或可播放的音频 |
| VAE | 在像素/波形与潜表示之间进行模型所需转换的组件 | 要与模型家族及任务匹配;视频 VAE 与音频 VAE 的职责也不同 |
| LoRA | 在基模之上加载的轻量适配权重 | 它依赖基模,通常不是一个可独立完成生成的完整模型 |
依据:工作流概念、节点与数据类型、模型与加载器、ComfyUI 官方节点代码。表中通俗比喻是对这些概念的教学归纳。
2. LoRA 到底是什么
LoRA 全称为 Low-Rank Adaptation(低秩适配)。原始方法在冻结预训练权重的情况下,训练较小的低秩更新;可以简化理解为 最终权重 = 原基模权重 + 缩放后的适配更新。它减少需要训练的参数,便于保存、共享与切换某种适配能力,不能把“文件更小”理解成“不需要加载基模”。原始论文、Diffusers LoRA 训练说明。
用途要分开看
| 常见称呼 | 在生产中想解决什么 | 不应期待的事情 |
|---|---|---|
| 人物 / 角色 LoRA | 让模型更容易生成某个人物特征或概念 | 不能保证每个角度、每帧、每集的脸、衣服、道具全部一致 |
| 风格 LoRA | 影响画风、材质、色彩或某类视觉表现 | 风格相同不等于故事连续、构图正确 |
| 动作 / 运镜 LoRA | 在支持的模型中学习某类运动倾向或镜头行为 | 不等于精确三维动作、碰撞或走位控制 |
| 蒸馏 / 加速 LoRA | 配合特定采样流程,用较少步数完成生成 | 它不等于训练了主演,也不意味着任意模型都能直接改成 4 步 |
这些是按用途作的分类,不是四种彼此隔离的文件格式。角色与风格能力取决于数据和训练目标;LCM-LoRA 官方教程还示范了加速适配与风格/运动适配的组合。其配套 scheduler、guidance 和步数有特定要求,这正说明“下载 LoRA 后只改步数”不是可靠方法。LCM-LoRA 官方说明。
加载前做这六项核对
- 基模/架构:SD1.5、SDXL、FLUX、某视频模型的适配权重不要凭相同扩展名混用。
- 精确版本和任务:确认作者支持的模型版本、文本生图/图生视频等任务及加载器。
- 作用对象:普通 Load LoRA 可连接 MODEL 与 CLIP;ModelOnly 变体只修改 MODEL,按模板使用。
- 触发词与使用约束:若模型卡要求某个触发词、分辨率或专用工作流,应一起记录。
- 强度:
strength_model/strength_clip是影响程度,不是画质分数。不存在适用于所有 LoRA 的 0.8 或 1.0。 - 组合:先验证单个适配,再逐个增加,保留同 seed、同输入的对照;多种适配可能相互影响。
通用 ComfyUI LoRA 常放在 models/loras,通过匹配的加载节点选择;实际目录也可能由 extra_model_paths.yaml 配置。具体加载行为见 ComfyUI LoRA 教程 与 Diffusers adapters 管理。兼容性和具体配套值最终以该模型/LoRA 的官方模型卡和已验证模板为准。
连续剧工作方法:先用角色参考图、多角度资产、统一服装与人物状态表验证能否稳定制作,再决定是否值得训练人物 LoRA。视觉人物 LoRA 不等同于配音声线资产;长期声音一致性要按音频模型和参考音频流程另外设计。不要用 LoRA 代替逐镜检查。
3. 参数怎样看,哪些不能照抄
| 参数 | 控制什么 | 实际调试方法 |
|---|---|---|
| Seed / 随机种子 | 生成噪声的随机来源之一 | 对照时固定,选片后记录;它不是角色身份证 |
| Steps / 步数 | 采样迭代的数量 | 遵循基模/蒸馏方案推荐;不是越大必然越好 |
| Sampler / 采样器 | 每步怎样推进采样 | 与调度器、模型配套,先沿用已验证模板 |
| Scheduler / 调度器 | 各步噪声水平如何安排 | 和 sampler 是两件事,不要只改其中一个后认为结果必然等价 |
| CFG / guidance | 某些流程里条件引导的强度 | 过高可能破坏质量;不同模型的机制和适用值不同 |
| Denoise / 去噪强度 | 常见潜空间图生图流程里重做输入的程度 | 在这类流程里较低值通常保留更多输入结构;不等于所有视频模型的参考图权重 |
| Width / Height | 输出尺寸 | 影响构图、显存和速度;遵循该模型尺寸规则 |
| Frames / FPS | 帧数与播放帧率 | 时长通常由帧数/FPS决定;某些模型要求特定帧数网格,先查模板 |
采样概念以 KSampler 官方接口 和 官方实现 为依据。注意该节点文档个别简化说明不够严谨:代码 tooltip 明确指出较低 denoise 会更多保留初始图像结构;不要照抄相反表述。表里的调参顺序是生产建议,不是官方通用数值处方。
H3 特别提醒:本项目用 BasicGuider 与自定义采样链,不能照搬 SD 经典 KSampler 的“正向+负向+CFG 7”结构。BasicGuider 的公开输入是 MODEL 和 CONDITIONING,并无同样的 CFG/negative 输入。8 步、4 步、res_multistep/simple 等应作为本机已验证方案记录,不能推广成其他模型的通用配置。BasicGuider 接口。
复现边界:保留 seed 很有用,但还要保留模型哈希、软件/节点版本、输入文件、尺寸、采样参数。PyTorch 官方明确指出不同版本、平台甚至 CPU/GPU 间不保证完全相同结果;因此不要承诺“同 seed 必然逐像素重现”。PyTorch 可复现性说明。
4. GUI 工作流、API 工作流和素材是什么关系
- GUI JSON 主要保存画布中的节点、连线、位置、控件及组织信息;适合人打开和修改。
- API prompt JSON 以节点 ID、
class_type、inputs及输出引用表达执行图;适合脚本提交。文件名里的.api.json是本项目的命名约定,判断格式应看内容。 - 模型权重、节点代码、输入素材 是另外的依赖。把一份 JSON 发给别人,不能保证对方马上运行。
- 部分 ComfyUI 生成图能携带工作流元数据,保留元数据时可拖回画布。普通参考图、被平台重新压缩或去除元数据的图片不保证能恢复节点。
依据:GUI JSON 规范、官方 API 示例、官方入门的导入/导出说明。
自动化的基本链为:上传素材 → 提交 /prompt → 保存 prompt_id → 查队列/历史或接收 WebSocket 事件 → 下载实际输出 → 做内容与技术检查。HTTP 返回成功或任务执行成功,只代表执行层面,应另外确认成片文件、时长、声音和内容是否可交付。官方服务器 routes、官方服务器消息。
5. 常见问题,先分清再修
| 现象 | 优先判断 | 动作 |
|---|---|---|
| 缺失节点、红色节点 | 核心版本太旧,或自定义节点未装/导入失败 | 核对节点来源及启动日志;按作者要求安装到正确 Python 环境 |
model not in list / 下拉列表没有文件 |
文件不在搜索目录、名字不对或列表未刷新 | 核对精确文件名、子目录和额外路径,再刷新;不要随便选同后缀替代品 |
| tensor shape / channel mismatch | 主模型、VAE、编码器或控制组件不匹配 | 回到同一模型的完整官方模板验证组合 |
| CUDA OOM | 此尺寸/帧数/批量或模型组件超出当前可用显存 | 先缩小测试尺寸/帧数/批量,查看是否其他任务占显存;再按模型支持的量化/offload策略处理 |
| 更新后坏了 | 节点前端或 Python 依赖冲突 | 使用隔离备份环境定位;官方建议可禁用自定义节点并二分查找 |
| 任务成功但找不到交付文件 | 保存节点、保存路径或下载环节未完成 | 查看具体输出记录与文件,不只看任务绿色状态 |
依据:模型问题排查、自定义节点问题排查。表中的逐项先后顺序为工作建议。
连续剧项目中,正式批量前先通过一个含对白、角色和关键道具的短测试;锁住通过的模型/节点/参数版本,另存新版本试验,避免制作中途整套环境一起更新。共享服务器上处理显存和依赖时,要避开别人的运行任务,保留原工作流与错误记录。
6. 建议主手册明确写出的边界
- 角色参考、人物 LoRA、ControlNet、声线参考分别解决不同问题;不要合称一个“一致性插件”。
- 蒸馏加速 LoRA 的“步数配套”与人物 LoRA 的“学会人物特征”是两件事。
- 图像模型训练的人物 LoRA 不能默认直接塞到视频模型里;先核对架构与作者支持。
- 文件能加载、节点能连上、作业能完成,都还没有证明画面内容、台词、人物或剪辑合格。
- 不要把网上示例数字(CFG 7、LoRA 0.8、20 steps 等)整理成所有模型的必填标准。
- 某些官方自动生成节点页也可能有过度简化;重要数值以该模型版本的官方代码/模型卡与本机实际输出为准。例如本项目 H3 原生音频实测 32kHz,不应照抄其他页面的统一 44.1kHz 声明。
以上“制作边界”是对一手技术资料和本项目做法的工程归纳,应在主手册中与厂商功能承诺分开表述。