weixin_45005581 2023-08-07 17:34 采纳率: 0%
浏览 27

onnx-tensorrt 模型部署

onnx利用工具onnx-tensorrt转换为tensorrt,为什么提示不认识MultiscaleDeformableAttnPlugin_TRT 算子,这个算子官方实现了插件啊
[MultiscaleDeformableAttnPlugin_TRT -> "1579"]:4722 In function importFallbackPluginImporter:
[8] Assertion failed: creator && "Plugin not found, are the plugin name, version, and namespace correct?"

  • 写回答

1条回答 默认 最新

  • 玥轩_521 2023-08-08 12:47
    关注

    援引GPT回答:
    这个错误通常是由于插件未正确注册导致的。当使用onnx-tensorrt将ONNX模型转换为TensorRT模型时,需要确保所有自定义插件都已正确注册。

    在使用onnx-tensorrt转换之前,您需要将自定义插件编译为TensorRT可识别的库,并将其加载到TensorRT中。

    请确保您已按照TensorRT的插件开发文档正确实现了插件,并将插件编译为动态链接库(.so文件)。然后,使用trtexec命令行工具测试插件是否能正常工作。

    如果插件在trtexec中运行正常,但在使用onnx-tensorrt转换时出现问题,您可以尝试以下步骤:

    1. 确保插件的库已正确编译,并且其路径已添加到系统的LD_LIBRARY_PATH环境变量中。
    2. 确保在使用onnx-tensorrt转换之前,已正确加载插件库。您可以使用以下代码片段在Python中加载插件库:
    import ctypes
    import tensorrt as trt
    
    # 加载插件库
    ctypes.CDLL("path/to/your/plugin.so")
    
    # 创建TensorRT的插件注册器
    trt.init_libnvinfer_plugins(None, '')
    
    # 创建TensorRT构建器并进行模型转换
    builder = trt.Builder(...)
    network = builder.create_network(...)
    

    通过这些步骤,您应该能够成功注册并使用自定义插件。如果问题仍然存在,可能需要检查插件的实现代码,以确保正确性。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月7日

悬赏问题

  • ¥60 基于香农编码的图像压缩算法实现
  • ¥15 实现胶囊神经网络,最好可以远程操作
  • ¥15 matlabGUI绘制一个函数与其导数的图像
  • ¥20 大数据采集用Python爬取猫眼电影数据
  • ¥15 用freertos后NVIC里系统时钟部分报错
  • ¥15 后缀表达式的计算算法问题
  • ¥15 安装mid360驱动后,执行rviz_MID360.launch rviz不显示
  • ¥15 关于#人工智能#的问题:(2)设计一个GUI,允许语音和文本实现谣言的检测
  • ¥50 请教 麒麟系统挂载怎么安装
  • ¥15 如何在ns3中实现路径的自由切换