Skip to content

Repository files navigation

PyTorch RBLN

PyTorch RBLN

PyPI version License Documentation Contributor Covenant

About

PyTorch RBLN (torch-rbln) is a PyTorch extension that allows natural use of Rebellions NPU compute within PyTorch. By implementing eager mode, which operates in a define-by-run fashion, it supports the full lifecycle of model development, deployment, and serving in the PyTorch ecosystem. It is also convenient for debugging and related workflows.

The same interface style as CPU and GPU applies — the rbln device, torch.rbln, and torch.compile — so developers and customers can target RBLN NPUs with familiar APIs. Operations on rbln tensors are integrated via PyTorch’s out-of-tree extension path; execution is coordinated with the RBLN compiler and runtime (rebel-compiler).

PyTorch RBLN is currently in beta and under active development. APIs may change between releases, backward compatibility is not guaranteed, and production use is not recommended yet. For the full notice, architecture, supported operators, and tutorials, see PyTorch RBLN — Overview in the RBLN SDK documentation. For wheels, rebel-compiler, and building from source, see Installation.

Getting started

Prerequisites

Install pre-built wheels

torch-rbln (public wheel). Install torch from the PyTorch CPU index first, then torch-rbln from PyPI.

pip3 install torch==2.11.0+cpu --index-url https://download.pytorch.org/whl/cpu
pip3 install torch-rbln

For rebel-compiler and the rest of the setup, see Prerequisites above and Installation.

Build from source

  1. Install uv (see Installation — Prerequisites in the SDK docs).
  2. Configure access to the RBLN package index (see Authenticate to the RBLN package index below).
  3. Follow Build from source (venv, rebel-compiler, editable build, manual steps).
git clone https://github.com/RBLN-SW/torch-rbln.git
cd torch-rbln
uv venv .venv && source .venv/bin/activate
./tools/dev-setup.sh pypi

rebel-compiler must be available in the same environment before the torch-rbln build finishes (see Prerequisites).

Authenticate to the RBLN package index

rebel-compiler is installed from the RBLN package index (pypi.rbln.ai), which requires an RBLN Portal account. Without credentials, ./tools/dev-setup.sh pypi fails with:

❌ Cannot reach any rbln pypi index (no permission or network error).

Add your RBLN Portal credentials to ~/.netrc so pip/uv can authenticate:

machine pypi.rbln.ai
login <your-rbln-portal-id>
password <your-rbln-portal-password>

Then restrict its permissions (tools refuse a world-readable .netrc):

chmod 600 ~/.netrc

Re-run ./tools/dev-setup.sh pypi once the file is in place.

Documentation

RBLN SDK (hosted)

This repository

Contributing

See docs/CONTRIBUTING.md.

License

Apache License 2.0 — see LICENSE and NOTICE.

Contact