Lumaktaw sa pangunahing nilalaman

I-configure ang noise management gamit ang Estimator

Mga bersyon ng package

Ang code sa pahinang ito ay binuo gamit ang mga sumusunod na kinakailangan. Inirerekumenda naming gamitin ang mga bersyong ito o mas bago.

qiskit-ibm-runtime~=0.46.1

Mayroong ilang paraan para pamahalaan ang noise, karaniwang sa pamamagitan ng paggamit ng iba't ibang mga teknik ng error mitigation at error suppression para maiwasan ang mga error bago pa man mangyari. Ang mga teknik na ito ay karaniwang nagdudulot ng overhead sa pre-processing. Samakatuwid, mahalaga na makamit ang balanse sa pagitan ng pagperpekto ng iyong mga resulta at pagtitiyak na makukumpleto ang iyong job sa makatwirang oras.

Sinusuportahan ng Estimator ang mga sumusunod na teknik ng noise management. Tingnan ang Mga teknik ng error mitigation at suppression para sa paliwanag ng bawat isa. Tingnan ang seksyon ng Mga custom na setting ng error para sa mga tagubilin para i-enable ang mga teknik na ito.

Antas ng resilience

Tinutukoy ng resilience_level kung gaano karaming resilience ang itatayo laban sa mga error. Ang mas mataas na antas ay nagbubuo ng mas tumpak na mga resulta, sa gastos ng mas matagal na oras ng pagproseso. Ang mga antas ng resilience ay maaaring gamitin para i-configure ang trade-off ng gastos/katumpakan kapag nag-aaplay ng noise management sa iyong primitive query. Binabawasan ng noise management ang mga error (bias) sa mga resulta sa pamamagitan ng pagproseso ng mga output mula sa isang koleksyon, o ensemble, ng mga kaugnay na circuit. Ang antas ng pagbabawas ng error ay depende sa pamamaraang inilapat. Ang antas ng resilience ay nag-aabstract ng detalyadong pagpili ng pamamaraan ng noise management para payagan ang mga gumagamit na mag-isip tungkol sa trade-off ng gastos/katumpakan na angkop sa kanilang aplikasyon.

Dahil dito, ang bawat antas ay tumutugma sa isang pamamaraan o mga pamamaraan na may tumataas na antas ng quantum sampling overhead para payagan kang mag-eksperimento sa iba't ibang trade-off ng oras-katumpakan. Ipinapakita sa sumusunod na talahanayan kung anong mga antas at kaukulang pamamaraan ang available para sa bawat isa sa mga primitive.

Antas ng ResiliencePaglalarawanTeknik
0Walang mitigationWala
1 [Default]Minimal na gastos sa mitigation: Bawasan ang error na nauugnay sa mga error sa readoutTwirled Readout Error eXtinction (TREX) measurement twirling
2Medium na gastos sa mitigation. Karaniwang binabawasan ang bias sa mga estimator, ngunit hindi ginagarantiyahan na zero-bias.Antas 1 + Zero Noise Extrapolation (ZNE) at gate twirling
Pansin

Ang mga antas ng resilience ay kasalukuyang nasa beta kaya't ang sampling overhead at kalidad ng solusyon ay mag-iiba-iba mula sa circuit patungong circuit. Ang mga bagong feature, advanced na opsyon, at mga tool sa pamamahala ay ilalabas sa rolling basis. Hindi ginagarantiyahan na ang mga tiyak na pamamaraan ng noise management ay ina-apply sa bawat antas ng resilience.

I-configure ang Estimator gamit ang mga antas ng resilience

Maaari kang gumamit ng mga antas ng resilience para tukuyin ang mga teknik ng noise management, o maaari kang magtakda ng mga custom na teknik nang isa-isa tulad ng inilarawan sa Mga custom na setting ng error.

Mahalaga

Anumang mga opsyon na manu-manong itinakda mo bilang karagdagan sa antas ng resilience ay inilalapat bilang karagdagan sa base na set ng mga opsyon na tinukoy ng antas ng resilience. Samakatuwid, sa prinsipyo, maaari mong itakda ang antas ng resilience sa 1, ngunit pagkatapos ay i-off ang measurement mitigation, bagaman hindi ito inirerekumenda.

Halimbawa, ang pagtatakda ng antas ng resilience sa 0 ay nagpapatay ng zne_mitigation, ngunit ang estimator.options.resilience.zne_mitigation = True ay nag-o-override ng halagang iyon.

Halimbawa

Ang sumusunod na code ay nagpapagana ng ZNE, TREX, at gate twirling sa pamamagitan ng pagtatakda ng resilience_level 2.

# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService
from qiskit_ibm_runtime import EstimatorV2 as Estimator

service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

# Setting options during primitive initialization
estimator = Estimator(backend, options={"resilience_level": 2})

Mga custom na setting ng noise management

Maaari mong i-on at i-off ang mga indibidwal na pamamaraan ng noise management sa pamamagitan ng paggamit ng mga opsyon ng Estimator.

tala

Hindi lahat ng opsyon ay gumagana nang magkasama sa lahat ng uri ng circuit. Tingnan ang feature compatibility table para sa mga detalye.

Halimbawa

from qiskit_ibm_runtime import QiskitRuntimeService
from qiskit_ibm_runtime import EstimatorV2 as Estimator

service = QiskitRuntimeService()
backend = service.least_busy(operational=True, simulator=False)

estimator = Estimator(backend)
options = estimator.options
# Turn on gate twirling.
options.twirling.enable_gates = True
# Turn on measurement error mitigation.
options.resilience.measure_mitigation = True

print(
f">>> gate twirling is turned on: {estimator.options.twirling.enable_gates}"
)
print(
f">>> measurement error mitigation is turned on: "
f"{estimator.options.twirling.enable_gates}"
)
>>> gate twirling is turned on: True
>>> measurement error mitigation is turned on: True

I-off ang lahat ng error mitigation

Para sa mga tagubilin na i-off ang lahat ng error mitigation, tingnan ang seksyon ng I-off ang lahat ng error suppression at mitigation sa gabay sa mga opsyon ng Estimator.

Mga susunod na hakbang

Mga rekomendasyon