Skip to main content

Amazon Braket Python Schemas

Latest Version Supported Python Versions Build status codecov Documentation Status

Amazon Braket Python Schemas is an open source library that contains the schemas for Braket, including:

  • intermediate representations (IR) for Amazon Braket quantum tasks and offers serialization and deserialization of those IR payloads. Think of the IR as the contract between the Amazon Braket SDK and Amazon Braket API for quantum programs.
  • schemas for the S3 results of each quantum task
  • schemas for the device capabilities of each device

Installation

Prerequisites

  • Python 3.11+

Steps

The preferred way to get Amazon Braket Python Schemas is by installing the Amazon Braket Python SDK, which will pull in the schemas. Follow the instructions in the README for setup.

However, if you only want to use the schemas, it can be installed on its own as follows:

pip install amazon-braket-schemas

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

git clone https://github.com/amazon-braket/amazon-braket-schemas-python.git
cd amazon-braket-schemas-python
pip install .

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

pip show amazon-braket-schemas

or alternatively from within Python:

>>> import braket._schemas as braket_schemas
>>> braket_schemas.__version__

Usage

OpenQASM (Open Quantum Assembly Language) is one type of IR. See below for its usage.

Serializing python structures

from braket.ir.openqasm import Program as OpenQASMProgram

program = OpenQASMProgram(source="OPENQASM 3.0; cnot $0, $1;")
print(program.json(indent=2))

"""
{
  "braketSchemaHeader": {
    "name": "braket.ir.openqasm.program",
    "version": "1"
  },
  "source": "OPENQASM 3.0; cnot $0, $1;",
  "inputs": null
}
"""

Deserializing into python structures

from braket.ir.openqasm import Program as OpenQASMProgram

openqasm_string = """
{
  "braketSchemaHeader": {
    "name": "braket.ir.openqasm.program",
    "version": "1"
  },
  "source": "OPENQASM 3.0; cnot $0, $1;"
}"""

program = OpenQASMProgram.parse_raw(openqasm_string)
print(program)

"""
braketSchemaHeader=BraketSchemaHeader(name='braket.ir.openqasm.program', version='1') source='OPENQASM 3.0; cnot $0, $1;' inputs=None
"""

Documentation

Detailed documentation, including the API reference, can be found on Read the Docs.

You can also generate the docs from source. First, install tox:

pip install tox

To build the Sphinx docs, run the following command in the root repo directory:

tox -e docs

You can then find the generated HTML files in build/documentation/html.

Testing

Make sure to install test dependencies first:

pip install -e "amazon-braket-schemas-python[test]"

To run the unit tests:

tox -e unit-tests

You can also pass in various pytest arguments to run selected tests:

tox -e unit-tests -- your-arguments

To run linters and doc generators and unit tests:

tox

For more information, please see pytest usage.

License

This project is licensed under the Apache-2.0 License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

amazon_braket_schemas-1.32.1.post0.tar.gz (60.7 kB view details)

Uploaded Source

Built Distribution

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

amazon_braket_schemas-1.32.1.post0-py3-none-any.whl (153.2 kB view details)

Uploaded Python 3

File details

Details for the file amazon_braket_schemas-1.32.1.post0.tar.gz.

File metadata

File hashes

Hashes for amazon_braket_schemas-1.32.1.post0.tar.gz
Algorithm Hash digest
SHA256 4659c1b7b2f392ac74baf32835b34bdcfc7fc2a7d4e06c2121dc436527ea3694
MD5 d3c57110d63ab6fa4556d5263f4f3ccb
BLAKE2b-256 839f33a5e8c8acba21741538795ed23f3d564606268143d726e0b9227826250f

See more details on using hashes here.

Provenance

The following attestation bundles were made for amazon_braket_schemas-1.32.1.post0.tar.gz:

Publisher: publish-to-pypi.yml on amazon-braket/amazon-braket-schemas-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file amazon_braket_schemas-1.32.1.post0-py3-none-any.whl.

File metadata

File hashes

Hashes for amazon_braket_schemas-1.32.1.post0-py3-none-any.whl
Algorithm Hash digest
SHA256 eae8c404ee21da8c01e18cc242a90032b0ed4fb3b104671ac3a05a8dee693d51
MD5 848e420856b9995b7ebdd4ea728ee8ba
BLAKE2b-256 4ab2ae8fb926e139b15d78c12f498a76cfc1b1bf3374c9dcf9c6e927d4f91e40

See more details on using hashes here.

Provenance

The following attestation bundles were made for amazon_braket_schemas-1.32.1.post0-py3-none-any.whl:

Publisher: publish-to-pypi.yml on amazon-braket/amazon-braket-schemas-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.32.1.post0 This release

2 files

1.32.1

2 files

1.32.0

2 files

1.31.0

2 files

1.30.0

2 files

1.29.2

2 files

1.29.1

2 files

1.29.0

2 files

1.28.0

2 files

1.27.0

2 files

1.26.1

2 files

1.26.0

2 files

1.25.0

2 files

1.24.2

2 files

1.24.1

2 files

1.24.0

2 files

1.23.3

2 files

1.23.2

2 files

1.23.1

2 files

1.23.0

2 files

1.22.4

2 files

1.22.3

2 files

1.22.2

2 files

1.22.1

2 files

1.22.0

2 files

1.21.4

2 files

1.21.3

2 files

1.21.2

2 files

1.21.1

2 files

1.21.0

2 files

1.20.2

2 files

1.20.1

2 files

1.19.1.post0

2 files

1.19.1

2 files

1.19.0

2 files

1.18.0

2 files

1.17.0

2 files

1.16.1

2 files

1.16.0

2 files

1.15.1

2 files

1.15.0

2 files

1.14.1.post0

2 files

1.14.1

2 files

1.14.0

2 files

1.13.1.post1

2 files

1.13.1.post0

2 files

1.13.1

2 files

1.13.0

2 files

1.12.0

2 files

1.11.0

2 files

1.10.2

2 files

1.10.1.post0

2 files

1.10.1

2 files

1.10.0

2 files

1.9.0

2 files

1.8.0

2 files

1.7.2

2 files

1.7.1

2 files

1.7.0

2 files

1.6.0

2 files

1.5.1

2 files

1.5.0

2 files

1.4.1

2 files

1.4.0.post0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0.post6

2 files

1.1.0.post5

2 files

1.1.0.post4

2 files

1.1.0.post3

2 files

1.1.0.post2

2 files

1.1.0.post1

2 files

1.1.0.post0

2 files

1.1.0

2 files

1.0.3

2 files

1.0.2.post2

2 files

1.0.2.post1

2 files

1.0.2.post0

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0.post1

2 files

1.0.0

2 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