arvak-lite
Lightweight quantum circuit compiler wrapping Arvak. Takes circuits from any major framework, compiles them, and returns the same type.
from arvak_lite import transpile
compiled = transpile(circuit)
Also registers as a Qiskit transpiler plugin:
from qiskit.compiler import transpile
compiled = transpile(circuit, optimization_method="arvak")
Installation
pip install arvak-lite
With framework extras:
pip install arvak-lite[qiskit] # Qiskit + transpiler plugin
pip install arvak-lite[cirq] # Cirq
pip install arvak-lite[pennylane] # PennyLane
pip install arvak-lite[pulser] # Pulser (Pasqal)
pip install arvak-lite[qrisp] # Qrisp
pip install arvak-lite[qbraid] # qBraid multi-backend
pip install arvak-lite[all] # Everything
Usage
Any framework
from arvak_lite import transpile
compiled = transpile(circuit) # Qiskit in → Qiskit out, Cirq in → Cirq out, etc.
Qiskit transpiler plugin
Once installed, arvak is available as a named plugin in Qiskit's transpile():
from qiskit.compiler import transpile
# Use Arvak for optimization
compiled = transpile(circuit, optimization_method="arvak")
# Use Arvak for routing
compiled = transpile(circuit, coupling_map=coupling, routing_method="arvak")
# Or via pass manager
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager
pm = generate_preset_pass_manager(optimization_level=3, optimization_method="arvak")
compiled = pm.run(circuit)
With metrics
compiled, metrics = transpile(circuit, return_metrics=True)
print(f"{metrics['time_ms']:.2f}ms, {metrics['gate_count']} gates")
Parameters
transpile(
circuit, # Any supported circuit type
optimization_level=3, # 0=parse, 1=basic, 2=standard, 3=aggressive
coupling_map=[[0,1], [1,2]], # Device connectivity (None = all-to-all)
basis_gates=["cx", "rz", "sx"], # Target gate set
return_metrics=True, # Return (circuit, metrics) tuple
)
Supported frameworks
| Framework | Type | Round-trip |
|---|---|---|
| Qiskit | QuantumCircuit |
Yes |
| Cirq | cirq.Circuit |
Yes |
| PennyLane | QNode / tape | Yes |
| Pulser | Sequence (digital) |
QASM output |
| Qrisp | QuantumCircuit / QuantumSession |
Yes |
| OpenQASM | str (2.0 / 3.0) |
Yes |
| Arvak | arvak.Circuit |
Yes |
How it works
arvak-lite is a thin Python wrapper (~12 KB). The actual compilation happens in Arvak, a Rust-native compiler exposed via PyO3. The full compiler fits in a ~600 KB wheel — no LLVM, no JVM, no heavy runtime. The speed comes from Rust, not from skipping optimization passes.
- Detect the input framework from the circuit's type
- Convert to
arvak.Circuit - Compile in Rust (gate decomposition, routing, optimization)
- Convert back to the original framework type
License
LGPL-3.0-or-later. See LICENSE.
Metadata
Release files for arvak-lite 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| arvak_lite-0.1.2.tar.gz | 16.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| arvak_lite-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.7 kB
Release files / arvak_lite-0.1.2.tar.gz
| Download URL | arvak_lite-0.1.2.tar.gz |
|---|---|
| Size | 16.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e4b12e2af280391d364240eb7d0961847d4b193b2b2e2baa53ea8fcf3c016128
|
|
BLAKE2b-256 checksum How to use checksums |
2f2264777ecb0d59645e20e17dc1847d9a95cdb23c70ba747bbbe2179606fdc2
|
| 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 9, 2026.
Transparency logRelease files / arvak_lite-0.1.2-py3-none-any.whl
| Download URL | arvak_lite-0.1.2-py3-none-any.whl |
|---|---|
| Size | 12.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f18e5e082ee9f98a8762fb335d338a35e915fd3df83c116194d2f220d40091f1
|
|
BLAKE2b-256 checksum How to use checksums |
2054f33be948bec8a0c0a45f04fb7560c14a60717e5a447eda4538e7425c0959
|
| 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 9, 2026.
Transparency log