kanad-compute
Turn your computer into a quantum chemistry compute server for Kanad.
Run VQE calculations, molecular simulations, and quantum analyses on your own hardware — then connect to the Kanad platform for visualization, collaboration, and reporting.
Quick Start
# Install
pip install kanad-compute
# Initialize (creates config + API key)
kanad-compute init
# Start the server
kanad-compute start
Then paste your API key into Kanad > Profile > Backend Credentials > Kanad Compute.
What It Does
kanad-compute runs a local FastAPI server that executes quantum chemistry calculations using the Kanad framework. When you select "Kanad Compute" as a backend in the Kanad web app, your calculations run on YOUR machine instead of cloud services.
Supported solvers: PhysicsVQE, HardwareVQE, HybridSubspaceVQE, SQD, KrylovSQD, VQE, VarQITE, qEOM, EfficientVQE, ExcitedStates
Supported backends: Statevector (local), Qiskit Aer (CPU/GPU), IBM Quantum (with your credentials), IonQ (with your credentials)
Requirements
- Python 3.11+
- 8GB+ RAM recommended
- Kanad library installed (
pip install kanador install from source)
Installation
From GitHub (recommended)
# Clone the repo
git clone https://github.com/mk0dz/kanad-compute.git
cd kanad-compute
# Install in development mode
pip install -e .
# With GPU acceleration
pip install -e ".[gpu]"
# With IBM Quantum hardware
pip install -e ".[ibm]"
# With IonQ
pip install -e ".[ionq]"
# Everything
pip install -e ".[all]"
Note: You also need the Kanad framework installed. If you don't have it:
git clone https://github.com/mk0dz/kanad.git cd kanad && pip install -e .
From PyPI (coming soon)
pip install kanad-compute
CLI Commands
kanad-compute init
Initialize configuration. Creates ~/.kanad-compute/config.json with a unique node ID and API key.
kanad-compute init --port 7440 --max-qubits 20 --gpu
Options:
--port— Server port (default: 7440)--max-qubits— Maximum qubits to accept (default: 20)--gpu / --no-gpu— Enable GPU acceleration--ibm-token— IBM Quantum API token--ionq-key— IonQ API key
kanad-compute start
Start the compute server.
kanad-compute start --host 0.0.0.0 --port 7440
kanad-compute status
Check server status and system info.
kanad-compute status
kanad-compute key
Display your API key (for pasting into Kanad app).
kanad-compute key
kanad-compute configure
Update configuration without reinitializing.
kanad-compute configure --ibm-token YOUR_TOKEN --max-qubits 25
Connecting to Kanad
- Run
kanad-compute start - Copy your API key:
kanad-compute key - Go to kanad.xyz > Profile > Backend Credentials
- Under "Kanad Compute", paste the API key and set the server URL (
http://localhost:7440) - Click "Test" to verify the connection
- Select "Kanad Compute" as your backend when running experiments
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /health |
Server health check (no auth) |
| GET | /info |
System info and capabilities |
| POST | /jobs |
Submit a calculation job |
| GET | /jobs/{id} |
Get job status and results |
| POST | /jobs/{id}/cancel |
Cancel a running job |
| GET | /jobs |
List recent jobs |
All endpoints except /health require Bearer token authentication.
Architecture
Your Machine
+-- kanad-compute server (FastAPI, port 7440)
| +-- /health, /info
| +-- /jobs (submit, poll, cancel)
| +-- Thread Pool Executor
| +-- Kanad Solvers (PhysicsVQE, HardwareVQE, ...)
| +-- Kanad Backends (statevector, aer, ibm, ionq)
+-- Config: ~/.kanad-compute/config.json
Kanad Web App (kanad.xyz)
+-- Profile > Backend Credentials > Kanad Compute
+-- Schrodinger Lab > Select "Kanad Compute" backend
+-- Jobs proxied to your machine via API key auth
Configuration
Config is stored at ~/.kanad-compute/config.json:
{
"node_id": "uuid",
"api_key": "your-api-key",
"port": 7440,
"max_qubits": 20,
"max_workers": 2,
"gpu_enabled": false,
"ibm_api_token": null,
"ionq_api_key": null
}
License
Apache 2.0 — see LICENSE.
Links
Release files for kanad-compute 0.2.15
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kanad_compute-0.2.15.tar.gz | 829.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kanad_compute-0.2.15-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.8 MB
Release files / kanad_compute-0.2.15.tar.gz
| Download URL | kanad_compute-0.2.15.tar.gz |
|---|---|
| Size | 829.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
901b5ac705a1d6f4bf99fdfa8b5f8b233bc5917658950466c61108e8a9187eb1
|
|
BLAKE2b-256 checksum How to use checksums |
dc0be8f165bb11ec685c5d1c84d9e006ceeca0c5ea5538abb4a9cde145256f37
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / kanad_compute-0.2.15-py3-none-any.whl
| Download URL | kanad_compute-0.2.15-py3-none-any.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a93f76f275774c218c300ce5c28df69f270d16d7a352631e52830a257f6f556d
|
|
BLAKE2b-256 checksum How to use checksums |
bfdd40a62e00c171756230f58616a0ed171b399d780a842f57677647124bfb7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|