Skip to main content
NIR Logo

NIR - Neuromorphic Intermediate Representation

Static Badge PyPI - Downloads GitHub Tag Discord Neuromorphic Computing

NIR is a set of computational primitives, shared across different neuromorphic frameworks and technology stacks. NIR is currently supported by 9 simulators and 5 hardware platforms, allowing users to seamlessly move between any of these platforms.

NIR is useful when you want to move a model from one platform to another, for instance from a simulator to a hardware platform.

Read more about NIR in our documentation about NIR primitives

See which frameworks are currently supported by NIR.

Usage

Read more in our documentation about NIR usage and see more examples in our examples section

NIR serves as a format between neuromorphic platforms and will be installed alongside your framework of choice. Using NIR is typically a part of your favorite framework's workflow, but follows the same pattern when you want to move from a source to a target platform:

# Define a model
my_model = ...
# Save the model (source platform)
nir.write("my_graph.nir", my_model) 
# Load the model (target platform)
imported_graph = nir.read("my_graph.nir")

See our example section for how to use NIR with your favorite framework.

Recently, NIR has been extended by an intermediate representation for data exchange in spiking neural networks: NIRData.

Frameworks that currently support NIR

Read more in our documentation about NIR support

Framework Write to NIR Read from NIR Examples
hxtorch (BrainScaleS-2) ✓ ✓ hxtorch examples
jaxsnn (BrainScaleS-2) ⬚ ✓ jaxsnn examples
Lava-DL ⬚ ✓ Lava/Loihi examples
Nengo ✓ ✓ Nengo examples
Norse ✓ ✓ Norse examples
Rockpool (SynSense Xylo chip) ✓ ✓ Rockpool/Xylo examples
Sinabs (SynSense Speck chip) ✓ ✓ Sinabs/Speck examples
snnTorch ✓ ✓ snnTorch examples
SpiNNaker2 ⬚ ✓ SpiNNaker2 examples
Spyx ✓ ✓ Spyx examples

Acknowledgements

This work was originally conceived at the Telluride Neuromorphic Workshop 2023 by the authors below (in alphabetical order):

If you use NIR in your work, please cite the following paper

article{NIR2024, 
    title={Neuromorphic intermediate representation: A unified instruction set for interoperable brain-inspired computing}, 
    author={Pedersen, Jens E. and Abreu, Steven and Jobst, Matthias and Lenz, Gregor and Fra, Vittorio and Bauer, Felix Christian and Muir, Dylan Richard and Zhou, Peng and Vogginger, Bernhard and Heckel, Kade and Urgese, Gianvito and Shankar, Sadasivan and Stewart, Terrence C. and Sheik, Sadique and Eshraghian, Jason K.}, 
    rights={2024 The Author(s)},
    DOI={10.1038/s41467-024-52259-9}, 
    number={1},
    journal={Nature Communications}, 
    volume={15},
    year={2024}, 
    month=sep, 
    pages={8122},
}

Metadata

Release files for nir 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nir 1.0.8
File Size Uploaded
nir-1.0.8.tar.gz 85.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nir 1.0.8
File Interpreter ABI Platform
nir-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 112.7 kB

Release files / nir-1.0.8.tar.gz

Download URL nir-1.0.8.tar.gz
Size 85.2 kB
Tags Source
SHA-256 checksum
How to use checksums
8567513d84d975f8df444e50b5875fc7271b7bc61fcf85c5556178df35db089f
BLAKE2b-256 checksum
How to use checksums
2c4eba1d84d938f1fa50d980102a1e27619ea8c7bd662e411252d75bd9502b53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 6, 2026.

Transparency log

Release files / nir-1.0.8-py3-none-any.whl

Download URL nir-1.0.8-py3-none-any.whl
Size 27.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
75244036d19b2182f92a3c28b6ec13a4af40fa7b07037c62ee93b7b0ef728524
BLAKE2b-256 checksum
How to use checksums
d0e7c3c19582b1b16d82be622cd2433199648cc7b75725b7dfed05193cd068b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 6, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page