已关闭
msfmktransplt 做 ONNX→OM 转换时 dynamic batch 场景下 Conv、MatMul 等算子的 shape 推导缺少实际输入,输出 shape 为 unknown #227
崇理战队创建于 7月8日关闭于 7月11日
Martin_M
7月9日 评论:
7月9日 评论:
开发者您好,mstt代码仓中并无ONNX模型转昇腾OM模型的功能,此处描述的是否是CANN中的ATC工具? @jiangzeyu-2026


7月11日 添加了label:resolved
用 mstt 做 PyTorch→ONNX→昇腾 OM 的模型转换,模型输入是 dynamic batch(
batch=dynamic)。转换到一半报错,日志显示某些 Conv 算子的输出 shape 是
unknown。跟了
msfmktransplt/src/下的转换逻辑(可能是platform/或opensource/目录),问题在于 dynamic batch 场景下,ONNX 模型里的 Conv/MatMul 算子的input_shape在某些 pass 里被设为[dynamic, C, H, W],但后续的 shape 推导函数没有处理dynamic这个占位符,直接返回unknown。导致依赖该 shape 的下游算子全部报
shape inference failed,转换流程中止。建议:
dynamic维度做符号传播(symbolic shape propagation)dynamic关键字,不要退化为unknownshape inference failed