From 8495882b43b9a60a4c3e7a6324fa587e85ec2172 Mon Sep 17 00:00:00 2001 From: Hiroshi Horii Date: Tue, 13 Jun 2023 21:03:42 +0900 Subject: [PATCH] Remove `AerCircuit` from result of `backend.run()` (#1845) * take AerCircuit from _metadata in experiment result * add reno * Fix rST formatting --------- Co-authored-by: Jake Lishman --- qiskit_aer/backends/aerbackend.py | 2 +- .../remove_aer_circuit_from_metadata-e4fe09029c1a3a3c.yaml | 5 +++++ test/terra/backends/aer_simulator/test_circuit.py | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/remove_aer_circuit_from_metadata-e4fe09029c1a3a3c.yaml diff --git a/qiskit_aer/backends/aerbackend.py b/qiskit_aer/backends/aerbackend.py index 859cb986da..13315acf1d 100644 --- a/qiskit_aer/backends/aerbackend.py +++ b/qiskit_aer/backends/aerbackend.py @@ -458,7 +458,7 @@ def _execute_circuits_job(self, circuits, noise_model, config, job_id="", format for result in output["results"]: if "header" not in result: continue - result["header"]["metadata"] = metadata_map[result["circuit"]] + result["header"]["metadata"] = metadata_map[result.pop("circuit")] # Add execution time output["time_taken"] = time.time() - start diff --git a/releasenotes/notes/remove_aer_circuit_from_metadata-e4fe09029c1a3a3c.yaml b/releasenotes/notes/remove_aer_circuit_from_metadata-e4fe09029c1a3a3c.yaml new file mode 100644 index 0000000000..9d5a5bb0ee --- /dev/null +++ b/releasenotes/notes/remove_aer_circuit_from_metadata-e4fe09029c1a3a3c.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - | + Results of ``backend.run()`` were not serializable because they include :class:`.AerCircuit`\ s. + This commit makes the results serializable by removing :class:`.AerCircuit`\ s from metadata. diff --git a/test/terra/backends/aer_simulator/test_circuit.py b/test/terra/backends/aer_simulator/test_circuit.py index e5d22c16c0..cd4c0f7806 100644 --- a/test/terra/backends/aer_simulator/test_circuit.py +++ b/test/terra/backends/aer_simulator/test_circuit.py @@ -13,6 +13,7 @@ AerSimulator Integration Tests """ from math import sqrt +from copy import deepcopy from ddt import ddt import numpy as np from qiskit import ClassicalRegister, QuantumCircuit, QuantumRegister, assemble @@ -190,7 +191,7 @@ def test_metadata_protected(self): self.assertEqual(circuit.metadata["foo"], "bar") self.assertEqual(circuit.metadata["object"], object) - job.result() + deepcopy(job.result()) def test_run_qobj(self): """Test qobj run"""