def __init__(self): super().__init__() from qiskit import Aer self.IBMQ_local = Aer print_hl("qiskit Aer loaded.")
def __init__(self): super().__init__() from qiskit import Aer self.Quantum_Inspire_local = Aer print_hl("qiskit Aer loaded.")
def __init__(self): super().__init__() # load accounts from quantuminspire.qiskit import QI QI.set_authentication() self.Quantum_Inspire_cloud_providers = [QI] print_hl("Quantum Inspire cloud account loaded.")
def execute( self, circuit: qiskit.QuantumCircuit, num_shots=1024, initial_layout=None, optimization_level=3, ): while optimization_level >= 0: try: experiment = qiskit.compiler.transpile( circuit, initial_layout=initial_layout, optimization_level=optimization_level, backend=self.device, ) break except qiskit.transpiler.exceptions.TranspilerError as e: print_stderr("transpiler error. Lowering optimization level") optimization_level -= 1 if optimization_level < 0: raise e print_hl(circuit, color="white") print_hl(experiment, color="white") qobj = qiskit.compiler.assemble(experiment, shots=num_shots, max_credits=15, backend=self.device) try: return { "result": self.device.run(qobj), "transpiled_circuit": experiment } except QiskitError as e: message = e.message.rstrip("\n .") message = e.message.rstrip(".'") if message.endswith("Error code: 3458"): print_stderr("You don't have enough credits to run this job.") return { "result": ThinPromise(lambda: None), "transpiled_circuit": None } raise
def execute( self, circuit: qiskit.QuantumCircuit, num_shots=1024, initial_layout=None, optimization_level=3, ): while optimization_level >= 0: try: experiment = qiskit.compiler.transpile( circuit, initial_layout=initial_layout, optimization_level=optimization_level, backend=self.device, ) break except qiskit.transpiler.exceptions.TranspilerError as e: print_stderr("transpiler error. Lowering optimization level") optimization_level -= 1 if optimization_level < 0: raise e print_hl(circuit, color="white") print_hl(experiment, color="white") qobj = qiskit.compiler.assemble(experiment, shots=num_shots, max_credits=15, backend=self.device) try: return { "result": self.device.run(qobj), "transpiled_circuit": experiment } except ApiError as e: if "Please wait for those jobs to finish or cancel a job." in str( e): print_stderr(str(e)) return { "result": ThinPromise(lambda: None), "transpiled_circuit": None } raise
def __init__(self): super().__init__() # load accounts from qiskit import IBMQ IBMQ.load_account() # check whether we have accounts providers = IBMQ.providers() assert len(providers) > 0, "no account loaded" # choose account with most backends coming up last providers.sort(key=lambda p: len(p.backends())) self.IBMQ_cloud_providers = providers print_hl( f"IBMQ cloud account{'s' if len(providers)>1 else ''} loaded: " + " ".join(p.credentials.group for p in providers))
def __init__(self): super().__init__() print_hl("AWS measure local backend loaded.")
def __init__(self): super().__init__() print_hl("AWS cloud backend loaded.")
def execute(self, circuit, num_shots: int, **kwargs): print_hl(circuit, color="white") return { "result": AmazonCloudPromise(circuit, braket.aws.AwsDevice(self.address), num_shots), "transpiled_circuit": None, }
def __init__(self): super().__init__() print_hl("AWS statevector simulator backend loaded.")