Skip to main content

Amazon Braket Strawberry Fields Plugin

Latest Version Supported Python Versions Build Status codecov Documentation Status

This plugin provides a BraketEngine class for running photonic quantum circuits created in Strawberry Fields on the Amazon Braket service.

The Amazon Braket Python SDK is an open source library that provides a framework to interact with quantum computing hardware devices and simulators through Amazon Braket.

Strawberry Fields is an open source library for writing and running programs for photonic quantum computers.

The plugin documentation can be found here: https://amazon-braket-strawberryfields-plugin-python.readthedocs.io/en/latest/.

Features

This plugin provides the classes BraketEngine for submitting photonic circuits to Amazon Braket and BraketJob for tracking the status of the Braket task.

BraketEngine and BraketJob have the same interfaces as RemoteEngine in Strawberry Fields and Job in the Xanadu Cloud Client, respectively, and can be used as drop-in replacements:

from braket.strawberryfields_plugin import BraketEngine

eng = BraketEngine("arn:aws:braket:us-east-1::device/qpu/xanadu/Borealis")
result = eng.run(prog, shots=1000)  # Synchronous, returns sf.Result
job = eng.run_async(prog, shots=1000)  # Asychronous, returns BraketJob
print(job.status)

Installation

Before you begin working with the Amazon Braket Strawberry Fields Plugin, make sure that you installed or configured the following prerequisites:

  • Download and install Python 3.7.2 or greater. If you are using Windows, choose the option Add Python to environment variables before you begin the installation.

  • Make sure that your AWS account is onboarded to Amazon Braket, as per the instructions here.

  • Download and install Strawberry Fields:

    pip install strawberryfields

You can then install the latest release of the Strawberry Fields-Braket plugin as follows:

pip install amazon-braket-strawberryfields-plugin

You can also install the development version from source by cloning this repository and running a pip install command in the root directory of the repository:

git clone https://github.com/aws/amazon-braket-strawberryfields-plugin-python.git
cd amazon-braket-strawberryfields-plugin-python
pip install .

You can check your currently installed version of amazon-braket-strawberryfields-plugin with pip show:

pip show amazon-braket-strawberryfields-plugin

or alternatively from within Python:

from braket import strawberryfields_plugin
strawberryfields_plugin.__version__

Tests

Make sure to install test dependencies first:

pip install -e "amazon-braket-strawberryfields-plugin-python[test]"

Unit tests

Run the unit tests using:

tox -e unit-tests

To run an individual test:

tox -e unit-tests -- -k 'your_test'

To run linters and unit tests:

tox

Integration tests

To run the integration tests, set the AWS_PROFILE as explained in the amazon-braket-sdk-python README:

export AWS_PROFILE=Your_Profile_Name

Run the integration tests with:

tox -e integ-tests

To run an individual integration test:

tox -e integ-tests -- -k 'your_test'

Documentation

To build the HTML documentation, run:

tox -e docs

The documentation can then be found in the doc/build/documentation/html/ directory.

Contributing

We welcome contributions - simply fork the repository of this plugin, and then make a pull request containing your contribution. All contributers to this plugin will be listed as authors on the releases.

We also encourage bug reports, suggestions for new features and enhancements, and even links to cool projects or applications built with the plugin.

Support

If you are having issues, please let us know by posting the issue on our Github issue tracker, or by asking a question in the forum.

License

This project is licensed under the Apache-2.0 License.

Metadata

Release files for amazon-braket-strawberryfields-plugin 1.1.0.post1

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

Source distribution (sdist)

Source distribution for amazon-braket-strawberryfields-plugin 1.1.0.post1
File Size Uploaded
amazon-braket-strawberryfields-plugin-1.1.0.post1.tar.gz 12.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for amazon-braket-strawberryfields-plugin 1.1.0.post1
File Interpreter ABI Platform
amazon_braket_strawberryfields_plugin-1.1.0.post1-py3-none-any.whl Python 3 none any Details

Total release size: 26.3 kB

Release files / amazon-braket-strawberryfields-plugin-1.1.0.post1.tar.gz

Download URL amazon-braket-strawberryfields-plugin-1.1.0.post1.tar.gz
Size 12.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c42733f643bc4a200e9858ca02f6f8d94d54ea850a6fc70949a0a473d66e2a90
BLAKE2b-256 checksum
How to use checksums
4ad9c93a464feacac23298aa071daa3a5b0c9756f31f7c29e9d61418653e9635
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / amazon_braket_strawberryfields_plugin-1.1.0.post1-py3-none-any.whl

Download URL amazon_braket_strawberryfields_plugin-1.1.0.post1-py3-none-any.whl
Size 14.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6c17105f18c3a4e78a3eb397401216d44be01a1ed0f4530e133f7fe1e8527a65
BLAKE2b-256 checksum
How to use checksums
fa403cb4eb1e029e85261aadacdc8a13938c58832e0929ea52bae98d1f88b668
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release history Release notifications | RSS feed

This release

1.1.0.post1 This release

2 release files

1.1.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.0

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