uniqc.backend_adapter.task package¶
Subpackages¶
- uniqc.backend_adapter.task.adapters package
- Submodules
- uniqc.backend_adapter.task.adapters.base module
- uniqc.backend_adapter.task.adapters.dummy_adapter module
- uniqc.backend_adapter.task.adapters.ibm_adapter module
- uniqc.backend_adapter.task.adapters.originq_adapter module
- uniqc.backend_adapter.task.adapters.qiskit_adapter module
- uniqc.backend_adapter.task.adapters.quafu_adapter module
- uniqc.backend_adapter.task.adapters.quark_adapter module
- Module contents
- Submodules
Submodules¶
- uniqc.backend_adapter.task.normalizers module
- uniqc.backend_adapter.task.optional_deps module
- uniqc.backend_adapter.task.options module
- uniqc.backend_adapter.task.persistence module
- uniqc.backend_adapter.task.result_types module
DryRunResultUnifiedResultUnifiedResult.backend_nameUnifiedResult.countsUnifiedResult.error_messageUnifiedResult.execution_timeUnifiedResult.from_counts()UnifiedResult.from_probabilities()UnifiedResult.get()UnifiedResult.get_expectation()UnifiedResult.items()UnifiedResult.keys()UnifiedResult.platformUnifiedResult.probabilitiesUnifiedResult.raw()UnifiedResult.raw_resultUnifiedResult.shotsUnifiedResult.task_idUnifiedResult.to_dict()UnifiedResult.to_json_dict()UnifiedResult.values()
- uniqc.backend_adapter.task.store module
- Schema versioning (best practices)
TaskInfoTaskShardTaskStatusTaskStoreTaskStore.aggregate_status()TaskStore.cache_dirTaskStore.clear_all()TaskStore.clear_completed()TaskStore.count()TaskStore.db_pathTaskStore.delete()TaskStore.delete_shards()TaskStore.find_uniqc_id_by_platform_id()TaskStore.get()TaskStore.get_shard_by_platform_id()TaskStore.get_shards()TaskStore.list()TaskStore.save()TaskStore.save_shard()
generate_uniqc_task_id()is_uniqc_task_id()
Module contents¶
Quantum computing task management module.
This package provides a unified interface for submitting and querying quantum computing tasks across multiple backend platforms:
originq— Origin Quantum Cloud (本源量子云) via pyqpanda3.quafu— BAQIS ScQ quantum cloud platform (Quafu).ibm— IBM Quantum via Qiskit Runtime.dummy— Local C++ simulator (no network, no credentials needed).
Public API (from uniqc.backend_adapter.task_manager):
submit_task— Submit a single circuit for execution.submit_batch— Submit multiple circuits as a batch.dry_run_task— Validate a circuit offline without making any network calls. Checks gate compatibility, qubit count limits, and shots limits before submitting. Always run a dry-run before submitting. A dry-run success followed by an actual submission failure is a critical bug — please report it.dry_run_batch— Validate multiple circuits offline.query_task— Query task status by ID.wait_for_result— Poll until a task completes or times out.list_tasks,get_task,save_task— Cache management.
CLI shortcut:
uniqc submit circuit.originir --backend quafu:ScQ-P18 --dry-run
Python example:
from uniqc.backend_adapter.task_manager import dry_run_task, submit_task
from uniqc.circuit_builder import Circuit
circuit = Circuit()
circuit.h(0)
circuit.measure(0)
# Validate before submitting
result = dry_run_task(circuit, backend='quafu:ScQ-P18', shots=1000)
if result.success:
task_id = submit_task(circuit, backend='quafu:ScQ-P18', shots=1000)