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.6.1.tar.gz (115.4 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.6.1-py3-none-any.whl (151.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qhub_quantum-1.6.1.tar.gz
  • Upload date:
  • Size: 115.4 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.6.1.tar.gz
Algorithm Hash digest
SHA256 27b53cc17a66089789392b2a4a1a54d7883871db59b31d55cf2128466e0a2ff2
MD5 f2bac28d12a2226ade335de1b85df3f4
BLAKE2b-256 f04d5af5dfe000d8c8ce19ff9b809fb0cfd249ac069aec5f54be50b0b44c902c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qhub_quantum-1.6.1-py3-none-any.whl
  • Upload date:
  • Size: 151.0 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.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e19ce4c49491ec357fa6074c9fe42a8e8964e13b9a1ef12378ea3e1b35417450
MD5 c6392fd2c37ae44e4365f1dbb927ab0f
BLAKE2b-256 98f3ad9224a5cd9744f28a61b0caf22a643eb473a6b71d6eb5bf30bd0c059211

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