Faux fournisseur
qiskit_ibm_runtime.fake_provider
Aperçu
Le module de faux fournisseurs contient des classes de faux fournisseurs et de faux backends. Les faux backends sont construits pour imiter les comportements des systèmes Quantum IBM à l'aide d'instantanés du système. Les instantanés du système contiennent des informations importantes sur le système quantique, telles que la carte de couplage, les portes de base, les propriétés des qubits ( T1, T2, taux d'erreur, etc.) qui sont utiles pour tester le transpondeur et effectuer des simulations bruyantes du système.
Exemple d'utilisation
Voici un exemple d'utilisation d'un faux backend pour la transpilation et la simulation.
from qiskit import QuantumCircuit
from qiskit import transpile
from qiskit.visualization import plot_histogram
from qiskit_ibm_runtime import SamplerV2
from qiskit_ibm_runtime.fake_provider import FakeManilaV2
# Get a fake backend from the fake provider
backend = FakeManilaV2()
# Create a simple circuit
circuit = QuantumCircuit(3)
circuit.h(0)
circuit.cx(0,1)
circuit.cx(0,2)
circuit.measure_all()
circuit.draw('mpl', style="iqp")
# Transpile the ideal circuit to a circuit that can be
# directly executed by the backend
transpiled_circuit = transpile(circuit, backend)
transpiled_circuit.draw('mpl', style="iqp")
# Run the transpiled circuit using the simulated fake backend
sampler = SamplerV2(backend)
job = sampler.run([transpiled_circuit])
pub_result = job.result()[0]
counts = pub_result.data.meas.get_counts()
plot_histogram(counts)
Veuillez noter que la simulation est effectuée à l'aide d'un modèle de bruit généré à partir d'instantanés du système obtenus dans le passé (parfois il y a quelques années) et que les résultats ne sont pas représentatifs des comportements les plus récents du système quantique réel que le faux backend imite. Si vous souhaitez exécuter des simulations bruyantes avec les derniers snapshots du backend, vous pouvez utiliser la méthode refresh() .
from qiskit_ibm_runtime import QiskitRuntimeService
from qiskit_ibm_runtime.fake_provider import FakeSherbrooke
# initialize service to access real backends
service = QiskitRuntimeService()
# call refresh to retrieve latest backend data
# note that this overwrites your local qiskit-ibm-runtime files
backend = FakeSherbrooke()
backend.refresh(service)Faux fournisseurs
Les faux fournisseurs donnent accès à une liste de faux backends.
FakeProviderForBackendV2 | Faux fournisseur contenant de faux backends V2. |
Faux backends
Faux backends d' V2
Les faux backends V2 sont de faux backends avec des instantanés de systèmes Quantum IBM mis en œuvre avec l'interface BackendV2 . Ils sont tous des sous-classes de FakeBackendV2.
FakeAachen | Un faux backend de 156 qubits. |
FakeAlgiers | Un faux backend de 27 qubits. |
FakeAlmadenV2 | Un faux backend Almaden V2. |
FakeArmonkV2 | Un faux backend de 1 qubit. |
FakeAthensV2 | Un faux backend de 5 qubits. |
FakeAuckland | Un faux backend de 27 qubits. |
FakeBelemV2 | Un faux backend de 5 qubits. |
FakeBerlin | Un backend factice de 120 qubits. |
FakeBoeblingenV2 | Un faux backend de Boeblingen V2. |
FakeBogotaV2 | Un faux backend de 5 qubits. |
FakeBoston | Un faux backend de 156 qubits. |
FakeBrisbane | Un faux backend de 127 qubits. |
FakeBrooklynV2 | Un faux backend Brooklyn V2. |
FakeBrussels | Un faux backend de 127 qubits. |
FakeBurlingtonV2 | Un faux backend de 5 qubits. |
FakeCairoV2 | Un faux backend de 27 qubits. |
FakeCambridgeV2 | Un faux backend de Cambridge. |
FakeCasablancaV2 | Un faux backend de 7 qubits. |
FakeCusco | Un faux backend de 127 qubits. |
FakeEssexV2 | Un faux backend de 5 qubits. |
FakeFez | Un faux backend de 156 qubits. |
FakeGeneva | Un faux backend de 27 qubits. |
FakeGuadalupeV2 | Un faux backend de 16 qubits. |
FakeHanoiV2 | Un faux backend de 27 qubits. |
FakeJakartaV2 | Un faux backend de 7 qubits V2. |
FakeJohannesburgV2 | Un faux backend de Johannesburg V2. |
FakeKawasaki | Un faux backend de 127 qubits. |
FakeKingston | Un faux backend de 156 qubits. |
FakeKolkataV2 | Un faux backend de 27 qubits. |
FakeKyiv | Un faux backend de 127 qubits. |
FakeKyoto | Un faux backend de 127 qubits. |
FakeLagosV2 | Un faux backend de 7 qubits. |
FakeLimaV2 | Un faux backend de 5 qubits. |
FakeFractionalBackend | Un faux backend à 5 qubits avec des caractéristiques dynamiques et fractionnaires modélisées sur la base de FakeLima. |
FakeLondonV2 | Un faux backend de 5 qubits. |
FakeManhattanV2 | Un faux backend Manhattan. |
FakeManilaV2 | Un faux backend de 5 qubits. |
FakeMarrakesh | Un faux backend de 156 qubits. |
FakeMelbourneV2 | Un faux backend de 15 qubits. |
FakeMiami | Un backend factice de 120 qubits. |
FakeMontrealV2 | Un faux backend de 27 qubits. |
FakeMumbaiV2 | Un faux backend de 27 qubits. |
FakeNairobiV2 | Un faux backend de 7 qubits. |
FakeOsaka | Un faux backend de 127 qubits. |
FakeOslo | Un faux backend de 7 qubits. |
FakeOurenseV2 | Un faux backend de 5 qubits. |
FakeParisV2 | Un faux backend de Paris. |
FakePeekskill | Un faux backend de 27 qubits. |
FakePerth | Un faux backend de 7 qubits. |
FakePittsburgh | Un faux backend de 156 qubits. |
FakePrague | Un faux backend de 33 qubits. |
FakePoughkeepsieV2 | Un faux backend de Poughkeepsie. |
FakeQuebec | Un faux backend de 127 qubits. |
FakeQuitoV2 | Un faux backend de 5 qubits. |
FakeRochesterV2 | Un faux backend Rochester. |
FakeRomeV2 | Un faux backend de 5 qubits. |
FakeSantiagoV2 | Un faux backend Santiago. |
FakeSherbrooke | Un faux backend de 127 qubits. |
FakeSingaporeV2 | Un faux backend de Singapour. |
FakeStrasbourg | Un faux backend de 127 qubits. |
FakeSydneyV2 | Un faux backend de 27 qubits. |
FakeTorino | Un faux backend de 133 qubits. |
FakeTorontoV2 | Un faux backend de 27 qubits. |
FakeValenciaV2 | Un faux backend de 5 qubits. |
FakeVigoV2 | Un faux backend de 5 qubits. |
FakeWashingtonV2 | Un faux backend de 127 qubits. |
FakeYorktownV2 | Un faux backend de 5 qubits. |