报错
045
执行期运行时错误(张量/尺寸/节点)
有来源可查
生成时报张量尺寸不匹配:The size of tensor a (X) must match the size of tensor b (Y) at non-singleton dimension Z
报错原文(原样)
RuntimeError: The size of tensor a (49) must match the size of tensor b (16) at non-singleton dimension 1
检索关键词
must match the size of tensor b、at non-singleton dimension、The size of tensor a、non-singleton dimension 1、RuntimeError: The size of tensor a
先看这一句
点 Queue Prompt 后进度条跑到一半卡住,红色错误框弹出,提示两个张量在某个维度上长度对不上;通常发生在采样之后、VAE 解码阶段。
适用版本 全版本通用(属于模型/尺寸配错,不是版本 bug)
·
核实日期 2026-09-26
·
状态 已核实
适用环境:Windows 便携版、秋叶/绘世整合包、ComfyUI Desktop、Linux + 云 GPU、Docker/服务器、全部主流环境
现象与触发场景
常见触发场景:
- 把大模型和不对应的 VAE 混用(例如 Flux 的 16 通道 latent 配 SD1.5/SDXL 的 4 通道 VAE)
- 把 SD1.5 的 LoRA / ControlNet / IPAdapter 挂到 SDXL 或 Flux 的 UNet 上
- Empty Latent Image 尺寸与 Reference / 尺寸节点给出的尺寸不一致
根因
- 不同架构家族(SD1.5 4 通道、SDXL 4 通道、Flux/SD3 16 通道)的 latent 通道数与文本编码器组合不同,强行拼接就在维度上对不上
- ControlNet / LoRA / IPAdapter 的权重是按某一个基础模型的张量形状训练的,形状不匹配时前向计算直接抛错
- 错误发生在哪个节点要看 traceback 最底部的自定义节点文件名与函数名
解决步骤
已按「最可能有效」排序。请从上往下做,每做完一步用「验证」确认,不要一次改五处。
- 先在官方文档的"架构家族对照表"里核对你用的模型组合docs.comfy.org 的 model-issues 页面给出了各家族的 latent 通道数与文本编码器:Flux 用 16 通道 latent + CLIP-L + T5-XXL;SD1.5 用 4 通道 + 单个 CLIP ViT-L/14;SDXL 用 4 通道 + CLIP ViT-L/14 与 OpenCLIP ViT-bigG/14 双编码器;SD3 用 16 通道 + 三个文本编码器(CLIP-L + OpenCLIP bigG + T5-XXL)。把工作流里的 checkpoint、VAE、LoRA、ControlNet 全部分到同一个家族。
- 修正最常见的两类混搭:Flux 配错 VAE、SD1.5 ControlNet 配 SDXL 主模型官方文档明确列出:Flux 不能配 taesd 或 sdxl_vae.safetensors,要用 ae.safetensors(Flux VAE);SD1.5 的 ControlNet 只能配 SD1.5 checkpoint,SDXL 的 ControlNet 只能配 SDXL checkpoint。官方给的典型报错正是 mat1 and mat2 shapes cannot be multiplied (154x2048 and 768x320),根因就是这个混搭。
- 用报错里的通道数当诊断线索定位是哪个模型的锅看 "expected input[X, Y, Z] to have N channels, but got M channels":Y(通道数的位置)是 4 说明是 SD 系模型,是 16 说明是 Flux 系模型;看 "The size of tensor a (49) must match the size of tensor b (16)",(49) 是 7x7 的 token 数、(16) 是 latent 通道数,说明注意力层收到了空间尺寸和通道数不匹配的输入。
验证是否修好
换成同一架构家族的 checkpoint + VAE + ControlNet 后重新 Queue,能正常跑完并出图,且中途不再出现 non-singleton dimension 报错。
补充说明
本条 error_text 直接来自 docs.comfy.org 官方 model-issues 文档列出的 "Common error messages",属于官方认定的高频报错原文。
来源
按可信度排列:官方 issue / 官方文档 > 节点仓库 issue > 社区帖 > 中文社区文章。
链接以纯文本给出(本站不做站外跳转),需要核对时请自行复制到浏览器打开。
- [115] (官方文档) How to Troubleshoot and Solve ComfyUI Model Issues https://docs.comfy.org/troubleshooting/model-issues
- [122] (官方 issue) The size of tensor a (81) must match the size of tensor b (16) at non- https://github.com/Comfy-Org/ComfyUI/issues/7444
这条报错里提到的模型文件
下面这些文件名出现在本条报错的原文或解决步骤里(与权重库的文件名精确匹配),站内权重库有对应条目。 要哪个就按「放哪个目录」放好,文件名一字不差(含大小写与扩展名)。
这条报错要用到的东西
按本条报错所属的类别(执行期运行时错误(张量/尺寸/节点))列出站内相关的下载包与板块入口。 它们不是「必须下载才能修好」,而是这一类问题里最常要动到的东西;具体怎么做,以上面的解决步骤为准。
ComfyUI 权重库(167 个文件 / 约 1187 GB)按 ComfyUI 的 models 目录分好类的 167 个权重文件 / 每个文件一份说明(放哪、被哪些工作流引用)
待挂载
工作流对照本条工作流的依赖清单,确认模型版本对得上
板块
同一类别的其他条目
【046】拼接/拼接 latent 时报:Sizes of tensors must match except in dimension 1
有来源
【047】矩阵乘法形状不匹配:mat1 and mat2 shapes cannot be multiplied
有来源
【048】卷积通道数不匹配:Given groups=1, weight of size ..., expected input ... to have N channels
有来源
【049】精度类型不匹配一:expected scalar type Half but found Float
含未核实
【050】精度类型不匹配二:Input type (torch.FloatTensor) and weight type (torch.HalfTensor) should be the same
含未核实
这个解法对你有效吗
记录只存在你自己的浏览器里,不需要注册账号。
知仓学习社