Skip to main content

qdk

The Quantum Development Kit (QDK) provides a single, cohesive Python entry point for compiling, simulating, and estimating resources for quantum programs (Q# and OpenQASM), with optional extras for visualization, cloud workflows, and interoperability with Qiskit and Cirq.

Install

To install the core functionality, which include Q# & OpenQASM simulation, compilation, and resource estimation support:

pip install qdk

To include the Jupyter extra, which adds visualizations using Jupyter Widgets in the qdk.widgets submodule and syntax highlighting for Jupyter notebooks in the browser:

pip install "qdk[jupyter]"

To add the Azure Quantum extra, which includes functionality for working with the Azure Quantum service in the qdk.azure submodule:

pip install "qdk[azure]"

For Qiskit integration, which exposes Qiskit interop utilities in the qdk.qiskit submodule:

pip install "qdk[qiskit]"

For Cirq integration, which exposes Cirq interop utilities in the qdk.cirq submodule:

pip install "qdk[cirq]"

To easily install all the above extras:

pip install "qdk[all]"

Quick Start

from qdk import qsharp

result = qsharp.run("{ use q = Qubit(); H(q); return MResetZ(q); }", shots=100)
print(result)

To use widgets (installed via qdk[jupyter] extra):

from qdk.qsharp import eval, run
from qdk.widgets import Histogram

eval("""
operation BellPair() : Result[] {
    use qs = Qubit[2];
    H(qs[0]);CX(qs[0], qs[1]);
    MResetEachZ(qs)
}
""")
results = run("BellPair()", shots=1000, noise=(0.005, 0.0, 0.0))
Histogram(results)

Public API Surface

Submodules:

  • qdk.qsharp – Q# interpreter functions: init, eval, run, compile, circuit, estimate, dump_machine, dump_circuit, dump_operation, and related types.
  • qdk.openqasm – OpenQASM compilation and execution.
  • qdk.estimator – resource estimation utilities.
  • qdk.simulation – noise-aware simulation utilities: NeutralAtomDevice, NoiseConfig, run_qir, DensityMatrixSimulator, StateVectorSimulator, and related types.
  • qdk.code – dynamic namespace populated at runtime with user-defined Q# and OpenQASM callables.
  • qdk.qre – quantum resource estimation v3: estimate, Application, Architecture, ISA, ISATransform, and related types.
  • qdk.applications – domain-specific quantum applications (e.g. qdk.applications.magnets).
  • qdk.widgets – Jupyter widgets for visualization (requires the qdk[jupyter] extra).
  • qdk.azure – Azure Quantum service integration (requires the qdk[azure] extra).
  • qdk.qiskit – Qiskit interop: QSharpBackend, NeutralAtomBackend, and related types (requires the qdk[qiskit] extra).
  • qdk.cirq – Cirq interop: NeutralAtomSampler (requires the qdk[cirq] extra).

Top level exports

For convenience, the following helpers and types are also importable directly from the qdk root (e.g. from qdk import code, Result). Algorithm execution APIs (like run / estimate) remain under qdk.qsharp or qdk.openqasm.

Symbol Type Origin Description
code module qdk.code Exposes operations defined in Q# or OpenQASM
init function qdk.qsharp.init Initialize/configure the QDK interpreter (target profile, options).
set_quantum_seed function qdk.qsharp.set_quantum_seed Deterministic seed for quantum randomness (simulators).
set_classical_seed function qdk.qsharp.set_classical_seed Deterministic seed for classical host RNG.
dump_machine function qdk.qsharp.dump_machine Emit a structured dump of full quantum state (simulator dependent).
Result class qdk.qsharp.Result Measurement result token.
TargetProfile class qdk.qsharp.TargetProfile Target capability / profile descriptor.
StateDump class qdk.qsharp.StateDump Structured state dump object.
ShotResult class qdk.qsharp.ShotResult Multi-shot execution results container.
PauliNoise class qdk.qsharp.PauliNoise Pauli channel noise model spec.
DepolarizingNoise class qdk.qsharp.DepolarizingNoise Depolarizing noise model spec.
BitFlipNoise class qdk.qsharp.BitFlipNoise Bit-flip noise model spec.
PhaseFlipNoise class qdk.qsharp.PhaseFlipNoise Phase-flip noise model spec.
Context class qdk.Context Isolated Q# and OpenQASM interpreter context for independent sessions.

Telemetry

This library sends telemetry. Minimal anonymous data is collected to help measure feature usage and performance. All telemetry events can be seen in the source file telemetry_events.py.

To disable sending telemetry from this package, set the environment variable QDK_PYTHON_TELEMETRY=none

Support

For more information about the Microsoft Quantum Development Kit, visit https://aka.ms/qdk.

Contributing

Q# welcomes your contributions! Visit the Q# GitHub repository at [https://github.com/microsoft/qdk] to find out more about the project.

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

qdk-1.30.0-cp310-abi3-win_arm64.whl (7.3 MB view details)

Uploaded CPython 3.10+Windows ARM64

qdk-1.30.0-cp310-abi3-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.10+Windows x86-64

qdk-1.30.0-cp310-abi3-manylinux_2_35_x86_64.whl (7.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.35+ x86-64

qdk-1.30.0-cp310-abi3-manylinux_2_35_aarch64.whl (6.5 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.35+ ARM64

qdk-1.30.0-cp310-abi3-macosx_11_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

qdk-1.30.0-cp310-abi3-macosx_10_12_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file qdk-1.30.0-cp310-abi3-win_arm64.whl.

File metadata

  • Download URL: qdk-1.30.0-cp310-abi3-win_arm64.whl
  • Upload date:
  • Size: 7.3 MB
  • Tags: CPython 3.10+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: RestSharp/106.13.0.0

File hashes

Hashes for qdk-1.30.0-cp310-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 668ce1147125067ed66c3fc1a6519b071f1313aeeb55ed84fc93212db5b742f4
MD5 d3715a66d199868b7b7d62d3a3734961
BLAKE2b-256 921e4fb467d0bf08ef73cd1745c5577d90bcc8e6d43da9d307682c46c126e084

See more details on using hashes here.

File details

Details for the file qdk-1.30.0-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: qdk-1.30.0-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 7.8 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: RestSharp/106.13.0.0

File hashes

Hashes for qdk-1.30.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1665b0ccdf54dbfb5233d66aa7d123275f0d1fde0695b970efbbe2f9041cced5
MD5 ef351b60c83fc27de82ae9bed9b73ec0
BLAKE2b-256 17092b85744cc2b1ef3c67e1b9bf4f3e5f70c1e79ae351c58ca88e9b2e4d0c74

See more details on using hashes here.

File details

Details for the file qdk-1.30.0-cp310-abi3-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for qdk-1.30.0-cp310-abi3-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 652939129208e8862904bb4f70ceddd90a848d708c3419cd00ffc05e8a6da8c4
MD5 54c72dc17564aeec3c877d4541fe262c
BLAKE2b-256 578da5970bbb77aa192d42b93a0523dac998dc5f3accf47bbc3fbcf5829af945

See more details on using hashes here.

File details

Details for the file qdk-1.30.0-cp310-abi3-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for qdk-1.30.0-cp310-abi3-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 ab850dcaba67b1e493d03352f2924b55fdefb9444f90d9d5c5c670fab448c6eb
MD5 a2600eb34cdacd34b09c1e89a8ff1376
BLAKE2b-256 b79dc276db3e0cd14dbecaddda65c3dff6807f6c3a4d2ec568b9e262eace901e

See more details on using hashes here.

File details

Details for the file qdk-1.30.0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for qdk-1.30.0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b87e944240912fcbf83681f5235f5f8658e73a8494c54bef3b3eb066cec9457
MD5 9e30ecf970a95ce321702fa7645664c8
BLAKE2b-256 f9d6cf09d82b0cf36b6a21d869ba02dfb6ae54b3983be176d4e494e467a3f78e

See more details on using hashes here.

File details

Details for the file qdk-1.30.0-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for qdk-1.30.0-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fc39a4d9ec178f637c3fdb832c1f69595e8e08ac3b3db2b8d2a2d3b21cdd0a56
MD5 42f427a86a38bb99ce3a254b1f00923d
BLAKE2b-256 7b1401994e0c52c94e9655206b082b90c1bce58680edbc2464a1728b2b2861b8

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page