昇思学习营-模型开发与适配学习心得
通过。
经验分享总起
“在模型适配香橙派时,算子缺失是常见卡点 。大模型依赖丰富算子支持,硬件环境差异会导致算子不兼容,接下来以 cumsum 算子问题为例,讲讲我们怎么定位、解决,让模型在香橙派上跑通 。”
a. 针对算子缺失的处理方式
-
第一步(初始报错):
“先看测试用例pytest -s -v tests\ut\transformers\models\qwen2\test_modeling_qwen2.py::Qwen2ModelTest::test_new_cache_format_0,运行后日志报错,能初步怀疑是aclInn cumsum算子问题,但日志没精准定位到脚本哪行。这就像找房间里的故障电器,知道电器类型有问题,却没找到具体插座 。” -
第二步(开启同步定位):
“开启同步调试后,终于锁定modeling_qwen2.py里的cumsum算子 。同步机制相当于给代码加了‘追踪器’,把执行流程、算子调用链路清晰呈现,让隐藏的问题位置‘浮出水面’,明确是这个算子在香橙派环境不兼容 。” -
第三步(修改代码适配):
“最后改代码,把原本走aclInn的cumsum,切换成ops.cumsum,让算子走aclOp执行。这一步是‘对症下药’—— 既然原算子在香橙派环境水土不服,就换适配的算子路径,相当于给模型换个‘能在香橙派硬件上跑的工具’,解决算子兼容问题,让模型继续跑通 。” -
总结收尾:
“通过cumsum算子的定位、修复,大家能看到端侧适配的关键逻辑:先抓报错线索,再精准定位问题模块,最后替换适配算子 / 代码 。香橙派这类硬件资源有限,但通过这样的调试、适配,也能让大模型‘跑’起来,为端侧 AI 应用落地提供可能,后续遇到类似算子、环境适配问题,也可以用这套思路拆解 。”
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐



所有评论(0)