تحديد خيارات Executor
إصدارات الحزم
تم تطوير الكود في هذه الصفحة باستخدام المتطلبات التالية. نوصي باستخدام هذه الإصدارات أو أحدث.
qiskit-ibm-runtime~=0.46.1
يمكنك استخدام الخيارات لتخصيص Executor primitive.
- يمكنك رؤية الخيارات المتاحة وتحديث قيم الخيارات أثناء تهيئة الـ primitive أو بعدها.
- استخدم الطريقة
update()لتطبيق التغييرات على خاصيةoptions. - خاصية
optionsهي النوعdataclassفي Python. يمكنك استخدام الطريقة المضمَّنةasdictلتحويلها إلى قاموس.
ضبط خيارات Executor
إذا حُدِّد خيار أثناء تهيئة الـ primitive وبعدها، فإن القيمة المُضبَطة بعد تهيئة الـ primitive هي التي تُستخدَم.
تهيئة الـ Primitive
يمكنك تمرير نسخة من فئة الخيارات أو قاموس عند تهيئة Executor، والذي يُنشئ بعد ذلك نسخة من تلك الخيارات. وبذلك، تغيير القاموس الأصلي أو نسخة الخيارات لا يؤثر على الخيارات التي يمتلكها الـ primitive.
فئة الخيارات
عند إنشاء نسخة من فئة Executor، يمكنك تمرير نسخة من فئة الخيارات. تُطبَّق تلك الخيارات عند استخدام run() لإجراء الحساب. حدِّد الخيارات بهذا التنسيق: 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)
القاموس
يمكنك تحديد الخيارات كقاموس عند تهيئة 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},
},
)
الخيارات المتاحة
يُوثِّق الجدول التالي الخيارات من أحدث إصدار من qiskit-ibm-runtime. لرؤية إصدارات خيارات أقدم، زر مرجع API لـ qiskit-ibm-runtime واختر إصدارًا سابقًا.
environment
environment.job_tags
قائمة من العلامات.
الخيارات: None
الافتراضي: None
environment.log_level
الخيارات: DEBUG, INFO, WARNING, ERROR, CRITICAL
الافتراضي: WARNING
environment.private
الخيارات: True, False
الافتراضي: False
environment.max_execution_time
الخيارات: عدد صحيح من الثواني في النطاق [1, 10800]
الافتراضي: 10800 (3 ساعات)
execution
execution.init_qubits
ما إذا كان سيتم إعادة تعيين الـ Qubits إلى الحالة الأرضية لكل تشغيل.
الخيارات: True, False
الافتراضي: True
execution.rep_delay
التأخير بين القياس والـ Circuit الكمية اللاحقة.
الخيارات: القيمة في النطاق المُقدَّم بواسطة backend.rep_delay_range
الافتراضي: مُعطَى بواسطة backend.default_rep_delay
execution.meas_type
الخيارات: classified, kerneled, avg_kerneled
الافتراضي: classified
experimental
الخيارات التجريبية، عند توفرها.
توافق الميزات
بعض ميزات الـ Runtime لا يمكن استخدامها معًا في مهمة واحدة. انقر على التبويب المناسب للاطلاع على قائمة الميزات غير المتوافقة مع الميزة المحددة:
- الـ Circuits الديناميكية
- الفصل الديناميكي
- البوابات الكسرية
- ZNE بطي البوابة
- تدوير البوابات
- PEA
- PEC
غير متوافقة مع:
- ZNE بطي البوابة
- PEA
- PEC
- الفصل الديناميكي
ملاحظات أخرى:
- يمكن تطبيق تدوير البوابات على الـ Circuits الديناميكية، لكن فقط على البوابات خارج الكتل الشرطية.
- لا يمكن تطبيق تدوير القياس إلا على القياسات الطرفية.
- تدوير القياس غير متوافق مع تعليمة
store. - متوافقة مع البوابات الكسرية عند استخدام
qiskit-ibm-runtimeالإصدار v0.42.0 أو أحدث.
غير متوافق مع الـ Circuits الديناميكية.
غير متوافقة مع:
- تدوير البوابات
- PEA
- PEC
متوافقة مع الـ Circuits الديناميكية عند استخدام qiskit-ibm-runtime الإصدار v0.42.0 أو أحدث.
غير متوافق مع:
- الـ Circuits الديناميكية
- PEA
- PEC
قد لا يعمل عند استخدام بوابات مخصصة.
غير متوافق مع البوابات الكسرية أو الامتدادات.
ملاحظات أخرى:
- يمكن تطبيق تدوير البوابات على الـ Circuits الديناميكية، لكن فقط على البوابات خارج الكتل الشرطية. لا يمكن تطبيق تدوير القياس إلا على القياسات الطرفية.
- لا يعمل مع مشابكات غير Clifford.
غير متوافق مع:
- الـ Circuits الديناميكية
- البوابات الكسرية
- ZNE بطي البوابة
- PEC
غير متوافق مع:
- الـ Circuits الديناميكية
- البوابات الكسرية
- ZNE بطي البوابة
- PEA
الخطوات التالية
- راجع وثائق API لـ ExecutionOptionsV2.
- راجع وثائق API لـ EnvironmentOptions.