Niro compiles computation graphs from ONNX (TensorFlow, PyTorch, JAX, and others planned) through one unified, strongly typed SSA IR. MLIR is the primary target; GIMPLE, QBE, and other backends may follow.
Read the documentation · IR specification · Python API
Warning
Niro is at an early stage and is not yet ready for production use. Pull requests may be rejected while the design is still taking shape.
uv tool install git+https://github.com/cospectrum/niro.gitCompile a model to textual MLIR:
niro emit mlir model.onnx -o model.mlirInput and output default to the standard streams, so Niro composes with other
tools. Pass --input-format when there is no file extension to infer it from:
niro emit mlir --input-format onnx < model.onnx | mlir-optInspect a model's entry-point signature:
niro inspect signature model.onnxSee CONTRIBUTING.md.