Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

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.29.6.dev0-cp310-abi3-win_arm64.whl (7.1 MB view details)

Uploaded CPython 3.10+Windows ARM64

qdk-1.29.6.dev0-cp310-abi3-win_amd64.whl (7.6 MB view details)

Uploaded CPython 3.10+Windows x86-64

qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_x86_64.whl (6.9 MB view details)

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

qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_aarch64.whl (6.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.35+ ARM64

qdk-1.29.6.dev0-cp310-abi3-macosx_11_0_arm64.whl (5.7 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

qdk-1.29.6.dev0-cp310-abi3-macosx_10_12_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-win_arm64.whl.

File metadata

  • Download URL: qdk-1.29.6.dev0-cp310-abi3-win_arm64.whl
  • Upload date:
  • Size: 7.1 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.29.6.dev0-cp310-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 ac7a783f2ba4e452cbd9fbde0014f8738de71d8e42ad6f00c936e507d36605b3
MD5 37a97acc93a6093d128cc89d92d9707f
BLAKE2b-256 d966ad656d883e95ac6b0dec0507ae0e0bf9fd21a9295a43c8f38ae2629be277

See more details on using hashes here.

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: qdk-1.29.6.dev0-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 7.6 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.29.6.dev0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 df8b810e2552f46e4e79cb58b9795e2bb1da6a0e76fa013dfbbdf6553ca7b6ac
MD5 f35c2cf039c3493be3cfcc6e47b4eed1
BLAKE2b-256 2f93c0e1a86e96bb3d5f0cacba73123ff99557961affd496248b78d1020caf03

See more details on using hashes here.

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 9a0af69776c18824a08ae3545acb93e8124d807c1a03321ca94e20b8128fed9b
MD5 fa987a0c8136a4b66bf54faa9764647c
BLAKE2b-256 641b64ad010e4b7568ab593ff003a68c0fa68bfc553203b6ad2fcd80d214c4f6

See more details on using hashes here.

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for qdk-1.29.6.dev0-cp310-abi3-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 ad7367531d1c676cf2d4fc07ec8d4d4a199f9b14008ec6dcee3bd3759ebfa1aa
MD5 e0a3bad066d76d3d05ef2f4a3047d0c8
BLAKE2b-256 2ef6fbdbcca782cd884317f4e77cc53f04c7f5f81c7b038ec5d55e693d430704

See more details on using hashes here.

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for qdk-1.29.6.dev0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 05f82345e82c7276bb80a7532e452622e264abf16d53416243806d22badc8b91
MD5 f320dd6e5c6d9f714cc9857131a0a579
BLAKE2b-256 0bb835526693cc3cf60fbdfa20591d542bb17db64115affb5879bec5fee9bd89

See more details on using hashes here.

File details

Details for the file qdk-1.29.6.dev0-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for qdk-1.29.6.dev0-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6cd5c47e6b294ab56b259c09e296a910385defbd453e40395af509c3c986636a
MD5 76199c8c45d82d36494c4c60736aafcb
BLAKE2b-256 2ca3d0c32fa7a958f39429798a077342ee9a87944fb3096ae84d42a4f49e5429

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