Checker with simple ONNX model structure. Simple Structure Checker for ONNX.
Project description
ssc4onnx
Checker with simple ONNX model structure. Simple Structure Checker for ONNX.
https://github.com/PINTO0309/simple-onnx-processing-tools
Key concept
- Analyzes and displays the structure of huge size models that cannot be displayed by Netron.
1. Setup
1-1. HostPC
### option
$ echo export PATH="~/.local/bin:$PATH" >> ~/.bashrc \
&& source ~/.bashrc
### run
$ pip install -U onnx rich onnxruntime \
&& pip install -U ssc4onnx \
&& python -m pip install onnx_graphsurgeon \
--index-url https://pypi.ngc.nvidia.com
1-2. Docker
https://github.com/PINTO0309/simple-onnx-processing-tools#docker
2. CLI Usage
$ ssc4onnx -h
usage:
ssc4onnx [-h]
-if INPUT_ONNX_FILE_PATH
optional arguments:
-h, --help
show this help message and exit.
-if INPUT_ONNX_FILE_PATH, --input_onnx_file_path INPUT_ONNX_FILE_PATH
Input onnx file path.
3. In-script Usage
>>> from ssc4onnx import structure_check
>>> help(structure_check)
Help on function structure_check in module ssc4onnx.onnx_structure_check:
structure_check(
input_onnx_file_path: Union[str, NoneType] = '',
onnx_graph: Union[onnx.onnx_ml_pb2.ModelProto, NoneType] = None
) -> Tuple[Dict[str, int], int]
Parameters
----------
input_onnx_file_path: Optional[str]
Input onnx file path.
Either input_onnx_file_path or onnx_graph must be specified.
Default: ''
onnx_graph: Optional[onnx.ModelProto]
onnx.ModelProto.
Either input_onnx_file_path or onnx_graph must be specified.
onnx_graph If specified, ignore input_onnx_file_path and process onnx_graph.
Returns
-------
op_num: Dict[str, int]
Num of every op
model_size: int
Model byte size
4. CLI Execution
$ ssc4onnx -if deqflow_b_things_opset12_192x320.onnx
5. In-script Execution
from ssc4onnx import structure_check
structure_check(
input_onnx_file_path="deqflow_b_things_opset12_192x320.onnx",
)
6. Sample
https://github.com/PINTO0309/ssc4onnx/releases/download/1.0.6/deqflow_b_things_opset12_192x320.onnx
https://github.com/PINTO0309/ssc4onnx/assets/33194443/fd6a4aa2-9ed5-492b-82ae-1f8306af5119
7. Reference
- https://github.com/onnx/onnx/blob/main/docs/Operators.md
- https://docs.nvidia.com/deeplearning/tensorrt/onnx-graphsurgeon/docs/index.html
- https://github.com/NVIDIA/TensorRT/tree/main/tools/onnx-graphsurgeon
- https://github.com/PINTO0309/simple-onnx-processing-tools
- https://github.com/PINTO0309/PINTO_model_zoo
8. Issues
https://github.com/PINTO0309/simple-onnx-processing-tools/issues
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ssc4onnx-1.0.8.tar.gz
.
File metadata
- Download URL: ssc4onnx-1.0.8.tar.gz
- Upload date:
- Size: 6.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
0d13c74d8ab96cae1a0598a08879f69eb6e17a61de942eb73c6f5f2caacf28e2
|
|
MD5 |
936b17a1612c2b1d501e0880d26c4bf5
|
|
BLAKE2b-256 |
2ba1c15d8876de6ce80e88680f88e42ee2932b8a5dd2f619cee8886d0f3d3407
|
File details
Details for the file ssc4onnx-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: ssc4onnx-1.0.8-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
6579d2315b142d0e23d40c7dc25bef6542e450b8e755a9f68693e58ccc9175db
|
|
MD5 |
9d41faf18ffcf5e73a19b58e072b1945
|
|
BLAKE2b-256 |
9475ed24e1662eb178bfbe3d93617c90cbb51ad02ac89f8de5e36468971c8fe2
|