Hello! I’m using the IBMProvider package to be able to use my research access to IBM’s backends, so I need to define the instance that I want to access in order to use the dedicated device, but Pennylane always sends my jobs to the open access instance, instead of the one I provided in the provider. When I try to use the qiskit.remote option in qml.device I get an error saying that the backend I provided does not exist. Here instance is the code to access the research instance, sorry I can’t share it.
import pennylane as qml
from pennylane import numpy as np
import pennylane_qiskit as pq
from qiskit_ibm_provider import IBMProvider
import qiskit
provider = IBMProvider(instance=instance)
backend = provider.get_backend("ibm_perth") #The backend I reserved
ibm_dev = qml.device('qiskit.remote', wires=3, backend=backend, shots=nshots)
I get the error message
---------------------------------------------------------------------------
DeviceError Traceback (most recent call last)
<ipython-input-85-1b671ca10058> in <cell line: 8>()
6 # ibm_dev = qml.device('qiskit.ibmq', wires=3, backend='ibm_perth', shots=nshots)
7
----> 8 ibm_dev = qml.device('qiskit.remote', wires=3, backend=backend, shots=nshots)
9
10 # ibm_dev = qml.device('qiskit.ibmq', wires=3, shots=nshots)
/usr/local/lib/python3.10/dist-packages/pennylane/__init__.py in device(name, *args, **kwargs)
336 return dev
337
--> 338 raise DeviceError("Device does not exist. Make sure the required plugin is installed.")
339
340
DeviceError: Device does not exist. Make sure the required plugin is installed.
all qiskit and pennylane plugins required are installed.
Hey @Pedro_Alvarez!
Can you post the output of qml.about()
?
There you go @isaacdevlugt
Name: PennyLane
Version: 0.29.1
Summary: PennyLane is a Python quantum machine learning library by Xanadu Inc.
Home-page: https://github.com/XanaduAI/pennylane
Author:
Author-email:
License: Apache License 2.0
Location: /usr/local/lib/python3.10/dist-packages
Requires: appdirs, autograd, autoray, cachetools, networkx, numpy, pennylane-lightning, requests, retworkx, scipy, semantic-version, toml
Required-by: PennyLane-Cirq, PennyLane-Lightning, PennyLane-qiskit, PennyLane-qsharp, PennyLane-Rigetti, PennyLane-SF
Platform info: Linux-5.15.107+-x86_64-with-glibc2.31
Python version: 3.10.12
Numpy version: 1.22.4
Scipy version: 1.10.0
Installed devices:
- default.gaussian (PennyLane-0.29.1)
- default.mixed (PennyLane-0.29.1)
- default.qubit (PennyLane-0.29.1)
- default.qubit.autograd (PennyLane-0.29.1)
- default.qubit.jax (PennyLane-0.29.1)
- default.qubit.tf (PennyLane-0.29.1)
- default.qubit.torch (PennyLane-0.29.1)
- default.qutrit (PennyLane-0.29.1)
- null.qubit (PennyLane-0.29.1)
- cirq.mixedsimulator (PennyLane-Cirq-0.31.0)
- cirq.pasqal (PennyLane-Cirq-0.31.0)
- cirq.qsim (PennyLane-Cirq-0.31.0)
- cirq.qsimh (PennyLane-Cirq-0.31.0)
- cirq.simulator (PennyLane-Cirq-0.31.0)
- lightning.qubit (PennyLane-Lightning-0.30.0)
- rigetti.numpy_wavefunction (PennyLane-Rigetti-0.31.0)
- rigetti.qpu (PennyLane-Rigetti-0.31.0)
- rigetti.qvm (PennyLane-Rigetti-0.31.0)
- rigetti.wavefunction (PennyLane-Rigetti-0.31.0)
- strawberryfields.fock (PennyLane-SF-0.29.1)
- strawberryfields.gaussian (PennyLane-SF-0.29.1)
- strawberryfields.gbs (PennyLane-SF-0.29.1)
- strawberryfields.remote (PennyLane-SF-0.29.1)
- strawberryfields.tf (PennyLane-SF-0.29.1)
- qiskit.aer (PennyLane-qiskit-0.29.0)
- qiskit.basicaer (PennyLane-qiskit-0.29.0)
- qiskit.ibmq (PennyLane-qiskit-0.29.0)
- qiskit.ibmq.circuit_runner (PennyLane-qiskit-0.29.0)
- qiskit.ibmq.sampler (PennyLane-qiskit-0.29.0)
- microsoft.QuantumSimulator (PennyLane-qsharp-0.19.0)
I see it now, how can I install qiskit.remote?
I got it, just had to update pennylane-qiskit
Great! Yeah always a good idea to check that you’re using the most up-to-date versions of everything .