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

Uploaded Python 3

File details

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

File metadata

  • Download URL: qhub_quantum-1.5.2.tar.gz
  • Upload date:
  • Size: 115.5 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.5.2.tar.gz
Algorithm Hash digest
SHA256 517d05585ef1345090da4c7e4837a58c802be8e1431d75cafada79b8c509c69e
MD5 b4ad24f632d4e44b1d2087a36e03b7be
BLAKE2b-256 b32b84e533f8d3383ab1d960001be465346c0b80c9c857f47ccfb8f0de5e5723

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qhub_quantum-1.5.2-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.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7c4863c101777eab2bdd1a9a33b90592505a0809858f70ccc7efe664438346ac
MD5 f2b30105d8b746273eea51730f38276d
BLAKE2b-256 ad5f239d51b765d48b2916cc881e9212991c7f03b50f65b4393fe00a18f1d42e

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