Organizza e cerca per tag di lavoro
Il codice di questa pagina è stato sviluppato in base ai seguenti requisiti. Si consiglia di utilizzare queste versioni o versioni più recenti.
qiskit[all]~=2.5.2 qiskit-ibm-runtime~=0.49.0
Questa guida si concentra su come aggiungere e aggiornare i tag dei lavori e su come effettuare ricerche in base ai tag dei lavori, in modo da poter organizzare, monitorare e comprendere meglio i propri esperimenti.
Assegna tag
È possibile assegnare uno o più tag ai lavori quando vengono eseguiti, in modo da poterli filtrare in base a un tag in un secondo momento. È possibile utilizzare i tag di lavoro per etichettare particolari impostazioni di attenuazione degli errori, parametri del circuito e così via.
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)Output:
['experiment-2025', 'sampler-example']
Aggiungi e aggiorna tag
È possibile aggiungere tag dopo aver inviato un lavoro con il metodo update_tags() . Questo metodo sovrascrive i tag correnti, quindi se sono già stati assegnati dei tag a un lavoro e si desidera aggiungere altri tag, assicurarsi di riassegnare i tag originali.
# 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)Output:
['sampler-example', 'experiment-2025', '127-qubit']
Recupera i lavori per tag
Visualizza un elenco di lavori con determinati tag come segue:
# List jobs with a specific tag or set of tags
service.jobs(job_tags=["experiment-2025", "sampler-example"])Output:
[<RuntimeJobV2('db87r36il99s73fpgl80', 'sampler')>,
<RuntimeJobV2('db21r4c7f06c73ap7jtg', 'sampler')>,
<RuntimeJobV2('dav0ijbg95ks73ej7ku0', 'sampler')>,
<RuntimeJobV2('dakf378mhr3c73ea4ljg', 'sampler')>,
<RuntimeJobV2('dab7ljj4clkc73fijsm0', 'sampler')>,
<RuntimeJobV2('da0147no3ppc73akuf3g', 'sampler')>,
<RuntimeJobV2('d9mqa2eh4e6s738viav0', 'sampler')>,
<RuntimeJobV2('d9bjj0mg26ic73dg2520', 'sampler')>,
<RuntimeJobV2('d92d08vccmks73d6j8ng', 'sampler')>,
<RuntimeJobV2('d8286jg0bvlc73d1vnhg', 'sampler')>]