Skip to content

Commit

Permalink
Use qiskit.qpy.QPY_VERSION (up to 13) instead of always QPY 11
Browse files Browse the repository at this point in the history
  • Loading branch information
1ucian0 committed Jan 7, 2025
1 parent 0f345d8 commit c8f9bd4
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 9 deletions.
12 changes: 3 additions & 9 deletions qiskit_ibm_runtime/utils/json.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
from qiskit.transpiler import CouplingMap
from qiskit.circuit.parametertable import ParameterView
from qiskit.result import Result
from qiskit.version import __version__ as _terra_version_string
from qiskit.qpy import QPY_VERSION as QISKIT_QPY_VERSION
from qiskit.utils import optionals
from qiskit.qpy import (
load,
Expand Down Expand Up @@ -86,10 +86,6 @@

from .noise_learner_result import NoiseLearnerResult

_TERRA_VERSION = tuple(
int(x) for x in re.match(r"\d+\.\d+\.\d", _terra_version_string).group(0).split(".")[:3]
)


def to_base64_string(data: str) -> str:
"""Convert string to base64 string.
Expand Down Expand Up @@ -259,8 +255,7 @@ def default(self, obj: Any) -> Any: # pylint: disable=arguments-differ
return {"__type__": "to_json", "__value__": obj.to_json()}
if isinstance(obj, QuantumCircuit):
kwargs: Dict[str, object] = {"use_symengine": bool(optionals.HAS_SYMENGINE)}
if _TERRA_VERSION[0] >= 1:
kwargs["version"] = 11
kwargs["version"] = min(13, QISKIT_QPY_VERSION)
value = _serialize_and_encode(
data=obj,
serializer=lambda buff, data: dump(
Expand All @@ -279,8 +274,7 @@ def default(self, obj: Any) -> Any: # pylint: disable=arguments-differ
return obj.data
if isinstance(obj, Instruction):
kwargs = {"use_symengine": bool(optionals.HAS_SYMENGINE)}
if _TERRA_VERSION[0] >= 1:
kwargs["version"] = 11
kwargs["version"] = min(13, QISKIT_QPY_VERSION)
# Append instruction to empty circuit
quantum_register = QuantumRegister(obj.num_qubits)
quantum_circuit = QuantumCircuit(quantum_register)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
upgrade:
- |
The QPY payload now is generated based on ``qiskit.qpy.QPY_VERSION`` and capped until version 13.

0 comments on commit c8f9bd4

Please sign in to comment.