Przejdź do głównej treści

Organizuj i wyszukuj według tagów zadań

Wersje pakietów

Kod na tej stronie został opracowany z użyciem poniższych wymagań. Zalecamy korzystanie z tych lub nowszych wersji.

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

Ten przewodnik skupia się na tym, jak dodawać i aktualizować tagi zadań oraz jak wyszukiwać według tagów, abyś mógł lepiej organizować, śledzić i rozumieć swoje eksperymenty.

Przypisywanie tagów

Możesz przypisać jeden lub więcej tagów do swoich zadań podczas ich uruchamiania, aby móc później filtrować według tagu. Tagi zadań możesz wykorzystać do oznaczania konkretnych ustawień mitygacji błędów, parametrów Circuit i tym podobnych.

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

Dodawanie i aktualizowanie tagów

Możesz dodawać tagi po przesłaniu zadania za pomocą metody update_tags(). Ta metoda nadpisuje bieżące tagi, więc jeśli wcześniej przypisałeś już tagi do zadania i chcesz dodać kolejne, pamiętaj o ponownym przypisaniu oryginalnych tagów.

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

Pobieranie zadań według tagów

Wyświetl listę zadań z określonymi tagami w następujący sposób:

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