Skip to main content

SDK to interact with Kipu Quantum Hub quantum backends.

Project description

Kipu Quantum Hub Quantum SDK

PyPI version

The Kipu Quantum Hub Quantum SDK is for developing quantum circuits using Qiskit to be run on quantum devices provided by the Kipu Quantum Hub. This library is an extension for Qiskit. This means that you are able to seamlessly integrate and reuse your existing Qiskit code, leveraging the power and familiarity of a framework you are already accustomed to.

Getting Started

Check out the following guides on how to get started with Kipu Quantum Hub:

Requirements

  • Python 3.11+
  • uv for development and dependency management

Installation

The package is released on PyPI and can be installed via pip:

pip install --upgrade qhub-quantum

To install a pre-release version, use the following command:

pip install --pre --upgrade qhub-quantum

Usage

Working with Qiskit Backends

You can execute a Qiskit circuit on a selected backend, retrieve its job object, and its results:

from qhub.quantum.sdk import HubQiskitProvider
from qiskit import QuantumCircuit, transpile

# Initialize the provider
provider = HubQiskitProvider()

# Select a backend, full list of backends can be found at https://platform.planqk.de/quantum-backends
backend = provider.get_backend("azure.ionq.simulator")

# Create a Qiskit circuit
circuit = QuantumCircuit(3, 3)
circuit.h(0)
circuit.cx(0, 1)
circuit.cx(1, 2)
circuit.measure(range(3), range(3))

# Transpile the circuit for the selected backend
circuit = transpile(circuit, backend)

# Execute the circuit on the selected backend
job = backend.run(circuit, shots=100)

# Monitor job status and get results
print(f"Status: {job.status()}")
print(f"Result: {job.result()}")

Working with Braket Devices

You can execute a Braket circuit on a selected device, retrieve its task object, and its results:

from braket.circuits import Circuit
from qhub.quantum.sdk import HubBraketProvider

# Select the IonQ Forte device
device = HubBraketProvider().get_device("aws.ionq.forte")

# Create a Braket circuit
circuit = Circuit().h(0).cnot(0, 1).cnot(1, 2)

# Execute the circuit with 100 shots
task = device.run(circuit, 100)

# Monitor task status and get results
print(f"Status: {task.state()}")
print(f"Result: {task.result()}")

Development

To create a new virtual environment, for example, run:

uv venv
uv sync

Then, to activate the environment:

source .venv/bin/activate

Update dependencies and lock files:

uv sync -U

Testing

Run the test suite with:

pytest

Linting

Lint and format with ruff:

ruff check .
ruff format .

License

Apache-2.0 | Copyright 2023-present Kipu Quantum GmbH

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qhub_quantum-1.7.1.tar.gz (116.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qhub_quantum-1.7.1-py3-none-any.whl (151.6 kB view details)

Uploaded Python 3

File details

Details for the file qhub_quantum-1.7.1.tar.gz.

File metadata

  • Download URL: qhub_quantum-1.7.1.tar.gz
  • Upload date:
  • Size: 116.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for qhub_quantum-1.7.1.tar.gz
Algorithm Hash digest
SHA256 2d2427a4d0efaaaab92b4a02ab2095910fb558f172bb3e519dddf7fbe66c2fa6
MD5 87ca036402ec7649427b55405b46ebc8
BLAKE2b-256 45d6518525059332a8f36a96b1d25a156b3238df94add5c97f585b9f3ccd90b6

See more details on using hashes here.

File details

Details for the file qhub_quantum-1.7.1-py3-none-any.whl.

File metadata

  • Download URL: qhub_quantum-1.7.1-py3-none-any.whl
  • Upload date:
  • Size: 151.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for qhub_quantum-1.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4b886b0729d11c3ee3e0571bc73316cfa439631c9311a3015d5688dbee4f5235
MD5 34834cb36a56f58480796783d6fb0488
BLAKE2b-256 fb855255df4f450561ad79609f7845d5cb3430123c5dbd6cf6fa4894af32c48e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page