qiskit.providers.ibmq.IBMQBackend.run¶
-
IBMQBackend.
run
(circuits, job_name=None, job_share_level=None, job_tags=None, experiment_id=None, header=None, shots=None, memory=None, qubit_lo_freq=None, meas_lo_freq=None, schedule_los=None, meas_level=None, meas_return=None, memory_slots=None, memory_slot_size=None, rep_time=None, rep_delay=None, init_qubits=None, parameter_binds=None, use_measure_esp=None, **run_config)[source]¶ Run on the backend.
If a keyword specified here is also present in the
options
attribute/object, the value specified here will be used for this run.- Parameters
circuits (
Union
[QasmQobj
,PulseQobj
,QuantumCircuit
,Schedule
,List
[Union
[QuantumCircuit
,Schedule
]]]) – An individual or a list ofQuantumCircuit
orSchedule
objects to run on the backend. AQasmQobj
or aPulseQobj
object is also supported but is deprecated.job_name (
Optional
[str
]) – Custom name to be assigned to the job. This job name can subsequently be used as a filter in thejobs()
method. Job names do not need to be unique.job_share_level (
Optional
[str
]) –Allows sharing a job at the hub, group, project, or global level. The possible job share levels are:
global
,hub
,group
,project
, andnone
.global: The job is public to any user.
hub: The job is shared between the users in the same hub.
group: The job is shared between the users in the same group.
project: The job is shared between the users in the same project.
none: The job is not shared at any level.
If the job share level is not specified, the job is not shared at any level.
job_tags (
Optional
[List
[str
]]) – Tags to be assigned to the job. The tags can subsequently be used as a filter in thejobs()
function call.experiment_id (
Optional
[str
]) – Used to add a job to an “experiment”, which is a collection of jobs and additional metadata.following arguments are NOT applicable if a Qobj is passed in. (The) –
header (
Optional
[Dict
]) – User input that will be attached to the job and will be copied to the corresponding result header. Headers do not affect the run. This replaces the oldQobj
header.shots (
Optional
[int
]) – Number of repetitions of each circuit, for sampling. Default: 1024 ormax_shots
from the backend configuration, whichever is smaller.memory (
Optional
[bool
]) – IfTrue
, per-shot measurement bitstrings are returned as well (provided the backend supports it). For OpenPulse jobs, only measurement level 2 supports this option.qubit_lo_freq (
Optional
[List
[int
]]) – List of default qubit LO frequencies in Hz. Will be overridden byschedule_los
if set.meas_lo_freq (
Optional
[List
[int
]]) – List of default measurement LO frequencies in Hz. Will be overridden byschedule_los
if set.schedule_los (
Union
[List
[Union
[Dict
[PulseChannel
,float
],LoConfig
]],Dict
[PulseChannel
,float
],LoConfig
,None
]) – Experiment LO configurations, frequencies are given in Hz.meas_level (
Union
[int
,MeasLevel
,None
]) – Set the appropriate level of the measurement output for pulse experiments.meas_return (
Union
[str
,MeasReturnType
,None
]) –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).
- For
memory_slots (
Optional
[int
]) – Number of classical memory slots to use.memory_slot_size (
Optional
[int
]) – Size of each memory slot if the output is Level 0.rep_time (
Optional
[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 (
Optional
[float
]) – Delay between programs in seconds. Only supported on certain backends (ifbackend.configuration().dynamic_reprate_enabled=True
). If supported,rep_delay
will be used instead ofrep_time
and must be from the range supplied by the backend (backend.configuration().rep_delay_range
). Default is given bybackend.configuration().default_rep_delay
.init_qubits (
Optional
[bool
]) – Whether to reset the qubits to the ground state for each shot. Default:True
.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).use_measure_esp (
Optional
[bool
]) – Whether to use excited state promoted (ESP) readout for measurements which are the terminal instruction to a qubit. ESP readout can offer higher fidelity than standard measurement sequences. See here. Default:True
if backend supports ESP readout, elseFalse
. Backend support for ESP readout is determined by the flagmeasure_esp_enabled
inbackend.configuration()
.**run_config – Extra arguments used to configure the run.
- Return type
IBMQJob
- Returns
The job to be executed.
- Raises
IBMQBackendApiError – If an unexpected error occurred while submitting the job.
IBMQBackendApiProtocolError – If an unexpected value received from the server.
If an input parameter value is not valid. - If ESP readout is used and the backend does not support this.