Skip to main content

Commutator Studios Python SDK

PyPI Version Python Versions License

Commutator SDK is the official Python client for the Commutator Studios quantum ecosystem. It provides a seamless, developer-friendly interface to integrate quantum workloads, optimization engines, and identity management natively into your Python tech stack.

By connecting to the Centralized API Gateway (commutator.app), this SDK handles authentication, rate-limiting, and billing checks automatically, allowing you to focus on building quantum-accelerated applications.


Features

  • Quantum Fleet Management: Discover, list, and check the status of available quantum backends (e.g., ibm_berlin, ibmq_qasm_simulator).
  • Hardware & Algorithmic Recommendations: Interface directly with cs-optimizer to get smart recommendations for hardware and optimization levels (e.g., VQE) before you run your circuits.
  • Job Execution & Polling: Submit quantum circuits, execute jobs on actual quantum hardware, and download results natively into Python objects.
  • Standardized Error Handling: Detailed, structured exceptions (APIError, ValidationError, AuthenticationError) for predictable and easy debugging.
  • ...and more!

Installation

The SDK requires Python 3.11+. You can install it directly from PyPI using pip:

pip install commutator-sdk

Quick Start

Here is a simple example showing how to authenticate, create a job, execute a circuit, and fetch the results.

1. Authentication

You can authenticate using your API Key or Username/Password.

from commutator.client import CommutatorClient

# Initialize the client (Environment is auto-detected)
client = CommutatorClient(api_key="your_api_key_here")

2. Submitting a Quantum Job

Submit your quantum circuit JSON and execute it on a selected backend.

import json

# 1. Create the Job
job = client.create_job(
    name="My First VQE Run",
    algorithm="VQE",
    file_path="circuit.json"
)
job_id = job["id"]
print(f"Job created successfully: {job_id}")

# 2. Execute the Job
client.execute_job(
    job_id=job_id,
    backend="ibm_berlin",
    optimization_level=3
)
print("Job dispatched to the quantum backend!")

3. Optimizer Recommendations

Not sure which backend or optimization level to use? Ask the Recommendation Engine!

recommendations = client.optimizer.recommend(
    job_id="your_job_id",
    target_backends=["ibm_kingston", "ibm_brisbane"]  # Optional: omit to evaluate all fleet backends
)

print(f"Recommended Backend: {recommendations[0]['provider']}")

Error Handling & Exception Reference

When executing quantum simulation jobs, the SDK automatically inspects the API response errorCode and raises typed Python exceptions providing human-readable diagnostic remedies:

from commutator.client import CommutatorClient
from commutator.exceptions import (
    SimulationOOMError,
    SimulationTimeoutError,
    ProviderAuthenticationError,
    JobFailedError
)

client = CommutatorClient(api_key="your_api_key")

try:
    job_details = client.jobs.get(job_id="5bacd027-267d-4c8e-94c4-5348c48880b3")
except SimulationOOMError as e:
    print(f"❌ Memory Error [{e.error_code}]: {e.message}")
    print(f"💡 Actionable Remedy: {e.remedy}")
except SimulationTimeoutError as e:
    print(f"⏱️ Job Timed Out [{e.error_code}]: {e.message}")
    print(f"💡 Actionable Remedy: {e.remedy}")
except JobFailedError as e:
    print(f"⚠️ Job Execution Failed [{e.error_code}]: {e.message}")

Supported Exception Mapping

API errorCode Enum Raised SDK Exception Class Python Import Path
SIMULATION_OOM SimulationOOMError from commutator.exceptions import SimulationOOMError
SIMULATION_TIMEOUT SimulationTimeoutError from commutator.exceptions import SimulationTimeoutError
PROVIDER_AUTH_FAILED ProviderAuthenticationError from commutator.exceptions import ProviderAuthenticationError
OPTIMIZATION_DIVERGED OptimizationDivergedError from commutator.exceptions import OptimizationDivergedError
Fallback / System Faults JobFailedError from commutator.exceptions import JobFailedError

Advanced Usage

For comprehensive documentation, including detailed API reference, Identity Management (list_api_keys, get_audit_logs), and advanced configuration options, please refer to the official Commutator Studios Documentation.

License

Copyright © 2026 Commutator Studios GmbH. All rights reserved.

Download files

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

Source Distribution

commutator_sdk-0.2.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

commutator_sdk-0.2.0-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

File details

Details for the file commutator_sdk-0.2.0.tar.gz.

File metadata

  • Download URL: commutator_sdk-0.2.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for commutator_sdk-0.2.0.tar.gz
Algorithm Hash digest
SHA256 312078082defb28cb84c170dfe77070b00f514baca71aeb5d11242ed7cf4fe33
MD5 b048c0dbfc0ad9c9cdecf4b806e20576
BLAKE2b-256 40e099d33b296a0f34f616cdf6cb6d402ba62d07ed8471dfa610df3712a90bed

See more details on using hashes here.

File details

Details for the file commutator_sdk-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: commutator_sdk-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 13.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.12.14

File hashes

Hashes for commutator_sdk-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 edcf97231483cb34c1cf8c0020b3cf81fb464ce8f30a50334b90d7fd74fb1714
MD5 64327742f4b4b676d05401de4aafb7ee
BLAKE2b-256 0908b6d4ff95eb9005b1c7227b97ed46bd713ccdab76ef5e5126a425c9c1cfcb

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

This release

0.2.0 This release

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.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