Zum Hauptinhalt springen
Noch nicht übersetzt

Diese Seite wurde noch nicht übersetzt. Sie sehen die englische Originalversion.

Introduction to options

You can pass options to primitives to customize them to meet your needs. This section focuses on Qiskit Runtime primitive options. While the interface of the primitives' run() method is common across all implementations, their options are not. Consult the corresponding API references for information about the qiskit.primitives and qiskit_aer.primitives options.

Overview​

Structure​

When calling the primitives, you can pass in options by using an options class or a dictionary. Commonly-used options, such as resilience_level, are at the first level. Other options are grouped into different categories, such as execution. See the Set primitive options section for full details.

Defaults​

If you do not specify a value for an option, it is given a special value of Unset and the server default value is used. Thus, the default value will be the same regardless of your code version.

The tables in the Options classes summary section lists the default values.

Set options​

Options can be defined before a primitive is constructed and passed to the primitive, which makes a copy of them. This can be done either as a nested dictionary, or by using the options classes. Additionally, after the primitive is constructed, its options can be changed. Use the workflow that works best for your application. See Specify options for full details.

Options classes summary​

  • Dynamical decoupling: Options for dynamical decoupling.
  • Environment: Execution environment options, such as the logging level to set and job tags to add.
  • Execution: Primitive execution options, including whether to initialize qubits and the repetition delay.
  • Resilience: Advanced options for configuring error mitigation methods such as measurement error mitigation, ZNE, and PEC.
  • Simulator: Simulator options, such as the basis gates, simulator seed, and coupling map. Applies to local testing mode only.
  • Twirling: Twirling options, such as whether to apply two-qubit gate twirling and the number of shots to run for each random sample.

Available options​

The following table documents options from the latest version of qiskit-ibm-runtime. To see older option versions, visit the qiskit-ibm-runtime API reference and select a previous version.

default_shots​

The total number of shots to use per circuit per configuration.

Choices: Integer >= 0

Default: None

default_shots API documentation

default_precision​

The default precision to use for any PUB or run() call that does not specify one.

Choices: Float > 0

Default: 0.015625 (1 / sqrt(4096))

default_precision API documentation

dynamical_decoupling​

Control dynamical decoupling error mitigation settings.

dynamical_decoupling API documentation

dynamical_decoupling.enable​

Choices: True, False

Default: False

dynamical_decoupling.extra_slack_distribution​

Choices: middle, edges

Default: middle

dynamical_decoupling.scheduling_method​

Choices: asap, alap Default: alap

dynamical_decoupling.sequence_type​

Choices: XX, XpXm, XY4 Default: XX

dynamical_decoupling.skip_reset_qubits​

Choices: True, False Default: False

environment​

environment API documentation

environment.callback​

Callable function that receives the Job ID and Job result.

Choices: None

Default: None

environment.job_tags​

List of tags.

Choices: None

Default: None

environment.log_level​

Choices: DEBUG, INFO, WARNING, ERROR, CRITICAL

Default: WARNING

environment.private​

Choices: True, False

Default: False

execution​

execution API documentation

execution.init_qubits​

Whether to reset the qubits to the ground state for each shot.

Choices: True, False

Default: True

execution.rep_delay​

The delay between a measurement and the subsequent quantum circuit.

Choices: Value in the range supplied by backend.rep_delay_range

Default: Given by backend.default_rep_delay

max_execution_time​

Choices: Integer number of seconds in the range [1, 10800]

Default: 10800 (3 hours)

max_execution_time API documentation

resilience​

Advanced resilience options to fine tune the resilience strategy.

resilience API documentation

resilience.layer_noise_learning​

Options for learning layer noise.

resilience.layer_noise_learning API documentation

resilience.layer_noise_learning.layer_pair_depths​

Choices: list[int] of 2-10 values in the range [0, 200]

Default: (0, 1, 2, 4, 16, 32)

resilience.layer_noise_learning.max_layers_to_learn​

Choices: None, Integer >= 1

Default: 4

resilience.layer_noise_learning.num_randomizations​

Choices: Integer >= 1

Default: 32

resilience.layer_noise_learning.shots_per_randomization​

Choices: Integer >= 1

Default: 128

resilience.layer_noise_model​

Choices: NoiseLearnerResult, Sequence[LayerError]

Default: None

resilience.measure_mitigation​

Choices: True, False

Default: True

resilience.measure_noise_learning​

Options for measurement noise learning.

resilience.measure_noise_learning API documentation

resilience.measure_noise_learning.num_randomizations​

Choices: Integer >= 1

Default: 32

resilience.measure_noise_learning.shots_per_randomization​

Choices: Integer, auto

Default: auto

resilience.pec_mitigation​

Choices: True, False

Default: False

resilience.pec​

Probabilistic error cancellation mitigation options.

resilience.pec API documentation

resilience.pec.max_overhead​

Choices: None, Integer >= 1

Default: 100

resilience.pec.noise_gain​

Choices: auto, float in the range [0, 1]

Default: auto

resilience.zne_mitigation​

Choices: True, False

Default: False

resilience.zne​

resilience.zne.amplifier​

Choices: gate_folding, gate_folding_front, gate_folding_back, pea

Default: gate_folding

resilience.zne.extrapolated_noise_factors​

Choices: List of floats

Default: [0, *noise_factors]

resilience.zne.extrapolator​

Choices: One or more of: exponential, linear, double_exponential, polynomial_degree_(1 <= k <= 7), fallback

Default: (exponential, linear)

resilience.zne.noise_factors​

Choices: List of floats; each float >= 1

Default: (1, 1.5, 2) for PEA, and (1, 3, 5) otherwise

resilience_level​

How much resilience to build against errors. Higher levels generate more accurate results at the expense of longer processing times.

Choices: 0, 1, 2

Default: 1

resilience_level API documentation

seed_estimator​

Choices: Integer

Default: None

seed_estimator

simulator​

Options to pass when simulating a backend

simulator API documentation

simulator.basis_gates​

Choices: List of basis gate names to unroll to

Default: The set of all basis gates supported by Qiskit Aer simulator

simulator.coupling_map​

Choices: List of directed two-qubit interactions

Default: None, which implies no connectivity constraints (full connectivity).

simulator.noise_model​

Choices: Qiskit Aer NoiseModel, or its representation

Default: None

simulator.seed_simulator​

Choices: Integer

Default: None

twirling​

Twirling options

twirling API documentation

twirling.enable_gates​

Choices: True, False

Default: False

twirling.enable_measure​

Choices: True, False

Default: True

twirling.num_randomizations​

Choices: auto, Integer >= 1

Default: auto

twirling.shots_per_randomization​

Choices: auto, Integer >= 1

Default: auto

twirling.strategy​

Choices: active, active-circuit, active-accum, all

Default: active-accum

experimental​

Experimental options, when available.

Feature compatibility​

Due to differences in the device compilation process, certain runtime features cannot be used together in a single job. Click the appropriate tab for a list of features that are incompatible with the selected feature:

Incompatible with:

  • Gate-folding ZNE
  • PEA
  • PEC
  • Dynamical decoupling

Other notes:

  • Can be used with gate twirling for non-conditional gates.
  • Compatible with fractional gates when using qiskit-ibm-runtime v0.42.0 or later.

Next steps​

Recommendations
Source: IBM Quantum docs — updated Apr 27, 2026
English version on doQumentation — updated May 7, 2026