专栏算法工具链如何通过工具加载自己量化过的onnx模型,并且转出到版端可运行的hbm文件?

如何通过工具加载自己量化过的onnx模型,并且转出到版端可运行的hbm文件?

已解决
YU_2024-11-20
129
12
1.芯片型号:J6
2.天工开物开发包 OpenExplorer 版本: J6_OE_3.0.17
3.问题定位:模型转换、板端部署
4.问题具体描述:
在量化自己的onnx模型时,使用hb_compile --config "./full_compile_config_int8.yaml" 转模型时,转出的量化模型掉点非常多,如附件所示。
然后计划使用离线量化的方式,得到了一个量化好的onnx文件。请问如何能将此量化好的带量化节点的onnx模型转出到版端可运行的hbm文件?
附件:
算法工具链
征程6
评论4
0/1000
  • Huanghui
    Lv.5

    收到!

    2024-11-20
    0
    0
  • Huanghui
    Lv.5

    抱歉,你刚才发的消息被我点错删掉了,麻烦你再发一下吧,不好意思!

    2024-11-20
    0
    1
    • YU_回复Huanghui:

      哦哦,我在下面又回复了一遍

      2024-11-20
      0
  • Huanghui
    Lv.5

    客户您好,鉴于长时间未收到你的答复,我们暂将该问题做关闭处理,如您仍有相同问题,请在新的帖子中重新发起提问,祝您工作愉快!

    2024-12-02
    0
    0
  • Huanghui
    Lv.5

    你好,你所描述的“ 使用离线量化的方式 ”具体是啥呢,pytorch框架下量化的结果吗?

    2024-11-20
    0
    7
    • YU_回复Huanghui:
      用PPQ框架做的量化,它也是基于pytoch框架的。然后输出的结果是一个onnx和对应的json文件(记录了量化节点信息)。
      我们将这个量化节点信息塞入到HzCalibration层中,然后想将这个量化onnx转出到版端hbm。
      2024-11-20
      0
    • Huanghui回复YU_:

      目前工具链不无法支持这种第三方量化模型编译的,无论是PYTORCH公版还是变种。一个可行的方向是:1. 多准备一些数据集;2.在 yaml的quant_config中使用all_node_type 配置int16或float16。3.尝试不同的calibration_type并打开per_channel. 在这几个方面试试呢,如果还是不行,也可以用DEBUG工具排查一下敏感节点和数据分布看看,是不是数据分布两端化导致的.

      2024-11-20
      2
    • YU_回复Huanghui:

      那再请问一下,J6能不能支持将hb_compile编译出的中间模型(*_calibrated_model.onnx,带HzCalibration层节点的模型)通过某些工具或者是有代码接口,进一步转出到.hbm模型呢?(输入:*_calibrated_model.onnx模型,输出:.hbm模型)

      2024-11-21
      0
    • Huanghui回复YU_:

      修改中间模型是可以的,但是这里的中间模型是PTQ模型,你可以看看中的bc编译模式,https://developer.horizon.auto/developerForum?fullPath=/home/community/bbsdetail?bid=642215179972665344

      2024-11-21
      0
    • Huanghui回复Huanghui:

      对了,工具链版本已经升级到了3.0.22,使用新版本哈

      2024-11-21
      0
    • YU_回复Huanghui:
      好的,我升级一下版本。
      然后,不好意思,您给出的这个链接是DSP license配置信息的相关博客,然后我也看了一下里面提供的脚本,好像都是DSP环境部署相关的命令,没有找到您提到的bc编译模式。
      2024-11-21
      0
    • Huanghui回复YU_:

      不好意思,连接给错了,更新一下哈:https://developer.horizon.auto/bloggerdetail?bid=646395960566079488

      2024-11-21
      0