已合并
add t5 config #44030
lihui创建于 13 天前
add t5 config #44030
已合并
共 2 个文件变更+9-9
| @@ -632,6 +632,15 @@ def _patch_model_24(): | |||
| 632 | patch_remove_ops_from_generate_list(["aten.reshape", "aten.permute"]) | 632 | patch_remove_ops_from_generate_list(["aten.reshape", "aten.permute"]) |
| 633 | except ImportError: | 633 | except ImportError: |
| 634 | log.warning("import config failed for T5ForConditionalGeneration patch") | 634 | log.warning("import config failed for T5ForConditionalGeneration patch") |
| 635 | + from torch._higher_order_ops.effects import ( | ||
| 636 | + _EffectType, | ||
| 637 | + _register_effectful_op, | ||
| 638 | + ) | ||
| 639 | + | ||
| 640 | + _register_effectful_op( | ||
| 641 | + torch.ops.aten.native_dropout.default, | ||
| 642 | + _EffectType.ORDERED, | ||
| 643 | + ) | ||
| 635 | 644 | ||
| 636 | 645 | ||
| 637 | 646 | ||
| @@ -4,15 +4,6 @@ import torch | |||
| 4 | from torch._decomp import remove_decompositions | 4 | from torch._decomp import remove_decompositions |
| 5 | from torch._inductor import decomposition as inductor_decomp | 5 | from torch._inductor import decomposition as inductor_decomp |
| 6 | from torch_npu._inductor.mfusion.decomp import matmul_backward | 6 | from torch_npu._inductor.mfusion.decomp import matmul_backward |
| 7 | -from torch._higher_order_ops.effects import ( | ||
| 8 | - _EffectType, | ||
| 9 | - _register_effectful_op, | ||
| 10 | -) | ||
| 11 | - | ||
| 12 | -_register_effectful_op( | ||
| 13 | - torch.ops.aten.native_dropout.default, | ||
| 14 | - _EffectType.ORDERED, | ||
| 15 | -) | ||
| 16 | 7 | ||
| 17 | aten = torch.ops.aten | 8 | aten = torch.ops.aten |
| 18 | prims = torch.ops.prims | 9 | prims = torch.ops.prims |
🟠 High Priority
变更行:第 635–638 行新增的
from torch._higher_order_ops.effects import ...。受影响的代码/合约:
_patch_model_24()函数的异常处理边界。失败模式:该 import 位于 try/except 块(第 625–634 行)之外。如果当前 PyTorch 版本中不存在
torch._higher_order_ops.effects模块(这是 PyTorch 内部 API,在不同版本间可能变化),该 import 会抛出未捕获的ImportError,导致_patch_model_24()直接崩溃。同一函数内其上方的 import(第 626–628 行)正确地被 try/except 包裹,而此文件中所有其他 patch 函数(如_patch_model_25、_patch_squeezenet1_1等)也遵循将 import 放在 try/except 内的模式。新增的 import 打破了这个一致性模式。建议:将 import 和 _register_effectful_op 调用移入 try 块内,使异常能被已有 except ImportError 捕获并记录警告日志,而非直接崩溃。