qiskit-documentation/docs/api/qiskit/0.26/qiskit.compiler.assemble.mdx

90 lines
6.0 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: assemble
description: API reference for qiskit.compiler.assemble
in_page_toc_min_heading_level: 1
python_api_type: function
python_api_name: qiskit.compiler.assemble
---
# qiskit.compiler.assemble
<Function id="qiskit.compiler.assemble" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.17/qiskit/compiler/assembler.py" signature="assemble(experiments, backend=None, qobj_id=None, qobj_header=None, shots=None, memory=False, max_credits=None, seed_simulator=None, qubit_lo_freq=None, meas_lo_freq=None, qubit_lo_range=None, meas_lo_range=None, schedule_los=None, meas_level=<MeasLevel.CLASSIFIED: 2>, meas_return=<MeasReturnType.AVERAGE: 'avg'>, meas_map=None, memory_slot_size=100, rep_time=None, rep_delay=None, parameter_binds=None, parametric_pulses=None, init_qubits=True, **run_config)">
Assemble a list of circuits or pulse schedules into a `Qobj`.
This function serializes the payloads, which could be either circuits or schedules, to create `Qobj` “experiments”. It further annotates the experiment payload with header and configurations.
**Parameters**
* **experiments** (`Union`\[`QuantumCircuit`, `List`\[`QuantumCircuit`], `Schedule`, `List`\[`Schedule`]]) Circuit(s) or pulse schedule(s) to execute
* **backend** (`Union`\[`Backend`, `BaseBackend`, `None`]) If set, some runtime options are automatically grabbed from `backend.configuration()` and `backend.defaults()`. If any other option is explicitly set (e.g., `rep_time`), it will override the backends. If any other options is set in the run\_config, it will also override the backends.
* **qobj\_id** (`Optional`\[`str`]) String identifier to annotate the `Qobj`
* **qobj\_header** (`Union`\[`QobjHeader`, `Dict`, `None`]) User input that will be inserted in `Qobj` header, and will also be copied to the corresponding Result header. Headers do not affect the run.
* **shots** (`Optional`\[`int`]) Number of repetitions of each circuit, for sampling. Default: 1024 or `max_shots` from the backend configuration, whichever is smaller
* **memory** (`Optional`\[`bool`]) If `True`, per-shot measurement bitstrings are returned as well (provided the backend supports it). For OpenPulse jobs, only measurement level 2 supports this option.
* **max\_credits** (`Optional`\[`int`]) Maximum credits to spend on job. Default: 10
* **seed\_simulator** (`Optional`\[`int`]) Random seed to control sampling, for when backend is a simulator
* **qubit\_lo\_freq** (`Optional`\[`List`\[`int`]]) List of default qubit LO frequencies in Hz. Will be overridden by `schedule_los` if set.
* **meas\_lo\_freq** (`Optional`\[`List`\[`int`]]) List of default measurement LO frequencies in Hz. Will be overridden by `schedule_los` if set.
* **qubit\_lo\_range** (`Optional`\[`List`\[`int`]]) List of drive LO ranges each of form `[range_min, range_max]` in Hz. Used to validate the supplied qubit frequencies.
* **meas\_lo\_range** (`Optional`\[`List`\[`int`]]) List of measurement LO ranges each of form `[range_min, range_max]` in Hz. Used to validate the supplied qubit frequencies.
* **schedule\_los** (`Union`\[`List`\[`Union`\[`Dict`\[[`PulseChannel`](qiskit.pulse.channels#pulsechannel "qiskit.pulse.channels.PulseChannel"), `float`], `LoConfig`]], `Dict`\[[`PulseChannel`](qiskit.pulse.channels#pulsechannel "qiskit.pulse.channels.PulseChannel"), `float`], `LoConfig`, `None`]) Experiment LO configurations, frequencies are given in Hz.
* **meas\_level** (`Union`\[`int`, `MeasLevel`]) Set the appropriate level of the measurement output for pulse experiments.
* **meas\_return** (`Union`\[`str`, `MeasReturnType`])
Level of measurement data for the backend to return.
**For `meas_level` 0 and 1:**
* `single` returns information from every shot.
* `avg` returns average measurement output (averaged over number of shots).
* **meas\_map** (`Optional`\[`List`\[`List`\[`Qubit`]]]) List of lists, containing qubits that must be measured together.
* **memory\_slot\_size** (`int`) Size of each memory slot if the output is Level 0.
* **rep\_time** (*int*) Time per program execution in seconds. Must be from the list provided by the backend (`backend.configuration().rep_times`). Defaults to the first entry.
* **rep\_delay** (*float*) Delay between programs in seconds. Only supported on certain backends (if `backend.configuration().dynamic_reprate_enabled=True`). If supported, `rep_delay` will be used instead of `rep_time` and must be from the range supplied by the backend (`backend.configuration().rep_delay_range`). Default is given by `backend.configuration().default_rep_delay`.
* **parameter\_binds** (`Optional`\[`List`\[`Dict`\[`Parameter`, `float`]]]) List of Parameter bindings over which the set of experiments will be executed. Each list element (bind) should be of the form \{Parameter1: value1, Parameter2: value2, …}. All binds will be executed across all experiments; e.g., if parameter\_binds is a length-n list, and there are m experiments, a total of m x n experiments will be run (one for each experiment/bind pair).
* **parametric\_pulses** (`Optional`\[`List`\[`str`]])
A list of pulse shapes which are supported internally on the backend. Example:
```python
['gaussian', 'constant']
```
* **init\_qubits** (`bool`) Whether to reset the qubits to the ground state for each shot. Default: `True`.
* **\*\*run\_config** Extra arguments used to configure the run (e.g., for Aer configurable backends). Refer to the backend documentation for details on these arguments.
**Return type**
[`Qobj`](qiskit.qobj.Qobj "qiskit.qobj.Qobj")
**Returns**
A `Qobj` that can be run on a backend. Depending on the type of input, this will be either a `QasmQobj` or a `PulseQobj`.
**Raises**
**QiskitError** if the input cannot be interpreted as either circuits or schedules
</Function>