דלג לתוכן הראשי

ארגון וחיפוש לפי תגיות משימה

גרסאות חבילות

הקוד בדף זה פותח בשימוש בדרישות הבאות. אנו ממליצים להשתמש בגרסאות אלה או בגרסאות חדשות יותר.

qiskit[all]~=2.3.0
qiskit-ibm-runtime~=0.43.1

מדריך זה מתמקד בכיצד להוסיף ולעדכן תגיות משימה, וכן כיצד לחפש לפי תגיות משימה, כדי שתוכל לארגן, לעקוב ולהבין את הניסויים שלך בצורה טובה יותר.

הקצאת תגיות

ניתן להקצות תגית אחת או יותר למשימות שלך בעת הרצתן, כדי שתוכל לסנן לפי תגית מאוחר יותר. ייתכן שתרצה להשתמש בתגיות משימה כדי לסמן הגדרות מיתון שגיאות מסוימות, פרמטרים של Circuit, וכדומה.

# Added by doQumentation — required packages for this notebook
!pip install -q qiskit qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService, Sampler
from qiskit import QuantumCircuit
from qiskit.transpiler import generate_preset_pass_manager

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

qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.measure_all()

sampler = Sampler(backend)

pm = generate_preset_pass_manager(backend=backend, optimization_level=1)
isa_circuit = pm.run(qc)

# Assign tags before executing
sampler.options.environment.job_tags = ["experiment-2025", "sampler-example"]

# Submit
job = sampler.run([isa_circuit])

print(service.job(job.job_id()).tags)
['experiment-2025', 'sampler-example']

הוספה ועדכון של תגיות

ניתן להוסיף תגיות לאחר שליחת משימה באמצעות המתודה update_tags(). מתודה זו מחליפה את התגיות הנוכחיות, לכן אם כבר הקצית תגיות למשימה ואתה רוצה להוסיף תגיות נוספות, הקפד להקצות מחדש גם את התגיות המקוריות.

# Add a new tag while keeping the previously assigned tags
job.update_tags(["experiment-2025", "sampler-example", "127-qubit"])

# Confirm updated tags
print(job.tags)
['sampler-example', 'experiment-2025', '127-qubit']

אחזור משימות לפי תגית

הצג רשימת משימות עם תגיות מסוימות כך:

# List jobs with a specific tag or set of tags

service.jobs(job_tags=["experiment-2025", "sampler-example"])
[<RuntimeJobV2('d5k96nv853es738djj30', 'sampler')>,
<RuntimeJobV2('d5b1s2rht8fs73a66r80', 'sampler')>,
<RuntimeJobV2('d4vr9uteastc73cii4n0', 'sampler')>,
<RuntimeJobV2('d4mjv12v0j9c73e6dclg', 'sampler')>,
<RuntimeJobV2('d4c2e8fnmdfs73aedgl0', 'sampler')>,
<RuntimeJobV2('d42r485o35ts73c743g0', 'sampler')>,
<RuntimeJobV2('d3nkieg3qtks738eg8t0', 'sampler')>,
<RuntimeJobV2('d3ed8g1b641c738j6vdg', 'sampler')>,
<RuntimeJobV2('d38q4qcda4cs73aa79v0', 'sampler')>,
<RuntimeJobV2('d38q14g0sqis739a0ing', 'sampler')>]