| fix: onnx插件解析属性时零值字段被GE省略导致回退默认值 Co-authored-by: clinglai0517<laichangling@huawei.com> # message auto-generated for no-merge-commit merge: !10783 merge elu-onnx-fix into master fix: onnx插件解析属性时零值字段被GE省略导致回退默认值 Created-by: clinglai0517 Commit-by: clinglai0517 Merged-by: cann-robot Description: ## 描述 GE 序列化 ONNX 算子属性为 JSON 时,会省略值为 0 的标量字段(float 的 "f"、int 的 "i")。部分插件用 attr.contains("f"/"i") 判断属性是否存在,或直接访问 attr["f"/"i"],导致属性传 0 时被错误回退到算子默认值,或直接抛异常使转换失败。 修复方式:先按 name 判断属性是否存在,值字段缺失时按该类型的 protobuf 默认值 0 处理,而不是回退默认值或抛异常。 涉及算子: - Elu(alpha) - LeakyRelu(alpha) - HardMax(axis) - AdaCast(pixel) - GroupNormRelu(eps / num_groups) - BoundingBoxDecode(wh_ratio_clip) - AscendAntiQuantV2(dst_dtype) ## 关联的Issue Issue #6004 ## 测试 - 编译:bash build.sh --onnxplugin -j16 通过(7 个修复源文件全部编译通过)。 - 单测:bash build.sh -u --ophost --ops=elu,leaky_relu,hardmax,ada_cast,14 个用例全部 PASSED(含各算子新增的「零值字段缺失」用例)。 - 端到端 NPU(Ascend 910B3 / CANN 9.0.0):ELU alpha=0 负半轴输出 [0,0,0,0],alpha=3.0 回归无影响。 ## 文档更新 不涉及 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!10783 | 10 天前 |