-
Notifications
You must be signed in to change notification settings - Fork 185
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
The following QAOA circuit causes error 3211 with qiskit-ibm-runtime 0.37.0.
The QAOA circuit is generated by assign one of the two parameters with another parameter.
No error occurs with 0.35.0.
I also found that the new IQP does not return the error code 3211
. See the error messages.
Steps to reproduce
import numpy as np
from qiskit import QuantumCircuit, generate_preset_pass_manager
from qiskit import __version__ as qiskit_version
from qiskit.circuit import ParameterVector
from qiskit.circuit.library import QAOAAnsatz, qaoa_ansatz
from qiskit.quantum_info import SparsePauliOp
from qiskit_ibm_runtime import QiskitRuntimeService, Sampler
from qiskit_ibm_runtime import __version__ as runtime_version
print(f"{qiskit_version=} {runtime_version=}")
op = SparsePauliOp(["ZIZI", "IZIZ", "ZIIZ"])
qaoa = qaoa_ansatz(op, reps=1)
x = ParameterVector("γ", 1)
qaoa = qaoa.assign_parameters({qaoa.parameters[1]: x[0]})
qc = QuantumCircuit(4)
qc.append(qaoa, range(4))
qc.measure_all()
# print(qc)
for name, iqp in [("primitives", "conventional IQP"), ("notebooks-internal", "new IQP")]:
print(iqp)
service = QiskitRuntimeService(name=name)
backend = service.backend("test_eagle_us-east")
pm = generate_preset_pass_manager(optimization_level=2, backend=backend)
t_qc = pm.run(qc)
sampler = Sampler(backend)
params = np.ones(t_qc.num_parameters)
try:
job = sampler.run([(t_qc, params)])
print(job)
result = job.result()
print(result)
except Exception as ex:
print(ex.message)
print()
qiskit_version='1.4.2' runtime_version='0.37.0'
conventional IQP
<RuntimeJobV2('czgh0pjzj67g008sck1g', 'sampler')>
Unable to retrieve job result. Error code 3211; Job not valid. "Cannot bind Parameters (['γ[0]']) not present in expression."
new IQP
<RuntimeJobV2('cvgh0pots29s738teclg', 'sampler')>
Unable to retrieve job result. CircuitError: "Cannot bind Parameters (['γ[0]']) not present in expression.
Expected behavior
No error as same as 0.35.0
qiskit_version='1.4.2' runtime_version='0.35.0'
conventional IQP
<RuntimeJobV2('czgh11mzj67g008sck30', 'sampler')>
PrimitiveResult([SamplerPubResult(data=DataBin(meas=BitArray(<shape=(), num_shots=4096, num_bits=4>)), metadata={'circuit_metadata': {}})], metadata={'execution': {'execution_spans': ExecutionSpans([SliceSpan(<start='2025-03-24 07:58:01', stop='2025-03-24 07:58:08', size=4096>)])}, 'version': 2})
new IQP
<RuntimeJobV2('cvgh178ts29s738tedq0', 'sampler')>
PrimitiveResult([SamplerPubResult(data=DataBin(meas=BitArray(<shape=(), num_shots=4096, num_bits=4>)), metadata={'circuit_metadata': {}})], metadata={'execution': {'execution_spans': ExecutionSpans([SliceSpan(<start='2025-03-24 07:58:22', stop='2025-03-24 07:58:29', size=4096>)])}, 'version': 2})
Suggested solutions
Additional Information
- qiskit-ibm-runtime version: 0.37.0
- Qiskit version: 1.4.2
- Python version: 3.12.9
- Operating system: macOS 15.3.2
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working