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
ssc4onnx-1.0.8.tar.gz
(6.0 kB
view details)
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 |