Přeskočit na hlavní obsah

Organizace a vyhledávání pomocí tagů úloh

Verze balíčků

Kód na této stránce byl vyvinut s použitím následujících požadavků. Doporučujeme použít tyto nebo novější verze.

qiskit[all]~=2.3.1
qiskit-ibm-runtime~=0.45.1

Tento průvodce se zaměřuje na to, jak přidávat a aktualizovat tagy úloh a jak vyhledávat podle tagů, abys mohl lépe organizovat, sledovat a rozumět svým experimentům.

Přiřazení tagů

Jedné nebo více tagů můžeš přiřadit ke svým úlohám při jejich spuštění, abys je mohl později filtrovat podle tagu. Tagy úloh se hodí například k označení konkrétních nastavení potlačení chyb, parametrů Circuit a podobně.

# 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']

Přidání a aktualizace tagů

Tagy lze přidat i po odeslání úlohy pomocí metody update_tags(). Tato metoda přepíše stávající tagy, takže pokud jsi k úloze již přiřadil tagy a chceš přidat další, nezapomeň původní tagy znovu zahrnout.

# 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', '127-qubit', 'experiment-2025']

Vyhledání úloh podle tagu

Seznam úloh s určitými tagy zobrazíš takto:

# List jobs with a specific tag or set of tags

service.jobs(job_tags=["experiment-2025", "sampler-example"])
[<RuntimeJobV2('d76cmj5bjrds73edf2og', 'sampler')>,
<RuntimeJobV2('d6r5u84u243c73a11mug', 'sampler')>,
<RuntimeJobV2('d6hugq2thhns7392lovg', 'sampler')>,
<RuntimeJobV2('d68n7qtbujdc73d1b3vg', 'sampler')>,
<RuntimeJobV2('d674nppv6o8c73d514fg', 'sampler')>,
<RuntimeJobV2('d61mt5bc4tus73fcf3ng', 'sampler')>,
<RuntimeJobV2('d61lhfqo8gvs73f15d30', 'sampler')>,
<RuntimeJobV2('d5vftt1mvbjc73acdgpg', 'sampler')>,
<RuntimeJobV2('d5k96nv853es738djj30', 'sampler')>,
<RuntimeJobV2('d5b1s2rht8fs73a66r80', 'sampler')>]