ข้ามไปยังเนื้อหาหลัก

ระบุ Executor options

เวอร์ชันแพ็กเกจ

โค้ดในหน้านี้พัฒนาโดยใช้ requirements ต่อไปนี้ แนะนำให้ใช้เวอร์ชันเหล่านี้หรือใหม่กว่า

qiskit-ibm-runtime~=0.46.1

คุณสามารถใช้ options เพื่อกำหนดค่า Executor primitive

หมายเหตุ
  • คุณสามารถดู options ที่มีและอัปเดตค่า option ระหว่างหรือหลัง primitive initialization
  • ใช้เมธอด update() เพื่อใช้การเปลี่ยนแปลงกับ attribute options
  • Attribute options เป็นประเภท dataclass Python คุณสามารถใช้เมธอด asdict ในตัวเพื่อแปลงเป็น dictionary

ตั้งค่า Executor options

ถ้า option ถูกระบุทั้งระหว่างและหลัง primitive initialization ค่าที่ตั้งหลังจาก initialize primitive จะถูกใช้

Primitive initialization

คุณสามารถส่ง instance ของ options class หรือ dictionary เมื่อ initialize Executor ซึ่งจะทำสำเนาของ options เหล่านั้น ดังนั้น การเปลี่ยน dictionary หรือ options instance ดั้งเดิมจะไม่มีผลต่อ options ที่ primitive เป็นเจ้าของ

Options class

เมื่อสร้าง instance ของ class Executor คุณสามารถส่ง instance ของ options class Options เหล่านั้นจะถูกใช้เมื่อคุณใช้ run() เพื่อทำการคำนวณ ระบุ options ในรูปแบบนี้: options.option.sub-option.sub-sub-option = choice ตัวอย่างเช่น: options.environment.log_level = INFO

ตัวอย่าง:

# Added by doQumentation — required packages for this notebook
!pip install -q qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService, Executor
from qiskit_ibm_runtime.options import ExecutorOptions

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

options = ExecutorOptions(
environment={"log_level": "INFO"},
execution={"init_qubits": True},
)

# or use the following instead:

options = ExecutorOptions()
options.environment.log_level = "INFO"
options.execution.init_qubits = True

executor = Executor(mode=backend, options=options)

Dictionary

คุณสามารถระบุ options เป็น dictionary เมื่อ initialize Executor

from qiskit_ibm_runtime import QiskitRuntimeService, Executor

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

# Setting options during primitive initialization
executor = Executor(
backend,
options={
"environment": {"log_level": "INFO"},
"execution": {"init_qubits": True},
},
)

Options ที่มีให้ใช้

ตารางต่อไปนี้บันทึก options จากเวอร์ชันล่าสุดของ qiskit-ibm-runtime เพื่อดู option versions เก่ากว่า โปรดไปที่ qiskit-ibm-runtime API reference และเลือกเวอร์ชันก่อนหน้า

environment

เอกสาร API environment

environment.job_tags

รายการ tags

ตัวเลือก: None

ค่าเริ่มต้น: None

environment.log_level

ตัวเลือก: DEBUG, INFO, WARNING, ERROR, CRITICAL

ค่าเริ่มต้น: WARNING

environment.private

ตัวเลือก: True, False

ค่าเริ่มต้น: False

environment.max_execution_time

ตัวเลือก: จำนวนวินาที (integer) ในช่วง [1, 10800]

ค่าเริ่มต้น: 10800 (3 ชั่วโมง)

execution

เอกสาร API execution

execution.init_qubits

ว่าจะ reset qubits กลับสู่ ground state สำหรับแต่ละ shot หรือไม่

ตัวเลือก: True, False

ค่าเริ่มต้น: True

execution.rep_delay

ความล่าช้าระหว่างการวัดและ quantum circuit ถัดไป

ตัวเลือก: ค่าในช่วงที่ให้โดย backend.rep_delay_range

ค่าเริ่มต้น: ให้โดย backend.default_rep_delay

execution.meas_type

ตัวเลือก: classified, kerneled, avg_kerneled

ค่าเริ่มต้น: classified

experimental

Experimental options เมื่อมีให้ใช้

ความเข้ากันได้ของ features

บาง runtime features ไม่สามารถใช้ร่วมกันในงานเดียว คลิก tab ที่เหมาะสมเพื่อดูรายการ features ที่ไม่เข้ากันกับ feature ที่เลือก:

ไม่เข้ากันกับ:

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

หมายเหตุอื่นๆ:

  • Gate twirling สามารถใช้กับ dynamic circuits ได้ แต่เฉพาะกับ gates ที่ไม่อยู่ใน conditional blocks เท่านั้น
  • Measurement twirling สามารถใช้กับ terminal measurements เท่านั้น
  • Measurement twirling ไม่เข้ากันกับคำสั่ง store
  • เข้ากันกับ fractional gates เมื่อใช้ qiskit-ibm-runtime v0.42.0 หรือใหม่กว่า

ขั้นตอนถัดไป

คำแนะนำ