uniqc.task.adapters.qiskit_adapter module#
Qiskit backend adapter.
Translates OriginIR circuits to Qiskit QuantumCircuit objects and submits
via the qiskit / qiskit_ibm_provider packages. No raw REST calls.
- Installation:
pip install unified-quantum[qiskit]
- class uniqc.task.adapters.qiskit_adapter.QiskitAdapter(proxy=None)[source]#
Bases:
QuantumAdapterAdapter for IBM Quantum backends via Qiskit.
- Proxy Configuration:
Proxies can be passed via the proxy parameter: - Dict with ‘http’ and/or ‘https’ keys - Or a single proxy URL string for both protocols
- Raises:
MissingDependencyError – If qiskit or qiskit_ibm_provider is not installed.
- Parameters:
Example
>>> adapter = QiskitAdapter(proxy={ ... "http": "http://proxy.example.com:8080", ... "https": "https://proxy.example.com:8080" ... })
- is_available()[source]#
Check if the Qiskit adapter is available (IBM provider initialized).
- Returns:
True if the IBM provider was successfully initialized.
- Return type:
- query_sync(taskid, interval=2.0, timeout=60.0, retry=5)[source]#
Poll task status until completion or timeout.
- submit_batch(circuits, *, shots=1000, **kwargs)[source]#
Submit multiple circuits as a batch. Returns a single job ID.
- translate_circuit(originir)[source]#
Translate an OriginIR string to a Qiskit QuantumCircuit.
The conversion path is OriginIR → QASM string → Qiskit QuantumCircuit. This is the most compatible route given the current API surface of
uniqc.circuit_builder.qcircuit(which exposes QASM export but not a direct Qiskit-native constructor). An optimised direct path can be evaluated in a future iteration if needed.- Parameters:
originir (str)
- Return type:
qiskit.QuantumCircuit