OE Agent“天工”新版本发布,请前往论坛顶部查看,欢迎试用并反馈~
查看OE-Skills
专栏算法工具链J6编译生成hbr hbm模型报错

J6编译生成hbr hbm模型报错

已解决
thui2026-05-18
67
2
芯片J6M,使用cat_filter为FCOSMultiStrideCatFilter"后报错RuntimeError:Hbir output shape is different with actual torch output([59136] vs torch.Size([5])),please report a bug to horizon_plugin_pytorch develop team
Hbir output 和torch output都是库函数的中间计算结果,请问为什么报这个错

补充信息:input是正确的,不使用FCOSMultiStrideCatFilter可以正确编译hbm,所以加了cat_filter会导致output从四维变为1维是吗?那么是哪里改维度呢

算法工具链
技术深度解析征程6
评论1
0/600
  • YCJ
    Lv.4
    FCOSMultiStrideCatFilter 属于 FCOS 检测后处理封装,不建议优先放进 HBM 编译图。当前报错 [59136] vs torch.Size([5]) 大概率是 FilterModule 里做 threshold/filter 后产生了动态输出数量,导致 HBIR 静态 shape 和 torch 实际输出 shape 不一致。建议 HBM 只输出原始检测 head 结果,把 FCOSMultiStrideCatFilter 后处理逻辑从模型中拿出来放到 CPU 侧实现,这样输出 shape 固定,编译更稳定,也更方便对齐调试。
    如果要查源码在docker里/usr/local/lib/python3.10/dist-packages/hat/models/task_modules/fcos/filter.py 可以查看
    2026-05-19
    0
    1
    • thui回复YCJ:
      感谢回复。现在就是想把FCOSMultiStrideCatFilter做到hbm里,你们应该有成功案例,您意思是初始输入经过FilterModule后输出形状即torch.size()改变了吗,那expand到初始形状可以吗?HBIR 静态 shape不是预设的吗,应该和初始输入一致吧,为什么变了呢,如何更改?
      当前报错 [59136] vs torch.Size([5])发生在horizon_plugin_pytorch/quantization/hbdk4/export_hbir/export_hbir.py,请问这里FuncConverterBase和ModuleConverterBase的区别,他们的convert_with_hbir都没有实现,没有问题吗?shape不一致和export_hbir.py里的函数有没有关系
      2026-05-20
      0