Skip to main contentIBM Quantum Documentation


EstimatorOptions(*args, **kwargs)

GitHub(opens in a new tab)

Options for V2 Estimator.


  • default_precision – The default precision to use for any PUB or run() call that does not specify one. Each estimator pub can specify its own precision. If the run() method is given a precision, then that value is used for all PUBs in the run() call that do not specify their own. Default: 0.015625 (1 / sqrt(4096).

  • default_shots

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


    If set, this value overrides default_precision.

    A configuration is a combination of a specific parameter value binding set and a physical measurement basis. A physical measurement basis groups together some collection of qubit-wise commuting observables for some specific circuit/parameter value set to create a single measurement with basis rotations that is inserted into hardware executions.

    If twirling is enabled, the value of this option will be divided over circuit, randomizations, with a smaller number of shots per randomization. See the twirling options.

    Default: None.

  • optimization_level

    How much optimization to perform on the circuits. Higher levels generate more optimized circuits, at the expense of longer processing times.

    • 0: no optimization
    • 1: light optimization

    Refer to the Configure runtime compilation for Qiskit Runtime. for more information about the optimization levels.

    Default: 1.

  • resilience_level

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

    • 0: No mitigation.
    • 1: Minimal mitigation costs. Mitigate error associated with readout errors.
    • 2: Medium mitigation costs. Typically reduces bias in estimators but is not guaranteed to be zero bias.

    Refer to the Configure error mitigation for Qiskit Runtime. for more information about the error mitigation methods used at each level.

    Default: 1.

  • seed_estimator – Seed used to control sampling.

  • dynamical_decoupling – Suboptions for dynamical decoupling. See DynamicalDecouplingOptions for all available options.

  • resilience – Advanced resilience options to fine tune the resilience strategy. See ResilienceOptionsV2 for all available options.

  • execution – Execution time options. See ExecutionOptionsV2 for all available options.

  • twirling – Pauli twirling options. See TwirlingOptions for all available options.

  • experimental – Experimental options.



UnsetType | float = Unset


UnsetType | int | None = Unset


DynamicalDecouplingOptions | Dict = FieldInfo(annotation=Union[DynamicalDecouplingOptions, Dict], required=False, default_factory=DynamicalDecouplingOptions)


EnvironmentOptions | Dict = FieldInfo(annotation=Union[EnvironmentOptions, Dict], required=False, default_factory=EnvironmentOptions)


ExecutionOptionsV2 | Dict = FieldInfo(annotation=Union[ExecutionOptionsV2, Dict], required=False, default_factory=ExecutionOptionsV2)


UnsetType | dict = Unset


UnsetType | int = Unset


UnsetType | int = Unset


ResilienceOptionsV2 | Dict = FieldInfo(annotation=Union[ResilienceOptionsV2, Dict], required=False, default_factory=ResilienceOptionsV2)


UnsetType | int = Unset


UnsetType | int = Unset


SimulatorOptions | Dict = FieldInfo(annotation=Union[SimulatorOptions, Dict], required=False, default_factory=SimulatorOptions)


TwirlingOptions | Dict = FieldInfo(annotation=Union[TwirlingOptions, Dict], required=False, default_factory=TwirlingOptions)




GitHub(opens in a new tab)

Update the options.

Return type


Was this page helpful?
Report a bug or request content on GitHub.