-
Notifications
You must be signed in to change notification settings - Fork 105
Open
Description
converting the attached ONNX model with the following script:
from onnxscript import ir
from onnxscript.optimizer import optimize
ir_model = ir.load("input.onnx")
optimized_model = optimize(ir_model)
ir.save(optimized_model, "output.onnx")
crashed the optimizer:
Traceback (most recent call last):
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnx_ir/passes/_pass_infra.py", line 250, in call
pass_result = pass_(model)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnx_ir/passes/_pass_infra.py", line 127, in __call__
result = self.call(model)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/__init__.py", line 83, in call
count = self.rules.apply_to_model(model)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/_rewrite_rule.py", line 802, in apply_to_model
count = self._apply_to_graph_or_function(
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/_rewrite_rule.py", line 669, in _apply_to_graph_or_function
delta = rule.try_rewrite(
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/_rewrite_rule.py", line 324, in try_rewrite
replacement_subgraph = self._replacement_pattern.get_replacement(match)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/_rewrite_rule.py", line 220, in get_replacement
new_outputs = self._function(context, **match.bindings)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/rules/common/_fuse_relus_clips.py", line 39, in rewrite
min_clip, max_clip = self.compute_clip_min_max(first_clip_node, second_clip_node)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/rules/common/_fuse_relus_clips.py", line 152, in compute_clip_min_max
min_clip, max_clip, dtype = self.extract_min_max(first_clip_node)
File "/local/mnt/workspace/onnxscript/lib/python3.10/site-packages/onnxscript/rewriter/rules/common/_fuse_relus_clips.py", line 77, in extract_min_max
max_clip = node.inputs[2].const_value.numpy()
AttributeError: 'NoneType' object has no attribute 'const_value'
This happens because the Clip has no explicit max value, but relies on the default
versions of relevant packages:
ml_dtypes 0.5.4
onnx 1.20.1
onnx-ir 0.1.16
onnxscript 0.6.2
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels