Skip to main content

Scaleway provider for Pulser

Scaleway provider implementation to use neutral atoms based quantum computers.

Pulser Scaleway is a Python package to run quantum sequence on Scaleway infrastructure, providing access to Pasqal neutral atom quantum computers.

More info on the Quantum service web page.

Installation

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

pip install pulser-scaleway

Getting started

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

from pulser_scaleway import ScalewayProvider

qaas_connection = ScalewayProvider(
    project_id=os.environ["PULSER_SCALEWAY_PROJECT_ID"],
    secret_key=os.environ["PULSER_SCALEWAY_SECRET_KEY"],
)

Alternatively, the ScalewayProvider can discover your access token from environment variables:

export PULSER_SCALEWAY_PROJECT_ID="project_id"
export PULSER_SCALEWAY_SECRET_KEY="token"

Then you can instantiate the provider without any arguments:

from pulser_scaleway import ScalewayProvider

qaas_connection = ScalewayProvider()

Now you have access to the supported backends and can design your pulse sequence. See the technical documentation on how to write a sequence.

# Retrieve all QPU devices (emulated or real)
devices = qaas_connection.fetch_available_devices()
fresnel_device = devices["QPU-FRESNEL-100PQ-FR"]

# Create a register of trapped atoms before performing operation on them
register = Register.square(5, 5).with_automatic_layout(fresnel_device)

# Declare the sequence of pulses to perform on the register
sequence = Sequence(register, fresnel_device)
sequence.declare_channel("rydberg_global", "rydberg_global")
t = sequence.declare_variable("t", dtype=int)

amp_wf = BlackmanWaveform(t, np.pi)
det_wf = RampWaveform(t, -5, 5)
sequence.add(Pulse(amp_wf, det_wf, 0), "rydberg_global")

# Declare a backend based on the sequence and remote connection
backend = QPUBackend(sequence=sequence, connection=qaas_connection)

# Run jobs with different arguments over the same sequence and register
results = backend.run(
    job_params=[
        {"runs": 100, "variables": {"t": 1000}},
        {"runs": 20, "variables": {"t": 2000}},
    ],
    wait=True,
)

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

Metadata

Release files for pulser-scaleway 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pulser-scaleway 0.1.8
File Size Uploaded
pulser_scaleway-0.1.8.tar.gz 10.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pulser-scaleway 0.1.8
File Interpreter ABI Platform
pulser_scaleway-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 22.7 kB

Release files / pulser_scaleway-0.1.8.tar.gz

Download URL pulser_scaleway-0.1.8.tar.gz
Size 10.9 kB
Tags Source
SHA-256 checksum
How to use checksums
eb3093beffe34fb51396cdb51e6afa27d32f3e25e3e0bc40802906feab716468
BLAKE2b-256 checksum
How to use checksums
3f97679395fa6b24d997ce377409aa97dcb42a4cdc28d987f4a19167cb6df039
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / pulser_scaleway-0.1.8-py3-none-any.whl

Download URL pulser_scaleway-0.1.8-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7821b67d10eee88382fc670723bc5a95b5eb796f02f39a2e9a290ace9fc28f92
BLAKE2b-256 checksum
How to use checksums
da78e6e8d0f9af24e10b6eef3aa049abbf7bcad50af8792c28582b03d68518ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release history Release notifications | RSS feed

0.1.9

2 release files

This release

0.1.8 This release

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page