RuntimeError: Sizes of tensors must match except in dimension 0. Expected size 16 but got size 8 for tensor number 1 in the list.

这个报错通常出现在 ComfyUI 的 WanVideoWrapper 工作流运行到 WanVideoSampler 节点、处理 temporal_ref_latents 拼接时,往往与张量尺寸不一致有关,优先排查工作流本身是否存在张量尺寸不匹配,以及 block swap 等显存相关设置是否过大。

快速结论:这个报错通常出现在 ComfyUI 的 WanVideoWrapper 工作流运行到 WanVideoSampler 节点、处理 temporal_ref_latents 拼接时,往往与张量尺寸不一致有关,优先排查工作流本身是否存在张量尺寸不匹配,以及 block swap 等显存相关设置是否过大。

适用环境:Issue 中确认的环境为 Windows(win32)、Python 3.12.10、PyTorch 2.6.0+cu126、ComfyUI 0.10.0、NVIDIA GeForce RTX 4070(12GB 显存);启动参数包含 –use-sage-attention、–disable-smart-memory、–disable-cuda-malloc 等。

最快修复方案:暂无确认的一步修复方案。Issue 中报告者最终自行放弃修复该问题,其他评论者给出了两条经验性建议:确认安装的 CUDA 版本与 ComfyUI 匹配且路径添加正确;使用 CPU 和 block swap,并将 swap 尺寸控制在 20/40 左右。

注意事项:上述 CUDA 版本和 block swap 数值的建议来自社区评论,属于可能有效的经验,未在 Issue 中被官方或多人完整验证。block swap 数值并非通用标准,不同显卡和工作流下结果可能不同;CUDA 版本建议需要结合自身安装环境确认,不要盲目覆盖。

问题场景

用户在 ComfyUI 中运行 WanVideoWrapper 相关的工作流(附件为 wan22.json),执行到 Node ID 70、Node Type 为 WanVideoSampler 的节点时触发 RuntimeError,报错发生在 nodes_sampler.py 中对 temporal_ref_latents 进行 torch.cat 拼接的位置。评论中另一位用户也在类似的 Wan22Animate 工作流中遇到同类型问题。

报错原文

RuntimeError: Sizes of tensors must match except in dimension 0. Expected size 16 but got size 8 for tensor number 1 in the list.

File "D:\ComfyUI\ComfyUI\custom_nodes\ComfyUI-WanVideoWrapper\nodes_sampler.py", line 2283, in process
    temporal_ref_latents = torch.cat([msk, temporal_ref_latents], dim=0) # 4+C T H W

原因分析

从堆栈看,报错发生在 torch.cat 拼接 msk 和 temporal_ref_latents 时,除维度 0 外的其他维度必须一致,但预期 size 16、实际拿到 size 8,说明参与拼接的两个张量在某一维度上不一致。可能原因包括:工作流中的输入尺寸或参考帧数量设置不一致;block swap 设置过大导致张量在搬运过程中出现尺寸问题;或 CUDA 版本与 ComfyUI 环境不匹配引发的运行异常。Issue 中没有给出最终定位到具体成因的官方结论。

环境排查

  • 确认 Python 版本,Issue 中为 3.12.10。
  • 确认 PyTorch 版本,Issue 中为 2.6.0+cu126。
  • 确认 CUDA 版本是否正确,以及 CUDA 路径是否已添加;评论提到机器上可能装了多个 CUDA 版本,需要确保 ComfyUI 用的是正确那个。
  • 确认显卡型号与显存,Issue 中为 RTX 4070 12GB。
  • 确认 ComfyUI 版本,Issue 中为 0.10.0。
  • 确认所使用的工作流 JSON(如 wan22.json)与当前 WanVideoWrapper 版本是否匹配。
  • 确认 WanVideoSampler 节点的输入尺寸、参考帧相关设置是否与工作流预期一致。

解决步骤

  1. 先对照报错定位到 WanVideoSampler 节点,检查该节点以及上游节点的输入尺寸、帧数等参数,确认是否存在尺寸不一致的情况。
  2. 按评论建议,尝试使用 CPU 和 block swap,并将 swap 尺寸先设为 20/40 左右;不要直接把数值提高到 30 或 40 以上,评论者反馈超过 20 会出现问题。
  3. 检查本机 CUDA 安装情况,确认存在与 ComfyUI / PyTorch 匹配的 CUDA 版本,且相关路径已正确添加。若安装了多个版本,明确指定 ComfyUI 使用哪一个。
  4. 如果以上仍无法解决,可参考 Issue 中报告者的实际选择:该问题在 Issue 中未被作者本人修复成功。

验证方法

重新运行同一个 WanVideoSampler 工作流,观察是否还出现相同的 RuntimeError。如果报错消失并正常完成采样,说明处理有效。由于 Issue 中未提供统一验证结果,以上步骤属于可优先尝试的排查方向,不保证对所有工作流都适用。

参考来源

kijai/ComfyUI-WanVideoWrapper #1922

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 25655

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注