メインコンテンツへスキップ

ジョブタグによる整理と検索

パッケージバージョン

このページのコードは、以下の要件を使用して開発されました。 これらのバージョン以降を使用することをお勧めします。

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

このガイドでは、ジョブタグの追加・更新方法、およびジョブタグによる検索方法に焦点を当て、実験をより効率よく整理・追跡・把握できるようにします。

タグを付与する

ジョブを実行する際に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')>]