qpandalite.task.ibm package#

Submodules#

qpandalite.task.ibm.task module#

IBM Quantum backend for task submission and querying via Qiskit.

Submits quantum circuits (OriginIR -> Qiskit QuantumCircuit) to IBM Quantum devices using the qiskit and qiskit_ibm_provider packages. No raw REST calls — all communication goes through the qiskit SDK.

Configuration is loaded from environment variables (preferred) or from ibm_online_config.json (deprecated fallback):

IBM_TOKEN: IBM Quantum API token

Public API:
  • submit_task — Submit circuit(s) for execution on IBM Quantum.

  • query_by_taskid — Query task status by job ID.

  • query_by_taskid_sync — Blocking query with polling.

  • query_all_tasks — Query all locally recorded tasks.

qpandalite.task.ibm.task.query_all_task(savepath=None)[源代码]

Deprecated — use query_all_tasks() instead.

返回类型:

tuple[int, int]

qpandalite.task.ibm.task.query_all_tasks(savepath=None)[源代码]

Query all locally recorded IBM Quantum tasks and cache results.

返回类型:

tuple[int, int]

qpandalite.task.ibm.task.query_by_taskid(taskid)[源代码]

Query task status by job ID (non-blocking).

Supports a single job ID or a list. Results are aggregated; overall status reflects the worst case.

参数:

taskid (List[str] | str)

返回类型:

dict

qpandalite.task.ibm.task.query_by_taskid_sync(taskid, interval=2.0, timeout=60.0, retry=5)[源代码]

Query task status by job ID (blocking) until completion or timeout.

参数:
  • taskid (List[str] | str)

  • interval (float)

  • timeout (float)

  • retry (int)

返回类型:

list

qpandalite.task.ibm.task.submit_task(circuit, task_name=None, tasktype=None, chip_id=None, shots=1000, circuit_optimize=True, measurement_amend=False, auto_mapping=False, specified_block=None, savepath=None, **kwargs)[源代码]

Submit one or more quantum circuits for execution on IBM Quantum.

Accepts OriginIR strings, Qiskit QuantumCircuit objects, or QASM strings. All circuit types are translated to Qiskit QuantumCircuit internally.

参数:
  • circuit -- OriginIR string, Qiskit QuantumCircuit, QASM string, or list.

  • task_name (str | None) -- Human-readable task name.

  • tasktype -- Reserved (unused).

  • chip_id (str | None) -- IBM backend name.

  • shots (int) -- Number of measurement shots.

  • circuit_optimize (bool) -- Enable transpiler optimization (level 3).

  • measurement_amend (bool) -- Reserved (unused).

  • auto_mapping (bool) -- Qubit mapping strategy (True=sabre, list=explicit, False=default).

  • specified_block -- Reserved (unused).

  • savepath -- Directory for local task records.

返回:

The IBM Quantum job ID.

返回类型:

str

Module contents#

IBM Quantum backend via Qiskit.