导出LLaMA等LLM模型为onnx

通过onnx模型可以在支持onnx推理的推理引擎上进行推理,从而可以将LLM部署在更加广泛的平台上面。此外还可以具有避免pytorch依赖,获得更好的性能等优势。

这篇博客(大模型LLaMa及周边项目(二) - 知乎)进行了llama导出onnx的开创性的工作,但是依赖于侵入式修改transformers库,比较不方便。

这里本人实现了避免侵入式修改transformers库导出LLM为ONNX方法,代码库为:

https://github.com/luchangli03/export_llama_as_onnx/tree/main

可以在这个基础上进行简单修改从而导出其他模型,例如百川,Qwen等模型。当前已经加入了对Qwen的导出支持。

该方案优点是无需侵入式修改transformers代码,缺点是你需要提前了解各个模型的输入,相关shape和dtype。

导出的llama decoder会存在if算子,但是经过符号shape推导和设置相应的符号shape到onnx模型value_info,然后经过onnxsim可以完全去掉。也可以考虑修改llama定义代码去掉if。优化前后:

相关推荐
卷无止境1 分钟前
KTransformers:让巨型模型跑在你家电脑上的黑科技
人工智能·后端
在深圳创业的何仙姑3 分钟前
2026 深圳跨境财税服务商筛选参考|行业风险规避实操指南
大数据·人工智能·跨境电商·财税
半个落月4 分钟前
Vue 3 如何接住大模型的流式回答:从 ReadableStream 到可靠的 SSE 解析
前端·javascript·人工智能
rain_sxr7 分钟前
大模型端侧推理的前端落地:WebGPU 与 ONNX Runtime 的浏览器部署
人工智能
大模型任我行14 分钟前
腾讯:预测散度掩码提升LLM强化学习
人工智能·语言模型·自然语言处理·论文笔记
程序员-李俞14 分钟前
向量引擎接入自研 API 中转网关:鉴权、限流、熔断和审计日志复盘
服务器·人工智能·大模型·api·ai编程·ai api
雪碧聊技术16 分钟前
软件定义三维近存AI芯片发布——国产算力走出“不依赖先进制程”的独特路线
人工智能
夜瞬16 分钟前
内生可解释性:从黑盒深度模型到可理解、可干预的智能系统
人工智能·python
额恩6616 分钟前
阶段一:Vue 2 单页应用基础
人工智能·深度学习·机器学习