Skip to main content

List Experiments

Haiqu.list_experiments(widget=True, pandas=False)

List available experiments.
  • Parameters:
    • widget (bool) — If True (default), render the list as a Jupyter widget and return None.
    • pandas (bool) — If True, return the list as a Pandas DataFrame instead of a Python list. Defaults to False.
  • Returns: Experiments in a Python list or Pandas DataFrame, or None.
  • Return type: list | pandas.DataFrame | None

Examples

>>> haiqu.list_experiments()  # in Jupyter notebook
>>> haiqu.list_experiments(widget=False)
[Experiment 'Example Experiment', Experiment 'Another Experiment']

List Circuits

Haiqu.list_circuits(experiment_name=None, experiment_id=None, circuit_ids=None, job_type=None, limit=10, widget=True, pandas=False)

List recent circuits. The circuits are filtered by experiment (name or ID, with the current experiment used if neither is specified), and limited to only the most recent few (10 by default).
  • Parameters:
    • experiment_name (str | None) — Return circuits for the provided experiment name.
    • experiment_id (str | None) — Return circuits for the provided experiment ID.
    • circuit_ids (list *[*str ] | None) — If not None, return only circuits with these IDs.
    • job_type (JobType | None) — Return circuits for the provided job type in the experiment..
    • limit (int) — Limit the number of returned circuits.
    • widget (bool) — If True (default), render the list as a Jupyter widget and return None.
    • pandas (bool) — If True, return the list as a Pandas DataFrame instead of a Python list. Defaults to False.
  • Returns: Circuits in a Python list or Pandas DataFrame, or None.
  • Return type: list | pandas.DataFrame | None

Examples

Display a table with a few of the most recent circuits:
>>> haiqu.list_circuits()  # in Jupyter notebook
Get the most recent circuit in a specific experiment:
>>> haiqu.list_circuits("Example Experiment", limit=1, widget=False)
[Haiqu Circuit 'circuit-123']
Get the most recent circuit for compression job type:
>>> circuits = haiqu.list_circuits(job_type=haiqu.JobType.COMPRESSION, widget=False)
Get the circuits for run job type:
>>> circuits = haiqu.list_circuits(job_type=haiqu.JobType.RUN, widget=False)
Filter circuits by their IDs:
>>> filtered_circuits = haiqu.list_circuits(circuit_ids=["circ-123", "circ-456"], widget=False)

List Jobs

Haiqu.list_jobs(experiment_id=None, job_type=None, circuit=None, limit=10, widget=True, pandas=False)

List recent jobs, display them as a Jupyter widget (default) or return a Python list with job items, or a Pandas DataFrame with job data. Each job item contains the information about the job, input parameters, circuits, and results if the job is completed. For example, for a run job, the item will contain the information about the circuit that was run, the device it was run on, and the results of the execution if available. For transpilation jobs, the item will contain the original circuit(s), the target device, and the transpiled circuit(s). For compression jobs, the item will contain the original circuit, the compression type, and the compressed circuit. The jobs are filtered by experiment ID (with the current experiment used if not specified) and job type, and limited to only the most recent few (10 by default). Jobs can also be optionally filtered by circuit.
  • Parameters:
    • experiment_id (str | None) — Return jobs for the provided experiment ID. If None, return jobs for the current experiment.
    • job_type (JobType | None) — Filter jobs by type. Only jobs of the provided type will be returned. If None, jobs of all types will be returned.
    • circuit (CircuitModel | str | None) — If not None, only show the jobs related to the given circuit (as a CircuitModel or circuit ID).
    • limit (int) — Limit the number of returned jobs.
    • widget (bool) — If True (default), render the list as a Jupyter widget and return None.
    • pandas (bool) — If True, return the list as a Pandas DataFrame instead of a Python list. Defaults to False.
  • Returns: Jobs in a Python list or Pandas DataFrame, or None if widget is rendered.
  • Return type: list | pandas.DataFrame | None

Examples

Display a table with a few of the most recent jobs:
>>> haiqu.list_jobs()  # will display a widget in Jupyter notebook
Get Python list of the most recent jobs for the current experiment:
>>> jobs = haiqu.list_jobs(widget=False)
[RunJobModel 'Run job ABC',
 TranspilationJobModel 'Transpilation of 2 circuit(s) to device fake_torino',
 StateCompressionJobModel 'State Compression of Circuit-123',
 ...
]
Get only state compression jobs for the current experiment:
>>> jobs = haiqu.list_jobs(
...     job_type=haiqu.JobType.COMPRESSION,
...     widget=False
... )
Get only transpilation jobs for the current experiment:
>>> jobs = haiqu.list_jobs(
...     job_type=haiqu.JobType.TRANSPILATION,
...     widget=False
... )
Get the most recent run job(s) for a specific circuit for a specific experiment:
>>> haiqu.list_jobs(
...     experiment_id="exp-12345678-1234-5678-1234-567812345678",
...     job_type=haiqu.JobType.RUN,
...     circuit="circ-abcdefab-cdef-abcd-efab-cdefabcdefab",
...     widget=False,
... )
[RunJobModel 'Run job 12345678-abcd-efab-1234-5678abcdefab'
 ...
]

List Devices

Haiqu.list_devices(widget=True, pandas=False)

List devices for circuit transpilation and execution. Note that devices in the list may at times be offline or otherwise unavailable.
  • Parameters:
    • widget (bool) — If True (default), render the list as a Jupyter widget and return None.
    • pandas (bool) — If True, return the list as a Pandas DataFrame instead of a Python list. Defaults to False.
  • Returns: List of devices, or None.
  • Return type: list | pandas.DataFrame | None

Examples

>>> haiqu.list_devices()  # in Jupyter notebook
>>> haiqu.list_devices(widget=False)
[DeviceModel(...), DeviceModel(...), ...]

Simulators

Haiqu.list_simulators(widget=True, pandas=False)

List available simulators for circuit execution.
  • Parameters:
    • widget (bool) — If True (default), render the list as a Jupyter widget and return None.
    • pandas (bool) — If True, return the list as a Pandas DataFrame instead of a Python list. Defaults to False.
  • Returns: List of simulator names, or None.
  • Return type: list | pandas.DataFrame | None

Examples

>>> haiqu.list_simulators()  # in Jupyter notebook
>>> haiqu.list_simulators(widget=False)
[DeviceModel(...), DeviceModel(...), ...]