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.0.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.0-py3-none-any.whl (151.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qhub_quantum-1.7.0.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.0.tar.gz
Algorithm Hash digest
SHA256 1cd0679e2f4dc29497e2f83ccd64fa736bbca2a05148ef4be4c00e9093b71e65
MD5 dd9527c78b7e80d541f8e2a8ce8928bc
BLAKE2b-256 23c3832175b3fe02eb05cf477363cb07c900b86182754253b75e8d972830429c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qhub_quantum-1.7.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cbf7188d9a067e56f91635329d785211e759b4a8f072a72393cd99fcba123e86
MD5 e060299bcf729272deb4db63d63fca00
BLAKE2b-256 49a54154ce3058c085776324190cbde9ad55c39072eca18952d2a0db19362662

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