Skip to main content

A Qiskit package to connect to Scaleway Quantum as a Service

Project description

Scaleway provider for Qiskit

Qiskit Scaleway is a Python package to run quantum circuits on Scaleway infrastructure, providing access to Aer and Qsim simulators on powerful hardware (CPU and GPU).

To run circuits over Quandela backends provided by Scaleway, you must use Perceval SDK through the Scaleway provider.

More info on the Quantum service web page.

Installation

We encourage installing Scaleway provider via the pip tool (a Python package manager):

pip install qiskit-scaleway

Getting started

To instantiate the ScalewayProvider, you need to have an access token and a project_id

from qiskit import QuantumCircuit
from qiskit_scaleway import ScalewayProvider

provider = ScalewayProvider(
    project_id="<your-scaleway-project-id>",
    secret_key="<your-scaleway-secret-key>",
)

Alternatively, the Scaleway Provider can discover your access token from environment variables or from your .env file

export QISKIT_SCALEWAY_PROJECT_ID="project_id"
export QISKIT_SCALEWAY_API_TOKEN="token"

Then you can instantiate the provider without any arguments:

from qiskit import QuantumCircuit
from qiskit_scaleway import ScalewayProvider

provider = ScalewayProvider()

Now you can have acces to the supported backends:

# List all operational backends
backends = provider.backends(operational=True)
print(backends)

# List all backends with a minimum number of qbits
backends = provider.backends(min_num_qubits=35)
print(backends)

# Retrieve a backend by providing search criteria. The search must have a single match
backend = provider.get_backend("aer_simulation_h100")

Define a quantum circuit and run it

# Define a quantum circuit that produces a 4-qubit GHZ state.
qc = QuantumCircuit(4)
qc.h(0)
qc.cx(0, 1)
qc.cx(0, 2)
qc.cx(0, 3)
qc.measure_all()

## DO NOT USE TRANSPILATION
## Transpilation is done server side on QaaS service

# Create and send a job to a new QPU's session (or on an existing one)
result = backend.run(qc, method="statevector", shots=1000).result()

if result.success:
    print(result.get_counts())
else:
    print(result.to_dict()["error"])

Development

This repository is at its early stage and is still in active development. If you are looking for a way to contribute please read CONTRIBUTING.md.

Reach us

We love feedback. Feel free to reach us on Scaleway Slack community, we are waiting for you on #opensource..

License

License Apache 2.0

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

qiskit_scaleway-0.2.3.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

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

qiskit_scaleway-0.2.3-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file qiskit_scaleway-0.2.3.tar.gz.

File metadata

  • Download URL: qiskit_scaleway-0.2.3.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for qiskit_scaleway-0.2.3.tar.gz
Algorithm Hash digest
SHA256 b497d6b8ef9ed3f007ebf9d8cb41c3406013142ae90196f2b90bfa562c820529
MD5 50ce792cffa2c2da8da43c7a321c11fe
BLAKE2b-256 7208b57174aaec8598c1d327c393a60cd6f289a35b499186e443cb297897514a

See more details on using hashes here.

File details

Details for the file qiskit_scaleway-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for qiskit_scaleway-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 01c48d4550f7aea92b8d6b78765854fd2b743a6a2bd3af482f6eb8394328799b
MD5 5d09234b5f259e5d57e91a597b8039b1
BLAKE2b-256 423d840bd693e1dff14120ba9e4298905849f9bf8a55ff254e2e1d8f83e662d7

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