microsoft / microsoft/onnxruntime
Get OpSchemas for registered Custom Operators
- Dominant language
- C++
- Stars
- 21.9k
- Forks
- 4.2k
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 184
Description
### Describe the feature request
The function "get_all_operator_schema" (onnxruntime.capi.onnxruntime_pybind11_state.get_all_operator_schema)
is not available for custom Operators. Session Option or Session inference could be enhanced by giving the option of getting the information of the available operators for the session.
Extending the functionality of these functions helps when creating systems like NVIDIA NSight DL Designer or ONNX model node editors, where only the predefined operators are available.
I have checked the code to find if there was any method to get this metadata from registered custom operators. If this functionality already exists, I would be happy to know.
Best Regards
### Describe scenario use case
My main use case now is for a project to convert ONNX models to RDF "https://github.com/JorgeMIng/ONNX2RDF" where I was using "get_all_operator_schema" but was not able to extend it to custom operators.
It could be used to create an ONNX Operator registry compiling multiple ONNX custom libraries for easily finding operators for specific tasks. Moreover, if considering systems like Nvidia NSight DL Designer, where only the predefined ONNX operators are available, this could introduce a method to add compatibility for custom libraries.
Contributor guide
Research direction
Start at the mentioned get_all_operator_schema entry point and trace how registered custom operators and session options are represented. Done means a session can expose schema information for its registered custom operators, but the issue names no files or tests to guide implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, python
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100