Netron meets Flask: a visual ONNX surgeon
Stop writing throwaway Python scripts just to tweak a model graph.

What it does
onnx-modifier wraps the Netron model viewer in a small Flask app so you can edit ONNX graphs in the browser instead of writing Python boilerplate. Delete nodes, add new ones, rename inputs/outputs, tweak attributes, edit initializers, and even load new weights from .npy files — all with a live preview.
The interesting bit The real win is the feedback loop. In the README’s own words, the old way means “code to edit, then visualize to check” iterating “for many times.” Here you click, the graph updates, and Python ONNX API calls are generated behind the scenes only when you hit Download. It’s a GUI over a programmatic API, but the GUI is the point.
Key highlights
- Built on Netron for visualization and Flask for the backend
- Supports 194 operator types across ONNX standard, ML, and Microsoft domains
- Node deletion with backtracking-based “Delete With Children” mode
- Experimental shape inference and graph cleanup on export (via onnx-tool)
- Initializer editing with numpy file import (added Dec 2023)
- Windows executable available (28.3MB); other platforms need source
Caveats
- Several features marked “experimental”: adding nodes, shape inference, cleanup
- Dynamic batch size only; other dynamic dimensions not supported
- New nodes need all attributes filled manually — defaults are “not supported well”
- Windows executable only; macOS/Linux users run from source
Verdict Worth a look if you frequently patch pretrained ONNX models for deployment or debugging. Skip it if you need fully automated, reproducible pipelines — this is interactive tooling, not infrastructure.