Skip to main content

QDSV Bridge

PyPI Python License: MIT Status Qiskit Ecosystem

Source/package version: 0.5.1. See the PyPI badge for publication status.

QDSV Bridge is a lightweight Python client SDK that converts supported semantic problem specifications into executable OpenQASM/Qiskit-compatible circuit artifacts or validated expert construction packages.

Circuit delivery is conditional on capability and resource validation. Bridge does not execute circuits, generate arbitrary circuits or embed precomputed answers.

Status And Scope

QDSV Bridge is a Developer Preview for bounded, problem-first circuit construction. The public service is provided without an SLA and may change or be temporarily unavailable.

Bridge validates the semantic-to-circuit construction path and reports the resources required by the generated artifact. It does not validate the user's domain assumptions, execute on a simulator or QPU, choose a provider, manage credentials or interpret experimental results.

The public SDK supports Python 3.9 and later. Before 1.0, minor releases may introduce contract changes; deprecations and migration notes are recorded in the changelog.

Installation

Install the client:

pip install qdsv-bridge

Install the optional Qiskit inspection dependencies:

pip install "qdsv-bridge[qiskit]"

The Qiskit extra is capped at qiskit>=2,<3 to preserve compatibility with the currently tested Qiskit major version.

Quickstart

The public Developer Preview does not require an API key:

from qdsv_bridge import QDSVBridgeClient

client = QDSVBridgeClient()

spec = {
    "state_space": {
        "kind": "finite_candidates",
        "candidate_count": 2,
        "candidate_id": "candidate",
    },
    "signals": ["eligibility_score"],
    "prepared_candidates": [
        {"eligibility_score": 0},
        {"eligibility_score": 1},
    ],
    "goal": {
        "kind": "marking",
        "threshold": 1,
        "criteria": [
            {"signal": "eligibility_score", "importance": 1, "priority": 1}
        ],
    },
    "target": {"format": "qasm3", "backend_family": "qiskit"},
    "limits": {"max_qubits": 8, "max_depth": 160},
}

result = client.generate(spec)

print(result["status"])
print(result["artifact"]["format"])
print(result["artifact"]["content"])
print(result["construction_verification"])

When materialization succeeds within the supported capability and resource limits, generate() returns the completed circuit and loading guidance. Otherwise the SDK raises an explicit HTTP error; it does not return a substitute circuit.

Delivery Modes

Bridge uses one specification and offers four output depths:

Method Intended user Result
generate() A user who needs the quantum core without designing it Completed circuit, loading guidance, measurement meaning, resources and construction evidence, when materialization succeeds
build() A developer integrating QASM or Qiskit Editable circuit artifact, public construction summaries, resources and digests, when materialization succeeds
prepare() An expert designing a custom circuit Validated construction requirements and capability gaps without forcing a final circuit
evaluate() An expert reviewing a construction Materialization evidence and clearly labeled construction alternatives

evaluate() evaluates construction evidence. It does not execute the circuit on a simulator or QPU and does not compare runtime results.

Start By User Type

All four modes reuse the spec from the Quickstart. Users can begin with one call and move to a deeper delivery mode without redefining the problem.

Basic user - receive the completed quantum core and loading guidance:

result = client.generate(spec)
print(result["artifact"]["content"])
print(result["ready_to_run_example"])

Intermediate developer - receive editable QASM/Qiskit artifacts and digests:

package = client.build(spec)
print(package["editable_artifacts"]["artifact_content"])
print(package["editable_artifacts"]["oracle_spec"])
print(package["digests"])

Expert constructor - receive the validated construction package without forcing a circuit:

prepared = client.prepare(spec)
inputs = prepared["expert_inputs"]
print(inputs["construction_status"])
print(inputs["relevant_variables"])
print(inputs["missing_capabilities"])
print(inputs["encoding_suggestions"])

Expert evaluator - review construction evidence and labeled alternatives without executing the circuit:

review = client.evaluate(spec)
print(review["construction_verification"])
print(review["materialization_evidence"])
print(review["construction_alternatives"])
print(review["comparison"]["comparative_execution_performed"])

Outputs And Outcomes

Supported public artifact targets are:

Target Output
qasm2 Completed OpenQASM 2 circuit
qasm3 Completed OpenQASM 3 circuit
qiskit_blueprint Python loader generated from the completed canonical QASM circuit; it is not a partial circuit blueprint
oracle_spec Public expert construction contract
problem_spec Normalized public problem specification
ir Stable public summary, not the private compiler representation

Circuit-oriented targets are returned only when the full supported construction succeeds. Typical outcomes are:

Outcome SDK behavior
Materialized circuit Successful generate() or build() response with artifact, resources and evidence
Expert construction package Successful prepare() response without a forced circuit
Unsupported capability QDSVBridgeHTTPError with the API error payload
Resource limit exceeded QDSVBridgeHTTPError with the required resource details
Invalid specification QDSVBridgeHTTPError with validation details
Transport or service failure QDSVBridgeAPIError

Handle API rejections explicitly:

from qdsv_bridge import QDSVBridgeAPIError, QDSVBridgeHTTPError

try:
    result = client.generate(spec)
except QDSVBridgeHTTPError as error:
    print(error.status_code)
    print(error.payload)
except QDSVBridgeAPIError as error:
    print(f"Bridge service unavailable: {error}")

The current operation catalog and service limits are available from:

catalog = client.capabilities()

For the detailed operation contract and ScoreModel v2 capabilities, see the technical documentation and ScoreModel tutorial.

Limits And Privacy

Bridge accepts compact semantic specifications and bounded prepared numeric inputs. It is not a bulk-data service and does not accept raw datasets or hardware-execution requests.

Public Preview limits are configurable and include payload, compilation time, artifact size, qubit and depth ceilings. A semantically valid problem may still be rejected when its materialized circuit exceeds the active resource limits. Query client.capabilities() for the current deployment contract.

Do not submit personal, confidential, regulated or security-sensitive data to the public preview. The public preview provides no contractual retention guarantee. Use a private deployment for sensitive workloads and review the security policy before reporting a vulnerability.

Default public endpoint:

client = QDSVBridgeClient()  # https://api.qdsv.cloud/api

Private/local endpoint for an existing QDSV Docker deployment:

client = QDSVBridgeClient.local()  # http://localhost:18080/api

Tested Compatibility

Component Tested/supported boundary
Python >=3.9
Qiskit SDK >=2,<3
Qiskit Aer >=0.17,<0.18
Qiskit QASM 3 importer >=0.5,<0.7
OpenQASM QASM 2 and QASM 3 artifacts generated by Bridge
Amazon Braket SDK Optional OpenQASM conversion tested with LocalSimulator; not version-pinned and not an official Amazon Braket integration

Bridge does not provide managed IBM Quantum or Amazon Braket hardware execution.

Integrations And Examples

The notebooks cover problem-first circuit delivery, expert construction inputs, Qiskit inspection and the tested Braket LocalSimulator conversion flow.

Reports

Bridge can render the same public construction evidence as JSON, Markdown or HTML:

report = client.report(spec, mode="build", format="markdown")
print(report["content"])

Reports identify the accepted specification, delivered artifact, warnings, resource evidence and digests. They do not claim simulator or hardware execution.

Support And Security

License

The client SDK, examples, documentation and tests in this repository are licensed under the MIT License.

QDSV, QIntent and Qruba names and marks belong to their respective owners. The MIT License does not grant trademark rights.

Download files

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

Source Distribution

qdsv_bridge-0.5.1.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

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

qdsv_bridge-0.5.1-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file qdsv_bridge-0.5.1.tar.gz.

File metadata

  • Download URL: qdsv_bridge-0.5.1.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for qdsv_bridge-0.5.1.tar.gz
Algorithm Hash digest
SHA256 88e46968412d229d607214f04c452a9e159ee6c6631793a3dec67ea184ff35c1
MD5 ade071eb0f8cebe8d06199977c129fd5
BLAKE2b-256 53e76f41bb243635663b3a86d3a72db819bac9281db840bbd0c85efce6a72974

See more details on using hashes here.

File details

Details for the file qdsv_bridge-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: qdsv_bridge-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for qdsv_bridge-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8003b8e8ee13c5df84b440777fea718f4dea6757ded02c3f929f88bde61c6330
MD5 a88c489a54cabd2cb1cb0507364a7245
BLAKE2b-256 69d9a9e716dde94aa9475025662040eaadb5bed9e4f847c723e6d4644c3586f4

See more details on using hashes here.

Supported by

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