Thrsu opened a new issue, #15719:
URL: https://github.com/apache/tvm/issues/15719

   I encountered an issue when using the `tvm.relax` module to execute an [ONNX 
model](https://github.com/Thrsu/onnx_model/blob/main/Constant.onnx) that 
contains a Constant operator. The error message "ValueError: no value in 
Constant" is raised, despite the fact that the model includes the attribute 
"value_float" for the Constant operator. Besides, according to the [official 
ONNX 
documentation](https://onnx.ai/onnx/operators/onnx__Constant.html#constant-19), 
the Constant operator can have the attribute "value_float".
   
   ### Expected behavior
   
   The `tvm.relax` module should properly recognize and handle the 
"value_float" attribute of the Constant operator in the ONNX model.
   
   ### Actual behavior
   
   ```
   Traceback (most recent call last):
     ...
       tvm_model = from_onnx(model, opset=18, keep_params_in_input=True)
     File 
"/workplace/software/tvm/tvm/python/tvm/relax/frontend/onnx/onnx_frontend.py", 
line 2287, in from_onnx
       return g.from_onnx(graph, opset)
     File 
"/workplace/software/tvm/tvm/python/tvm/relax/frontend/onnx/onnx_frontend.py", 
line 1932, in from_onnx
       self._construct_nodes(graph)
     File 
"/workplace/software/tvm/tvm/python/tvm/relax/frontend/onnx/onnx_frontend.py", 
line 2095, in _construct_nodes
       op = self._convert_operator(op_name, inputs, attr, self.opset)
     File 
"/workplace/software/tvm/tvm/python/tvm/relax/frontend/onnx/onnx_frontend.py", 
line 2191, in _convert_operator
       sym = op_function(self.bb, inputs, attrs, [self._nodes, self._params])
     File 
"/workplace/software/tvm/tvm/python/tvm/relax/frontend/onnx/onnx_frontend.py", 
line 737, in _impl_v13
       raise ValueError("no value in Constant")
   ValueError: no value in Constan
   ```
   
   ### Environment
   
   - TVM: v0.14.dev0-595-gfa0d35b
   - onnx: 1.14.0
   
   ### Steps to reproduce
   
   ```python
   import onnx
   import tvm
   from tvm import relax
   from tvm.relax.frontend.onnx import from_onnx
   
   onnx_model_path = "Constant.onnx"
   model = onnx.load(onnx_model_path)
   tvm_model = from_onnx(model, opset=18, keep_params_in_input=True)
   ```
   ### Triage
   
   * needs-triage
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to