ComfyUI 核心新增 H3 Latent 放大与 Sol-H3-VAE 支持

ComfyUI Wikinews

ComfyUI 核心合并的两个 PR 可加载 MiniMax H3 Latent 放大器与蒸馏版 Sol-H3-VAE 解码器,把 2K H3 解码时间从 14.5 秒缩短到 0.89 秒。

ComfyUI 于 2026 年 10 月 28 日合并了两个核心 PR,把 MiniMax H3 的高分辨率路径从自定义节点搬进了核心。PR 17412 新增了 Latent 放大模型支持以及一个专用的 H3 节点,PR 17411 则让 VAE 加载器能够打开 Sol-H3-VAE,即来自 NVIDIA Efficient-Large-Model 团队的蒸馏快速解码器。两个 PR 均由 Kijai 编写,且都在 v0.43.1 标签之后合入,因此它们出现在 master 和每夜构建中,而不在当前 0.43.x 版本里。

这一组合针对的是 2K H3 任务中最耗时的两个环节:在不做 VAE 往返的情况下放大 Latent,以及解码生成完成的片段。

模型卡中的 Latent 放大器对比

使用 H3 Latent 放大器在 Latent 空间中对低分辨率结果进行放大,图片来自其模型卡。

同一仓库中的视频对比。

核心中新增了什么

PR合并时间变更内容
174122026-10-28 20:05 UTC新增 comfy/ldm/minimax/latent_upscaler.py 模块、Load Latent Upscale Model 中的 H3 分支,以及新节点 MiniMax H3 Latent Upscale With Model
174112026-10-28 23:46 UTCVAE 加载器中的 Sol-H3-VAE 检测与键重映射、非因果解码器路径、int8 量化解码器支持、解码器内存估算

两个 PR 都不附带模型文件。它们让现有的社区权重可以用原生加载器加载,因此原本需要节点包的 H3 放大器现在只靠核心节点就能运行。

在 Latent 内部放大

H3 的 Latent 带有 24 个通道以及一条独立的音频流。来自 LBH-123-AI 的 Latent 放大器使用 3D 卷积主干直接作用于视频 Latent:345,280,216 个参数,输入输出均为 24 通道,512 个基础通道,12 个输入块和 12 个输出块,每两个块之间插入一个卷积核大小为 5 的时间卷积。

其意义在于跳过经过 H3 VAE 的 decode -> pixel upscale -> encode 流程,模型卡称该 VAE 约有 5B 参数。作者还指出,对 H3 Latent 直接做双线性或双三次插值会产生重影,而这个学习式放大器经过训练正是为了避开重影。训练使用了约 80,000 组配对样本,大致分为 70,000 组视频对和 8,000 组 2K 图像对,其中 2 倍是最主要的放大倍率。

核心直接从 state dict 读取架构,因此块数、通道宽度和时间卷积核都来自权重本身,而不依赖额外的配置文件。节点输出保留 H3 的嵌套 Latent,这意味着音频部分会原样通过,生成的配乐在放大后依然保留。输入 Latent 上的噪声遮罩会被丢弃。

有两处与配套节点包不同,值得注意:

  • 核心节点接收的是目标尺寸,而不是缩放倍率。 MiniMax H3 Latent Upscale With Model 默认 2560x1440,步进为 32,并沿用通常的分辨率上限。社区节点则提供 1.0x 到 4.0x 的连续缩放。
  • 单纯放大并不会增加细节。 它只是调整 Latent 尺寸,因此要在新分辨率下进行第二次采样,细节才会被补回来。如果这一步的步数太少,结果会偏软。

如果请求的尺寸与 Latent 尺寸一致,核心节点会直接返回输入,而不运行模型。

可直接替换的解码器 Sol-H3-VAE

Sol-H3-VAE 是 H3 的快速视频解码器,它用一个 1.62B 参数的 24 层非因果解码器替换原本 36 层的 VAE 解码器,并从后者蒸馏而来。它使用窗口注意力整帧解码,而不是按空间分块,并对每个原生的 5-Latent 块进行双向解码。根据其模型卡,它接收相同的归一化 Latent、返回与 H3 VAE 解码器相同的帧,并且不改动音频解码器。

一个 5 秒片段H3 VAESol-H3-VAE
768p,RTX 509012.5 s5.0 s
720p,GB2006.16 s0.34 s
2K,GB20014.5 s0.89 s

模型卡报告,在覆盖 720p 到 2K 的留出 Latent 上,相对 H3 解码器的 PSNR 为 45.4 dB;在生成的 768p 片段上为 38.2 dB。GB200 的数据来自捕获的 CUDA graph,RTX 5090 的数据为 eager 模式。

在核心中打开该模型文件,远不止新增一个文件名匹配模式:

  • 发布文件存储解码器时不带 decoder. 前缀,因此加载器会在运行时重映射键,并在缺失时填入 H3 的 Latent 均值与标准差。
  • 非因果解码器改变了帧数计算。其输出为每个 Latent 对应 4 帧,且每 5 个 Latent 组成的块中第一个 Latent 只保留 1 帧:t 个 Latent 得到 4t - 3 * ceil(t/5) 帧,编码时则有对应的逆运算。
  • 由于整段片段一次性解码而非分块解码,该 PR 增加了单独的内存估算,使加载器能在解码开始前规划显存。
  • 量化的 Sol VAE 版本同样可以加载:加载器会检测带 conv-rotation 权重的 int8,并切换到混合精度算子。

发布文件是单个 fp32 的 sol_h3_vae.safetensors,约 6.5 GB。

接入工作流

  1. 把放大器模型文件放到 ComfyUI/models/latent_upscale_models/。H3 版本提供 bf16 和 fp16,各约 691 MB,另有一个 1.38 GB 的 fp32 .pth。
  2. 把 sol_h3_vae.safetensors 放到 ComfyUI/models/vae/,并用常规 VAE 加载器加载。
  3. 在低分辨率采样与 2560x1440 或更高分辨率的第二次采样器之间,把 Load Latent Upscale Model 接到 MiniMax H3 Latent Upscale With Model。
  4. 用 Sol VAE 解码精修后的 Latent。

放大器权重采用 Apache-2.0 许可。ComfyUI 的模板库目前仍只包含托管的 H3 API 模板,因此这一组合还没有官方的 2K 本地模板;上述耗时也来自模型卡自身的测量,而非 ComfyUI 基准测试。

获取方式

评论

使用 GitHub 登录后即可参与讨论。

评论加载中…
ComfyUI 核心新增 H3 Latent 放大与 Sol-H3-VAE 支持 | ComfyUI Wiki